Author: Nico Weber Date: 2022-10-26T13:34:19-04:00 New Revision: df239a6c17fa51274e38f185e72ac02c2f8fb914
URL: https://github.com/llvm/llvm-project/commit/df239a6c17fa51274e38f185e72ac02c2f8fb914 DIFF: https://github.com/llvm/llvm-project/commit/df239a6c17fa51274e38f185e72ac02c2f8fb914.diff LOG: clang: Add a cmake toggle to disable libclang's libxml2 dependency By default, libclang will still depend on libxml2 according to LLVM_ENABLE_LIBXML2, but with this it's possible to make libclang not depend on libxml2 even though LLVM does. The motivation is that libclang uses a bigger API surface of libxml2 than LLVM, and we're statically linking a very minimal build of libxml2 in our LLVM/clang distribution. Differential Revision: https://reviews.llvm.org/D136700 Added: Modified: clang/CMakeLists.txt Removed: ################################################################################ diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index 7c41eadc7bf9..6f590c830b23 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -147,7 +147,12 @@ list(INSERT CMAKE_MODULE_PATH 0 "${LLVM_COMMON_CMAKE_UTILS}/Modules" ) -if(LLVM_ENABLE_LIBXML2) +# This allows disabling clang's XML dependency even if LLVM finds libxml2. +# By default, clang depends on libxml2 if LLVM does. +option(CLANG_ENABLE_LIBXML2 "Whether libclang may depend on libxml2" + ${LLVM_ENABLE_LIBXML2}) + +if(CLANG_ENABLE_LIBXML2) # Don't look for libxml if we're using MSan, since uninstrumented third party # code may call MSan interceptors like strlen, leading to false positives. if(NOT LLVM_USE_SANITIZER MATCHES "Memory.*") _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits