| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 | 
							- /*=========================================================================
 
-   Program:   CMake - Cross-Platform Makefile Generator
 
-   Module:    $RCSfile$
 
-   Language:  C++
 
-   Date:      $Date$
 
-   Version:   $Revision$
 
-   Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
 
-   See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
 
-      This software is distributed WITHOUT ANY WARRANTY; without even 
 
-      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
 
-      PURPOSE.  See the above copyright notices for more information.
 
- =========================================================================*/
 
- #ifndef cmSetTargetsPropertiesCommand_h
 
- #define cmSetTargetsPropertiesCommand_h
 
- #include "cmCommand.h"
 
- class cmSetTargetPropertiesCommand : public cmCommand
 
- {
 
- public:
 
-   virtual cmCommand* Clone() 
 
-     {
 
-       return new cmSetTargetPropertiesCommand;
 
-     }
 
-   /**
 
-    * This is called when the command is first encountered in
 
-    * the input file.
 
-    */
 
-   virtual bool InitialPass(std::vector<std::string> const& args);
 
-   /**
 
-    * The name of the command as specified in CMakeList.txt.
 
-    */
 
-   virtual const char* GetName() { return "SET_TARGET_PROPERTIES";}
 
-   /**
 
-    * Succinct documentation.
 
-    */
 
-   virtual const char* GetTerseDocumentation() 
 
-     {
 
-     return "Targets can have properties that affect how they are built.";
 
-     }
 
-   
 
-   /**
 
-    * Longer documentation.
 
-    */
 
-   virtual const char* GetFullDocumentation()
 
-     {
 
-       return
 
-         "  SET_TARGET_PROPERTIES(target1 target2 ...\n"
 
-         "                        PROPERTIES prop1 value1\n"
 
-         "                        prop2 value2 ...)\n"
 
-         "Set properties on a target. The syntax for the command is to "
 
-         "list all the files you want "
 
-         "to change, and then provide the values you want to set next.  "
 
-         "You can use any prop value pair you want and "
 
-         "extract it later with the GET_TARGET_PROPERTY command.\n"
 
-         "Properties that affect the name of a target's output file are "
 
-         "as follows.  "
 
-         "The PREFIX and SUFFIX properties override the default target name "
 
-         "prefix (such as \"lib\") and suffix (such as \".so\"). "
 
-         "IMPORT_PREFIX and IMPORT_SUFFIX are the equivalent properties for "
 
-         "the import library corresponding to a DLL "
 
-         "(for SHARED library targets).  "
 
-         "OUTPUT_NAME sets the real name of a target when it is built and "
 
-         "can be used to help create two targets of the same name even though "
 
-         "CMake requires unique logical target names.  There is also a "
 
-         "<CONFIG>_OUTPUT_NAME that can set the output name on a "
 
-         "per-configuration basis.  "
 
-         "<CONFIG>_POSTFIX sets a postfix for the real name of the target "
 
-         "when it is built under the configuration named by <CONFIG> "
 
-         "(in upper-case, such as \"DEBUG_POSTFIX\").  The value of "
 
-         "this property is initialized when the target is created to the "
 
-         "value of the variable CMAKE_<CONFIG>_POSTFIX (except for executable "
 
-         "targets because earlier CMake versions which did not use this "
 
-         "variable for executables)."
 
-         "\n"
 
-         "The LINK_FLAGS property can be used to add extra flags to the "
 
-         "link step of a target. LINK_FLAGS_<CONFIG> will add to the configuration "
 
-         "<CONFIG>, for example, DEBUG, RELEASE, MINSIZEREL, RELWITHDEBINFO. "
 
-         "DEFINE_SYMBOL sets the name of the preprocessor symbol defined when "
 
-         "compiling sources in a shared library. "
 
-         "If not set here then it is set to target_EXPORTS by default "
 
-         "(with some substitutions if the target is not a valid C "
 
-         "identifier). This is useful for headers to know whether they are "
 
-         "being included from inside their library our outside to properly "
 
-         "setup dllexport/dllimport decorations. "
 
-         "The COMPILE_FLAGS property sets additional compiler flags used "
 
-         "to build sources within the target.  It may also be used to pass "
 
-         "additional preprocessor definitions."
 
-         "\n"
 
-         "The LINKER_LANGUAGE property is used to change the tool "
 
-         "used to link an executable or shared library. The default is "
 
-         "set the language to match the files in the library. CXX and C "
 
-         "are common values for this property."
 
-         "\n"
 
-         "For shared libraries VERSION and SOVERSION can be used to specify "
 
-         "the build version and api version respectively. When building or "
 
-         "installing appropriate symlinks are created if the platform "
 
-         "supports symlinks and the linker supports so-names. "
 
-         "If only one of both is specified the missing is assumed to have "
 
-         "the same version number. "
 
-         "For executables VERSION can be used to specify the build version. "
 
-         "When building or installing appropriate symlinks are created if "
 
-         "the platform supports symlinks.\n"
 
-         "There are a few properties used to specify RPATH rules. "
 
-         "INSTALL_RPATH is a semicolon-separated list specifying the rpath "
 
-         "to use in installed targets (for platforms that support it). "
 
-         "SKIP_BUILD_RPATH is a boolean specifying whether to skip automatic "
 
-         "generation of an rpath allowing the target to run from the "
 
-         "build tree. "
 
-         "BUILD_WITH_INSTALL_RPATH is a boolean specifying whether to link "
 
-         "the target in the build tree with the INSTALL_RPATH.  This takes "
 
-         "precedence over SKIP_BUILD_RPATH and avoids the need for relinking "
 
-         "before installation.  INSTALL_NAME_DIR is a string specifying the "
 
-         "directory portion of the \"install_name\" field of shared libraries "
 
-         "on Mac OSX to use in the installed targets. "
 
-         "When the target is created the values of "
 
-         "the variables CMAKE_INSTALL_RPATH, CMAKE_SKIP_BUILD_RPATH, "
 
-         "CMAKE_BUILD_WITH_INSTALL_RPATH, and CMAKE_INSTALL_NAME_DIR "
 
-         "are used to initialize these properties.\n"
 
-         "PROJECT_LABEL can be used to change the name of "
 
-         "the target in an IDE like visual studio.  VS_KEYWORD can be set "
 
-         "to change the visual studio keyword, for example QT integration "
 
-         "works better if this is set to Qt4VSv1.0.\n"
 
-         "The PRE_INSTALL_SCRIPT and POST_INSTALL_SCRIPT properties are the "
 
-         "old way to specify CMake scripts to run before and after "
 
-         "installing a target.  They are used only when the old "
 
-         "INSTALL_TARGETS command is used to install the target.  Use the "
 
-         "INSTALL command instead."
 
-         ;
 
-     }
 
-   
 
-   cmTypeMacro(cmSetTargetPropertiesCommand, cmCommand);
 
- };
 
- #endif
 
 
  |