From 566c022572bbff8bb7ff105b9adbe74500b2c716 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Fri, 10 Jul 2026 14:04:29 -0400 Subject: Build fixes, get LTO+Os working on Windows Signed-off-by: Andrew Opalach --- cross/i686-w64-mingw32.txt | 11 ++++++++--- cross/x86_64-w64-clang-cl.txt | 34 ++++++++++++++++++++++++++++++++++ cross/x86_64-w64-mingw32.txt | 5 ++++- cross/x86_64-w64-msvc-clang.txt | 27 --------------------------- 4 files changed, 46 insertions(+), 31 deletions(-) create mode 100644 cross/x86_64-w64-clang-cl.txt delete mode 100644 cross/x86_64-w64-msvc-clang.txt (limited to 'cross') diff --git a/cross/i686-w64-mingw32.txt b/cross/i686-w64-mingw32.txt index 159c662..361578e 100644 --- a/cross/i686-w64-mingw32.txt +++ b/cross/i686-w64-mingw32.txt @@ -1,17 +1,22 @@ +# See x86_64-w64-mingw32.txt for references. + [binaries] c = 'i686-w64-mingw32-gcc' cpp = 'i686-w64-mingw32-g++' -ar = 'i686-w64-mingw32-ar' +ar = 'i686-w64-mingw32-gcc-ar' strip = 'i686-w64-mingw32-strip' windres = 'i686-w64-mingw32-windres' dlltool = 'i686-w64-mingw32-dlltool' exe_wrapper = 'wine' [properties] -ar = 'i686-w64-mingw32-ar' -nm = 'i686-w64-mingw32-nm' +ar = 'i686-w64-mingw32-gcc-ar' +nm = 'i686-w64-mingw32-gcc-nm' needs_exe_wrapper = true +[built-in options] +cpp_args = ['-fno-declone-ctor-dtor'] + [host_machine] system = 'windows' cpu_family = 'x86' diff --git a/cross/x86_64-w64-clang-cl.txt b/cross/x86_64-w64-clang-cl.txt new file mode 100644 index 0000000..8298a16 --- /dev/null +++ b/cross/x86_64-w64-clang-cl.txt @@ -0,0 +1,34 @@ +[binaries] +c = 'clang-cl' +c_ld = 'lld-link' +cpp = 'clang-cl' +cpp_ld = 'lld-link' +ar = 'llvm-ar' +nm = 'llvm-objdump' +dlltool = 'llvm-dlltool' +windres = 'llvm-rc' +pkg-config = '' +cmake = 'cmake' +exe_wrapper = 'wine64' + +[properties] +ld = 'lld-link' +ar = 'llvm-ar' +nm = 'llvm-objdump' +needs_exe_wrapper = true + +[cmake] +CMAKE_C_COMPILER = 'clang-cl' +CMAKE_CXX_COMPILER = 'clang-cl' +CMAKE_C_COMPILER_LAUNCHER = '' +CMAKE_CXX_COMPILER_LAUNCHER = '' + +[built-in options] +c_args = ['--target=x86_64-windows-msvc', '-fuse-ld=lld'] +cpp_args = ['--target=x86_64-windows-msvc', '-fuse-ld=lld'] + +[host_machine] +system = 'windows' +cpu_family = 'x86_64' +cpu = 'x86_64' +endian = 'little' diff --git a/cross/x86_64-w64-mingw32.txt b/cross/x86_64-w64-mingw32.txt index e04d439..8d75e8d 100644 --- a/cross/x86_64-w64-mingw32.txt +++ b/cross/x86_64-w64-mingw32.txt @@ -5,7 +5,6 @@ c = 'x86_64-w64-mingw32-gcc' cpp = 'x86_64-w64-mingw32-g++' # https://github.com/msys2/MINGW-packages/issues/3516 # https://github.com/mesonbuild/meson/issues/13324 -# https://github.com/msys2/MINGW-packages/issues/11726 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106103 # https://embeddedartistry.com/blog/2020/04/13/prefer-gcc-ar-to-ar-in-your-buildsystems/ ar = 'x86_64-w64-mingw32-gcc-ar' @@ -19,6 +18,10 @@ ar = 'x86_64-w64-mingw32-gcc-ar' nm = 'x86_64-w64-mingw32-gcc-nm' needs_exe_wrapper = true +[built-in options] +# https://github.com/msys2/MINGW-packages/issues/11726#issuecomment-1381836644 +cpp_args = ['-fno-declone-ctor-dtor'] + [host_machine] system = 'windows' cpu_family = 'x86_64' diff --git a/cross/x86_64-w64-msvc-clang.txt b/cross/x86_64-w64-msvc-clang.txt deleted file mode 100644 index 284dab7..0000000 --- a/cross/x86_64-w64-msvc-clang.txt +++ /dev/null @@ -1,27 +0,0 @@ -[binaries] -c = 'clang-cl' -c_ld = 'lld-link' -cpp = 'clang-cl' -cpp_ld = 'lld-link' -ar = 'llvm-lib' -nm = 'llvm-objdump' -dlltool = 'llvm-dlltool' -windres = 'llvm-rc' -pkg-config = '' -exe_wrapper = 'wine64' - -[properties] -ld = 'lld-link' -ar = 'llvm-lib' -nm = 'llvm-objdump' -needs_exe_wrapper = true - -[built-in options] -c_args = ['--target=x86_64-windows-msvc', '-fuse-ld=lld'] -cpp_args = ['--target=x86_64-windows-msvc', '-fuse-ld=lld'] - -[host_machine] -system = 'windows' -cpu_family = 'x86_64' -cpu = 'x86_64' -endian = 'little' -- cgit v1.2.3-101-g0448