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")...@@ -699,6 +699,7 @@ elseif(ZIG_HOST_TARGET_ARCH STREQUAL "armv7l")
699elseif(ZIG_HOST_TARGET_ARCH STREQUAL "armv7b")699elseif(ZIG_HOST_TARGET_ARCH STREQUAL "armv7b")
700 set(ZIG_HOST_TARGET_ARCH "armeb")700 set(ZIG_HOST_TARGET_ARCH "armeb")
701endif()701endif()
702
702if(ZIG_HOST_TARGET_ARCH MATCHES "^arm(eb)?$")703if(ZIG_HOST_TARGET_ARCH MATCHES "^arm(eb)?$")
703 include(CheckSymbolExists)704 include(CheckSymbolExists)
704 check_symbol_exists(__thumb__ "" ZIG_HOST_TARGET_DEFAULTS_TO_THUMB)705 check_symbol_exists(__thumb__ "" ZIG_HOST_TARGET_DEFAULTS_TO_THUMB)
...@@ -710,7 +711,16 @@ string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" ZIG_HOST_TARGET_OS)...@@ -710,7 +711,16 @@ string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" ZIG_HOST_TARGET_OS)
710if(ZIG_HOST_TARGET_OS STREQUAL "darwin")711if(ZIG_HOST_TARGET_OS STREQUAL "darwin")
711 set(ZIG_HOST_TARGET_OS "macos")712 set(ZIG_HOST_TARGET_OS "macos")
712endif()713endif()
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
715if(MSVC)725if(MSVC)
716 set(ZIG_WASM2C_COMPILE_FLAGS "")726 set(ZIG_WASM2C_COMPILE_FLAGS "")
...@@ -723,6 +733,8 @@ else()...@@ -723,6 +733,8 @@ else()
723 set(ZIG2_COMPILE_FLAGS "-std=c99 -O0 -fno-stack-protector")733 set(ZIG2_COMPILE_FLAGS "-std=c99 -O0 -fno-stack-protector")
724 if(APPLE)734 if(APPLE)
725 set(ZIG2_LINK_FLAGS "-Wl,-stack_size,0x10000000")735 set(ZIG2_LINK_FLAGS "-Wl,-stack_size,0x10000000")
736 elseif(MINGW)
737 set(ZIG2_LINK_FLAGS "-Wl,--stack,0x10000000")
726 else()738 else()
727 set(ZIG2_LINK_FLAGS "-Wl,-z,stack-size=0x10000000")739 set(ZIG2_LINK_FLAGS "-Wl,-z,stack-size=0x10000000")
728 endif()740 endif()
...@@ -751,6 +763,9 @@ if(MSVC)...@@ -751,6 +763,9 @@ if(MSVC)
751 target_link_options(zig1 PRIVATE /STACK:0x10000000)763 target_link_options(zig1 PRIVATE /STACK:0x10000000)
752else()764else()
753 target_link_libraries(zig1 LINK_PUBLIC m)765 target_link_libraries(zig1 LINK_PUBLIC m)
766 if(MINGW)
767 target_link_options(zig1 PRIVATE -Wl,--stack,0x10000000)
768 endif()
754endif()769endif()
755770
756set(BUILD_ZIG2_ARGS771set(BUILD_ZIG2_ARGS