summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2012-03-05 14:36:46 (GMT)
committerStephen Kelly <steveire@gmail.com>2012-03-05 14:50:55 (GMT)
commit761c146a4c02c76adafb233606dfe50157857c87 (patch)
tree7cc1937db8c69d2f3c71ba483ca3655d8af5cb6c /Source
parent76bff6029222449e0194b9348ac146ab8adfe4e9 (diff)
downloadCMake-761c146a4c02c76adafb233606dfe50157857c87.zip
CMake-761c146a4c02c76adafb233606dfe50157857c87.tar.gz
CMake-761c146a4c02c76adafb233606dfe50157857c87.tar.bz2
Add default initializers for WIN32_EXECUTABLE and MACOSX_BUNDLE
This allows downstreams to use set(CMAKE_WIN32_EXECUTABLE ON) set(CMAKE_MACOSX_BUNDLE ON) to create executables with the WIN32_EXECUTABLE and MACOSX_BUNDLE properties set on by default.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmDocumentVariables.cxx16
-rw-r--r--Source/cmTarget.cxx10
2 files changed, 24 insertions, 2 deletions
diff --git a/Source/cmDocumentVariables.cxx b/Source/cmDocumentVariables.cxx
index a31dd01..80f6b87 100644
--- a/Source/cmDocumentVariables.cxx
+++ b/Source/cmDocumentVariables.cxx
@@ -1278,6 +1278,22 @@ void cmDocumentVariables::DefineVariables(cmake* cm)
"See that target property for additional information.",
false,
"Variables that Control the Build");
+ cm->DefineProperty
+ ("CMAKE_WIN32_EXECUTABLE", cmProperty::VARIABLE,
+ "Default value for WIN32_EXECUTABLE of targets.",
+ "This variable is used to initialize the "
+ "WIN32_EXECUTABLE property on all the targets. "
+ "See that target property for additional information.",
+ false,
+ "Variables that Control the Build");
+ cm->DefineProperty
+ ("CMAKE_MACOSX_BUNDLE", cmProperty::VARIABLE,
+ "Default value for MACOSX_BUNDLE of targets.",
+ "This variable is used to initialize the "
+ "MACOSX_BUNDLE property on all the targets. "
+ "See that target property for additional information.",
+ false,
+ "Variables that Control the Build");
// Variables defined when the a language is enabled These variables will
// also be defined whenever CMake has loaded its support for compiling (LANG)
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index da99eb9..817375e 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -861,7 +861,9 @@ void cmTarget::DefineProperties(cmake *cm)
"of of just main()."
"This makes it a GUI executable instead of a console application. "
"See the CMAKE_MFC_FLAG variable documentation to configure use "
- "of MFC for WinMain executables.");
+ "of MFC for WinMain executables. "
+ "This property is initialized by the value of the variable "
+ "CMAKE_WIN32_EXECUTABLE if it is set when a target is created.");
cm->DefineProperty
("MACOSX_BUNDLE", cmProperty::TARGET,
@@ -871,7 +873,9 @@ void cmTarget::DefineProperties(cmake *cm)
"This makes it a GUI executable that can be launched from "
"the Finder. "
"See the MACOSX_BUNDLE_INFO_PLIST target property for information "
- "about creation of the Info.plist file for the application bundle.");
+ "about creation of the Info.plist file for the application bundle. "
+ "This property is initialized by the value of the variable "
+ "CMAKE_MACOSX_BUNDLE if it is set when a target is created.");
cm->DefineProperty
("MACOSX_BUNDLE_INFO_PLIST", cmProperty::TARGET,
@@ -1224,6 +1228,8 @@ void cmTarget::SetMakefile(cmMakefile* mf)
this->SetPropertyDefault("AUTOMOC", 0);
this->SetPropertyDefault("AUTOMOC_MOC_OPTIONS", 0);
this->SetPropertyDefault("LINK_INTERFACE_LIBRARIES", 0);
+ this->SetPropertyDefault("WIN32_EXECUTABLE", 0);
+ this->SetPropertyDefault("MACOSX_BUNDLE", 0);
// Collect the set of configuration types.
std::vector<std::string> configNames;