@@ -17,6 +17,12 @@ else()
1717 set (CTIDY_LLVM_BUILD_PARALLEL_LEVEL 4)
1818endif ()
1919
20+ if (DEFINED ENV{CTIDY_LLVM_DOWNLOAD_DIR} AND NOT "$ENV{CTIDY_LLVM_DOWNLOAD_DIR} " STREQUAL "" )
21+ set (CTIDY_LLVM_DOWNLOAD_DIR "$ENV{CTIDY_LLVM_DOWNLOAD_DIR} " )
22+ else ()
23+ set (CTIDY_LLVM_DOWNLOAD_DIR "${CMAKE_BINARY_DIR } /downloads" )
24+ endif ()
25+
2026set (CTIDY_INSTALL_ROOT "${SKBUILD_PLATLIB_DIR} /ctidy/data" )
2127set (CTIDY_INSTALL_BIN_DIR "${CTIDY_INSTALL_ROOT} /bin" )
2228set (CTIDY_INSTALL_RESOURCE_DIR
@@ -37,33 +43,33 @@ set(CTIDY_CLANG_APPLY_REPLACEMENTS
3743)
3844
3945set (CTIDY_EXTERNAL_CMAKE_ARGS
40- -DCMAKE_BUILD_TYPE=Release
41- -DBUILD_SHARED_LIBS=OFF
42- -DCLANG_ENABLE_ARCMT=OFF
43- -DCLANG_ENABLE_CLANGD=OFF
44- -DCLANG_ENABLE_STATIC_ANALYZER=ON
45- -DCLANG_INSTALL_SCANBUILD=OFF
46- -DCLANG_INSTALL_SCANVIEW=OFF
47- -DLLVM_BUILD_BENCHMARKS=OFF
48- -DLLVM_BUILD_DOCS=OFF
49- -DLLVM_BUILD_EXAMPLES=OFF
50- -DLLVM_BUILD_RUNTIME=OFF
51- -DLLVM_BUILD_RUNTIMES=OFF
52- -DLLVM_BUILD_TELEMETRY=OFF
53- -DLLVM_BUILD_TESTS=OFF
54- -DLLVM_ENABLE_BINDINGS=OFF
55- -DLLVM_ENABLE_LIBXML2=OFF
56- -DLLVM_ENABLE_PROJECTS: STRING =clang,clang-tools-extra
57- -DLLVM_ENABLE_OCAMLDOC= OFF
58- -DLLVM_ENABLE_ZLIB=OFF
59- -DLLVM_ENABLE_ZSTD=OFF
60- -DLLVM_INCLUDE_BENCHMARKS=OFF
61- -DLLVM_INCLUDE_DOCS=OFF
62- -DLLVM_INCLUDE_EXAMPLES=OFF
63- -DLLVM_INCLUDE_RUNTIMES=OFF
64- -DLLVM_INCLUDE_TESTS=OFF
65- -DLLVM_INCLUDE_UTILS=ON
66- -DLLVM_TARGETS_TO_BUILD=Native
46+ -DCMAKE_BUILD_TYPE=Release
47+ -DBUILD_SHARED_LIBS=OFF
48+ -DCLANG_ENABLE_ARCMT=OFF
49+ -DCLANG_ENABLE_CLANGD=OFF
50+ -DCLANG_ENABLE_STATIC_ANALYZER=ON
51+ -DCLANG_INSTALL_SCANBUILD=OFF
52+ -DCLANG_INSTALL_SCANVIEW=OFF
53+ -DLLVM_BUILD_BENCHMARKS=OFF
54+ -DLLVM_BUILD_DOCS=OFF
55+ -DLLVM_BUILD_EXAMPLES=OFF
56+ -DLLVM_BUILD_RUNTIME=OFF
57+ -DLLVM_BUILD_RUNTIMES=OFF
58+ -DLLVM_BUILD_TELEMETRY=OFF
59+ -DLLVM_BUILD_TESTS=OFF
60+ -DLLVM_ENABLE_BINDINGS=OFF
61+ -DLLVM_ENABLE_LIBXML2=OFF
62+ -DLLVM_ENABLE_OCAMLDOC= OFF
63+ -DLLVM_ENABLE_PROJECTS: STRING =clang,clang-tools-extra
64+ -DLLVM_ENABLE_ZLIB=OFF
65+ -DLLVM_ENABLE_ZSTD=OFF
66+ -DLLVM_INCLUDE_BENCHMARKS=OFF
67+ -DLLVM_INCLUDE_DOCS=OFF
68+ -DLLVM_INCLUDE_EXAMPLES=OFF
69+ -DLLVM_INCLUDE_RUNTIMES=OFF
70+ -DLLVM_INCLUDE_TESTS=OFF
71+ -DLLVM_INCLUDE_UTILS=ON
72+ -DLLVM_TARGETS_TO_BUILD=Native
6773)
6874
6975if (CMAKE_C_COMPILER )
@@ -78,6 +84,14 @@ if(CMAKE_ASM_COMPILER)
7884 list (APPEND CTIDY_EXTERNAL_CMAKE_ARGS -DCMAKE_ASM_COMPILER:FILEPATH=${CMAKE_ASM_COMPILER} )
7985endif ()
8086
87+ if (DEFINED ENV{CMAKE_C_COMPILER_LAUNCHER} AND NOT "$ENV{CMAKE_C_COMPILER_LAUNCHER} " STREQUAL "" )
88+ list (APPEND CTIDY_EXTERNAL_CMAKE_ARGS -DCMAKE_C_COMPILER_LAUNCHER:FILEPATH=$ENV{CMAKE_C_COMPILER_LAUNCHER} )
89+ endif ()
90+
91+ if (DEFINED ENV{CMAKE_CXX_COMPILER_LAUNCHER} AND NOT "$ENV{CMAKE_CXX_COMPILER_LAUNCHER} " STREQUAL "" )
92+ list (APPEND CTIDY_EXTERNAL_CMAKE_ARGS -DCMAKE_CXX_COMPILER_LAUNCHER:FILEPATH=$ENV{CMAKE_CXX_COMPILER_LAUNCHER} )
93+ endif ()
94+
8195if (WIN32 )
8296 list (APPEND CTIDY_EXTERNAL_CMAKE_ARGS -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded)
8397endif ()
@@ -86,6 +100,7 @@ ExternalProject_Add(
86100 ctidy_llvm
87101 URL "${CTIDY_LLVM_URL} "
88102 DOWNLOAD_EXTRACT_TIMESTAMP TRUE
103+ DOWNLOAD_DIR "${CTIDY_LLVM_DOWNLOAD_DIR} "
89104 SOURCE_DIR "${CTIDY_LLVM_SOURCE_DIR } "
90105 SOURCE_SUBDIR llvm
91106 BINARY_DIR "${CTIDY_LLVM_BINARY_DIR } "
0 commit comments