cmake version 2.6-patch 4
------------------------------------------------------------------------------
Introduction

cmake-compatcommands - Reference of CMake compatibility commands.

------------------------------------------------------------------------------
Compatibility Commands

  CMake Compatibility Listfile Commands - Obsolete commands supported by CMake for compatibility.

This is the documentation for now obsolete listfile commands from previous
CMake versions, which are still supported for compatibility reasons.  You
should instead use the newer, faster and shinier new commands.  ;-)

  build_name
       Deprecated.  Use ${CMAKE_SYSTEM} and ${CMAKE_CXX_COMPILER} instead.

         build_name(variable)

       Sets the specified variable to a string representing the platform and
       compiler settings.  These values are now available through the
       CMAKE_SYSTEM and CMAKE_CXX_COMPILER variables.

  exec_program
       Deprecated.  Use the execute_process() command instead.

       Run an executable program during the processing of the CMakeList.txt
       file.

         exec_program(Executable [directory in which to run]
                      [ARGS <arguments to executable>]
                      [OUTPUT_VARIABLE <var>]
                      [RETURN_VALUE <var>])

       The executable is run in the optionally specified directory.  The
       executable can include arguments if it is double quoted, but it is
       better to use the optional ARGS argument to specify arguments to the
       program.  This is because cmake will then be able to escape spaces in
       the executable path.  An optional argument OUTPUT_VARIABLE specifies a
       variable in which to store the output.  To capture the return value of
       the execution, provide a RETURN_VALUE.  If OUTPUT_VARIABLE is
       specified, then no output will go to the stdout/stderr of the console
       running cmake.


  export_library_dependencies
       Deprecated.  Use INSTALL(EXPORT) or EXPORT command.

       This command generates an old-style library dependencies file.
       Projects requiring CMake 2.6 or later should not use the command.  Use
       instead the install(EXPORT) command to help export targets from an
       installation tree and the export() command to export targets from a
       build tree.

       The old-style library dependencies file does not take into account
       per-configuration names of libraries or the LINK_INTERFACE_LIBRARIES
       target property.

         export_library_dependencies(<file> [APPEND])

       Create a file named <file> that can be included into a CMake listfile
       with the INCLUDE command.  The file will contain a number of SET
       commands that will set all the variables needed for library dependency
       information.  This should be the last command in the top level
       CMakeLists.txt file of the project.  If the APPEND option is
       specified, the SET commands will be appended to the given file instead
       of replacing it.

  install_files
       Deprecated.  Use the install(FILES ) command instead.

       This command has been superceded by the install command.  It is
       provided for compatibility with older CMake code.  The FILES form is
       directly replaced by the FILES form of the install command.  The
       regexp form can be expressed more clearly using the GLOB form of the
       file command.

         install_files(<dir> extension file file ...)

       Create rules to install the listed files with the given extension into
       the given directory.  Only files existing in the current source tree
       or its corresponding location in the binary tree may be listed.  If a
       file specified already has an extension, that extension will be
       removed first.  This is useful for providing lists of source files
       such as foo.cxx when you want the corresponding foo.h to be installed.
       A typical extension is '.h'.

         install_files(<dir> regexp)

       Any files in the current source directory that match the regular
       expression will be installed.

         install_files(<dir> FILES file file ...)

       Any files listed after the FILES keyword will be installed explicitly
       from the names given.  Full paths are allowed in this form.

       The directory <dir> is relative to the installation prefix, which is
       stored in the variable CMAKE_INSTALL_PREFIX.

  install_programs
       Deprecated.  Use the install(PROGRAMS ) command instead.

       This command has been superceded by the install command.  It is
       provided for compatibility with older CMake code.  The FILES form is
       directly replaced by the PROGRAMS form of the INSTALL command.  The
       regexp form can be expressed more clearly using the GLOB form of the
       FILE command.

         install_programs(<dir> file1 file2 [file3 ...])
         install_programs(<dir> FILES file1 [file2 ...])

       Create rules to install the listed programs into the given directory.
       Use the FILES argument to guarantee that the file list version of the
       command will be used even when there is only one argument.

         install_programs(<dir> regexp)

       In the second form any program in the current source directory that
       matches the regular expression will be installed.

       This command is intended to install programs that are not built by
       cmake, such as shell scripts.  See the TARGETS form of the INSTALL
       command to create installation rules for targets built by cmake.

       The directory <dir> is relative to the installation prefix, which is
       stored in the variable CMAKE_INSTALL_PREFIX.

  install_targets
       Deprecated.  Use the install(TARGETS ) command instead.

       This command has been superceded by the install command.  It is
       provided for compatibility with older CMake code.

         install_targets(<dir> [RUNTIME_DIRECTORY dir] target target)

       Create rules to install the listed targets into the given directory.
       The directory <dir> is relative to the installation prefix, which is
       stored in the variable CMAKE_INSTALL_PREFIX.  If RUNTIME_DIRECTORY is
       specified, then on systems with special runtime files (Windows DLL),
       the files will be copied to that directory.

  link_libraries
       Deprecated.  Use the target_link_libraries() command instead.

       Link libraries to all targets added later.

         link_libraries(library1 <debug | optimized> library2 ...)

       Specify a list of libraries to be linked into any following targets
       (typically added with the add_executable or add_library calls).  This
       command is passed down to all subdirectories.  The debug and optimized
       strings may be used to indicate that the next library listed is to be
       used only for that specific type of build.

  make_directory
       Deprecated.  Use the file(MAKE_DIRECTORY ) command instead.

         make_directory(directory)

       Creates the specified directory.  Full paths should be given.  Any
       parent directories that do not exist will also be created.  Use with
       care.

  remove
       Deprecated.  Use the list(REMOVE_ITEM ) command instead.

         remove(VAR VALUE VALUE ...)

       Removes VALUE from the variable VAR.  This is typically used to remove
       entries from a vector (e.g.  semicolon separated list).  VALUE is
       expanded.

  subdir_depends
       Deprecated.  Does nothing.

         subdir_depends(subdir dep1 dep2 ...)

       Does not do anything.  This command used to help projects order
       parallel builds correctly.  This functionality is now automatic.

  subdirs
       Deprecated.  Use the add_subdirectory() command instead.

       Add a list of subdirectories to the build.

         subdirs(dir1 dir2 ...[EXCLUDE_FROM_ALL exclude_dir1 exclude_dir2 ...] [PREORDER] )

       Add a list of subdirectories to the build.  The add_subdirectory
       command should be used instead of subdirs although subdirs will still
       work.  This will cause any CMakeLists.txt files in the sub directories
       to be processed by CMake.  Any directories after the PREORDER flag are
       traversed first by makefile builds, the PREORDER flag has no effect on
       IDE projects.  Any directories after the EXCLUDE_FROM_ALL marker will
       not be included in the top level makefile or project file.  This is
       useful for having CMake create makefiles or projects for a set of
       examples in a project.  You would want CMake to generate makefiles or
       project files for all the examples at the same time, but you would not
       want them to show up in the top level project or be built each time
       make is run from the top.

  use_mangled_mesa
       Copy mesa headers for use in combination with system GL.

         use_mangled_mesa(PATH_TO_MESA OUTPUT_DIRECTORY)

       The path to mesa includes, should contain gl_mangle.h.  The mesa
       headers are copied to the specified output directory.  This allows
       mangled mesa headers to override other GL headers by being added to
       the include directory path earlier.

  utility_source
       Specify the source tree of a third-party utility.

         utility_source(cache_entry executable_name
                        path_to_source [file1 file2 ...])

       When a third-party utility's source is included in the distribution,
       this command specifies its location and name.  The cache entry will
       not be set unless the path_to_source and all listed files exist.  It
       is assumed that the source tree of the utility will have been built
       before it is needed.

       When cross compiling CMake will print a warning if a utility_source()
       command is executed, because in many cases it is used to build an
       executable which is executed later on.  This doesn't work when cross
       compiling, since the executable can run only on their target platform.
       So in this case the cache entry has to be adjusted manually so it
       points to an executable which is runnable on the build host.

  variable_requires
       Deprecated.  Use the if() command instead.

       Assert satisfaction of an option's required variables.

         variable_requires(TEST_VARIABLE RESULT_VARIABLE
                           REQUIRED_VARIABLE1
                           REQUIRED_VARIABLE2 ...)

       The first argument (TEST_VARIABLE) is the name of the variable to be
       tested, if that variable is false nothing else is done.  If
       TEST_VARIABLE is true, then the next argument (RESULT_VARIABLE) is a
       variable that is set to true if all the required variables are set.
       The rest of the arguments are variables that must be true or not set
       to NOTFOUND to avoid an error.  If any are not true, an error is
       reported.

  write_file
       Deprecated.  Use the file(WRITE ) command instead.

         write_file(filename "message to write"... [APPEND])

       The first argument is the file name, the rest of the arguments are
       messages to write.  If the argument APPEND is specified, then the
       message will be appended.

       NOTE 1: file(WRITE ...  and file(APPEND ...  do exactly the same as
       this one but add some more functionality.

       NOTE 2: When using write_file the produced file cannot be used as an
       input to CMake (CONFIGURE_FILE, source file ...) because it will lead
       to an infinite loop.  Use configure_file if you want to generate input
       files to CMake.

------------------------------------------------------------------------------
Copyright

Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

The names of Kitware, Inc., the Insight Consortium, or the names of any
consortium members, or of any contributors, may not be used to endorse or
promote products derived from this software without specific prior written
permission.

Modified source versions must be plainly marked as such, and must not be
misrepresented as being the original software.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS ``AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

------------------------------------------------------------------------------
See Also

The following resources are available to get help using CMake:

  Home Page
       http://www.cmake.org

       The primary starting point for learning about CMake.

  Frequently Asked Questions
       http://www.cmake.org/Wiki/CMake_FAQ

       A Wiki is provided containing answers to frequently asked questions.

  Online Documentation
       http://www.cmake.org/HTML/Documentation.html

       Links to available documentation may be found on this web page.

  Mailing List
       http://www.cmake.org/HTML/MailingLists.html

       For help and discussion about using cmake, a mailing list is provided
       at cmake@cmake.org.  The list is member-post-only but one may sign up
       on the CMake web page.  Please first read the full documentation at
       http://www.cmake.org before posting questions to the list.

Summary of helpful links:

  Home: http://www.cmake.org
  Docs: http://www.cmake.org/HTML/Documentation.html
  Mail: http://www.cmake.org/HTML/MailingLists.html
  FAQ:  http://www.cmake.org/Wiki/CMake_FAQ


