about summary refs log tree commit diff homepage
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorDan Liew <daniel.liew@imperial.ac.uk>2016-12-19 11:49:41 +0000
committerDan Liew <daniel.liew@imperial.ac.uk>2016-12-19 11:49:41 +0000
commit48d0feb983232250b42785c04fc87251d436f4d3 (patch)
tree9a0eb74a550921a21e5f8f146b3977d861496665 /CMakeLists.txt
parentba009ba1f66396f0951c703e6a68e393d01be7af (diff)
downloadklee-48d0feb983232250b42785c04fc87251d436f4d3.tar.gz
[CMake] Fix linker warning about mixed linking modes when LLVM was
built with `-fvisibility-inlines-hidden`.

This was observed when using a bottled version of LLVM 3.4 on macOS
that appears to have been built with this option.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt5
1 files changed, 5 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2dc2cc2f..e860f3e2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -194,6 +194,7 @@ set(NEEDED_LLVM_VARS
   LLVM_INCLUDE_DIRS
   LLVM_LIBRARY_DIRS
   LLVM_TOOLS_BINARY_DIR
+  LLVM_ENABLE_VISIBILITY_INLINES_HIDDEN
   TARGET_TRIPLE
 )
 
@@ -211,6 +212,10 @@ else()
   unset(ENABLE_KLEE_DEBUG) # for config.h
 endif()
 
+if (LLVM_ENABLE_VISIBILITY_INLINES_HIDDEN)
+  list(APPEND KLEE_COMPONENT_CXX_FLAGS "-fvisibility-inlines-hidden")
+endif()
+
 
 list(APPEND KLEE_COMPONENT_CXX_DEFINES ${LLVM_DEFINITIONS})
 list(APPEND KLEE_COMPONENT_EXTRA_INCLUDE_DIRS ${LLVM_INCLUDE_DIRS})