[PATCH] D31060: [CMake] Provide an option to disable runtimes build
Petr Hosek via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 16 15:16:24 PDT 2017
phosek created this revision.
Herald added subscribers: mehdi_amini, mgorny.
This could be used to either disable the runtimes build altogether or avoid building them but still generate the build targets.
Repository:
rL LLVM
https://reviews.llvm.org/D31060
Files:
CMakeLists.txt
runtimes/CMakeLists.txt
Index: runtimes/CMakeLists.txt
===================================================================
--- runtimes/CMakeLists.txt
+++ runtimes/CMakeLists.txt
@@ -145,6 +145,10 @@
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${LLVM_BINARY_DIR}/runtimes/Components.cmake)
include(LLVMExternalProjectUtils)
+ if(NOT LLVM_BUILD_RUNTIMES)
+ set(EXTRA_ARGS EXCLUDE_FROM_ALL)
+ endif()
+
# If compiler-rt is present we need to build the builtin libraries first. This
# is required because the other runtimes need the builtin libraries present
# before the just-built compiler can pass the configuration tests.
@@ -157,7 +161,8 @@
-DCMAKE_C_COMPILER_TARGET=${TARGET_TRIPLE}
-DCMAKE_ASM_COMPILER_TARGET=${TARGET_TRIPLE}
PASSTHROUGH_PREFIXES COMPILER_RT
- USE_TOOLCHAIN)
+ USE_TOOLCHAIN
+ ${EXTRA_ARGS})
else()
get_cmake_property(variableNames VARIABLES)
add_custom_target(builtins)
@@ -179,7 +184,8 @@
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=On
${${target}_extra_args}
PASSTHROUGH_PREFIXES COMPILER_RT
- USE_TOOLCHAIN)
+ USE_TOOLCHAIN
+ ${EXTRA_ARGS})
add_dependencies(builtins builtins-${target})
endforeach()
endif()
@@ -238,7 +244,8 @@
${SUB_COMPONENTS}
${SUB_COMPONENT_CHECK_TARGETS}
${SUB_INSTALL_TARGETS}
- USE_TOOLCHAIN)
+ USE_TOOLCHAIN
+ ${EXTRA_ARGS})
# TODO: This is a hack needed because the libcxx headers are copied into the
# build directory during configuration. Without that step the clang in the
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -485,6 +485,10 @@
option(LLVM_BUILD_UTILS
"Build LLVM utility binaries. If OFF, just generate build targets." ON)
+option(LLVM_INCLUDE_RUNTIMES "Generate build targets for the LLVM runtimes." ON)
+option(LLVM_BUILD_RUNTIMES
+ "Build the LLVM runtimes. If OFF, just generate build targets." ON)
+
option(LLVM_BUILD_RUNTIME
"Build the LLVM runtime libraries." ON)
option(LLVM_BUILD_EXAMPLES
@@ -864,7 +868,9 @@
add_subdirectory(tools)
endif()
-add_subdirectory(runtimes)
+if( LLVM_INCLUDE_RUNTIMES )
+ add_subdirectory(runtimes)
+endif()
if( LLVM_INCLUDE_EXAMPLES )
add_subdirectory(examples)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D31060.92072.patch
Type: text/x-patch
Size: 2873 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170316/72a04378/attachment.bin>
More information about the llvm-commits
mailing list