diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2017-09-23 18:46:03 -0400 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2017-09-23 18:46:03 -0400 |
| commit | 41b588547cd49673ff632ed0fc3210c76ff48b42 (patch) | |
| tree | a1e44c3b10a1a004d95d9bc574dbfa985f488b39 /cmake | |
| parent | 7fd164f196e5867594498d3600e5da1273ad5b6f (diff) | |
| download | zig-41b588547cd49673ff632ed0fc3210c76ff48b42.tar.gz zig-41b588547cd49673ff632ed0fc3210c76ff48b42.zip | |
improvements to windows support
See #302
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/Findllvm.cmake | 55 |
1 files changed, 37 insertions, 18 deletions
diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake index f76735d3bf..dc45a09258 100644 --- a/cmake/Findllvm.cmake +++ b/cmake/Findllvm.cmake @@ -80,32 +80,51 @@ else() "c:/msys64/mingw64/bin" "C:/Libraries/llvm-5.0.0/bin") - execute_process( - COMMAND ${LLVM_CONFIG_EXE} --libs - OUTPUT_VARIABLE LLVM_LIBRARIES - OUTPUT_STRIP_TRAILING_WHITESPACE) - - execute_process( - COMMAND ${LLVM_CONFIG_EXE} --system-libs - OUTPUT_VARIABLE LLVM_SYSTEM_LIBS - OUTPUT_STRIP_TRAILING_WHITESPACE) - - execute_process( - COMMAND ${LLVM_CONFIG_EXE} --libdir - OUTPUT_VARIABLE LLVM_LIBDIRS - OUTPUT_STRIP_TRAILING_WHITESPACE) + if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug")) + execute_process( + COMMAND ${LLVM_CONFIG_EXE} --libfiles --link-static + OUTPUT_VARIABLE LLVM_LIBRARIES_SPACES + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REPLACE " " ";" LLVM_LIBRARIES "${LLVM_LIBRARIES_SPACES}") + + execute_process( + COMMAND ${LLVM_CONFIG_EXE} --system-libs --link-static + OUTPUT_VARIABLE LLVM_SYSTEM_LIBS_SPACES + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REPLACE " " ";" LLVM_SYSTEM_LIBS "${LLVM_SYSTEM_LIBS_SPACES}") + + execute_process( + COMMAND ${LLVM_CONFIG_EXE} --libdir --link-static + OUTPUT_VARIABLE LLVM_LIBDIRS_SPACES + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REPLACE " " ";" LLVM_LIBDIRS "${LLVM_LIBDIRS_SPACES}") + endif() + if(NOT LLVM_LIBRARIES) + execute_process( + COMMAND ${LLVM_CONFIG_EXE} --libs + OUTPUT_VARIABLE LLVM_LIBRARIES + OUTPUT_STRIP_TRAILING_WHITESPACE) + + execute_process( + COMMAND ${LLVM_CONFIG_EXE} --system-libs + OUTPUT_VARIABLE LLVM_SYSTEM_LIBS + OUTPUT_STRIP_TRAILING_WHITESPACE) + + execute_process( + COMMAND ${LLVM_CONFIG_EXE} --libdir + OUTPUT_VARIABLE LLVM_LIBDIRS + OUTPUT_STRIP_TRAILING_WHITESPACE) + endif() execute_process( COMMAND ${LLVM_CONFIG_EXE} --includedir OUTPUT_VARIABLE LLVM_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE) - find_library(LLVM_LIBRARY NAMES LLVM) - set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS}) - if(LLVM_LIBRARY AND NOT LLVM_LIBRARIES) - set(LLVM_LIBRARIES ${LLVM_LIBRARY}) + if(NOT LLVM_LIBRARIES) + find_library(LLVM_LIBRARIES NAMES LLVM LLVM-5.0 LLVM-5) endif() link_directories("${CMAKE_PREFIX_PATH}/lib") |
