Go to main content

man pages section 7: Standards, Environments, Macros, Character Sets, and Miscellany

Exit Print View

Updated: Thursday, June 13, 2019
 
 

cmake-generators (7)

Name

cmake-generators - CMake Generators Reference

Synopsis

Please see following description for synopsis

Description

CMAKE-GENERATORS(7)                  CMake                 CMAKE-GENERATORS(7)



NAME
       cmake-generators - CMake Generators Reference

INTRODUCTION
       A  CMake  Generator  is  responsible  for writing the input files for a
       native build system.  Exactly one  of  the  CMake  Generators  must  be
       selected  for  a build tree to determine what native build system is to
       be used.  Optionally one of the Extra Generators may be selected  as  a
       variant  of  some  of the Command-Line Build Tool Generators to produce
       project files for an auxiliary IDE.

       CMake Generators are platform-specific so each may be available only on
       certain  platforms.  The cmake(1) command-line tool --help output lists
       available generators on the current platform.  Use  its  -G  option  to
       specify  the  generator  for a new build tree.  The cmake-gui(1) offers
       interactive selection of a generator when creating a new build tree.

CMAKE GENERATORS
   Command-Line Build Tool Generators
       These generators support command-line build tools.   In  order  to  use
       them,  one  must launch CMake from a command-line prompt whose environ-
       ment is already configured for the chosen compiler and build tool.

   Makefile Generators
   Borland Makefiles
       Generates Borland makefiles.

   MSYS Makefiles
       Generates makefiles for use with MSYS make under the MSYS shell.

       Use this generator in a MSYS shell prompt and using make as  the  build
       tool.  The generated makefiles use /bin/sh as the shell to launch build
       rules.  They are not compatible with a Windows command prompt.

       To build under a Windows command prompt, use the MinGW Makefiles gener-
       ator.

   MinGW Makefiles
       Generates  makefiles  for use with mingw32-make under a Windows command
       prompt.

       Use this generator under a Windows command prompt  with  MinGW  in  the
       PATH and using mingw32-make as the build tool.  The generated makefiles
       use cmd.exe as the shell to launch build rules.  They are not  compati-
       ble with MSYS or a unix shell.

       To build under the MSYS shell, use the MSYS Makefiles generator.

   NMake Makefiles
       Generates NMake makefiles.

   NMake Makefiles JOM
       Generates JOM makefiles.

   Unix Makefiles
       Generates standard UNIX makefiles.

       A  hierarchy  of  UNIX makefiles is generated into the build tree.  Any
       standard UNIX-style make program can  build  the  project  through  the
       default make target.  A "make install" target is also provided.

   Watcom WMake
       Generates Watcom WMake makefiles.

   Ninja Generator
   Ninja
       Generates build.ninja files.

       A  build.ninja  file is generated into the build tree.  Recent versions
       of the ninja program can build the project through  the  "all"  target.
       An "install" target is also provided.

   IDE Build Tool Generators
       These  generators  support  Integrated  Development  Environment  (IDE)
       project files.  Since the IDEs configure their own environment one  may
       launch CMake from any environment.

   Visual Studio Generators
   Visual Studio 6
       Deprected.  Generates Visual Studio 6 project files.

       NOTE:
          This generator is deprecated and will be removed in a future version
          of CMake.  It will still be possible to build with VS 6 tools  using
          the NMake Makefiles generator.

   Visual Studio 7
       Deprected.  Generates Visual Studio .NET 2002 project files.

       NOTE:
          This generator is deprecated and will be removed in a future version
          of CMake.  It will still be possible to  build  with  VS  7.0  tools
          using the NMake Makefiles generator.

   Visual Studio 7 .NET 2003
       Generates Visual Studio .NET 2003 project files.

   Visual Studio 8 2005
       Generates Visual Studio 8 2005 project files.

       The  CMAKE_GENERATOR_PLATFORM  variable  may be set to specify a target
       platform name.

       For compatibility with CMake versions prior to 3.1, one may  specify  a
       target platform name optionally at the end of this generator name:

       Visual Studio 8 2005 Win64
              Specify target platform x64.

       Visual Studio 8 2005 <WinCE-SDK>
              Specify target platform matching a Windows CE SDK name.

   Visual Studio 9 2008
       Generates Visual Studio 9 2008 project files.

       The  CMAKE_GENERATOR_PLATFORM  variable  may be set to specify a target
       platform name.

       For compatibility with CMake versions prior to 3.1, one may  specify  a
       target platform name optionally at the end of this generator name:

       Visual Studio 9 2008 Win64
              Specify target platform x64.

       Visual Studio 9 2008 IA64
              Specify target platform Itanium.

       Visual Studio 9 2008 <WinCE-SDK>
              Specify target platform matching a Windows CE SDK name.

   Visual Studio 10 2010
       Generates Visual Studio 10 (VS 2010) project files.

       The  CMAKE_GENERATOR_PLATFORM  variable  may be set to specify a target
       platform name.

       For compatibility with CMake versions prior to 3.1, one may  specify  a
       target platform name optionally at the end of this generator name:

       Visual Studio 10 2010 Win64
              Specify target platform x64.

       Visual Studio 10 2010 IA64
              Specify target platform Itanium.

       For  compatibility  with  CMake  versions prior to 3.0, one may specify
       this generator using the name Visual Studio 10 without the year  compo-
       nent.

   Visual Studio 11 2012
       Generates Visual Studio 11 (VS 2012) project files.

       The  CMAKE_GENERATOR_PLATFORM  variable  may be set to specify a target
       platform name.

       For compatibility with CMake versions prior to 3.1, one may  specify  a
       target platform name optionally at the end of this generator name:

       Visual Studio 11 2012 Win64
              Specify target platform x64.

       Visual Studio 11 2012 ARM
              Specify target platform ARM.

       Visual Studio 11 2012 <WinCE-SDK>
              Specify target platform matching a Windows CE SDK name.

       For  compatibility  with  CMake  versions prior to 3.0, one may specify
       this generator using the name "Visual Studio 11" without the year  com-
       ponent.

   Visual Studio 12 2013
       Generates Visual Studio 12 (VS 2013) project files.

       The  CMAKE_GENERATOR_PLATFORM  variable  may be set to specify a target
       platform name.

       For compatibility with CMake versions prior to 3.1, one may  specify  a
       target platform name optionally at the end of this generator name:

       Visual Studio 12 2013 Win64
              Specify target platform x64.

       Visual Studio 12 2013 ARM
              Specify target platform ARM.

       For  compatibility  with  CMake  versions prior to 3.0, one may specify
       this generator using the name "Visual Studio 12" without the year  com-
       ponent.

   Visual Studio 14 2015
       Generates Visual Studio 14 (VS 2015) project files.

       The  CMAKE_GENERATOR_PLATFORM  variable  may be set to specify a target
       platform name.

       For compatibility with CMake versions prior to 3.1, one may  specify  a
       target platform name optionally at the end of this generator name:

       Visual Studio 14 2015 Win64
              Specify target platform x64.

       Visual Studio 14 2015 ARM
              Specify target platform ARM.

   Other Generators
   Green Hills MULTI
       Generates    Green    Hills    MULTI   project   files   (experimental,
       work-in-progress).

       Customizations are available through the following cache variables:

       o GHS_BSP_NAME

       o GHS_CUSTOMIZATION

       o GHS_GPJ_MACROS

       o GHS_OS_DIR

       NOTE:
          This generator is deemed experimental as of CMake 3.3.2 and is still
          a  work  in  progress.   Future  versions of CMake may make breaking
          changes as the generator matures.

   Xcode
       Generate Xcode project files.

EXTRA GENERATORS
       Some of the CMake Generators listed in the cmake(1)  command-line  tool
       --help  output may have variants that specify an extra generator for an
       auxiliary IDE tool.  Such generator names have the form  <extra-genera-
       tor>  -  <main-generator>.  The following extra generators are known to
       CMake.

   CodeBlocks
       Generates CodeBlocks project files.

       Project files for CodeBlocks will be created in the top  directory  and
       in every subdirectory which features a CMakeLists.txt file containing a
       PROJECT() call.  Additionally a hierarchy  of  makefiles  is  generated
       into  the  build  tree.   The  appropriate  make  program can build the
       project through the default make target.  A "make  install"  target  is
       also provided.

       This "extra" generator may be specified as:

       CodeBlocks - MinGW Makefiles
              Generate with MinGW Makefiles.

       CodeBlocks - NMake Makefiles
              Generate with NMake Makefiles.

       CodeBlocks - Ninja
              Generate with Ninja.

       CodeBlocks - Unix Makefiles
              Generate with Unix Makefiles.

   CodeLite
       Generates CodeLite project files.

       Project  files for CodeLite will be created in the top directory and in
       every subdirectory which features a CMakeLists.txt  file  containing  a
       PROJECT()  call.  The  appropriate  make  program can build the project
       through the default make target.  A "make install" target is also  pro-
       vided.

       This "extra" generator may be specified as:

       CodeLite - MinGW Makefiles
              Generate with MinGW Makefiles.

       CodeLite - NMake Makefiles
              Generate with NMake Makefiles.

       CodeLite - Ninja
              Generate with Ninja.

       CodeLite - Unix Makefiles
              Generate with Unix Makefiles.

   Eclipse CDT4
       Generates Eclipse CDT 4.0 project files.

       Project files for Eclipse will be created in the top directory.  In out
       of source builds, a linked resource to the top level  source  directory
       will  be  created.   Additionally a hierarchy of makefiles is generated
       into the build tree.   The  appropriate  make  program  can  build  the
       project  through  the  default make target.  A "make install" target is
       also provided.

       This "extra" generator may be specified as:

       Eclipse CDT4 - MinGW Makefiles
              Generate with MinGW Makefiles.

       Eclipse CDT4 - NMake Makefiles
              Generate with NMake Makefiles.

       Eclipse CDT4 - Ninja
              Generate with Ninja.

       Eclipse CDT4 - Unix Makefiles
              Generate with Unix Makefiles.

   KDevelop3
       Generates KDevelop 3 project files.

       Project files for KDevelop 3 will be created in the top  directory  and
       in every subdirectory which features a CMakeLists.txt file containing a
       PROJECT() call.  If you change the settings using KDevelop  cmake  will
       try  its best to keep your changes when regenerating the project files.
       Additionally a hierarchy of UNIX makefiles is generated into the  build
       tree.   Any  standard  UNIX-style  make  program  can build the project
       through the default make target.  A "make install" target is also  pro-
       vided.

       This "extra" generator may be specified as:

       KDevelop3 - Unix Makefiles
              Generate with Unix Makefiles.

       KDevelop3
              Generate with Unix Makefiles.

              For  historical  reasons  this  extra generator may be specified
              directly as the main generator and it will be used as the  extra
              generator with Unix Makefiles automatically.

   Kate
       Generates Kate project files.

       A project file for Kate will be created in the top directory in the top
       level build directory.  To use it in kate, the Project plugin  must  be
       enabled.  The project file is loaded in kate simply by opening the Pro-
       jectName.kateproject file in the editor.  If the kate  Build-plugin  is
       enabled, all targets generated by CMake are available for building.

       This "extra" generator may be specified as:

       Kate - MinGW Makefiles
              Generate with MinGW Makefiles.

       Kate - NMake Makefiles
              Generate with NMake Makefiles.

       Kate - Ninja
              Generate with Ninja.

       Kate - Unix Makefiles
              Generate with Unix Makefiles.

   Sublime Text 2
       Generates Sublime Text 2 project files.

       Project  files  for Sublime Text 2 will be created in the top directory
       and in every subdirectory which features a CMakeLists.txt file contain-
       ing  a  PROJECT()  call.  Additionally Makefiles (or build.ninja files)
       are generated into the build tree.  The appropriate  make  program  can
       build  the  project  through the default make target.  A "make install"
       target is also provided.

       This "extra" generator may be specified as:

       Sublime Text 2 - MinGW Makefiles
              Generate with MinGW Makefiles.

       Sublime Text 2 - NMake Makefiles
              Generate with NMake Makefiles.

       Sublime Text 2 - Ninja
              Generate with Ninja.

       Sublime Text 2 - Unix Makefiles
              Generate with Unix Makefiles.

COPYRIGHT
       2000-2015 Kitware, Inc.



ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | developer/build/cmake |
       +---------------+-----------------------+
       |Stability      | Uncommitted           |
       +---------------+-----------------------+
NOTES
       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source                was                downloaded                from
       http://www.cmake.org/files/v3.9/cmake-3.9.1.tar.gz

       Further information about this software can be found on the open source
       community website at http://www.cmake.org/.



3.3.2                          October 14, 2015            CMAKE-GENERATORS(7)