1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-06-20 03:38:05 +08:00

181 Commits

Author SHA1 Message Date
Gabor Bencze
d780822da6 cmCommand refactor: cmParseArgumentsCommand 2019-08-20 14:42:20 -04:00
Gabor Bencze
4fa9630b7e cmCommand refactor: cmOptionCommand 2019-08-20 14:42:20 -04:00
Gabor Bencze
cfc7854ef0 cmCommand refactor: CmMessageCommand 2019-08-20 14:42:20 -04:00
Gabor Bencze
71724633a2 cmCommand refactor: cmMathCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
2b58ae7577 cmCommand refactor: cmMarkAsAdvancedCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
5b40a872dd cmCommand refactor: cmMakeDirectoryCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
e0b7ff4af2 cmCommand refactor: cmListCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
9ae9f3e77e cmCommand refactor: cmMacroCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
ceab7bda44 cmCommand refactor: cmIncludeGuardCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
f42dad7a5e cmCommand refactor: cmIncludeCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
fb57537a83 cmCommand_refactor: cmGetPropertyCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
6377efd154 cmCommand refactor: cmGetFilenameComponentCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
067d1fa9c0 cmCommand refactor: cmGetDirectoryPropertyCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
40ba0addac cmCommand refactor: cmGetCMakePropertyCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
9bbe95a0e7 cmCommand refactor: cmFunctionCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
cce3600e3f cmCommand refactor: cmForEachCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
3e5eb45ec1 cmCommand refactor: cmExecuteProcessCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
0d87f5d83e cmCommand refactor: cmExecProgramCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
0005e17d50 cmCommand refactor: cmContinueCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
01949a02df cmCommand refactor: cmConfigureFileCommand 2019-08-20 14:42:19 -04:00
Gabor Bencze
dc629b5d97 cmCommand refactor: cmCMakeMinimumRequired 2019-08-20 14:42:19 -04:00
Gabor Bencze
e6a27adf9f cmCommand refactor: cmBreakCommand 2019-08-20 14:42:18 -04:00
Kyle Edwards
f952d9c257 Merge topic 'free-command-a'
9ba0bf60c6 cmA*Command: Turn into free functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3660
2019-08-13 09:55:09 -04:00
Kitware Robot
54e9d38c28 Refactor: Convert all instances of CMAKE_BUILD_WITH_CMAKE to CMAKE_BOOTSTRAP 2019-08-09 10:41:44 -04:00
Regina Pfeifer
9ba0bf60c6 cmA*Command: Turn into free functions
Ref: #19499
2019-08-07 10:16:32 +02:00
Regina Pfeifer
2b785875fb cmFileCommand: turn into free function 2019-08-06 12:25:12 +02:00
Regina Pfeifer
dfaa87f1b3 cmState: Support BuiltinCommands as free functions 2019-07-22 15:27:56 +02:00
Regina Pfeifer
28f2d12a05 cmCommand: De-virtualize function InvokeInitialPass 2019-07-21 09:25:32 +02:00
Marc Chevrier
1591f138f1 modernize: manage cmCommand instances using unique_ptr. 2019-07-14 15:37:30 +02:00
Brad King
87dfd53b27 Merge topic 'set_directory_properties-script-mode'
50572d638b set_directory_properties: Restore in script mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2544
2018-10-30 11:01:36 -04:00
Brad King
50572d638b set_directory_properties: Restore in script mode
Since commit v3.10.0-rc1~391^2~3 (Add directory property 'LABELS' and
CMAKE_DIRECTORY_LABELS variable, 2017-06-23) this command was
accidentally not allowed in script mode.  It was dropped because
`ctest -S` mode needs to start with CMake's normal script mode and
then replace the `set_directory_properties` implementation.  Restore
the normal `set_directory_properties` in script mode and then add
special logic to replace it in ctest.  Also add a test case.

Fixes: #18523
2018-10-29 11:37:32 -04:00
Marc Chevrier
a71caab46b LINK_DIRECTORIES: Add new properties and commands
These new capabilities enable to manage link directories

Two new properties:
* target properties: LINK_DIRECTORIES and INTERFACE_LINK_DIRECTORIES

One new command
* target_link_directories(): to populate target properties

Fixes: #17215
2018-09-25 23:59:58 +10:00
Marc Chevrier
c1f5a44b28 LINK_OPTIONS: Add new family of properties
This family enable to manage link flags

Three new properties:
* directory property: LINK_OPTIONS
* target properties: LINK_OPTIONS and INTERFACE_LINK_OPTIONS

Two new commands
* add_link_options(): to populate directory property
* target_link_options(): to populate target properties

Fixes: #16543
2018-06-06 17:22:39 +02:00
Kitware Robot
d7204e649e Revise C++ coding style using clang-format-6.0
Run the `clang-format.bash` script to update all our C and C++ code to a
new style defined by `.clang-format`.  Use `clang-format` version 6.0.

* If you reached this commit for a line in `git blame`, re-run the blame
  operation starting at the parent of this commit to see older history
  for the content.

* See the parent commit for instructions to rebase a change across this
  style transition commit.
2018-06-01 09:53:42 -04:00
Marc Chevrier
cb83314e65 add_compile_definitions: add new command
This command manages preprocessor definitions at directory level and
supports generator expressions.

Fixes: #15374
2018-04-20 09:28:13 -04:00
Luz Paz
3ab7bf8285 Various typo fixes
Some are user-facing. Others are source comments.
2018-01-04 06:52:01 +11:00
Daniel Pfeifer
7814d75023 bootstrap: make target_* commands available 2017-08-18 21:48:14 +02:00
Betsy McPhail
d385962419 Add directory property 'LABELS' and CMAKE_DIRECTORY_LABELS variable
The specified LABELS will be passed down to subdirectories as well as
any targets or tests in the directory.
2017-07-10 16:25:18 -04:00
Pavel Solodovnikov
d44bd1c25f include_guard: implement new command 2017-06-22 10:53:42 +03:00
Daniel Pfeifer
bd14e46400 cmCommands: use new methods for builtin commands 2017-05-11 19:49:06 +02:00
Daniel Pfeifer
c2c2bbb3d4 cmake: register fake project commands in -P mode 2017-05-08 22:58:01 +02:00
Daniel Pfeifer
ee72803e9f fix some include-what-you-use diagnostics 2017-02-17 22:12:21 +01:00
Daniel Pfeifer
e0f3931226 cmCommands: add commands directly to cmState 2017-02-13 22:39:20 +01:00
Daniel Pfeifer
72dcbbe5c0 split Default commands into Scripting and Project 2017-02-13 22:32:55 +01:00
Daniel Pfeifer
7fb14775a3 cmDisallowedCommand: extract policy checking from cmCommand
Implement cmDisallowedCommand as a wrapper class for cmCommand.
2017-02-13 21:37:08 +01:00
Daniel Pfeifer
67303794f0 Combine all unexpected commands to a single class 2016-11-29 13:53:29 -05:00
Daniel Pfeifer
e81c323da9 Include necessary headers in commands 2016-10-26 09:02:44 +02:00
Daniel Pfeifer
4fb70919a5 Create all commands from a single function 2016-10-21 18:14:51 +02:00
Stephen Kelly
23d3d38a31 CMakeLists: Generate the cmCommands.cxx file.
Define the list of commands in the CMakeLists.txt file. List the
sources in the CMakeLib target, but mark them as HEADER_FILE_ONLY.
This has the effect that IDEs will show the files, though they
will not be built again.

Add a cmCommandsForBootstrap.cxx file for bootstrapping purposes.

Rename the cmExportLibraryDependencies file to match the common
pattern.
2014-02-09 22:02:37 +01:00
Nils Gladitz
bb71a3a0df Add cmake_host_system_information command
Expose the internal system information API to the CMake language.  For
example, it is useful to see how much memory the system has available to
estimate an upper limit of tests that can run in parallel.
2013-06-19 08:46:37 -04:00