diff options
Diffstat (limited to 'clang/cmake/modules')
| -rw-r--r-- | clang/cmake/modules/AddClang.cmake | 8 |
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}) |

