Commit 6b7f1e1d authored by Gregor Jasny's avatar Gregor Jasny Committed by Brad King
Browse files

Xcode: Add variables and properties to configure schemes

Add `XCODE_SCHEME_*` target properties and associated variables
`CMAKE_XCODE_SCHEME_*` to initialize them on target creation.
Map each target property value to an associated Xcode scheme entry.

Co-Author: Martin Sander <mail@martin-sander.de>
Fixes: #17919
parent 39c91d07
......@@ -339,6 +339,24 @@ Properties on Targets
/prop_tgt/XCODE_ATTRIBUTE_an-attribute
/prop_tgt/XCODE_EXPLICIT_FILE_TYPE
/prop_tgt/XCODE_PRODUCT_TYPE
/prop_tgt/XCODE_SCHEME_ADDRESS_SANITIZER
/prop_tgt/XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
/prop_tgt/XCODE_SCHEME_THREAD_SANITIZER
/prop_tgt/XCODE_SCHEME_THREAD_SANITIZER_STOP
/prop_tgt/XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER
/prop_tgt/XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER_STOP
/prop_tgt/XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER
/prop_tgt/XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
/prop_tgt/XCODE_SCHEME_MALLOC_SCRIBBLE
/prop_tgt/XCODE_SCHEME_MALLOC_GUARD_EDGES
/prop_tgt/XCODE_SCHEME_GUARD_MALLOC
/prop_tgt/XCODE_SCHEME_ZOMBIE_OBJECTS
/prop_tgt/XCODE_SCHEME_MALLOC_STACK
/prop_tgt/XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
/prop_tgt/XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS
/prop_tgt/XCODE_SCHEME_EXECUTABLE
/prop_tgt/XCODE_SCHEME_ARGUMENTS
/prop_tgt/XCODE_SCHEME_ENVIRONMENT
/prop_tgt/XCTEST
.. _`Test Properties`:
......
......@@ -204,6 +204,21 @@ Variables that Change Behavior
/variable/CMAKE_WARN_DEPRECATED
/variable/CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
/variable/CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY
/variable/CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER
/variable/CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
/variable/CMAKE_XCODE_SCHEME_THREAD_SANITIZER
/variable/CMAKE_XCODE_SCHEME_THREAD_SANITIZER_STOP
/variable/CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER
/variable/CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER_STOP
/variable/CMAKE_XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER
/variable/CMAKE_XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
/variable/CMAKE_XCODE_SCHEME_MALLOC_SCRIBBLE
/variable/CMAKE_XCODE_SCHEME_MALLOC_GUARD_EDGES
/variable/CMAKE_XCODE_SCHEME_GUARD_MALLOC
/variable/CMAKE_XCODE_SCHEME_ZOMBIE_OBJECTS
/variable/CMAKE_XCODE_SCHEME_MALLOC_STACK
/variable/CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
/variable/CMAKE_XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS
/variable/PackageName_ROOT
Variables that Describe the System
......
XCODE_SCHEME_ADDRESS_SANITIZER
------------------------------
Whether to enable ``Address Sanitizer`` in the Diagnostics
section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
-----------------------------------------------
Whether to enable ``Detect use of stack after return``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN`
if it is set when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_ARGUMENTS
----------------------
Specify command line arguments that should be added to the Arguments
section of the generated Xcode scheme.
If set to a list of arguments those will be added to the scheme.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER
----------------------------------------
Whether to disable the ``Main Thread Checker``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER`
if it is set when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS
----------------------------------
Whether to enable ``Dynamic Library Loads``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
-------------------------------------
Whether to enable ``Dynamic Linker API usage``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_ENVIRONMENT
------------------------
Specify environment variables that should be added to the Arguments
section of the generated Xcode scheme.
If set to a list of environment variables and values of the form
``MYVAR=value`` those environment variables will be added to the
scheme.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_EXECUTABLE
-----------------------
Specify path to executable in the Info section of the generated
Xcode scheme. If not set the schema generator will select the
current target if it is actually executable.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_GUARD_MALLOC
------------------------------
Whether to enable ``Guard Malloc``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_GUARD_MALLOC` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
-------------------------------------
Whether to enable the ``Main Thread Checker`` option
``Pause on issues``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_MALLOC_GUARD_EDGES
-------------------------------
Whether to enable ``Malloc Guard Edges``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_MALLOC_GUARD_EDGES` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_MALLOC_SCRIBBLE
------------------------------
Whether to enable ``Malloc Scribble``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_MALLOC_SCRIBBLE` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_MALLOC_STACK
-------------------------
Whether to enable ``Malloc Stack`` in the Diagnostics
section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_MALLOC_STACK` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_THREAD_SANITIZER
-----------------------------
Whether to enable ``Thread Sanitizer`` in the Diagnostics
section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_THREAD_SANITIZER` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_THREAD_SANITIZER_STOP
----------------------------------
Whether to enable ``Thread Sanitizer - Pause on issues``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_THREAD_SANITIZER_STOP` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER
------------------------------------------
Whether to enable ``Undefined Behavior Sanitizer``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER`
if it is set when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER_STOP
-----------------------------------------------
Whether to enable ``Undefined Behavior Sanitizer`` option
``Pause on issues``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER_STOP`
if it is set when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
XCODE_SCHEME_ZOMBIE_OBJECTS
------------------------------
Whether to enable ``Zombie Objects``
in the Diagnostics section of the generated Xcode scheme.
This property is initialized by the value of the variable
:variable:`CMAKE_XCODE_SCHEME_ZOMBIE_OBJECTS` if it is set
when a target is created.
Please refer to the :variable:`CMAKE_XCODE_GENERATE_SCHEME` variable
documentation to see all Xcode schema related properties.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment