summaryrefslogtreecommitdiffstats
path: root/clang/cmake/modules
diff options
context:
space:
mode:
Diffstat (limited to 'clang/cmake/modules')
-rw-r--r--clang/cmake/modules/AddClang.cmake8
1 files changed, 7 insertions, 1 deletions
diff --git a/clang/cmake/modules/AddClang.cmake b/clang/cmake/modules/AddClang.cmake
index b598f13ff6f..0c9cd667603 100644
--- a/clang/cmake/modules/AddClang.cmake
+++ b/clang/cmake/modules/AddClang.cmake
@@ -83,7 +83,13 @@ macro(add_clang_library name)
if(ARG_SHARED)
set(LIBTYPE SHARED)
else()
- set(LIBTYPE STATIC OBJECT)
+ # llvm_add_library ignores BUILD_SHARED_LIBS if STATIC is explicitly set,
+ # so we need to handle it here.
+ if(BUILD_SHARED_LIBS)
+ set(LIBTYPE SHARED OBJECT)
+ else()
+ set(LIBTYPE STATIC OBJECT)
+ endif()
set_property(GLOBAL APPEND PROPERTY CLANG_STATIC_LIBS ${name})
endif()
llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs})
OpenPOWER on IntegriCloud