Skip to content
This repository was archived by the owner on Feb 9, 2022. It is now read-only.

Commit 64a0e38

Browse files
committed
updated git attributes
1 parent 502e08d commit 64a0e38

2,874 files changed

Lines changed: 166578 additions & 1 deletion

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitattributes

Lines changed: 95 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,98 @@
22
*.jpg filter=lfs diff=lfs merge=lfs -text
33
*.png filter=lfs diff=lfs merge=lfs -text
44
*.ppm filter=lfs diff=lfs merge=lfs -text
5-
*.json filter=lfs diff=lfs merge=lfs -text
5+
*.json filter=lfs diff=lfs merge=lfs -text
6+
7+
# source code
8+
*.php text
9+
*.css text
10+
*.sass text
11+
*.scss text
12+
*.less text
13+
*.styl text
14+
*.js text
15+
*.coffee text
16+
*.json text
17+
*.htm text
18+
*.html text
19+
*.xml text
20+
*.svg text
21+
*.txt text
22+
*.ini text
23+
*.inc text
24+
*.pl text
25+
*.rb text
26+
*.py text
27+
*.scm text
28+
*.sql text
29+
*.sh text
30+
*.bat text
31+
32+
# templates
33+
*.ejs text
34+
*.hbt text
35+
*.jade text
36+
*.haml text
37+
*.hbs text
38+
*.dot text
39+
*.tmpl text
40+
*.phtml text
41+
42+
# server config
43+
.htaccess text
44+
45+
# git config
46+
.gitattributes text
47+
.gitignore text
48+
.gitconfig text
49+
50+
# code analysis config
51+
.jshintrc text
52+
.jscsrc text
53+
.jshintignore text
54+
.csslintrc text
55+
56+
# misc config
57+
*.yaml text
58+
*.yml text
59+
.editorconfig text
60+
61+
# build config
62+
*.npmignore text
63+
*.bowerrc text
64+
65+
# Heroku
66+
Procfile text
67+
.slugignore text
68+
69+
# Documentation
70+
*.md text
71+
LICENSE text
72+
AUTHORS text
73+
74+
75+
#
76+
## These files are binary and should be left untouched
77+
#
78+
79+
# (binary is a macro for -text -diff)
80+
*.png binary
81+
*.jpg binary
82+
*.jpeg binary
83+
*.gif binary
84+
*.ico binary
85+
*.mov binary
86+
*.mp4 binary
87+
*.mp3 binary
88+
*.flv binary
89+
*.fla binary
90+
*.swf binary
91+
*.gz binary
92+
*.zip binary
93+
*.7z binary
94+
*.ttf binary
95+
*.eot binary
96+
*.woff binary
97+
*.pyc binary
98+
*.pdf binary
99+
*.fbx binary
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
2+
.. versionadded:: 3.18
3+
When a device link step is involved, which is controlled by
4+
:prop_tgt:`CUDA_SEPARABLE_COMPILATION` and
5+
:prop_tgt:`CUDA_RESOLVE_DEVICE_SYMBOLS` properties and policy :policy:`CMP0105`,
6+
the raw options will be delivered to the host and device link steps (wrapped in
7+
``-Xcompiler`` or equivalent for device link). Options wrapped with
8+
``$<DEVICE_LINK:...>``
9+
:manual:`generator expression <cmake-generator-expressions(7)>` will be used
10+
only for the device link step. Options wrapped with ``$<HOST_LINK:...>``
11+
:manual:`generator expression <cmake-generator-expressions(7)>` will be used
12+
only for the host link step.
Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
A short-hand signature is:
2+
3+
.. parsed-literal::
4+
5+
|FIND_XXX| (<VAR> name1 [path1 path2 ...])
6+
7+
The general signature is:
8+
9+
.. parsed-literal::
10+
11+
|FIND_XXX| (
12+
<VAR>
13+
name | |NAMES|
14+
[HINTS path1 [path2 ... ENV var]]
15+
[PATHS path1 [path2 ... ENV var]]
16+
[PATH_SUFFIXES suffix1 [suffix2 ...]]
17+
[DOC "cache documentation string"]
18+
[REQUIRED]
19+
[NO_DEFAULT_PATH]
20+
[NO_PACKAGE_ROOT_PATH]
21+
[NO_CMAKE_PATH]
22+
[NO_CMAKE_ENVIRONMENT_PATH]
23+
[NO_SYSTEM_ENVIRONMENT_PATH]
24+
[NO_CMAKE_SYSTEM_PATH]
25+
[CMAKE_FIND_ROOT_PATH_BOTH |
26+
ONLY_CMAKE_FIND_ROOT_PATH |
27+
NO_CMAKE_FIND_ROOT_PATH]
28+
)
29+
30+
This command is used to find a |SEARCH_XXX_DESC|.
31+
A cache entry named by ``<VAR>`` is created to store the result
32+
of this command.
33+
If the |SEARCH_XXX| is found the result is stored in the variable
34+
and the search will not be repeated unless the variable is cleared.
35+
If nothing is found, the result will be ``<VAR>-NOTFOUND``.
36+
37+
Options include:
38+
39+
``NAMES``
40+
Specify one or more possible names for the |SEARCH_XXX|.
41+
42+
When using this to specify names with and without a version
43+
suffix, we recommend specifying the unversioned name first
44+
so that locally-built packages can be found before those
45+
provided by distributions.
46+
47+
``HINTS``, ``PATHS``
48+
Specify directories to search in addition to the default locations.
49+
The ``ENV var`` sub-option reads paths from a system environment
50+
variable.
51+
52+
``PATH_SUFFIXES``
53+
Specify additional subdirectories to check below each directory
54+
location otherwise considered.
55+
56+
``DOC``
57+
Specify the documentation string for the ``<VAR>`` cache entry.
58+
59+
``REQUIRED``
60+
.. versionadded:: 3.18
61+
62+
Stop processing with an error message if nothing is found, otherwise
63+
the search will be attempted again the next time |FIND_XXX| is invoked
64+
with the same variable.
65+
66+
If ``NO_DEFAULT_PATH`` is specified, then no additional paths are
67+
added to the search.
68+
If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows:
69+
70+
.. |FIND_PACKAGE_ROOT_PREFIX_PATH_XXX_SUBDIR| replace::
71+
|prefix_XXX_SUBDIR| for each ``<prefix>`` in the
72+
:variable:`<PackageName>_ROOT` CMake variable and the
73+
:envvar:`<PackageName>_ROOT` environment variable if
74+
called from within a find module loaded by
75+
:command:`find_package(<PackageName>)`
76+
77+
.. |CMAKE_PREFIX_PATH_XXX_SUBDIR| replace::
78+
|prefix_XXX_SUBDIR| for each ``<prefix>`` in :variable:`CMAKE_PREFIX_PATH`
79+
80+
.. |SYSTEM_ENVIRONMENT_PREFIX_PATH_XXX_SUBDIR| replace::
81+
|prefix_XXX_SUBDIR| for each ``<prefix>/[s]bin`` in ``PATH``, and
82+
|entry_XXX_SUBDIR| for other entries in ``PATH``
83+
84+
.. |CMAKE_SYSTEM_PREFIX_PATH_XXX_SUBDIR| replace::
85+
|prefix_XXX_SUBDIR| for each ``<prefix>`` in
86+
:variable:`CMAKE_SYSTEM_PREFIX_PATH`
87+
88+
1. .. versionadded:: 3.12
89+
If called from within a find module or any other script loaded by a call to
90+
:command:`find_package(<PackageName>)`, search prefixes unique to the
91+
current package being found. Specifically, look in the
92+
:variable:`<PackageName>_ROOT` CMake variable and the
93+
:envvar:`<PackageName>_ROOT` environment variable.
94+
The package root variables are maintained as a stack, so if called from
95+
nested find modules or config packages, root paths from the parent's find
96+
module or config package will be searched after paths from the current
97+
module or package. In other words, the search order would be
98+
``<CurrentPackage>_ROOT``, ``ENV{<CurrentPackage>_ROOT}``,
99+
``<ParentPackage>_ROOT``, ``ENV{<ParentPackage>_ROOT}``, etc.
100+
This can be skipped if ``NO_PACKAGE_ROOT_PATH`` is passed or by setting
101+
the :variable:`CMAKE_FIND_USE_PACKAGE_ROOT_PATH` to ``FALSE``.
102+
See policy :policy:`CMP0074`.
103+
104+
* |FIND_PACKAGE_ROOT_PREFIX_PATH_XXX|
105+
106+
2. Search paths specified in cmake-specific cache variables.
107+
These are intended to be used on the command line with a ``-DVAR=value``.
108+
The values are interpreted as :ref:`semicolon-separated lists <CMake Language Lists>`.
109+
This can be skipped if ``NO_CMAKE_PATH`` is passed or by setting the
110+
:variable:`CMAKE_FIND_USE_CMAKE_PATH` to ``FALSE``.
111+
112+
* |CMAKE_PREFIX_PATH_XXX|
113+
* |CMAKE_XXX_PATH|
114+
* |CMAKE_XXX_MAC_PATH|
115+
116+
3. Search paths specified in cmake-specific environment variables.
117+
These are intended to be set in the user's shell configuration,
118+
and therefore use the host's native path separator
119+
(``;`` on Windows and ``:`` on UNIX).
120+
This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or
121+
by setting the :variable:`CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH` to ``FALSE``.
122+
123+
* |CMAKE_PREFIX_PATH_XXX|
124+
* |CMAKE_XXX_PATH|
125+
* |CMAKE_XXX_MAC_PATH|
126+
127+
4. Search the paths specified by the ``HINTS`` option.
128+
These should be paths computed by system introspection, such as a
129+
hint provided by the location of another item already found.
130+
Hard-coded guesses should be specified with the ``PATHS`` option.
131+
132+
5. Search the standard system environment variables.
133+
This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed or by
134+
setting the :variable:`CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH` to ``FALSE``.
135+
136+
* |SYSTEM_ENVIRONMENT_PATH_XXX|
137+
* |SYSTEM_ENVIRONMENT_PATH_WINDOWS_XXX|
138+
139+
6. Search cmake variables defined in the Platform files
140+
for the current system. This can be skipped if ``NO_CMAKE_SYSTEM_PATH``
141+
is passed or by setting the :variable:`CMAKE_FIND_USE_CMAKE_SYSTEM_PATH`
142+
to ``FALSE``.
143+
144+
* |CMAKE_SYSTEM_PREFIX_PATH_XXX|
145+
* |CMAKE_SYSTEM_XXX_PATH|
146+
* |CMAKE_SYSTEM_XXX_MAC_PATH|
147+
148+
The platform paths that these variables contain are locations that
149+
typically include installed software. An example being ``/usr/local`` for
150+
UNIX based platforms.
151+
152+
7. Search the paths specified by the PATHS option
153+
or in the short-hand version of the command.
154+
These are typically hard-coded guesses.
155+
156+
.. versionadded:: 3.16
157+
Added ``CMAKE_FIND_USE_<CATEGORY>_PATH`` variables to globally disable
158+
various search locations.
159+
160+
.. |FIND_ARGS_XXX| replace:: <VAR> NAMES name
161+
162+
On macOS the :variable:`CMAKE_FIND_FRAMEWORK` and
163+
:variable:`CMAKE_FIND_APPBUNDLE` variables determine the order of
164+
preference between Apple-style and unix-style package components.
165+
166+
.. include:: FIND_XXX_ROOT.txt
167+
.. include:: FIND_XXX_ORDER.txt
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
The default search order is designed to be most-specific to
2+
least-specific for common use cases.
3+
Projects may override the order by simply calling the command
4+
multiple times and using the ``NO_*`` options:
5+
6+
.. parsed-literal::
7+
8+
|FIND_XXX| (|FIND_ARGS_XXX| PATHS paths... NO_DEFAULT_PATH)
9+
|FIND_XXX| (|FIND_ARGS_XXX|)
10+
11+
Once one of the calls succeeds the result variable will be set
12+
and stored in the cache so that no call will search again.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
The CMake variable :variable:`CMAKE_FIND_ROOT_PATH` specifies one or more
2+
directories to be prepended to all other search directories. This
3+
effectively "re-roots" the entire search under given locations.
4+
Paths which are descendants of the :variable:`CMAKE_STAGING_PREFIX` are excluded
5+
from this re-rooting, because that variable is always a path on the host system.
6+
By default the :variable:`CMAKE_FIND_ROOT_PATH` is empty.
7+
8+
The :variable:`CMAKE_SYSROOT` variable can also be used to specify exactly one
9+
directory to use as a prefix. Setting :variable:`CMAKE_SYSROOT` also has other
10+
effects. See the documentation for that variable for more.
11+
12+
These variables are especially useful when cross-compiling to
13+
point to the root directory of the target environment and CMake will
14+
search there too. By default at first the directories listed in
15+
:variable:`CMAKE_FIND_ROOT_PATH` are searched, then the :variable:`CMAKE_SYSROOT`
16+
directory is searched, and then the non-rooted directories will be
17+
searched. The default behavior can be adjusted by setting
18+
|CMAKE_FIND_ROOT_PATH_MODE_XXX|. This behavior can be manually
19+
overridden on a per-call basis using options:
20+
21+
``CMAKE_FIND_ROOT_PATH_BOTH``
22+
Search in the order described above.
23+
24+
``NO_CMAKE_FIND_ROOT_PATH``
25+
Do not use the :variable:`CMAKE_FIND_ROOT_PATH` variable.
26+
27+
``ONLY_CMAKE_FIND_ROOT_PATH``
28+
Search only the re-rooted directories and directories below
29+
:variable:`CMAKE_STAGING_PREFIX`.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
To pass options to the linker tool, each compiler driver has its own syntax.
2+
The ``LINKER:`` prefix and ``,`` separator can be used to specify, in a portable
3+
way, options to pass to the linker tool. ``LINKER:`` is replaced by the
4+
appropriate driver option and ``,`` by the appropriate driver separator.
5+
The driver prefix and driver separator are given by the values of the
6+
:variable:`CMAKE_<LANG>_LINKER_WRAPPER_FLAG` and
7+
:variable:`CMAKE_<LANG>_LINKER_WRAPPER_FLAG_SEP` variables.
8+
9+
For example, ``"LINKER:-z,defs"`` becomes ``-Xlinker -z -Xlinker defs`` for
10+
``Clang`` and ``-Wl,-z,defs`` for ``GNU GCC``.
11+
12+
The ``LINKER:`` prefix can be specified as part of a ``SHELL:`` prefix
13+
expression.
14+
15+
The ``LINKER:`` prefix supports, as an alternative syntax, specification of
16+
arguments using the ``SHELL:`` prefix and space as separator. The previous
17+
example then becomes ``"LINKER:SHELL:-z defs"``.
18+
19+
.. note::
20+
21+
Specifying the ``SHELL:`` prefix anywhere other than at the beginning of the
22+
``LINKER:`` prefix is not supported.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
The final set of compile or link options used for a target is constructed by
2+
accumulating options from the current target and the usage requirements of
3+
its dependencies. The set of options is de-duplicated to avoid repetition.
4+
5+
.. versionadded:: 3.12
6+
While beneficial for individual options, the de-duplication step can break
7+
up option groups. For example, ``-D A -D B`` becomes ``-D A B``. One may
8+
specify a group of options using shell-like quoting along with a ``SHELL:``
9+
prefix. The ``SHELL:`` prefix is dropped, and the rest of the option string
10+
is parsed using the :command:`separate_arguments` ``UNIX_COMMAND`` mode.
11+
For example, ``"SHELL:-D A" "SHELL:-D B"`` becomes ``-D A -D B``.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
add_compile_definitions
2+
-----------------------
3+
4+
.. versionadded:: 3.12
5+
6+
Add preprocessor definitions to the compilation of source files.
7+
8+
.. code-block:: cmake
9+
10+
add_compile_definitions(<definition> ...)
11+
12+
Adds preprocessor definitions to the compiler command line.
13+
14+
The preprocessor definitions are added to the :prop_dir:`COMPILE_DEFINITIONS`
15+
directory property for the current ``CMakeLists`` file. They are also added to
16+
the :prop_tgt:`COMPILE_DEFINITIONS` target property for each target in the
17+
current ``CMakeLists`` file.
18+
19+
Definitions are specified using the syntax ``VAR`` or ``VAR=value``.
20+
Function-style definitions are not supported. CMake will automatically
21+
escape the value correctly for the native build system (note that CMake
22+
language syntax may require escapes to specify some values).
23+
24+
Arguments to ``add_compile_definitions`` may use "generator expressions" with
25+
the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)`
26+
manual for available expressions. See the :manual:`cmake-buildsystem(7)`
27+
manual for more on defining buildsystem properties.

0 commit comments

Comments
 (0)