mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-31 10:50:16 -06:00
Xcode: Add Xcode SCHEME control for 'Launch' control
This commit is contained in:
@@ -436,6 +436,7 @@ syn keyword cmakeProperty contained
|
||||
\ XCODE_SCHEME_ENVIRONMENT
|
||||
\ XCODE_SCHEME_EXECUTABLE
|
||||
\ XCODE_SCHEME_GUARD_MALLOC
|
||||
\ XCODE_SCHEME_LAUNCH_MODE
|
||||
\ XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
|
||||
\ XCODE_SCHEME_MALLOC_GUARD_EDGES
|
||||
\ XCODE_SCHEME_MALLOC_SCRIBBLE
|
||||
@@ -1537,6 +1538,7 @@ syn keyword cmakeVariable contained
|
||||
\ CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
|
||||
\ CMAKE_XCODE_SCHEME_ENVIRONMENT
|
||||
\ CMAKE_XCODE_SCHEME_GUARD_MALLOC
|
||||
\ CMAKE_XCODE_SCHEME_LAUNCH_MODE
|
||||
\ CMAKE_XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
|
||||
\ CMAKE_XCODE_SCHEME_MALLOC_GUARD_EDGES
|
||||
\ CMAKE_XCODE_SCHEME_MALLOC_SCRIBBLE
|
||||
|
||||
@@ -451,6 +451,7 @@ Properties on Targets
|
||||
/prop_tgt/XCODE_SCHEME_ENVIRONMENT
|
||||
/prop_tgt/XCODE_SCHEME_EXECUTABLE
|
||||
/prop_tgt/XCODE_SCHEME_GUARD_MALLOC
|
||||
/prop_tgt/XCODE_SCHEME_LAUNCH_MODE
|
||||
/prop_tgt/XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
|
||||
/prop_tgt/XCODE_SCHEME_MALLOC_GUARD_EDGES
|
||||
/prop_tgt/XCODE_SCHEME_MALLOC_SCRIBBLE
|
||||
|
||||
@@ -278,6 +278,7 @@ Variables that Change Behavior
|
||||
/variable/CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
|
||||
/variable/CMAKE_XCODE_SCHEME_ENVIRONMENT
|
||||
/variable/CMAKE_XCODE_SCHEME_GUARD_MALLOC
|
||||
/variable/CMAKE_XCODE_SCHEME_LAUNCH_MODE
|
||||
/variable/CMAKE_XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
|
||||
/variable/CMAKE_XCODE_SCHEME_MALLOC_GUARD_EDGES
|
||||
/variable/CMAKE_XCODE_SCHEME_MALLOC_SCRIBBLE
|
||||
|
||||
@@ -41,4 +41,5 @@ The following target properties will be applied on the
|
||||
- :prop_tgt:`XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE`
|
||||
- :prop_tgt:`XCODE_SCHEME_ENVIRONMENT`
|
||||
- :prop_tgt:`XCODE_SCHEME_EXECUTABLE`
|
||||
- :prop_tgt:`XCODE_SCHEME_LAUNCH_MODE`
|
||||
- :prop_tgt:`XCODE_SCHEME_WORKING_DIRECTORY`
|
||||
|
||||
22
Help/prop_tgt/XCODE_SCHEME_LAUNCH_MODE.rst
Normal file
22
Help/prop_tgt/XCODE_SCHEME_LAUNCH_MODE.rst
Normal file
@@ -0,0 +1,22 @@
|
||||
XCODE_SCHEME_LAUNCH_MODE
|
||||
------------------------
|
||||
|
||||
.. versionadded:: 3.25
|
||||
|
||||
Property value for ``Launch`` in the Info section of the generated Xcode
|
||||
scheme.
|
||||
|
||||
Possible values are:
|
||||
|
||||
``AUTO``
|
||||
Launch automatically. This is the default.
|
||||
|
||||
``WAIT``
|
||||
Wait for the executable to be launched.
|
||||
|
||||
This property is initialized by the value of the variable
|
||||
:variable:`CMAKE_XCODE_SCHEME_LAUNCH_MODE` if it is set when a target is
|
||||
created.
|
||||
|
||||
Please refer to the :prop_tgt:`XCODE_GENERATE_SCHEME` target property
|
||||
documentation to see all Xcode schema related properties.
|
||||
7
Help/release/dev/xcode-launch-mode.rst
Normal file
7
Help/release/dev/xcode-launch-mode.rst
Normal file
@@ -0,0 +1,7 @@
|
||||
xcode-launch-mode
|
||||
-----------------
|
||||
|
||||
* The :variable:`CMAKE_XCODE_SCHEME_LAUNCH_MODE` variable and corresponding
|
||||
:prop_tgt:`XCODE_SCHEME_LAUNCH_MODE` target property were added to tell
|
||||
the :generator:`Xcode` generator what to put in the scheme's "Launch"
|
||||
mode setting.
|
||||
13
Help/variable/CMAKE_XCODE_SCHEME_LAUNCH_MODE.rst
Normal file
13
Help/variable/CMAKE_XCODE_SCHEME_LAUNCH_MODE.rst
Normal file
@@ -0,0 +1,13 @@
|
||||
CMAKE_XCODE_SCHEME_LAUNCH_MODE
|
||||
------------------------------
|
||||
|
||||
.. versionadded:: 3.25
|
||||
|
||||
Property value for ``Launch`` in the Info section of the generated Xcode
|
||||
scheme.
|
||||
|
||||
This variable initializes the :prop_tgt:`XCODE_SCHEME_LAUNCH_MODE` property on
|
||||
all targets.
|
||||
|
||||
Please refer to the :prop_tgt:`XCODE_GENERATE_SCHEME` target property
|
||||
documentation to see all Xcode schema related properties.
|
||||
@@ -610,6 +610,7 @@ cmTarget::cmTarget(std::string const& name, cmStateEnums::TargetType type,
|
||||
initProp("XCODE_SCHEME_MALLOC_SCRIBBLE");
|
||||
initProp("XCODE_SCHEME_MALLOC_GUARD_EDGES");
|
||||
initProp("XCODE_SCHEME_GUARD_MALLOC");
|
||||
initProp("XCODE_SCHEME_LAUNCH_MODE");
|
||||
initProp("XCODE_SCHEME_ZOMBIE_OBJECTS");
|
||||
initProp("XCODE_SCHEME_MALLOC_STACK");
|
||||
initProp("XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE");
|
||||
|
||||
@@ -147,7 +147,15 @@ void cmXCodeScheme::WriteLaunchAction(cmXMLWriter& xout,
|
||||
"Xcode.DebuggerFoundation.Debugger.LLDB");
|
||||
xout.Attribute("selectedLauncherIdentifier",
|
||||
"Xcode.DebuggerFoundation.Launcher.LLDB");
|
||||
xout.Attribute("launchStyle", "0");
|
||||
{
|
||||
cmValue launchMode =
|
||||
this->Target->GetTarget()->GetProperty("XCODE_SCHEME_LAUNCH_MODE");
|
||||
std::string value = "0"; // == 'AUTO'
|
||||
if (launchMode && *launchMode == "WAIT") {
|
||||
value = "1";
|
||||
}
|
||||
xout.Attribute("launchStyle", value);
|
||||
}
|
||||
WriteCustomWorkingDirectory(xout, configuration);
|
||||
|
||||
xout.Attribute("ignoresPersistentStateOnLaunch", "NO");
|
||||
|
||||
@@ -43,6 +43,8 @@ check_property("ENABLE_GPU_FRAME_CAPTURE_MODE_DISABLED" "enableGPUFrameCaptureMo
|
||||
check_property("ENABLE_GPU_FRAME_CAPTURE_MODE_METAL" "enableGPUFrameCaptureMode=\"1\"")
|
||||
check_property("ENABLE_GPU_FRAME_CAPTURE_MODE_DISABLED_MIXED_CASE" "enableGPUFrameCaptureMode=\"3\"")
|
||||
check_property("ENABLE_GPU_FRAME_CAPTURE_MODE_METAL_MIXED_CASE" "enableGPUFrameCaptureMode=\"1\"")
|
||||
check_property("LAUNCH_MODE_AUTO" "launchStyle=\"0\"")
|
||||
check_property("LAUNCH_MODE_WAIT" "launchStyle=\"1\"")
|
||||
|
||||
check_property("EXECUTABLE" "myExecutable")
|
||||
check_property("ARGUMENTS" [=["--foo"]=])
|
||||
|
||||
@@ -38,6 +38,8 @@ create_scheme_for_property(ENABLE_GPU_FRAME_CAPTURE_MODE_DISABLED ENABLE_GPU_FRA
|
||||
create_scheme_for_property(ENABLE_GPU_FRAME_CAPTURE_MODE_METAL ENABLE_GPU_FRAME_CAPTURE_MODE Metal)
|
||||
create_scheme_for_property(ENABLE_GPU_FRAME_CAPTURE_MODE_DISABLED_MIXED_CASE ENABLE_GPU_FRAME_CAPTURE_MODE DISAbled)
|
||||
create_scheme_for_property(ENABLE_GPU_FRAME_CAPTURE_MODE_METAL_MIXED_CASE ENABLE_GPU_FRAME_CAPTURE_MODE METal)
|
||||
create_scheme_for_property(LAUNCH_MODE_AUTO LAUNCH_MODE AUTO)
|
||||
create_scheme_for_property(LAUNCH_MODE_WAIT LAUNCH_MODE WAIT)
|
||||
create_scheme_for_property(EXECUTABLE EXECUTABLE myExecutable)
|
||||
create_scheme_for_property(ARGUMENTS ARGUMENTS "--foo;--bar=baz")
|
||||
create_scheme_for_property(ENVIRONMENT ENVIRONMENT "FOO=foo;BAR=bar")
|
||||
|
||||
Reference in New Issue
Block a user