authorgravatar for sahnvour@pm.meSahnvour <sahnvour@pm.me> 2019-10-10 22:44:52+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-16 19:04:50-04:00
log5b51f41ceed6604b388b63d73360a22d1ea95749
tree53476b83ac2f893d6407529550bae42985d23c4d
parent700bb19a9053e236df6a9f15d435c427391e3ecf
signaturelock-open Commit is signed but in an unrecognized format.

stage1: override cmake's default compilation flags to statically link the CRT on windows

we want to use /MT instead of /MD for a fully static executable

3 files changed, 31 insertions(+), 1 deletions(-)

CMakeLists.txt+5-1
......@@ -10,10 +10,14 @@ if(NOT CMAKE_INSTALL_PREFIX)
1010 "Directory to install zig to" FORCE)
1111endif()
1212
13set(CMAKE_USER_MAKE_RULES_OVERRIDE
14 ${CMAKE_CURRENT_SOURCE_DIR}/cmake/c_flag_overrides.cmake)
15set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
16 ${CMAKE_CURRENT_SOURCE_DIR}/cmake/cxx_flag_overrides.cmake)
17
1318project(zig C CXX)
1419set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
1520
16
1721set(ZIG_VERSION_MAJOR 0)
1822set(ZIG_VERSION_MINOR 5)
1923set(ZIG_VERSION_PATCH 0)
cmake/c_flag_overrides.cmake created+13
......@@ -0,0 +1,13 @@
1if(MSVC)
2 set(CMAKE_C_FLAGS_DEBUG_INIT
3 "/D_DEBUG /MTd /Zi /Ob0 /Od /RTC1")
4
5 set(CMAKE_C_FLAGS_MINSIZEREL_INIT
6 "/MT /O1 /Ob1 /D NDEBUG")
7
8 set(CMAKE_C_FLAGS_RELEASE_INIT
9 "/MT /O2 /Ob2 /D NDEBUG")
10
11 set(CMAKE_C_FLAGS_RELWITHDEBINFO_INIT
12 "/MT /Zi /O2 /Ob1 /D NDEBUG")
13endif()
cmake/cxx_flag_overrides.cmake created+13
......@@ -0,0 +1,13 @@
1if(MSVC)
2 set(CMAKE_CXX_FLAGS_DEBUG_INIT
3 "/D_DEBUG /MTd /Zi /Ob0 /Od /RTC1")
4
5 set(CMAKE_CXX_FLAGS_MINSIZEREL_INIT
6 "/MT /O1 /Ob1 /D NDEBUG")
7
8 set(CMAKE_CXX_FLAGS_RELEASE_INIT
9 "/MT /O2 /Ob2 /D NDEBUG")
10
11 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT
12 "/MT /Zi /O2 /Ob1 /D NDEBUG")
13endif()