Skip to content

Conversation

@SchrodingerZhu
Copy link
Collaborator

@SchrodingerZhu SchrodingerZhu commented Jan 29, 2026

Add a clang64 based mingw CI.

This should follow #806

@SchrodingerZhu
Copy link
Collaborator Author

SchrodingerZhu commented Jan 29, 2026

It seems that mingw-clang64 works OOB now.

However, there is a cmake issue that I do not understand:

 C:\Windows\system32\cmd.exe /C "cd . && C:\PROGRA~1\LLVM\bin\CLANG_~1.EXE -nostartfiles -nostdlib -O0 -g -Xclang -gcodeview -D_DEBUG -D_DLL -D_MT -Xclang --dependent-lib=msvcrtd -Xlinker /subsystem:console  -Wl,--no-undefined /DEBUG -rdynamic -fuse-ld=lld-link CMakeFiles/perf-contention-fast.dir/src/test/perf/contention/contention.cc.obj -o perf-contention-fast.exe -Xlinker /MANIFEST:EMBED -Xlinker /implib:perf-contention-fast.lib -Xlinker /pdb:perf-contention-fast.pdb -Xlinker /version:0.0   -lmincore.lib  -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -loldnames  && cd ."
clang++: error: no such file or directory: '/DEBUG'

By using if (NOT MINGW) , this should already be eliminated. For some reasons, the change does not apply here.

cc @mjp41

@SchrodingerZhu SchrodingerZhu marked this pull request as ready for review January 29, 2026 15:11
This was referenced Jan 29, 2026
@ryancinsight
Copy link
Contributor

It seems that mingw-clang64 works OOB now.

However, there is a cmake issue that I do not understand:

 C:\Windows\system32\cmd.exe /C "cd . && C:\PROGRA~1\LLVM\bin\CLANG_~1.EXE -nostartfiles -nostdlib -O0 -g -Xclang -gcodeview -D_DEBUG -D_DLL -D_MT -Xclang --dependent-lib=msvcrtd -Xlinker /subsystem:console  -Wl,--no-undefined /DEBUG -rdynamic -fuse-ld=lld-link CMakeFiles/perf-contention-fast.dir/src/test/perf/contention/contention.cc.obj -o perf-contention-fast.exe -Xlinker /MANIFEST:EMBED -Xlinker /implib:perf-contention-fast.lib -Xlinker /pdb:perf-contention-fast.pdb -Xlinker /version:0.0   -lmincore.lib  -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -loldnames  && cd ."
clang++: error: no such file or directory: '/DEBUG'

By using if (NOT MINGW) , this should already be eliminated. For some reasons, the change does not apply here.

cc @mjp41

could be this in cmakelists: target_link_options(${name} PRIVATE
$<$BOOL:${SNMALLOC_LINKER_SUPPORT_NO_ALLOW_SHLIB_UNDEF}:-Wl,--no-undefined>
$&lt;$&lt;PLATFORM_ID:Windows>:$<${ci_or_debug}:/DEBUG>>)
while I think you want: $&lt;$&lt;PLATFORM_ID:Windows>:$<${ci_or_debug}:LINKER:/DEBUG>>

@SchrodingerZhu
Copy link
Collaborator Author

I think it is working now.

@SchrodingerZhu SchrodingerZhu mentioned this pull request Jan 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants