xref: /netbsd-src/external/apache2/llvm/dist/clang/tools/clang-shlib/CMakeLists.txt (revision 33881f779a77dce6440bdc44610d94de75bebefe)
1# Building libclang-cpp.so fails if LLVM_ENABLE_PIC=Off
2if (NOT LLVM_ENABLE_PIC)
3  return()
4endif()
5
6get_property(clang_libs GLOBAL PROPERTY CLANG_STATIC_LIBS)
7
8foreach (lib ${clang_libs})
9  if(XCODE)
10    # Xcode doesn't support object libraries, so we have to trick it into
11    # linking the static libraries instead.
12    list(APPEND _DEPS "-force_load" ${lib})
13  else()
14    list(APPEND _OBJECTS $<TARGET_OBJECTS:obj.${lib}>)
15  endif()
16  list(APPEND _DEPS $<TARGET_PROPERTY:${lib},INTERFACE_LINK_LIBRARIES>)
17  list(APPEND _DEPS $<TARGET_PROPERTY:${lib},LINK_LIBRARIES>)
18endforeach ()
19
20if (CLANG_LINK_CLANG_DYLIB)
21  set(INSTALL_WITH_TOOLCHAIN INSTALL_WITH_TOOLCHAIN)
22endif()
23
24add_clang_library(clang-cpp
25                  SHARED
26                  ${INSTALL_WITH_TOOLCHAIN}
27                  clang-shlib.cpp
28                  ${_OBJECTS}
29                  LINK_LIBS
30                  ${_DEPS})
31