| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | 
							- set_target_properties
 
- ---------------------
 
- Targets can have properties that affect how they are built.
 
- ::
 
-   set_target_properties(target1 target2 ...
 
-                         PROPERTIES prop1 value1
 
-                         prop2 value2 ...)
 
- 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.
 
- 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).
 
- 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 or 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.
 
- 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.
 
- 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.  For shared libraries and executables on
 
- Windows the VERSION attribute is parsed to extract a "major.minor"
 
- version number.  These numbers are used as the image version of the
 
- binary.
 
- 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).  INSTALL_RPATH_USE_LINK_PATH
 
- is a boolean that if set to true will append directories in the linker
 
- search path and outside the project to the INSTALL_RPATH.
 
- 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_INSTALL_RPATH_USE_LINK_PATH, CMAKE_SKIP_BUILD_RPATH,
 
- CMAKE_BUILD_WITH_INSTALL_RPATH, and CMAKE_INSTALL_NAME_DIR are used to
 
- initialize these properties.
 
- 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.
 
- VS_SCC_PROJECTNAME, VS_SCC_LOCALPATH, VS_SCC_PROVIDER and
 
- VS_SCC_AUXPATH can be set to add support for source control bindings
 
- in a Visual Studio project file.
 
- VS_GLOBAL_<variable> can be set to add a Visual Studio
 
- project-specific global variable.  Qt integration works better if
 
- VS_GLOBAL_QtVersion is set to the Qt version FindQt4.cmake found.  For
 
- example, "4.7.3"
 
- 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.
 
- The EXCLUDE_FROM_DEFAULT_BUILD property is used by the visual studio
 
- generators.  If it is set to 1 the target will not be part of the
 
- default build when you select "Build Solution".  This can also be set
 
- on a per-configuration basis using
 
- EXCLUDE_FROM_DEFAULT_BUILD_<CONFIG>.
 
 
  |