Skip to content

Commit f586aca

Browse files
committedMar 30, 2018
add ZIG_STATIC cmake option
it's not compatible with glibc but it works with musl
1 parent edca173 commit f586aca

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed
 

‎CMakeLists.txt

+3
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ set(ZIG_LIBC_STATIC_LIB_DIR "" CACHE STRING "Default native target libc director
3535
set(ZIG_LIBC_INCLUDE_DIR "/usr/include" CACHE STRING "Default native target libc include directory")
3636
set(ZIG_DYNAMIC_LINKER "" CACHE STRING "Override dynamic linker for native target")
3737
set(ZIG_EACH_LIB_RPATH off CACHE BOOL "Add each dynamic library to rpath for native target")
38+
set(ZIG_STATIC off CACHE BOOL "Attempt to build a static zig executable (not compatible with glibc)")
3839

3940
string(REGEX REPLACE "\\\\" "\\\\\\\\" ZIG_LIBC_LIB_DIR_ESCAPED "${ZIG_LIBC_LIB_DIR}")
4041
string(REGEX REPLACE "\\\\" "\\\\\\\\" ZIG_LIBC_STATIC_LIB_DIR_ESCAPED "${ZIG_LIBC_STATIC_LIB_DIR}")
@@ -698,6 +699,8 @@ if(MINGW)
698699
set(EXE_LDFLAGS "-static -static-libgcc -static-libstdc++")
699700
elseif(MSVC)
700701
set(EXE_LDFLAGS "/STACK:16777216")
702+
elseif(ZIG_STATIC)
703+
set(EXE_LDFLAGS "-static")
701704
else()
702705
set(EXE_LDFLAGS " ")
703706
endif()

‎cmake/Findllvm.cmake

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ find_program(LLVM_CONFIG_EXE
1515
"c:/msys64/mingw64/bin"
1616
"C:/Libraries/llvm-6.0.0/bin")
1717

18-
if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug"))
18+
if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug") OR ZIG_STATIC)
1919
execute_process(
2020
COMMAND ${LLVM_CONFIG_EXE} --libfiles --link-static
2121
OUTPUT_VARIABLE LLVM_LIBRARIES_SPACES

0 commit comments

Comments
 (0)
Please sign in to comment.