ENH: Add option to bootstrap script to enable Qt dialog.
- Add --qt-gui and --no-qt-gui options - Add --qt-qmake=<qmake> option to help locate Qt - Build more commands during bootstrap to help FindQt4.cmake: MATH, GET_DIRECTORY_PROPERTY, EXECUTE_PROCESS, SEPARATE_ARGUMENTS - Bootstrapping with the cmake-gui is now possible in MSys
This commit is contained in:
parent
9439cbd4ba
commit
ad95a57509
|
@ -41,6 +41,7 @@
|
|||
#include "cmEndIfCommand.cxx"
|
||||
#include "cmEndMacroCommand.cxx"
|
||||
#include "cmExecProgramCommand.cxx"
|
||||
#include "cmExecuteProcessCommand.cxx"
|
||||
#include "cmExternalMakefileProjectGenerator.cxx"
|
||||
#include "cmFindBase.cxx"
|
||||
#include "cmFindCommon.cxx"
|
||||
|
@ -53,6 +54,7 @@
|
|||
#include "cmForEachCommand.cxx"
|
||||
#include "cmFunctionCommand.cxx"
|
||||
#include "cmGetCMakePropertyCommand.cxx"
|
||||
#include "cmGetDirectoryPropertyCommand.cxx"
|
||||
#include "cmGetFilenameComponentCommand.cxx"
|
||||
#include "cmGetSourceFilePropertyCommand.cxx"
|
||||
#include "cmGetTargetPropertyCommand.cxx"
|
||||
|
@ -68,10 +70,12 @@
|
|||
#include "cmMacroCommand.cxx"
|
||||
#include "cmMakeDirectoryCommand.cxx"
|
||||
#include "cmMarkAsAdvancedCommand.cxx"
|
||||
#include "cmMathCommand.cxx"
|
||||
#include "cmMessageCommand.cxx"
|
||||
#include "cmOptionCommand.cxx"
|
||||
#include "cmProjectCommand.cxx"
|
||||
#include "cmReturnCommand.cxx"
|
||||
#include "cmSeparateArgumentsCommand.cxx"
|
||||
#include "cmSetCommand.cxx"
|
||||
#include "cmSetPropertyCommand.cxx"
|
||||
#include "cmSetSourceFilesPropertiesCommand.cxx"
|
||||
|
@ -106,6 +110,7 @@ void GetBootstrapCommands(std::list<cmCommand*>& commands)
|
|||
commands.push_back(new cmEndIfCommand);
|
||||
commands.push_back(new cmEndMacroCommand);
|
||||
commands.push_back(new cmExecProgramCommand);
|
||||
commands.push_back(new cmExecuteProcessCommand);
|
||||
commands.push_back(new cmFileCommand);
|
||||
commands.push_back(new cmFindFileCommand);
|
||||
commands.push_back(new cmFindLibraryCommand);
|
||||
|
@ -115,6 +120,7 @@ void GetBootstrapCommands(std::list<cmCommand*>& commands)
|
|||
commands.push_back(new cmForEachCommand);
|
||||
commands.push_back(new cmFunctionCommand);
|
||||
commands.push_back(new cmGetCMakePropertyCommand);
|
||||
commands.push_back(new cmGetDirectoryPropertyCommand);
|
||||
commands.push_back(new cmGetFilenameComponentCommand);
|
||||
commands.push_back(new cmGetSourceFilePropertyCommand);
|
||||
commands.push_back(new cmGetTargetPropertyCommand);
|
||||
|
@ -129,10 +135,12 @@ void GetBootstrapCommands(std::list<cmCommand*>& commands)
|
|||
commands.push_back(new cmMacroCommand);
|
||||
commands.push_back(new cmMakeDirectoryCommand);
|
||||
commands.push_back(new cmMarkAsAdvancedCommand);
|
||||
commands.push_back(new cmMathCommand);
|
||||
commands.push_back(new cmMessageCommand);
|
||||
commands.push_back(new cmOptionCommand);
|
||||
commands.push_back(new cmProjectCommand);
|
||||
commands.push_back(new cmReturnCommand);
|
||||
commands.push_back(new cmSeparateArgumentsCommand);
|
||||
commands.push_back(new cmSetCommand);
|
||||
commands.push_back(new cmSetPropertyCommand);
|
||||
commands.push_back(new cmSetSourceFilesPropertiesCommand);
|
||||
|
|
|
@ -22,11 +22,9 @@
|
|||
#include "cmElseIfCommand.cxx"
|
||||
#include "cmEnableLanguageCommand.cxx"
|
||||
#include "cmEndWhileCommand.cxx"
|
||||
#include "cmExecuteProcessCommand.cxx"
|
||||
#include "cmExportCommand.cxx"
|
||||
#include "cmExportLibraryDependencies.cxx"
|
||||
#include "cmFLTKWrapUICommand.cxx"
|
||||
#include "cmGetDirectoryPropertyCommand.cxx"
|
||||
#include "cmGetPropertyCommand.cxx"
|
||||
#include "cmGetTestPropertyCommand.cxx"
|
||||
#include "cmIncludeExternalMSProjectCommand.cxx"
|
||||
|
@ -35,13 +33,11 @@
|
|||
#include "cmInstallProgramsCommand.cxx"
|
||||
#include "cmLinkLibrariesCommand.cxx"
|
||||
#include "cmLoadCacheCommand.cxx"
|
||||
#include "cmMathCommand.cxx"
|
||||
#include "cmOutputRequiredFilesCommand.cxx"
|
||||
#include "cmQTWrapCPPCommand.cxx"
|
||||
#include "cmQTWrapUICommand.cxx"
|
||||
#include "cmRemoveCommand.cxx"
|
||||
#include "cmRemoveDefinitionsCommand.cxx"
|
||||
#include "cmSeparateArgumentsCommand.cxx"
|
||||
#include "cmSetDirectoryPropertiesCommand.cxx"
|
||||
#include "cmSourceGroupCommand.cxx"
|
||||
#include "cmSubdirDependsCommand.cxx"
|
||||
|
@ -72,11 +68,9 @@ void GetPredefinedCommands(std::list<cmCommand*>&
|
|||
commands.push_back(new cmElseIfCommand);
|
||||
commands.push_back(new cmEnableLanguageCommand);
|
||||
commands.push_back(new cmEndWhileCommand);
|
||||
commands.push_back(new cmExecuteProcessCommand);
|
||||
commands.push_back(new cmExportCommand);
|
||||
commands.push_back(new cmExportLibraryDependenciesCommand);
|
||||
commands.push_back(new cmFLTKWrapUICommand);
|
||||
commands.push_back(new cmGetDirectoryPropertyCommand);
|
||||
commands.push_back(new cmGetPropertyCommand);
|
||||
commands.push_back(new cmGetTestPropertyCommand);
|
||||
commands.push_back(new cmIncludeExternalMSProjectCommand);
|
||||
|
@ -85,13 +79,11 @@ void GetPredefinedCommands(std::list<cmCommand*>&
|
|||
commands.push_back(new cmLinkLibrariesCommand);
|
||||
commands.push_back(new cmLoadCacheCommand);
|
||||
commands.push_back(new cmLoadCommandCommand);
|
||||
commands.push_back(new cmMathCommand);
|
||||
commands.push_back(new cmOutputRequiredFilesCommand);
|
||||
commands.push_back(new cmQTWrapCPPCommand);
|
||||
commands.push_back(new cmQTWrapUICommand);
|
||||
commands.push_back(new cmRemoveCommand);
|
||||
commands.push_back(new cmRemoveDefinitionsCommand);
|
||||
commands.push_back(new cmSeparateArgumentsCommand);
|
||||
commands.push_back(new cmSetDirectoryPropertiesCommand);
|
||||
commands.push_back(new cmSourceGroupCommand);
|
||||
commands.push_back(new cmSubdirDependsCommand);
|
||||
|
|
29
bootstrap
29
bootstrap
|
@ -49,6 +49,8 @@ cmake_doc_dir="/doc/cmake-${cmake_version}"
|
|||
cmake_man_dir="/man"
|
||||
cmake_init_file=""
|
||||
cmake_bootstrap_system_libs=""
|
||||
cmake_bootstrap_qt_gui=""
|
||||
cmake_bootstrap_qt_qmake=""
|
||||
|
||||
# Determine whether this is a MinGW environment.
|
||||
if echo "${cmake_system}" | grep MINGW >/dev/null 2>&1; then
|
||||
|
@ -172,6 +174,9 @@ CMAKE_CXX_SOURCES="\
|
|||
cmOrderRuntimeDirectories \
|
||||
cmComputeTargetDepends \
|
||||
cmComputeComponentGraph \
|
||||
cmExprLexer \
|
||||
cmExprParser \
|
||||
cmExprParserHelper \
|
||||
"
|
||||
|
||||
if ${cmake_system_mingw}; then
|
||||
|
@ -244,6 +249,9 @@ Configuration:
|
|||
(for use only by package maintainers)
|
||||
--no-system-libs use cmake-provided third-party libraries
|
||||
(default)
|
||||
--qt-gui build the Qt-based GUI (requires Qt >= 4.2)
|
||||
--no-qt-gui do not build the Qt-based GUI (default)
|
||||
--qt-qmake=<qmake> use <qmake> as the qmake executable to find Qt
|
||||
|
||||
Directory and file names:
|
||||
--prefix=PREFIX install files in tree rooted at PREFIX
|
||||
|
@ -482,6 +490,15 @@ for a in "$@"; do
|
|||
if echo $a | grep "^--no-system-libs" > /dev/null 2> /dev/null; then
|
||||
cmake_bootstrap_system_libs="-DCMAKE_USE_SYSTEM_LIBRARIES=0"
|
||||
fi
|
||||
if echo $a | grep "^--qt-gui" > /dev/null 2> /dev/null; then
|
||||
cmake_bootstrap_qt_gui="1"
|
||||
fi
|
||||
if echo $a | grep "^--no-qt-gui" > /dev/null 2> /dev/null; then
|
||||
cmake_bootstrap_qt_gui="0"
|
||||
fi
|
||||
if echo $a | grep "^--qt-qmake=" > /dev/null 2> /dev/null; then
|
||||
cmake_bootstrap_qt_qmake=`echo $a | sed "s/^--qt-qmake=//"`
|
||||
fi
|
||||
if echo $a | grep "^--help" > /dev/null 2> /dev/null; then
|
||||
cmake_usage
|
||||
fi
|
||||
|
@ -1302,6 +1319,18 @@ SET (CMAKE_MAN_DIR "${cmake_man_dir}" CACHE PATH "Install location for man pages
|
|||
SET (CMAKE_DATA_DIR "${cmake_data_dir}" CACHE PATH "Install location for data (relative to prefix)." FORCE)
|
||||
EOF
|
||||
|
||||
# Add configuration settings given as command-line options.
|
||||
if [ "x${cmake_bootstrap_qt_gui}" != "x" ]; then
|
||||
cat >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" <<EOF
|
||||
SET (BUILD_QtDialog ${cmake_bootstrap_qt_gui} CACHE BOOL "Build Qt dialog for CMake" FORCE)
|
||||
EOF
|
||||
fi
|
||||
if [ "x${cmake_bootstrap_qt_qmake}" != "x" ]; then
|
||||
cat >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" <<EOF
|
||||
SET (QT_QMAKE_EXECUTABLE "${cmake_bootstrap_qt_qmake}" CACHE FILEPATH "Location of Qt qmake" FORCE)
|
||||
EOF
|
||||
fi
|
||||
|
||||
# Add user-specified settings. Handle relative-path case for
|
||||
# specification of cmake_init_file.
|
||||
(
|
||||
|
|
Loading…
Reference in New Issue