From: Chris Bieneman Date: Tue, 21 May 2019 15:56:17 +0000 (+0000) Subject: Fix BUILD_SHARED_LIBS for clang which broke in D61909 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=153460e92a503344b5f2232e4aa5c15554d9ab62;p=clang Fix BUILD_SHARED_LIBS for clang which broke in D61909 llvm_add_library ignores `BUILD_SHARED_LIBS` `STATIC` is explicitly specified. This restores the `BUILD_SHARED_LIBS` behavior to the clang build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@361271 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake index b598f13ff6..0c9cd66760 100644 --- a/cmake/modules/AddClang.cmake +++ b/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})