summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmInstallCommand.h12
-rw-r--r--Source/cmTarget.cxx30
2 files changed, 41 insertions, 1 deletions
diff --git a/Source/cmInstallCommand.h b/Source/cmInstallCommand.h
index e93c1f7..e2d451e 100644
--- a/Source/cmInstallCommand.h
+++ b/Source/cmInstallCommand.h
@@ -99,7 +99,8 @@ public:
"\n"
"The TARGETS signature:\n"
" install(TARGETS targets... [EXPORT <export-name>]\n"
- " [[ARCHIVE|LIBRARY|RUNTIME|FRAMEWORK|BUNDLE]\n"
+ " [[ARCHIVE|LIBRARY|RUNTIME|FRAMEWORK|BUNDLE|\n"
+ " PRIVATE_HEADER|PUBLIC_HEADER|RESOURCE]\n"
" [DESTINATION <dir>]\n"
" [PERMISSIONS permissions...]\n"
" [CONFIGURATIONS [Debug|Release|...]]\n"
@@ -130,6 +131,15 @@ public:
"type will be installed (which can be used to install just a DLL or "
"just an import library)."
"\n"
+ "The PRIVATE_HEADER, PUBLIC_HEADER, and RESOURCE arguments cause "
+ "subsequent properties to be applied to installing a FRAMEWORK "
+ "shared library target's associated files on non-Apple platforms. "
+ "Rules defined by these arguments are ignored on Apple platforms "
+ "because the associated files are installed into the appropriate "
+ "locations inside the framework folder. "
+ "See documentation of the PRIVATE_HEADER, PUBLIC_HEADER, and RESOURCE "
+ "target properties for details."
+ "\n"
"One or more groups of properties may be specified in a single call "
"to the TARGETS form of this command. A target may be installed more "
"than once to different locations. Consider hypothetical "
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 5e37ced..a6bf5d2 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -358,6 +358,36 @@ void cmTarget::DefineProperties(cmake *cm)
"INSTALL command instead.");
cm->DefineProperty
+ ("PRIVATE_HEADER", cmProperty::TARGET,
+ "Specify private header files in a FRAMEWORK shared library target.",
+ "Shared library targets marked with the FRAMEWORK property generate "
+ "frameworks on OS X and normal shared libraries on other platforms. "
+ "This property may be set to a list of header files to be placed "
+ "in the PrivateHeaders directory inside the framework folder. "
+ "On non-Apple platforms these headers may be installed using the "
+ "PRIVATE_HEADER option to the install(TARGETS) command.");
+
+ cm->DefineProperty
+ ("PUBLIC_HEADER", cmProperty::TARGET,
+ "Specify public header files in a FRAMEWORK shared library target.",
+ "Shared library targets marked with the FRAMEWORK property generate "
+ "frameworks on OS X and normal shared libraries on other platforms. "
+ "This property may be set to a list of header files to be placed "
+ "in the Headers directory inside the framework folder. "
+ "On non-Apple platforms these headers may be installed using the "
+ "PUBLIC_HEADER option to the install(TARGETS) command.");
+
+ cm->DefineProperty
+ ("RESOURCE", cmProperty::TARGET,
+ "Specify resource files in a FRAMEWORK shared library target.",
+ "Shared library targets marked with the FRAMEWORK property generate "
+ "frameworks on OS X and normal shared libraries on other platforms. "
+ "This property may be set to a list of files to be placed "
+ "in the Resources directory inside the framework folder. "
+ "On non-Apple platforms these files may be installed using the "
+ "RESOURCE option to the install(TARGETS) command.");
+
+ cm->DefineProperty
("SKIP_BUILD_RPATH", cmProperty::TARGET,
"Should rpaths be used for the build tree.",
"SKIP_BUILD_RPATH is a boolean specifying whether to skip automatic "