1cmakevars(1) General Commands Manual cmakevars(1)
2
3
4
6 cmakevars - Reference of CMake variables.
7
8
10 variables defined by cmake, that give information about the project,
11 and cmake
12
13
14 CMAKE_AR
15 Name of archiving tool for static libraries.
16
17 This specifies name of the program that creates archive or
18 static libraries.
19
20
21 CMAKE_BINARY_DIR
22 The path to the top level of the build tree.
23
24 This is the full path to the top level of the current CMake
25 build tree. For an in-source build, this would be the same as
26 CMAKE_SOURCE_DIR.
27
28
29 CMAKE_BUILD_TOOL
30 Tool used for the actual build process.
31
32 This variable is set to the program that will be needed to build
33 the output of CMake. If the generator selected was Visual Stu‐
34 dio 6, the CMAKE_MAKE_PROGRAM will be set to msdev, for Unix
35 makefiles it will be set to make or gmake, and for Visual Studio
36 7 it set to devenv. For Nmake Makefiles the value is nmake.
37 This can be useful for adding special flags and commands based
38 on the final build environment.
39
40
41 CMAKE_CACHEFILE_DIR
42 The directory with the CMakeCache.txt file.
43
44 This is the full path to the directory that has the CMake‐
45 Cache.txt file in it. This is the same as CMAKE_BINARY_DIR.
46
47
48 CMAKE_CACHE_MAJOR_VERSION
49 Major version of CMake used to create the CMakeCache.txt file
50
51 This is stores the major version of CMake used to write a CMake
52 cache file. It is only different when a different version of
53 CMake is run on a previously created cache file.
54
55
56 CMAKE_CACHE_MINOR_VERSION
57 Minor version of CMake used to create the CMakeCache.txt file
58
59 This is stores the minor version of CMake used to write a CMake
60 cache file. It is only different when a different version of
61 CMake is run on a previously created cache file.
62
63
64 CMAKE_CACHE_PATCH_VERSION
65 Patch version of CMake used to create the CMakeCache.txt file
66
67 This is stores the patch version of CMake used to write a CMake
68 cache file. It is only different when a different version of
69 CMake is run on a previously created cache file.
70
71
72 CMAKE_CFG_INTDIR
73 Build-time reference to per-configuration output subdirectory.
74
75 For native build systems supporting multiple configurations in
76 the build tree (such as Visual Studio and Xcode), the value is a
77 reference to a build-time variable specifying the name of the
78 per-configuration output subdirectory. On Makefile generators
79 this evaluates to "." because there is only one configuration in
80 a build tree. Example values:
81
82
83 $(IntDir) = Visual Studio 6
84 $(OutDir) = Visual Studio 7, 8, 9
85 $(Configuration) = Visual Studio 10
86 $(CONFIGURATION) = Xcode
87 . = Make-based tools
88
89 Since these values are evaluated by the native build system,
90 this variable is suitable only for use in command lines that
91 will be evaluated at build time. Example of intended usage:
92
93
94 add_executable(mytool mytool.c)
95 add_custom_command(
96 OUTPUT out.txt
97 COMMAND ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/mytool
98 ${CMAKE_CURRENT_SOURCE_DIR}/in.txt out.txt
99 DEPENDS mytool in.txt
100 )
101 add_custom_target(drive ALL DEPENDS out.txt)
102
103 Note that CMAKE_CFG_INTDIR is no longer necessary for this pur‐
104 pose but has been left for compatibility with existing projects.
105 Instead add_custom_command() recognizes executable target names
106 in its COMMAND option, so "${CMAKE_CUR‐
107 RENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/mytool" can be replaced by
108 just "mytool".
109
110
111 This variable is read-only. Setting it is undefined behavior.
112 In multi-configuration build systems the value of this variable
113 is passed as the value of preprocessor symbol "CMAKE_INTDIR" to
114 the compilation of all source files.
115
116
117 CMAKE_COMMAND
118 The full path to the cmake executable.
119
120 This is the full path to the CMake executable cmake which is
121 useful from custom commands that want to use the cmake -E option
122 for portable system commands. (e.g. /usr/local/bin/cmake
123
124
125 CMAKE_CROSSCOMPILING
126 Is CMake currently cross compiling.
127
128 This variable will be set to true by CMake if CMake is cross
129 compiling. Specifically if the build platform is different from
130 the target platform.
131
132
133 CMAKE_CTEST_COMMAND
134 Full path to ctest command installed with cmake.
135
136 This is the full path to the CTest executable ctest which is
137 useful from custom commands that want to use the cmake -E
138 option for portable system commands.
139
140
141 CMAKE_CURRENT_BINARY_DIR
142 The path to the binary directory currently being processed.
143
144 This the full path to the build directory that is currently
145 being processed by cmake. Each directory added by add_subdirec‐
146 tory will create a binary directory in the build tree, and as it
147 is being processed this variable will be set. For in-source
148 builds this is the current source directory being processed.
149
150
151 CMAKE_CURRENT_LIST_DIR
152 Full directory of the listfile currently being processed.
153
154 As CMake processes the listfiles in your project this variable
155 will always be set to the directory where the listfile which is
156 currently being processed (CMAKE_CURRENT_LIST_FILE) is located.
157 The value has dynamic scope. When CMake starts processing com‐
158 mands in a source file it sets this variable to the directory
159 where this file is located. When CMake finishes processing com‐
160 mands from the file it restores the previous value. Therefore
161 the value of the variable inside a macro or function is the
162 directory of the file invoking the bottom-most entry on the call
163 stack, not the directory of the file containing the macro or
164 function definition.
165
166
167 See also CMAKE_CURRENT_LIST_FILE.
168
169
170 CMAKE_CURRENT_LIST_FILE
171 Full path to the listfile currently being processed.
172
173 As CMake processes the listfiles in your project this variable
174 will always be set to the one currently being processed. The
175 value has dynamic scope. When CMake starts processing commands
176 in a source file it sets this variable to the location of the
177 file. When CMake finishes processing commands from the file it
178 restores the previous value. Therefore the value of the vari‐
179 able inside a macro or function is the file invoking the bot‐
180 tom-most entry on the call stack, not the file containing the
181 macro or function definition.
182
183
184 See also CMAKE_PARENT_LIST_FILE.
185
186
187 CMAKE_CURRENT_LIST_LINE
188 The line number of the current file being processed.
189
190 This is the line number of the file currently being processed by
191 cmake.
192
193
194 CMAKE_CURRENT_SOURCE_DIR
195 The path to the source directory currently being processed.
196
197 This the full path to the source directory that is currently
198 being processed by cmake.
199
200
201 CMAKE_DL_LIBS
202 Name of library containing dlopen and dlcose.
203
204 The name of the library that has dlopen and dlclose in it, usu‐
205 ally -ldl on most UNIX machines.
206
207
208 CMAKE_EDIT_COMMAND
209 Full path to cmake-gui or ccmake.
210
211 This is the full path to the CMake executable that can graphi‐
212 cally edit the cache. For example, cmake-gui, ccmake, or cmake
213 -i.
214
215
216 CMAKE_EXECUTABLE_SUFFIX
217 The suffix for executables on this platform.
218
219 The suffix to use for the end of an executable if any, .exe on
220 Windows.
221
222
223 CMAKE_EXECUTABLE_SUFFIX_<LANG> overrides this for language
224 <LANG>.
225
226
227 CMAKE_EXTRA_GENERATOR
228 The extra generator used to build the project.
229
230 When using the Eclipse, CodeBlocks or KDevelop generators, CMake
231 generates Makefiles (CMAKE_GENERATOR) and additionally project
232 files for the respective IDE. This IDE project file generator is
233 stored in CMAKE_EXTRA_GENERATOR (e.g. "Eclipse CDT4").
234
235
236 CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES
237 Additional suffixes for shared libraries.
238
239 Extensions for shared libraries other than that specified by
240 CMAKE_SHARED_LIBRARY_SUFFIX, if any. CMake uses this to recog‐
241 nize external shared library files during analysis of libraries
242 linked by a target.
243
244
245 CMAKE_GENERATOR
246 The generator used to build the project.
247
248 The name of the generator that is being used to generate the
249 build files. (e.g. "Unix Makefiles", "Visual Studio 6", etc.)
250
251
252 CMAKE_HOME_DIRECTORY
253 Path to top of source tree.
254
255 This is the path to the top level of the source tree.
256
257
258 CMAKE_IMPORT_LIBRARY_PREFIX
259 The prefix for import libraries that you link to.
260
261 The prefix to use for the name of an import library if used on
262 this platform.
263
264
265 CMAKE_IMPORT_LIBRARY_PREFIX_<LANG> overrides this for language
266 <LANG>.
267
268
269 CMAKE_IMPORT_LIBRARY_SUFFIX
270 The suffix for import libraries that you link to.
271
272 The suffix to use for the end of an import library if used on
273 this platform.
274
275
276 CMAKE_IMPORT_LIBRARY_SUFFIX_<LANG> overrides this for language
277 <LANG>.
278
279
280 CMAKE_LINK_LIBRARY_SUFFIX
281 The suffix for libraries that you link to.
282
283 The suffix to use for the end of a library, .lib on Windows.
284
285
286 CMAKE_MAJOR_VERSION
287 The Major version of cmake (i.e. the 2 in 2.X.X)
288
289 This specifies the major version of the CMake executable being
290 run.
291
292
293 CMAKE_MAKE_PROGRAM
294 See CMAKE_BUILD_TOOL.
295
296 This variable is around for backwards compatibility, see
297 CMAKE_BUILD_TOOL.
298
299
300 CMAKE_MINOR_VERSION
301 The Minor version of cmake (i.e. the 4 in X.4.X).
302
303 This specifies the minor version of the CMake executable being
304 run.
305
306
307 CMAKE_PARENT_LIST_FILE
308 Full path to the parent listfile of the one currently being pro‐
309 cessed.
310
311 As CMake processes the listfiles in your project this variable
312 will always be set to the listfile that included or somehow
313 invoked the one currently being processed. See also CMAKE_CUR‐
314 RENT_LIST_FILE.
315
316
317 CMAKE_PATCH_VERSION
318 The patch version of cmake (i.e. the 3 in X.X.3).
319
320 This specifies the patch version of the CMake executable being
321 run.
322
323
324 CMAKE_PROJECT_NAME
325 The name of the current project.
326
327 This specifies name of the current project from the closest
328 inherited PROJECT command.
329
330
331 CMAKE_RANLIB
332 Name of randomizing tool for static libraries.
333
334 This specifies name of the program that randomizes libraries on
335 UNIX, not used on Windows, but may be present.
336
337
338 CMAKE_ROOT
339 Install directory for running cmake.
340
341 This is the install root for the running CMake and the Modules
342 directory can be found here. This is commonly used in this for‐
343 mat: ${CMAKE_ROOT}/Modules
344
345
346 CMAKE_SHARED_LIBRARY_PREFIX
347 The prefix for shared libraries that you link to.
348
349 The prefix to use for the name of a shared library, lib on UNIX.
350
351
352 CMAKE_SHARED_LIBRARY_PREFIX_<LANG> overrides this for language
353 <LANG>.
354
355
356 CMAKE_SHARED_LIBRARY_SUFFIX
357 The suffix for shared libraries that you link to.
358
359 The suffix to use for the end of a shared library, .dll on Win‐
360 dows.
361
362
363 CMAKE_SHARED_LIBRARY_SUFFIX_<LANG> overrides this for language
364 <LANG>.
365
366
367 CMAKE_SHARED_MODULE_PREFIX
368 The prefix for loadable modules that you link to.
369
370 The prefix to use for the name of a loadable module on this
371 platform.
372
373
374 CMAKE_SHARED_MODULE_PREFIX_<LANG> overrides this for language
375 <LANG>.
376
377
378 CMAKE_SHARED_MODULE_SUFFIX
379 The suffix for shared libraries that you link to.
380
381 The suffix to use for the end of a loadable module on this plat‐
382 form
383
384
385 CMAKE_SHARED_MODULE_SUFFIX_<LANG> overrides this for language
386 <LANG>.
387
388
389 CMAKE_SIZEOF_VOID_P
390 Size of a void pointer.
391
392 This is set to the size of a pointer on the machine, and is
393 determined by a try compile. If a 64 bit size is found, then the
394 library search path is modified to look for 64 bit libraries
395 first.
396
397
398 CMAKE_SKIP_RPATH
399 If true, do not add run time path information.
400
401 If this is set to TRUE, then the rpath information is not added
402 to compiled executables. The default is to add rpath informa‐
403 tion if the platform supports it.This allows for easy running
404 from the build tree.
405
406
407 CMAKE_SOURCE_DIR
408 The path to the top level of the source tree.
409
410 This is the full path to the top level of the current CMake
411 source tree. For an in-source build, this would be the same as
412 CMAKE_BINARY_DIR.
413
414
415 CMAKE_STANDARD_LIBRARIES
416 Libraries linked into every executable and shared library.
417
418 This is the list of libraries that are linked into all executa‐
419 bles and libraries.
420
421
422 CMAKE_STATIC_LIBRARY_PREFIX
423 The prefix for static libraries that you link to.
424
425 The prefix to use for the name of a static library, lib on UNIX.
426
427
428 CMAKE_STATIC_LIBRARY_PREFIX_<LANG> overrides this for language
429 <LANG>.
430
431
432 CMAKE_STATIC_LIBRARY_SUFFIX
433 The suffix for static libraries that you link to.
434
435 The suffix to use for the end of a static library, .lib on Win‐
436 dows.
437
438
439 CMAKE_STATIC_LIBRARY_SUFFIX_<LANG> overrides this for language
440 <LANG>.
441
442
443 CMAKE_TWEAK_VERSION
444 The tweak version of cmake (i.e. the 1 in X.X.X.1).
445
446 This specifies the tweak version of the CMake executable being
447 run. Releases use tweak < 20000000 and development versions use
448 the date format CCYYMMDD for the tweak level.
449
450
451 CMAKE_USING_VC_FREE_TOOLS
452 True if free visual studio tools being used.
453
454 This is set to true if the compiler is Visual Studio free tools.
455
456
457 CMAKE_VERBOSE_MAKEFILE
458 Create verbose makefiles if on.
459
460 This variable defaults to false. You can set this variable to
461 true to make CMake produce verbose makefiles that show each com‐
462 mand line as it is used.
463
464
465 CMAKE_VERSION
466 The full version of cmake in major.minor.patch[.tweak[-id]] for‐
467 mat.
468
469 This specifies the full version of the CMake executable being
470 run. This variable is defined by versions 2.6.3 and higher.
471 See variables CMAKE_MAJOR_VERSION, CMAKE_MINOR_VERSION,
472 CMAKE_PATCH_VERSION, and CMAKE_TWEAK_VERSION for individual ver‐
473 sion components. The [-id] component appears in non-release
474 versions and may be arbitrary text.
475
476
477 PROJECT_BINARY_DIR
478 Full path to build directory for project.
479
480 This is the binary directory of the most recent PROJECT command.
481
482
483 PROJECT_NAME
484 Name of the project given to the project command.
485
486 This is the name given to the most recent PROJECT command.
487
488
489 PROJECT_SOURCE_DIR
490 Top level source directory for the current project.
491
492 This is the source directory of the most recent PROJECT command.
493
494
495 [Project name]_BINARY_DIR
496 Top level binary directory for the named project.
497
498 A variable is created with the name used in the PROJECT command,
499 and is the binary directory for the project. This can be use‐
500 ful when SUBDIR is used to connect several projects.
501
502
503 [Project name]_SOURCE_DIR
504 Top level source directory for the named project.
505
506 A variable is created with the name used in the PROJECT command,
507 and is the source directory for the project. This can be use‐
508 ful when add_subdirectory is used to connect several projects.
509
510
512 BUILD_SHARED_LIBS
513 Global flag to cause add_library to create shared libraries if
514 on.
515
516 If present and true, this will cause all libraries to be built
517 shared unless the library was explicitly added as a static
518 library. This variable is often added to projects as an OPTION
519 so that each user of a project can decide if they want to build
520 the project using shared or static libraries.
521
522
523 CMAKE_BACKWARDS_COMPATIBILITY
524 Version of cmake required to build project
525
526 From the point of view of backwards compatibility, this speci‐
527 fies what version of CMake should be supported. By default this
528 value is the version number of CMake that you are running. You
529 can set this to an older version of CMake to support deprecated
530 commands of CMake in projects that were written to use older
531 versions of CMake. This can be set by the user or set at the
532 beginning of a CMakeLists file.
533
534
535 CMAKE_BUILD_TYPE
536 Specifies the build type for make based generators.
537
538 This specifies what build type will be built in this tree. Pos‐
539 sible values are empty, Debug, Release, RelWithDebInfo and Min‐
540 SizeRel. This variable is only supported for make based genera‐
541 tors. If this variable is supported, then CMake will also pro‐
542 vide initial values for the variables with the name
543 CMAKE_C_FLAGS_[Debug|Release|RelWithDebInfo|MinSizeRel]. For
544 example, if CMAKE_BUILD_TYPE is Debug, then CMAKE_C_FLAGS_DEBUG
545 will be added to the CMAKE_C_FLAGS.
546
547
548 CMAKE_COLOR_MAKEFILE
549 Enables color output when using the Makefile generator.
550
551 When enabled, the generated Makefiles will produce colored out‐
552 put. Default is ON.
553
554
555 CMAKE_CONFIGURATION_TYPES
556 Specifies the available build types.
557
558 This specifies what build types will be available such as Debug,
559 Release, RelWithDebInfo etc. This has reasonable defaults on
560 most platforms. But can be extended to provide other build
561 types. See also CMAKE_BUILD_TYPE.
562
563
564 CMAKE_FIND_LIBRARY_PREFIXES
565 Prefixes to prepend when looking for libraries.
566
567 This specifies what prefixes to add to library names when the
568 find_library command looks for libraries. On UNIX systems this
569 is typically lib, meaning that when trying to find the foo
570 library it will look for libfoo.
571
572
573 CMAKE_FIND_LIBRARY_SUFFIXES
574 Suffixes to append when looking for libraries.
575
576 This specifies what suffixes to add to library names when the
577 find_library command looks for libraries. On Windows systems
578 this is typically .lib and .dll, meaning that when trying to
579 find the foo library it will look for foo.dll etc.
580
581
582 CMAKE_IGNORE_PATH
583 Path to be ignored by FIND_XXX() commands.
584
585 Specifies directories to be ignored by searches in FIND_XXX()
586 commands This is useful in cross-compiled environments where
587 some system directories contain incompatible but possibly link‐
588 able libraries. For example, on cross-compiled cluster environ‐
589 ments, this allows a user to ignore directories containing
590 libraries meant for the front-end machine that modules like
591 FindX11 (and others) would normally search. By default this is
592 empty; it is intended to be set by the project. Note that
593 CMAKE_IGNORE_PATH takes a list of directory names, NOT a list of
594 prefixes. If you want to ignore paths under prefixes (bin,
595 include, lib, etc.), you'll need to specify them explicitly. See
596 also CMAKE_PREFIX_PATH, CMAKE_LIBRARY_PATH, CMAKE_INCLUDE_PATH,
597 CMAKE_PROGRAM_PATH.
598
599
600 CMAKE_INCLUDE_PATH
601 Path used for searching by FIND_FILE() and FIND_PATH().
602
603 Specifies a path which will be used both by FIND_FILE() and
604 FIND_PATH(). Both commands will check each of the contained
605 directories for the existence of the file which is currently
606 searched. By default it is empty, it is intended to be set by
607 the project. See also CMAKE_SYSTEM_INCLUDE_PATH, CMAKE_PRE‐
608 FIX_PATH.
609
610
611 CMAKE_INSTALL_PREFIX
612 Install directory used by install.
613
614 If "make install" is invoked or INSTALL is built, this directory
615 is pre-pended onto all install directories. This variable
616 defaults to /usr/local on UNIX and c:/Program Files on Windows.
617
618
619 CMAKE_LIBRARY_PATH
620 Path used for searching by FIND_LIBRARY().
621
622 Specifies a path which will be used by FIND_LIBRARY().
623 FIND_LIBRARY() will check each of the contained directories for
624 the existence of the library which is currently searched. By
625 default it is empty, it is intended to be set by the project.
626 See also CMAKE_SYSTEM_LIBRARY_PATH, CMAKE_PREFIX_PATH.
627
628
629 CMAKE_MFC_FLAG
630 Tell cmake to use MFC for an executable or dll.
631
632 This can be set in a CMakeLists.txt file and will enable MFC in
633 the application. It should be set to 1 for static the static
634 MFC library, and 2 for the shared MFC library. This is used in
635 visual studio 6 and 7 project files. The CMakeSetup dialog
636 used MFC and the CMakeLists.txt looks like this:
637
638
639 add_definitions(-D_AFXDLL)
640
641
642 set(CMAKE_MFC_FLAG 2)
643
644
645 add_executable(CMakeSetup WIN32 ${SRCS})
646
647
648
649 CMAKE_MODULE_PATH
650 List of directories to search for CMake modules.
651
652 Commands like include() and find_package() search for files in
653 directories listed by this variable before checking the default
654 modules that come with CMake.
655
656
657 CMAKE_NOT_USING_CONFIG_FLAGS
658 Skip _BUILD_TYPE flags if true.
659
660 This is an internal flag used by the generators in CMake to tell
661 CMake to skip the _BUILD_TYPE flags.
662
663
664 CMAKE_POLICY_DEFAULT_CMP<NNNN>
665 Default for CMake Policy CMP<NNNN> when it is otherwise left
666 unset.
667
668 Commands cmake_minimum_required(VERSION) and cmake_policy(VER‐
669 SION) by default leave policies introduced after the given ver‐
670 sion unset. Set CMAKE_POLICY_DEFAULT_CMP<NNNN> to OLD or NEW to
671 specify the default for policy CMP<NNNN>, where <NNNN> is the
672 policy number.
673
674
675 This variable should not be set by a project in CMake code; use
676 cmake_policy(SET) instead. Users running CMake may set this
677 variable in the cache (e.g. -DCMAKE_POL‐
678 ICY_DEFAULT_CMP<NNNN>=<OLD|NEW>) to set a policy not otherwise
679 set by the project. Set to OLD to quiet a policy warning while
680 using old behavior or to NEW to try building the project with
681 new behavior.
682
683
684 CMAKE_PREFIX_PATH
685 Path used for searching by FIND_XXX(), with appropriate suffixes
686 added.
687
688 Specifies a path which will be used by the FIND_XXX() commands.
689 It contains the "base" directories, the FIND_XXX() commands
690 append appropriate subdirectories to the base directories. So
691 FIND_PROGRAM() adds /bin to each of the directories in the path,
692 FIND_LIBRARY() appends /lib to each of the directories, and
693 FIND_PATH() and FIND_FILE() append /include . By default it is
694 empty, it is intended to be set by the project. See also
695 CMAKE_SYSTEM_PREFIX_PATH, CMAKE_INCLUDE_PATH,
696 CMAKE_LIBRARY_PATH, CMAKE_PROGRAM_PATH.
697
698
699 CMAKE_PROGRAM_PATH
700 Path used for searching by FIND_PROGRAM().
701
702 Specifies a path which will be used by FIND_PROGRAM(). FIND_PRO‐
703 GRAM() will check each of the contained directories for the
704 existence of the program which is currently searched. By default
705 it is empty, it is intended to be set by the project. See also
706 CMAKE_SYSTEM_PROGRAM_PATH, CMAKE_PREFIX_PATH.
707
708
709 CMAKE_SKIP_INSTALL_ALL_DEPENDENCY
710 Don't make the install target depend on the all target.
711
712 By default, the "install" target depends on the "all" target.
713 This has the effect, that when "make install" is invoked or
714 INSTALL is built, first the "all" target is built, then the
715 installation starts. If CMAKE_SKIP_INSTALL_ALL_DEPENDENCY is set
716 to TRUE, this dependency is not created, so the installation
717 process will start immediately, independent from whether the
718 project has been completely built or not.
719
720
721 CMAKE_SYSTEM_IGNORE_PATH
722 Path to be ignored by FIND_XXX() commands.
723
724 Specifies directories to be ignored by searches in FIND_XXX()
725 commands This is useful in cross-compiled environments where
726 some system directories contain incompatible but possibly link‐
727 able libraries. For example, on cross-compiled cluster environ‐
728 ments, this allows a user to ignore directories containing
729 libraries meant for the front-end machine that modules like
730 FindX11 (and others) would normally search. By default this con‐
731 tains a list of directories containing incompatible binaries for
732 the host system. See also CMAKE_SYSTEM_PREFIX_PATH, CMAKE_SYS‐
733 TEM_LIBRARY_PATH, CMAKE_SYSTEM_INCLUDE_PATH, and CMAKE_SYS‐
734 TEM_PROGRAM_PATH.
735
736
737 CMAKE_SYSTEM_INCLUDE_PATH
738 Path used for searching by FIND_FILE() and FIND_PATH().
739
740 Specifies a path which will be used both by FIND_FILE() and
741 FIND_PATH(). Both commands will check each of the contained
742 directories for the existence of the file which is currently
743 searched. By default it contains the standard directories for
744 the current system. It is NOT intended to be modified by the
745 project, use CMAKE_INCLUDE_PATH for this. See also CMAKE_SYS‐
746 TEM_PREFIX_PATH.
747
748
749 CMAKE_SYSTEM_LIBRARY_PATH
750 Path used for searching by FIND_LIBRARY().
751
752 Specifies a path which will be used by FIND_LIBRARY().
753 FIND_LIBRARY() will check each of the contained directories for
754 the existence of the library which is currently searched. By
755 default it contains the standard directories for the current
756 system. It is NOT intended to be modified by the project, use
757 CMAKE_LIBRARY_PATH for this. See also CMAKE_SYSTEM_PREFIX_PATH.
758
759
760 CMAKE_SYSTEM_PREFIX_PATH
761 Path used for searching by FIND_XXX(), with appropriate suffixes
762 added.
763
764 Specifies a path which will be used by the FIND_XXX() commands.
765 It contains the "base" directories, the FIND_XXX() commands
766 append appropriate subdirectories to the base directories. So
767 FIND_PROGRAM() adds /bin to each of the directories in the path,
768 FIND_LIBRARY() appends /lib to each of the directories, and
769 FIND_PATH() and FIND_FILE() append /include . By default this
770 contains the standard directories for the current system. It is
771 NOT intended to be modified by the project, use CMAKE_PRE‐
772 FIX_PATH for this. See also CMAKE_SYSTEM_INCLUDE_PATH,
773 CMAKE_SYSTEM_LIBRARY_PATH, CMAKE_SYSTEM_PROGRAM_PATH, and
774 CMAKE_SYSTEM_IGNORE_PATH.
775
776
777 CMAKE_SYSTEM_PROGRAM_PATH
778 Path used for searching by FIND_PROGRAM().
779
780 Specifies a path which will be used by FIND_PROGRAM(). FIND_PRO‐
781 GRAM() will check each of the contained directories for the
782 existence of the program which is currently searched. By default
783 it contains the standard directories for the current system. It
784 is NOT intended to be modified by the project, use CMAKE_PRO‐
785 GRAM_PATH for this. See also CMAKE_SYSTEM_PREFIX_PATH.
786
787
788 CMAKE_USER_MAKE_RULES_OVERRIDE
789 Specify a CMake file that overrides platform information.
790
791 CMake loads the specified file while enabling support for each
792 language from either the project() or enable_language() com‐
793 mands. It is loaded after CMake's builtin compiler and platform
794 information modules have been loaded but before the information
795 is used. The file may set platform information variables to
796 override CMake's defaults.
797
798
799 This feature is intended for use only in overriding information
800 variables that must be set before CMake builds its first test
801 project to check that the compiler for a language works. It
802 should not be used to load a file in cases that a normal
803 include() will work. Use it only as a last resort for behavior
804 that cannot be achieved any other way. For example, one may set
805 CMAKE_C_FLAGS_INIT to change the default value used to initial‐
806 ize CMAKE_C_FLAGS before it is cached. The override file should
807 NOT be used to set anything that could be set after languages
808 are enabled, such as variables like CMAKE_RUNTIME_OUTPUT_DIREC‐
809 TORY that affect the placement of binaries. Information set in
810 the file will be used for try_compile and try_run builds too.
811
812
814 APPLE True if running on Mac OSX.
815
816 Set to true on Mac OSX.
817
818
819 BORLAND
820 True of the borland compiler is being used.
821
822 This is set to true if the Borland compiler is being used.
823
824
825 CMAKE_CL_64
826 Using the 64 bit compiler from Microsoft
827
828 Set to true when using the 64 bit cl compiler from Microsoft.
829
830
831 CMAKE_COMPILER_2005
832 Using the Visual Studio 2005 compiler from Microsoft
833
834 Set to true when using the Visual Studio 2005 compiler from Mi‐
835 crosoft.
836
837
838 CMAKE_HOST_APPLE
839 True for Apple OSXoperating systems.
840
841 Set to true when the host system is Apple OSX.
842
843
844 CMAKE_HOST_SYSTEM
845 Name of system cmake is being run on.
846
847 The same as CMAKE_SYSTEM but for the host system instead of the
848 target system when cross compiling.
849
850
851 CMAKE_HOST_SYSTEM_NAME
852 Name of the OS CMake is running on.
853
854 The same as CMAKE_SYSTEM_NAME but for the host system instead of
855 the target system when cross compiling.
856
857
858 CMAKE_HOST_SYSTEM_PROCESSOR
859 The name of the CPU CMake is running on.
860
861 The same as CMAKE_SYSTEM_PROCESSOR but for the host system
862 instead of the target system when cross compiling.
863
864
865 CMAKE_HOST_SYSTEM_VERSION
866 OS version CMake is running on.
867
868 The same as CMAKE_SYSTEM_VERSION but for the host system instead
869 of the target system when cross compiling.
870
871
872 CMAKE_HOST_UNIX
873 True for UNIX and UNIX like operating systems.
874
875 Set to true when the host system is UNIX or UNIX like (i.e.
876 APPLE and CYGWIN).
877
878
879 CMAKE_HOST_WIN32
880 True on windows systems, including win64.
881
882 Set to true when the host system is Windows and on cygwin.
883
884
885 CMAKE_OBJECT_PATH_MAX
886 Maximum object file full-path length allowed by native build
887 tools.
888
889 CMake computes for every source file an object file name that is
890 unique to the source file and deterministic with respect to the
891 full path to the source file. This allows multiple source files
892 in a target to share the same name if they lie in different
893 directories without rebuilding when one is added or removed.
894 However, it can produce long full paths in a few cases, so CMake
895 shortens the path using a hashing scheme when the full path to
896 an object file exceeds a limit. CMake has a built-in limit for
897 each platform that is sufficient for common tools, but some
898 native tools may have a lower limit. This variable may be set
899 to specify the limit explicitly. The value must be an integer
900 no less than 128.
901
902
903 CMAKE_SYSTEM
904 Name of system cmake is compiling for.
905
906 This variable is the composite of CMAKE_SYSTEM_NAME and
907 CMAKE_SYSTEM_VERSION, like this ${CMAKE_SYS‐
908 TEM_NAME}-${CMAKE_SYSTEM_VERSION}. If CMAKE_SYSTEM_VERSION is
909 not set, then CMAKE_SYSTEM is the same as CMAKE_SYSTEM_NAME.
910
911
912 CMAKE_SYSTEM_NAME
913 Name of the OS CMake is building for.
914
915 This is the name of the operating system on which CMake is tar‐
916 geting. On systems that have the uname command, this variable
917 is set to the output of uname -s. Linux, Windows, and Darwin
918 for Mac OSX are the values found on the big three operating
919 systems.
920
921
922 CMAKE_SYSTEM_PROCESSOR
923 The name of the CPU CMake is building for.
924
925 On systems that support uname, this variable is set to the out‐
926 put of uname -p, on windows it is set to the value of the envi‐
927 ronment variable PROCESSOR_ARCHITECTURE
928
929
930 CMAKE_SYSTEM_VERSION
931 OS version CMake is building for.
932
933 A numeric version string for the system, on systems that support
934 uname, this variable is set to the output of uname -r. On other
935 systems this is set to major-minor version numbers.
936
937
938 CYGWIN True for cygwin.
939
940 Set to true when using CYGWIN.
941
942
943 MSVC True when using Microsoft Visual C
944
945 Set to true when the compiler is some version of Microsoft Vis‐
946 ual C.
947
948
949 MSVC80 True when using Microsoft Visual C 8.0
950
951 Set to true when the compiler is version 8.0 of Microsoft Visual
952 C.
953
954
955 MSVC_IDE
956 True when using the Microsoft Visual C IDE
957
958 Set to true when the target platform is the Microsoft Visual C
959 IDE, as opposed to the command line compiler.
960
961
962 MSVC_VERSION
963 The version of Microsoft Visual C/C++ being used if any.
964
965 Known version numbers are:
966
967
968 1200 = VS 6.0
969 1300 = VS 7.0
970 1310 = VS 7.1
971 1400 = VS 8.0
972 1500 = VS 9.0
973 1600 = VS 10.0
974
975
976 UNIX True for UNIX and UNIX like operating systems.
977
978 Set to true when the target system is UNIX or UNIX like (i.e.
979 APPLE and CYGWIN).
980
981
982 WIN32 True on windows systems, including win64.
983
984 Set to true when the target system is Windows and on cygwin.
985
986
987 XCODE_VERSION
988 Version of Xcode (Xcode generator only).
989
990 Under the Xcode generator, this is the version of Xcode as spec‐
991 ified in "Xcode.app/Contents/version.plist" (such as "3.1.2").
992
993
995 CMAKE_<CONFIG>_POSTFIX
996 Default filename postfix for libraries under configuration <CON‐
997 FIG>.
998
999 When a non-executable target is created its <CONFIG>_POSTFIX
1000 target property is initialized with the value of this variable
1001 if it is set.
1002
1003
1004 CMAKE_ARCHIVE_OUTPUT_DIRECTORY
1005 Where to put all the ARCHIVE targets when built.
1006
1007 This variable is used to initialize the ARCHIVE_OUTPUT_DIRECTORY
1008 property on all the targets. See that target property for addi‐
1009 tional information.
1010
1011
1012 CMAKE_BUILD_WITH_INSTALL_RPATH
1013 Use the install path for the RPATH
1014
1015 Normally CMake uses the build tree for the RPATH when building
1016 executables etc on systems that use RPATH. When the software is
1017 installed the executables etc are relinked by CMake to have the
1018 install RPATH. If this variable is set to true then the software
1019 is always built with the install path for the RPATH and does not
1020 need to be relinked when installed.
1021
1022
1023 CMAKE_DEBUG_POSTFIX
1024 See variable CMAKE_<CONFIG>_POSTFIX.
1025
1026 This variable is a special case of the more-general CMAKE_<CON‐
1027 FIG>_POSTFIX variable for the DEBUG configuration.
1028
1029
1030 CMAKE_EXE_LINKER_FLAGS
1031 Linker flags used to create executables.
1032
1033 Flags used by the linker when creating an executable.
1034
1035
1036 CMAKE_EXE_LINKER_FLAGS_[CMAKE_BUILD_TYPE]
1037 Flag used when linking an executable.
1038
1039 Same as CMAKE_C_FLAGS_* but used by the linker when creating
1040 executables.
1041
1042
1043 CMAKE_Fortran_MODULE_DIRECTORY
1044 Fortran module output directory.
1045
1046 This variable is used to initialize the Fortran_MODULE_DIRECTORY
1047 property on all the targets. See that target property for addi‐
1048 tional information.
1049
1050
1051 CMAKE_INCLUDE_CURRENT_DIR
1052 Automatically add the current source- and build directories to
1053 the include path.
1054
1055 If this variable is enabled, CMake automatically adds in each
1056 directory ${CMAKE_CURRENT_SOURCE_DIR} and ${CMAKE_CUR‐
1057 RENT_BINARY_DIR} to the include path for this directory. These
1058 additional include directories do not propagate down to subdi‐
1059 rectories. This is useful mainly for out-of-source builds, where
1060 files generated into the build tree are included by files
1061 located in the source tree.
1062
1063
1064 By default CMAKE_INCLUDE_CURRENT_DIR is OFF.
1065
1066
1067 CMAKE_INSTALL_NAME_DIR
1068 Mac OSX directory name for installed targets.
1069
1070 CMAKE_INSTALL_NAME_DIR is used to initialize the
1071 INSTALL_NAME_DIR property on all targets. See that target prop‐
1072 erty for more information.
1073
1074
1075 CMAKE_INSTALL_RPATH
1076 The rpath to use for installed targets.
1077
1078 A semicolon-separated list specifying the rpath to use in
1079 installed targets (for platforms that support it). This is used
1080 to initialize the target property INSTALL_RPATH for all targets.
1081
1082
1083 CMAKE_INSTALL_RPATH_USE_LINK_PATH
1084 Add paths to linker search and installed rpath.
1085
1086 CMAKE_INSTALL_RPATH_USE_LINK_PATH is a boolean that if set to
1087 true will append directories in the linker search path and out‐
1088 side the project to the INSTALL_RPATH. This is used to initial‐
1089 ize the target property INSTALL_RPATH_USE_LINK_PATH for all tar‐
1090 gets.
1091
1092
1093 CMAKE_LIBRARY_OUTPUT_DIRECTORY
1094 Where to put all the LIBRARY targets when built.
1095
1096 This variable is used to initialize the LIBRARY_OUTPUT_DIRECTORY
1097 property on all the targets. See that target property for addi‐
1098 tional information.
1099
1100
1101 CMAKE_LIBRARY_PATH_FLAG
1102 The flag used to add a library search path to a compiler.
1103
1104 The flag used to specify a library directory to the compiler. On
1105 most compilers this is "-L".
1106
1107
1108 CMAKE_LINK_DEF_FILE_FLAG
1109 Linker flag used to specify a .def file for dll creation.
1110
1111 The flag used to add a .def file when creating a dll on Windows,
1112 this is only defined on Windows.
1113
1114
1115 CMAKE_LINK_LIBRARY_FILE_FLAG
1116 Flag used to link a library specified by a path to its file.
1117
1118 The flag used before a library file path is given to the linker.
1119 This is needed only on very few platforms.
1120
1121
1122 CMAKE_LINK_LIBRARY_FLAG
1123 Flag used to link a library into an executable.
1124
1125 The flag used to specify a library to link to an executable. On
1126 most compilers this is "-l".
1127
1128
1129 CMAKE_NO_BUILTIN_CHRPATH
1130 Do not use the builtin ELF editor to fix RPATHs on installation.
1131
1132 When an ELF binary needs to have a different RPATH after instal‐
1133 lation than it does in the build tree, CMake uses a builtin edi‐
1134 tor to change the RPATH in the installed copy. If this variable
1135 is set to true then CMake will relink the binary before instal‐
1136 lation instead of using its builtin editor.
1137
1138
1139 CMAKE_RUNTIME_OUTPUT_DIRECTORY
1140 Where to put all the RUNTIME targets when built.
1141
1142 This variable is used to initialize the RUNTIME_OUTPUT_DIRECTORY
1143 property on all the targets. See that target property for addi‐
1144 tional information.
1145
1146
1147 CMAKE_SKIP_BUILD_RPATH
1148 Do not include RPATHs in the build tree.
1149
1150 Normally CMake uses the build tree for the RPATH when building
1151 executables etc on systems that use RPATH. When the software is
1152 installed the executables etc are relinked by CMake to have the
1153 install RPATH. If this variable is set to true then the software
1154 is always built with no RPATH.
1155
1156
1157 CMAKE_TRY_COMPILE_CONFIGURATION
1158 Build configuration used for try_compile and try_run projects.
1159
1160 Projects built by try_compile and try_run are built syn‐
1161 chronously during the CMake configuration step. Therefore a
1162 specific build configuration must be chosen even if the gener‐
1163 ated build system supports multiple configurations.
1164
1165
1166 CMAKE_USE_RELATIVE_PATHS
1167 Use relative paths (May not work!).
1168
1169 If this is set to TRUE, then the CMake will use relative paths
1170 between the source and binary tree. This option does not work
1171 for more complicated projects, and relative paths are used when
1172 possible. In general, it is not possible to move CMake gener‐
1173 ated makefiles to a different location regardless of the value
1174 of this variable.
1175
1176
1177 EXECUTABLE_OUTPUT_PATH
1178 Old executable location variable.
1179
1180 The target property RUNTIME_OUTPUT_DIRECTORY supercedes this
1181 variable for a target if it is set. Executable targets are oth‐
1182 erwise placed in this directory.
1183
1184
1185 LIBRARY_OUTPUT_PATH
1186 Old library location variable.
1187
1188 The target properties ARCHIVE_OUTPUT_DIRECTORY, LIBRARY_OUT‐
1189 PUT_DIRECTORY, and RUNTIME_OUTPUT_DIRECTORY supercede this vari‐
1190 able for a target if they are set. Library targets are other‐
1191 wise placed in this directory.
1192
1193
1195 CMAKE_<LANG>_ARCHIVE_APPEND
1196 Rule variable to append to a static archive.
1197
1198 This is a rule variable that tells CMake how to append to a
1199 static archive. It is used in place of CMAKE_<LANG>_CRE‐
1200 ATE_STATIC_LIBRARY on some platforms in order to support large
1201 object counts. See also CMAKE_<LANG>_ARCHIVE_CREATE and
1202 CMAKE_<LANG>_ARCHIVE_FINISH.
1203
1204
1205 CMAKE_<LANG>_ARCHIVE_CREATE
1206 Rule variable to create a new static archive.
1207
1208 This is a rule variable that tells CMake how to create a static
1209 archive. It is used in place of CMAKE_<LANG>_CRE‐
1210 ATE_STATIC_LIBRARY on some platforms in order to support large
1211 object counts. See also CMAKE_<LANG>_ARCHIVE_APPEND and
1212 CMAKE_<LANG>_ARCHIVE_FINISH.
1213
1214
1215 CMAKE_<LANG>_ARCHIVE_FINISH
1216 Rule variable to finish an existing static archive.
1217
1218 This is a rule variable that tells CMake how to finish a static
1219 archive. It is used in place of CMAKE_<LANG>_CRE‐
1220 ATE_STATIC_LIBRARY on some platforms in order to support large
1221 object counts. See also CMAKE_<LANG>_ARCHIVE_CREATE and
1222 CMAKE_<LANG>_ARCHIVE_APPEND.
1223
1224
1225 CMAKE_<LANG>_COMPILER
1226 The full path to the compiler for LANG.
1227
1228 This is the command that will be used as the <LANG> compiler.
1229 Once set, you can not change this variable.
1230
1231
1232 CMAKE_<LANG>_COMPILER_ABI
1233 An internal variable subject to change.
1234
1235 This is used in determining the compiler ABI and is subject to
1236 change.
1237
1238
1239 CMAKE_<LANG>_COMPILER_ID
1240 An internal variable subject to change.
1241
1242 This is used in determining the compiler and is subject to
1243 change.
1244
1245
1246 CMAKE_<LANG>_COMPILER_LOADED
1247 Defined to true if the language is enabled.
1248
1249 When language <LANG> is enabled by project() or enable_lan‐
1250 guage() this variable is defined to 1.
1251
1252
1253 CMAKE_<LANG>_COMPILE_OBJECT
1254 Rule variable to compile a single object file.
1255
1256 This is a rule variable that tells CMake how to compile a single
1257 object file for for the language <LANG>.
1258
1259
1260 CMAKE_<LANG>_CREATE_SHARED_LIBRARY
1261 Rule variable to create a shared library.
1262
1263 This is a rule variable that tells CMake how to create a shared
1264 library for the language <LANG>.
1265
1266
1267 CMAKE_<LANG>_CREATE_SHARED_MODULE
1268 Rule variable to create a shared module.
1269
1270 This is a rule variable that tells CMake how to create a shared
1271 library for the language <LANG>.
1272
1273
1274 CMAKE_<LANG>_CREATE_STATIC_LIBRARY
1275 Rule variable to create a static library.
1276
1277 This is a rule variable that tells CMake how to create a static
1278 library for the language <LANG>.
1279
1280
1281 CMAKE_<LANG>_FLAGS_DEBUG
1282 Flags for Debug build type or configuration.
1283
1284 <LANG> flags used when CMAKE_BUILD_TYPE is Debug.
1285
1286
1287 CMAKE_<LANG>_FLAGS_MINSIZEREL
1288 Flags for MinSizeRel build type or configuration.
1289
1290 <LANG> flags used when CMAKE_BUILD_TYPE is MinSizeRel.Short for
1291 minimum size release.
1292
1293
1294 CMAKE_<LANG>_FLAGS_RELEASE
1295 Flags for Release build type or configuration.
1296
1297 <LANG> flags used when CMAKE_BUILD_TYPE is Release
1298
1299
1300 CMAKE_<LANG>_FLAGS_RELWITHDEBINFO
1301 Flags for RelWithDebInfo type or configuration.
1302
1303 <LANG> flags used when CMAKE_BUILD_TYPE is RelWithDebInfo. Short
1304 for Release With Debug Information.
1305
1306
1307 CMAKE_<LANG>_IGNORE_EXTENSIONS
1308 File extensions that should be ignored by the build.
1309
1310 This is a list of file extensions that may be part of a project
1311 for a given language but are not compiled.
1312
1313
1314 CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES
1315 Directories implicitly searched by the compiler for header
1316 files.
1317
1318 CMake does not explicitly specify these directories on compiler
1319 command lines for language <LANG>. This prevents system include
1320 directories from being treated as user include directories on
1321 some compilers.
1322
1323
1324 CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES
1325 Implicit linker search path detected for language <LANG>.
1326
1327 Compilers typically pass directories containing language runtime
1328 libraries and default library search paths when they invoke a
1329 linker. These paths are implicit linker search directories for
1330 the compiler's language. CMake automatically detects these
1331 directories for each language and reports the results in this
1332 variable.
1333
1334
1335 CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES
1336 Implicit link libraries and flags detected for language <LANG>.
1337
1338 Compilers typically pass language runtime library names and
1339 other flags when they invoke a linker. These flags are implicit
1340 link options for the compiler's language. CMake automatically
1341 detects these libraries and flags for each language and reports
1342 the results in this variable.
1343
1344
1345 CMAKE_<LANG>_LINKER_PREFERENCE
1346 Preference value for linker language selection.
1347
1348 The "linker language" for executable, shared library, and module
1349 targets is the language whose compiler will invoke the linker.
1350 The LINKER_LANGUAGE target property sets the language explic‐
1351 itly. Otherwise, the linker language is that whose linker pref‐
1352 erence value is highest among languages compiled and linked into
1353 the target. See also the CMAKE_<LANG>_LINKER_PREFERENCE_PROPA‐
1354 GATES variable.
1355
1356
1357 CMAKE_<LANG>_LINKER_PREFERENCE_PROPAGATES
1358 True if CMAKE_<LANG>_LINKER_PREFERENCE propagates across tar‐
1359 gets.
1360
1361 This is used when CMake selects a linker language for a target.
1362 Languages compiled directly into the target are always consid‐
1363 ered. A language compiled into static libraries linked by the
1364 target is considered if this variable is true.
1365
1366
1367 CMAKE_<LANG>_LINK_EXECUTABLE
1368 Rule variable to link and executable.
1369
1370 Rule variable to link and executable for the given language.
1371
1372
1373 CMAKE_<LANG>_OUTPUT_EXTENSION
1374 Extension for the output of a compile for a single file.
1375
1376 This is the extension for an object file for the given <LANG>.
1377 For example .obj for C on Windows.
1378
1379
1380 CMAKE_<LANG>_PLATFORM_ID
1381 An internal variable subject to change.
1382
1383 This is used in determining the platform and is subject to
1384 change.
1385
1386
1387 CMAKE_<LANG>_SIZEOF_DATA_PTR
1388 Size of pointer-to-data types for language <LANG>.
1389
1390 This holds the size (in bytes) of pointer-to-data types in the
1391 target platform ABI. It is defined for languages C and CXX
1392 (C++).
1393
1394
1395 CMAKE_<LANG>_SOURCE_FILE_EXTENSIONS
1396 Extensions of source files for the given language.
1397
1398 This is the list of extensions for a given languages source
1399 files.
1400
1401
1402 CMAKE_COMPILER_IS_GNU<LANG>
1403 True if the compiler is GNU.
1404
1405 If the selected <LANG> compiler is the GNU compiler then this is
1406 TRUE, if not it is FALSE.
1407
1408
1409 CMAKE_Fortran_MODDIR_DEFAULT
1410 Fortran default module output directory.
1411
1412 Most Fortran compilers write .mod files to the current working
1413 directory. For those that do not, this is set to "." and used
1414 when the Fortran_MODULE_DIRECTORY target property is not set.
1415
1416
1417 CMAKE_Fortran_MODDIR_FLAG
1418 Fortran flag for module output directory.
1419
1420 This stores the flag needed to pass the value of the For‐
1421 tran_MODULE_DIRECTORY target property to the compiler.
1422
1423
1424 CMAKE_Fortran_MODOUT_FLAG
1425 Fortran flag to enable module output.
1426
1427 Most Fortran compilers write .mod files out by default. For
1428 others, this stores the flag needed to enable module output.
1429
1430
1431 CMAKE_INTERNAL_PLATFORM_ABI
1432 An internal variable subject to change.
1433
1434 This is used in determining the compiler ABI and is subject to
1435 change.
1436
1437
1438 CMAKE_USER_MAKE_RULES_OVERRIDE_<LANG>
1439 Specify a CMake file that overrides platform information for
1440 <LANG>.
1441
1442 This is a language-specific version of
1443 CMAKE_USER_MAKE_RULES_OVERRIDE loaded only when enabling lan‐
1444 guage <LANG>.
1445
1446
1448 Copyright 2000-2009 Kitware, Inc., Insight Software Consortium. All
1449 rights reserved.
1450
1451
1452 Redistribution and use in source and binary forms, with or without mod‐
1453 ification, are permitted provided that the following conditions are
1454 met:
1455
1456
1457 Redistributions of source code must retain the above copyright notice,
1458 this list of conditions and the following disclaimer.
1459
1460
1461 Redistributions in binary form must reproduce the above copyright
1462 notice, this list of conditions and the following disclaimer in the
1463 documentation and/or other materials provided with the distribution.
1464
1465
1466 Neither the names of Kitware, Inc., the Insight Software Consortium,
1467 nor the names of their contributors may be used to endorse or promote
1468 products derived from this software without specific prior written per‐
1469 mission.
1470
1471
1472 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
1473 IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
1474 TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTIC‐
1475 ULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
1476 CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
1477 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
1478 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
1479 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
1480 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1481 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
1482 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1483
1484
1486 The following resources are available to get help using CMake:
1487
1488
1489 Home Page
1490 http://www.cmake.org
1491
1492 The primary starting point for learning about CMake.
1493
1494
1495 Frequently Asked Questions
1496 http://www.cmake.org/Wiki/CMake_FAQ
1497
1498 A Wiki is provided containing answers to frequently asked ques‐
1499 tions.
1500
1501
1502 Online Documentation
1503 http://www.cmake.org/HTML/Documentation.html
1504
1505 Links to available documentation may be found on this web page.
1506
1507
1508 Mailing List
1509 http://www.cmake.org/HTML/MailingLists.html
1510
1511 For help and discussion about using cmake, a mailing list is
1512 provided at cmake@cmake.org. The list is member-post-only but
1513 one may sign up on the CMake web page. Please first read the
1514 full documentation at http://www.cmake.org before posting ques‐
1515 tions to the list.
1516
1517
1518 Summary of helpful links:
1519
1520
1521 Home: http://www.cmake.org
1522 Docs: http://www.cmake.org/HTML/Documentation.html
1523 Mail: http://www.cmake.org/HTML/MailingLists.html
1524 FAQ: http://www.cmake.org/Wiki/CMake_FAQ
1525
1526
1527
1528
1529cmake 2.8.4 March 31, 2011 cmakevars(1)