authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2023-08-02 20:37:14-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-08-02 22:13:04-07:00
loga61495a988c9e1a68ee595cafab5025a314f0e40
tree727b27b0ee73350efed78aec8c11dd6d3dc79325
parent76f7b40e15456ed6ec2249607a91e8398a0d39e8

cmake: fix early issues when bootstrapping on mingw

This gets all the way to the final link, where `libssp` symbols are undefined, referenced by `libzstd.a`.

1 files changed, 16 insertions(+), 1 deletions(-)

CMakeLists.txt+16-1
......@@ -699,6 +699,7 @@ elseif(ZIG_HOST_TARGET_ARCH STREQUAL "armv7l")
699699elseif(ZIG_HOST_TARGET_ARCH STREQUAL "armv7b")
700700 set(ZIG_HOST_TARGET_ARCH "armeb")
701701endif()
702
702703if(ZIG_HOST_TARGET_ARCH MATCHES "^arm(eb)?$")
703704 include(CheckSymbolExists)
704705 check_symbol_exists(__thumb__ "" ZIG_HOST_TARGET_DEFAULTS_TO_THUMB)
......@@ -710,7 +711,16 @@ string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" ZIG_HOST_TARGET_OS)
710711if(ZIG_HOST_TARGET_OS STREQUAL "darwin")
711712 set(ZIG_HOST_TARGET_OS "macos")
712713endif()
713set(ZIG_HOST_TARGET_TRIPLE "${ZIG_HOST_TARGET_ARCH}-${ZIG_HOST_TARGET_OS}" CACHE STRING "Host zig target triple.")
714
715if(MSVC)
716 set(ZIG_HOST_TARGET_ABI "-msvc")
717elif(MINGW)
718 set(ZIG_HOST_TARGET_ABI "-gnu")
719else()
720 set(ZIG_HOST_TARGET_ABI "")
721endif()
722
723set(ZIG_HOST_TARGET_TRIPLE "${ZIG_HOST_TARGET_ARCH}-${ZIG_HOST_TARGET_OS}${ZIG_HOST_TARGET_ABI}" CACHE STRING "Host zig target triple.")
714724
715725if(MSVC)
716726 set(ZIG_WASM2C_COMPILE_FLAGS "")
......@@ -723,6 +733,8 @@ else()
723733 set(ZIG2_COMPILE_FLAGS "-std=c99 -O0 -fno-stack-protector")
724734 if(APPLE)
725735 set(ZIG2_LINK_FLAGS "-Wl,-stack_size,0x10000000")
736 elseif(MINGW)
737 set(ZIG2_LINK_FLAGS "-Wl,--stack,0x10000000")
726738 else()
727739 set(ZIG2_LINK_FLAGS "-Wl,-z,stack-size=0x10000000")
728740 endif()
......@@ -751,6 +763,9 @@ if(MSVC)
751763 target_link_options(zig1 PRIVATE /STACK:0x10000000)
752764else()
753765 target_link_libraries(zig1 LINK_PUBLIC m)
766 if(MINGW)
767 target_link_options(zig1 PRIVATE -Wl,--stack,0x10000000)
768 endif()
754769endif()
755770
756771set(BUILD_ZIG2_ARGS