summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2013-12-30 07:02:12 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2013-12-30 07:02:12 +0000
commite18e76e4243ff8fbe5defc95152c66319b4b18a9 (patch)
tree25b7d1e4acc3d00f1256a444bdc17e7c81cbd2c1 /utils
parent74ae52847d3d58f9122003386c8e7a27b7b6d71b (diff)
downloadllvm-e18e76e4243ff8fbe5defc95152c66319b4b18a9.tar.gz
llvm-e18e76e4243ff8fbe5defc95152c66319b4b18a9.tar.bz2
llvm-e18e76e4243ff8fbe5defc95152c66319b4b18a9.tar.xz
[CMake] Generate ${BUILD_MODE}/llvm-lit for each ${CMAKE_CONFIGURATION_TYPES}.
llvm-lit can be invoked; $ Release/bin/llvm-lit instead of; $ bin/llvm-lit --param buid_mode=Release git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198206 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r--utils/llvm-lit/CMakeLists.txt20
-rwxr-xr-xutils/llvm-lit/llvm-lit.in2
2 files changed, 17 insertions, 5 deletions
diff --git a/utils/llvm-lit/CMakeLists.txt b/utils/llvm-lit/CMakeLists.txt
index 585753427a..4b10354cfd 100644
--- a/utils/llvm-lit/CMakeLists.txt
+++ b/utils/llvm-lit/CMakeLists.txt
@@ -2,8 +2,20 @@ if (WIN32 AND NOT CYGWIN)
# llvm-lit needs suffix.py for multiprocess to find a main module.
set(suffix .py)
endif ()
+set(llvm_lit_path ${LLVM_RUNTIME_OUTPUT_INTDIR}/llvm-lit${suffix})
-configure_file(
- llvm-lit.in
- ${LLVM_TOOLS_BINARY_DIR}/llvm-lit${suffix}
- )
+if(NOT "${CMAKE_CFG_INTDIR}" STREQUAL ".")
+ foreach(BUILD_MODE ${CMAKE_CONFIGURATION_TYPES})
+ string(REPLACE ${CMAKE_CFG_INTDIR} ${BUILD_MODE} bi ${llvm_lit_path})
+ configure_file(
+ llvm-lit.in
+ ${bi}
+ )
+ endforeach()
+else()
+ set(BUILD_MODE .)
+ configure_file(
+ llvm-lit.in
+ ${llvm_lit_path}
+ )
+endif()
diff --git a/utils/llvm-lit/llvm-lit.in b/utils/llvm-lit/llvm-lit.in
index 4c836c88d9..6ee12185a3 100755
--- a/utils/llvm-lit/llvm-lit.in
+++ b/utils/llvm-lit/llvm-lit.in
@@ -13,7 +13,7 @@ sys.path.insert(0, os.path.join(llvm_source_root, 'utils', 'lit'))
# Set up some builtin parameters, so that by default the LLVM test suite
# configuration file knows how to find the object tree.
builtin_parameters = {
- 'build_mode' : "@CMAKE_CFG_INTDIR@",
+ 'build_mode' : "@BUILD_MODE@",
'llvm_site_config' : os.path.join(llvm_obj_root, 'test', 'lit.site.cfg'),
'llvm_unit_site_config' : os.path.join(llvm_obj_root, 'test', 'Unit',
'lit.site.cfg')