diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2020-07-20 19:05:08 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2020-07-20 19:05:08 (GMT) |
commit | 3b6ac9e24fae88e09558524d3d9bd023a753defc (patch) | |
tree | 11716813485da1325506c4bdad2a1a5096ebcfe2 | |
parent | 3803bec48abc143d3ac4e43caf9922018788ba96 (diff) | |
download | Doxygen-3b6ac9e24fae88e09558524d3d9bd023a753defc.zip Doxygen-3b6ac9e24fae88e09558524d3d9bd023a753defc.tar.gz Doxygen-3b6ac9e24fae88e09558524d3d9bd023a753defc.tar.bz2 |
Make a switch to choose between dynamic library to clang-cpp or static linking against clangTooling
-rw-r--r-- | CMakeLists.txt | 1 | ||||
-rw-r--r-- | addon/doxyapp/CMakeLists.txt | 6 | ||||
-rw-r--r-- | addon/doxyparse/CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/CMakeLists.txt | 9 |
4 files changed, 18 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 88b99d6..e76a745 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,6 +23,7 @@ option(build_doc "Build user manual (HTML and PDF)" OFF) option(build_doc_chm "Build user manual (CHM)" OFF) option(use_sqlite3 "Add support for sqlite3 output [experimental]." OFF) option(use_libclang "Add support for libclang parsing." OFF) +option(static_libclang "Link to a statically compiled version of LLVM/libclang." OFF) option(win_static "Link with /MT in stead of /MD on windows" OFF) option(english_only "Only compile in support for the English language" OFF) option(force_qt4 "Forces doxywizard to build using Qt4 even if Qt5 is installed" OFF) diff --git a/addon/doxyapp/CMakeLists.txt b/addon/doxyapp/CMakeLists.txt index 808eee9..a6a776a 100644 --- a/addon/doxyapp/CMakeLists.txt +++ b/addon/doxyapp/CMakeLists.txt @@ -15,7 +15,11 @@ doxyapp.cpp add_sanitizers(doxyapp) if (use_libclang) - set(CLANG_LIBS libclang clang-cpp ${llvm_libs}) + if (static_libclang) + set(CLANG_LIBS libclang clangTooling ${llvm_libs}) + else() + set(CLANG_LIBS libclang clang-cpp ${llvm_libs}) + endif() endif() target_link_libraries(doxyapp diff --git a/addon/doxyparse/CMakeLists.txt b/addon/doxyparse/CMakeLists.txt index bfef0ab..8df99ab 100644 --- a/addon/doxyparse/CMakeLists.txt +++ b/addon/doxyparse/CMakeLists.txt @@ -15,7 +15,11 @@ doxyparse.cpp add_sanitizers(doxyparse) if (use_libclang) - set(CLANG_LIBS libclang clang-cpp ${llvm_libs}) + if (static_libclang) + set(CLANG_LIBS libclang clangTooling ${llvm_libs}) + else() + set(CLANG_LIBS libclang clang-cpp ${llvm_libs}) + endif() endif() target_link_libraries(doxyparse diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index dc90eb0..5ba80b7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -330,9 +330,14 @@ if (use_libclang) endif() include_directories(${LLVM_INCLUDE_DIRS}) add_definitions(${LLVM_DEFINITIONS}) - llvm_map_components_to_libnames(llvm_libs support) + if (static_libclang) + llvm_map_components_to_libnames(llvm_libs support core option) + set(CLANG_LIBS libclang clangTooling ${llvm_libs}) + else() # dynamically linked version of clang + llvm_map_components_to_libnames(llvm_libs support) + set(CLANG_LIBS libclang clang-cpp ${llvm_libs}) + endif() target_compile_definitions(doxygen PRIVATE ${LLVM_DEFINITIONS}) - set(CLANG_LIBS libclang clang-cpp ${llvm_libs}) endif() target_link_libraries(doxygen |