Refer to self with CMake_(SOURCE|BINARY)_DIR (#10046)

This is good practice, and is necessary to support building CMake as a
subdirectory of another project.
This commit is contained in:
Brad King 2010-07-29 10:59:27 -04:00
parent 03b7eff0ea
commit df1e00ff82
10 changed files with 51 additions and 51 deletions

View File

@ -350,7 +350,7 @@ ENDIF(CMAKE_BUILD_ON_VISUAL_STUDIO OR MINGW)
# CTestLib # CTestLib
# #
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
"${CMAKE_SOURCE_DIR}/Source/CTest" "${CMake_SOURCE_DIR}/Source/CTest"
${CMAKE_XMLRPC_INCLUDES} ${CMAKE_XMLRPC_INCLUDES}
${CMAKE_CURL_INCLUDES} ${CMAKE_CURL_INCLUDES}
) )
@ -493,8 +493,8 @@ IF(BUILD_QtDialog)
SUBDIRS(QtDialog) SUBDIRS(QtDialog)
ENDIF(BUILD_QtDialog) ENDIF(BUILD_QtDialog)
INCLUDE (${CMAKE_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL) INCLUDE (${CMake_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
INCLUDE (${CMAKE_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL) INCLUDE (${CMake_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
INSTALL_TARGETS(/bin cmake) INSTALL_TARGETS(/bin cmake)
INSTALL_TARGETS(/bin ctest) INSTALL_TARGETS(/bin ctest)

View File

@ -33,7 +33,7 @@ if(CMake_TEST_INSTALL)
add_test(CMake.Install add_test(CMake.Install
${CMake_TEST_INSTALL_CTest} ${CMake_TEST_INSTALL_CTest}
${CMake_TEST_INSTALL_CONFIG} ${CMake_TEST_INSTALL_CONFIG}
--build-and-test ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} --build-and-test ${CMake_SOURCE_DIR} ${CMake_BINARY_DIR}
--build-generator ${CMAKE_GENERATOR} # Not CMAKE_TEST_GENERATOR --build-generator ${CMAKE_GENERATOR} # Not CMAKE_TEST_GENERATOR
--build-project CMake --build-project CMake
--build-makeprogram ${CMAKE_MAKE_PROGRAM} # Not CMAKE_TEST_MAKEPROGRAM --build-makeprogram ${CMAKE_MAKE_PROGRAM} # Not CMAKE_TEST_MAKEPROGRAM

View File

@ -404,7 +404,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
# --test-command t4 # --test-command t4
#--test-command "${CMAKE_COMMAND}" #--test-command "${CMAKE_COMMAND}"
#"-DCONFIGURATION=\${CTEST_CONFIGURATION_TYPE}" #"-DCONFIGURATION=\${CTEST_CONFIGURATION_TYPE}"
#-P "${CMAKE_BINARY_DIR}/Tests/SimpleExclude/run.cmake" #-P "${CMake_BINARY_DIR}/Tests/SimpleExclude/run.cmake"
#) #)
# ADD_TEST(SameName ${CMAKE_CTEST_COMMAND} # ADD_TEST(SameName ${CMAKE_CTEST_COMMAND}
@ -1051,7 +1051,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
--build-target install --build-target install
# --build-target package # --build-target package
--build-options "-DCMAKE_INSTALL_PREFIX:PATH=${BundleTestInstallDir}" --build-options "-DCMAKE_INSTALL_PREFIX:PATH=${BundleTestInstallDir}"
"-DCMake_SOURCE_DIR:PATH=${CMAKE_SOURCE_DIR}" "-DCMake_SOURCE_DIR:PATH=${CMake_SOURCE_DIR}"
--test-command --test-command
${BundleTestInstallDir}/Applications/SecondBundleExe.app/Contents/MacOS/SecondBundleExe) ${BundleTestInstallDir}/Applications/SecondBundleExe.app/Contents/MacOS/SecondBundleExe)
LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleTest") LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleTest")
@ -1589,10 +1589,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
IF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode) IF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode)
SET(CMAKE_SKIP_BOOTSTRAP_TEST 1) SET(CMAKE_SKIP_BOOTSTRAP_TEST 1)
ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode) ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode)
IF(EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt") IF(EXISTS "${CMake_BINARY_DIR}/CMakeLists.txt")
# If there is CMakeLists.txt in the binary tree, assume in-source build # If there is CMakeLists.txt in the binary tree, assume in-source build
SET(CMAKE_SKIP_BOOTSTRAP_TEST 1) SET(CMAKE_SKIP_BOOTSTRAP_TEST 1)
ENDIF(EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt") ENDIF(EXISTS "${CMake_BINARY_DIR}/CMakeLists.txt")
SET(bootstrap "") SET(bootstrap "")
IF(CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST) IF(CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
IF(UNIX) IF(UNIX)
@ -1764,14 +1764,14 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
# If this is not an in-source build, provide a target to wipe out # If this is not an in-source build, provide a target to wipe out
# all the test build directories. # all the test build directories.
IF(NOT EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt") IF(NOT EXISTS "${CMake_BINARY_DIR}/CMakeLists.txt")
CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/test_clean.cmake.in CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/test_clean.cmake.in
${CMake_BINARY_DIR}/Tests/test_clean.cmake @ONLY) ${CMake_BINARY_DIR}/Tests/test_clean.cmake @ONLY)
ADD_CUSTOM_TARGET(test_clean ADD_CUSTOM_TARGET(test_clean
COMMAND ${CMAKE_COMMAND} -P ${CMake_BINARY_DIR}/Tests/test_clean.cmake COMMAND ${CMAKE_COMMAND} -P ${CMake_BINARY_DIR}/Tests/test_clean.cmake
COMMENT "Removing test build directories." COMMENT "Removing test build directories."
) )
ENDIF(NOT EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt") ENDIF(NOT EXISTS "${CMake_BINARY_DIR}/CMakeLists.txt")
ADD_TEST(CMakeWizardTest ${CMAKE_CMAKE_COMMAND} ADD_TEST(CMakeWizardTest ${CMAKE_CMAKE_COMMAND}
-D build_dir:STRING=${CMAKE_CURRENT_BINARY_DIR}/CMakeWizardTest -D build_dir:STRING=${CMAKE_CURRENT_BINARY_DIR}/CMakeWizardTest

View File

@ -27,15 +27,15 @@ IF (BUILD_DOCUMENTATION)
ENDIF(NOT DOT_PATH) ENDIF(NOT DOT_PATH)
CONFIGURE_FILE( CONFIGURE_FILE(
${CMAKE_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in ${CMake_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in
${CMAKE_BINARY_DIR}/Utilities/Doxygen/doxyfile) ${CMake_BINARY_DIR}/Utilities/Doxygen/doxyfile)
CONFIGURE_FILE( CONFIGURE_FILE(
${CMAKE_SOURCE_DIR}/Utilities/Doxygen/doc_makeall.sh.in ${CMake_SOURCE_DIR}/Utilities/Doxygen/doc_makeall.sh.in
${CMAKE_BINARY_DIR}/Utilities/Doxygen/doc_makeall.sh) ${CMake_BINARY_DIR}/Utilities/Doxygen/doc_makeall.sh)
ADD_CUSTOM_TARGET(DoxygenDoc ADD_CUSTOM_TARGET(DoxygenDoc
${BASH} ${BASH}
${CMAKE_BINARY_DIR}/Utilities/Doxygen/doc_makeall.sh) ${CMake_BINARY_DIR}/Utilities/Doxygen/doc_makeall.sh)
ENDIF (BUILD_DOCUMENTATION) ENDIF (BUILD_DOCUMENTATION)

View File

@ -48,7 +48,7 @@ export PATH_TO_VTK_DOX_SCRIPTS="@VTK_SOURCE_DIR@/Utilities/Doxygen"
# Example: # Example:
# SOURCE_DIR=@VTK_SOURCE_DIR@ # SOURCE_DIR=@VTK_SOURCE_DIR@
# #
export SOURCE_DIR="@CMAKE_SOURCE_DIR@" export SOURCE_DIR="@CMake_SOURCE_DIR@"
# REL_PATH_TO_TOP: # REL_PATH_TO_TOP:
# Relative path from the top directory of the source files to the directory # Relative path from the top directory of the source files to the directory
@ -71,7 +71,7 @@ export REL_PATH_TO_TOP=.
# DOXTEMP=DOXTEMP=@VTK_BINARY_DIR@/Utilities/Doxygen # DOXTEMP=DOXTEMP=@VTK_BINARY_DIR@/Utilities/Doxygen
# INTERMEDIATE_DOX_DIR=$DOXTEMP/dox # INTERMEDIATE_DOX_DIR=$DOXTEMP/dox
# #
export DOXTEMP="@CMAKE_BINARY_DIR@/Utilities/Doxygen" export DOXTEMP="@CMake_BINARY_DIR@/Utilities/Doxygen"
export INTERMEDIATE_DOX_DIR="$DOXTEMP/dox" export INTERMEDIATE_DOX_DIR="$DOXTEMP/dox"
# DOXYFILE: # DOXYFILE:

View File

@ -31,19 +31,19 @@ GRAPHICAL_HIERARCHY = YES
ALLEXTERNALS = NO ALLEXTERNALS = NO
IMAGE_PATH = "@CMAKE_BINARY_DIR@/Utilities/Doxygen/contrib" IMAGE_PATH = "@CMake_BINARY_DIR@/Utilities/Doxygen/contrib"
OUTPUT_DIRECTORY = "@CMAKE_BINARY_DIR@/Utilities/Doxygen/doc" OUTPUT_DIRECTORY = "@CMake_BINARY_DIR@/Utilities/Doxygen/doc"
INPUT = \ INPUT = \
"@CMAKE_SOURCE_DIR@/Source" \ "@CMake_SOURCE_DIR@/Source" \
"@CMAKE_SOURCE_DIR@/Source/CPack" \ "@CMake_SOURCE_DIR@/Source/CPack" \
"@CMAKE_SOURCE_DIR@/Source/CTest" \ "@CMake_SOURCE_DIR@/Source/CTest" \
"@CMAKE_SOURCE_DIR@/Source/CursesDialog" \ "@CMake_SOURCE_DIR@/Source/CursesDialog" \
"@CMAKE_SOURCE_DIR@/Source/MFCDialog" \ "@CMake_SOURCE_DIR@/Source/MFCDialog" \
"@CMAKE_BINARY_DIR@/Source/kwsys" \ "@CMake_BINARY_DIR@/Source/kwsys" \
"@CMAKE_BINARY_DIR@/Source/cmsys" \ "@CMake_BINARY_DIR@/Source/cmsys" \
"@CMAKE_BINARY_DIR@/Utilities/Doxygen/dox/doc_CMake_contributors.dox" \ "@CMake_BINARY_DIR@/Utilities/Doxygen/dox/doc_CMake_contributors.dox" \
EXTRACT_ALL = YES EXTRACT_ALL = YES
EXTRACT_PRIVATE = NO EXTRACT_PRIVATE = NO

View File

@ -2,7 +2,7 @@
<Description> <Description>
<LineLength>79</LineLength> <LineLength>79</LineLength>
<!-- <!--
<Header>"@CMAKE_SOURCE_DIR@/Utilities/KWStyle/Headers",false,true</Header> <Header>"@CMake_SOURCE_DIR@/Utilities/KWStyle/Headers",false,true</Header>
<Functions> <Functions>
<regex>[A-Z]</regex> <regex>[A-Z]</regex>
<length>100</length> <length>100</length>

View File

@ -1,15 +1,15 @@
"@CMAKE_SOURCE_DIR@/Source/*.txx" "@CMake_SOURCE_DIR@/Source/*.txx"
"@CMAKE_SOURCE_DIR@/Source/*.cxx" "@CMake_SOURCE_DIR@/Source/*.cxx"
"@CMAKE_SOURCE_DIR@/Source/*.h*" "@CMake_SOURCE_DIR@/Source/*.h*"
"@CMAKE_SOURCE_DIR@/Source/CPack/*.txx" "@CMake_SOURCE_DIR@/Source/CPack/*.txx"
"@CMAKE_SOURCE_DIR@/Source/CPack/*.cxx" "@CMake_SOURCE_DIR@/Source/CPack/*.cxx"
"@CMAKE_SOURCE_DIR@/Source/CPack/*.h*" "@CMake_SOURCE_DIR@/Source/CPack/*.h*"
"@CMAKE_SOURCE_DIR@/Source/CTest/*.txx" "@CMake_SOURCE_DIR@/Source/CTest/*.txx"
"@CMAKE_SOURCE_DIR@/Source/CTest/*.cxx" "@CMake_SOURCE_DIR@/Source/CTest/*.cxx"
"@CMAKE_SOURCE_DIR@/Source/CTest/*.h*" "@CMake_SOURCE_DIR@/Source/CTest/*.h*"
"@CMAKE_SOURCE_DIR@/Source/CurseDialog/*.h*" "@CMake_SOURCE_DIR@/Source/CurseDialog/*.h*"
"@CMAKE_SOURCE_DIR@/Source/CurseDialog/*.cxx" "@CMake_SOURCE_DIR@/Source/CurseDialog/*.cxx"
"@CMAKE_SOURCE_DIR@/Source/CurseDialog/*.txx" "@CMake_SOURCE_DIR@/Source/CurseDialog/*.txx"
-f (Lexer\.h) -f (Lexer\.h)
-f (Lexer\.cxx) -f (Lexer\.cxx)
-f (Parser\.cxx) -f (Parser\.cxx)

View File

@ -36,27 +36,27 @@ IF(CMAKE_USE_KWSTYLE)
SET(KWSTYLE_ARGUMENTS -msvc ${KWSTYLE_ARGUMENTS}) SET(KWSTYLE_ARGUMENTS -msvc ${KWSTYLE_ARGUMENTS})
ENDIF(KWSTYLE_USE_MSVC_FORMAT) ENDIF(KWSTYLE_USE_MSVC_FORMAT)
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Utilities/KWStyle/CMake.kws.xml.in CONFIGURE_FILE(${CMake_SOURCE_DIR}/Utilities/KWStyle/CMake.kws.xml.in
${CMAKE_BINARY_DIR}/CMake.kws.xml) ${CMake_BINARY_DIR}/CMake.kws.xml)
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Utilities/KWStyle/CMakeMoreChecks.kws.xml.in CONFIGURE_FILE(${CMake_SOURCE_DIR}/Utilities/KWStyle/CMakeMoreChecks.kws.xml.in
${CMAKE_BINARY_DIR}/CMakeMoreChecks.kws.xml) ${CMake_BINARY_DIR}/CMakeMoreChecks.kws.xml)
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Utilities/KWStyle/CMakeFiles.txt.in CONFIGURE_FILE(${CMake_SOURCE_DIR}/Utilities/KWStyle/CMakeFiles.txt.in
${CMAKE_BINARY_DIR}/CMakeKWSFiles.txt) ${CMake_BINARY_DIR}/CMakeKWSFiles.txt)
ADD_CUSTOM_COMMAND( ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_BINARY_DIR}/KWStyleReport.txt OUTPUT ${CMake_BINARY_DIR}/KWStyleReport.txt
COMMAND ${KWSTYLE_EXECUTABLE} COMMAND ${KWSTYLE_EXECUTABLE}
ARGS -xml ${CMAKE_BINARY_DIR}/CMake.kws.xml -o ${CMAKE_SOURCE_DIR}/Utilities/KWStyle/CMakeOverwrite.txt -v ${KWSTYLE_ARGUMENTS} -D ${CMAKE_BINARY_DIR}/CMakeKWSFiles.txt ARGS -xml ${CMake_BINARY_DIR}/CMake.kws.xml -o ${CMake_SOURCE_DIR}/Utilities/KWStyle/CMakeOverwrite.txt -v ${KWSTYLE_ARGUMENTS} -D ${CMake_BINARY_DIR}/CMakeKWSFiles.txt
COMMENT "Coding Style Checker" COMMENT "Coding Style Checker"
) )
ADD_CUSTOM_TARGET(MoreStyleChecks ADD_CUSTOM_TARGET(MoreStyleChecks
COMMAND ${KWSTYLE_EXECUTABLE} COMMAND ${KWSTYLE_EXECUTABLE}
-xml ${CMAKE_BINARY_DIR}/CMakeMoreChecks.kws.xml -html ${CMAKE_BINARY_DIR}/html -o ${CMAKE_SOURCE_DIR}/Utilities/KWStyle/CMakeOverwrite.txt -v ${KWSTYLE_ARGUMENTS} -D ${CMAKE_BINARY_DIR}/CMakeKWSFiles.txt -xml ${CMake_BINARY_DIR}/CMakeMoreChecks.kws.xml -html ${CMake_BINARY_DIR}/html -o ${CMake_SOURCE_DIR}/Utilities/KWStyle/CMakeOverwrite.txt -v ${KWSTYLE_ARGUMENTS} -D ${CMake_BINARY_DIR}/CMakeKWSFiles.txt
COMMENT "Coding Style Checker, more checks enabled" COMMENT "Coding Style Checker, more checks enabled"
) )
ADD_CUSTOM_TARGET(StyleCheck DEPENDS ${CMAKE_BINARY_DIR}/KWStyleReport.txt) ADD_CUSTOM_TARGET(StyleCheck DEPENDS ${CMake_BINARY_DIR}/KWStyleReport.txt)
ENDIF(CMAKE_USE_KWSTYLE) ENDIF(CMAKE_USE_KWSTYLE)

View File

@ -2,7 +2,7 @@
<Description> <Description>
<ErrorThreshold>10</ErrorThreshold> <ErrorThreshold>10</ErrorThreshold>
<LineLength>79</LineLength> <LineLength>79</LineLength>
<Header>"@CMAKE_SOURCE_DIR@/Utilities/KWStyle/Headers",false,true</Header> <Header>"@CMake_SOURCE_DIR@/Utilities/KWStyle/Headers",false,true</Header>
<Functions> <Functions>
<regex>^(cm)?[A-Z]</regex> <regex>^(cm)?[A-Z]</regex>
<length>200</length> <length>200</length>