mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-30 06:40:53 +00:00
[CMake][Lit][unittests] Deprecate CMAKE_BUILD_TYPE in each build directory for unittests.
For example, cur) unittests/ADT/Release/ADTTests new) unittests/ADT/ADTTests RUNTIME_BUILD_MODE can be substituted to CMAKE_CFG_INTDIR. With Make and Ninja, the tree is not built with multiple configurations. Then, including the build type in target directory doesn't make sense. See also "How can I build multiple modes without switching?" http://www.cmake.org/Wiki/CMake_FAQ CMAKE_CFG_INTDIR is set to "." With multiple-configuration-aware build system, like Visual Studio, each unittest is built on appropriate directory, for example, unittests/ADT/Release/ADTTests.exe CMAKE_CFG_INTDIR is set to build system's variable, like "$(Configuration)" or "$(OutDir)". Thus, "--param build_config" is also deprecated. llvm-svn: 173616
This commit is contained in:
parent
a19aee8b53
commit
311d4c23b3
@ -157,11 +157,7 @@ endmacro(add_llvm_external_project)
|
||||
|
||||
# Returns directory where unittest should reside.
|
||||
function(get_unittest_directory dir)
|
||||
if (CMAKE_BUILD_TYPE)
|
||||
set(result ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE})
|
||||
else()
|
||||
set(result ${CMAKE_CURRENT_BINARY_DIR})
|
||||
endif()
|
||||
set(result ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set(${dir} ${result} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
@ -245,8 +241,8 @@ function(configure_lit_site_cfg input output)
|
||||
|
||||
set(LLVM_SOURCE_DIR ${LLVM_MAIN_SRC_DIR})
|
||||
set(LLVM_BINARY_DIR ${LLVM_BINARY_DIR})
|
||||
set(LLVM_TOOLS_DIR "${LLVM_TOOLS_BINARY_DIR}/%(build_config)s")
|
||||
set(LLVM_LIBS_DIR "${LLVM_BINARY_DIR}/lib/%(build_config)s")
|
||||
set(LLVM_TOOLS_DIR "${LLVM_TOOLS_BINARY_DIR}/%(build_mode)s")
|
||||
set(LLVM_LIBS_DIR "${LLVM_BINARY_DIR}/lib/%(build_mode)s")
|
||||
set(PYTHON_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
set(ENABLE_SHARED ${LLVM_SHARED_LIBS_ENABLED})
|
||||
set(SHLIBPATH_VAR ${SHLIBPATH_VAR})
|
||||
@ -272,8 +268,7 @@ function(add_lit_target target comment)
|
||||
set(LIT_COMMAND
|
||||
${PYTHON_EXECUTABLE}
|
||||
${LLVM_MAIN_SRC_DIR}/utils/lit/lit.py
|
||||
--param build_config=${CMAKE_CFG_INTDIR}
|
||||
--param build_mode=${RUNTIME_BUILD_MODE}
|
||||
--param build_mode=${CMAKE_CFG_INTDIR}
|
||||
${LIT_ARGS}
|
||||
)
|
||||
foreach(param ${ARG_PARAMS})
|
||||
|
@ -11,20 +11,6 @@ elseif( "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" )
|
||||
set(LLVM_COMPILER_IS_GCC_COMPATIBLE ON)
|
||||
endif()
|
||||
|
||||
# Run-time build mode; It is used for unittests.
|
||||
if(MSVC_IDE)
|
||||
# Expect "$(Configuration)", "$(OutDir)", etc.
|
||||
# It is expanded by msbuild or similar.
|
||||
set(RUNTIME_BUILD_MODE "${CMAKE_CFG_INTDIR}")
|
||||
elseif(NOT CMAKE_BUILD_TYPE STREQUAL "")
|
||||
# Expect "Release" "Debug", etc.
|
||||
# Or unittests could not run.
|
||||
set(RUNTIME_BUILD_MODE ${CMAKE_BUILD_TYPE})
|
||||
else()
|
||||
# It might be "."
|
||||
set(RUNTIME_BUILD_MODE "${CMAKE_CFG_INTDIR}")
|
||||
endif()
|
||||
|
||||
if( LLVM_ENABLE_ASSERTIONS )
|
||||
# MSVC doesn't like _DEBUG on release builds. See PR 4379.
|
||||
if( NOT MSVC )
|
||||
|
@ -13,8 +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_config' : "@CMAKE_CFG_INTDIR@",
|
||||
'build_mode' : "@RUNTIME_BUILD_MODE@",
|
||||
'build_mode' : "@CMAKE_CFG_INTDIR@",
|
||||
'llvm_site_config' : os.path.join(llvm_obj_root, 'test', 'lit.site.cfg')
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user