Files
UnrealEngineUWP/Engine/Build/Mac/ModernBuildGraph.xml
Josh Adams a2263b2ce0 - Xcode support for Content Only projects
- Added a top-level .xcconfig file to Xcode workspace for use with UnrealGame/etc so it knows where to find staged data, and set the commandline automatically
  - Stage the UECommandLine.txt file for modern builds because we no longer make the Bootstrap .app
  - Added XcodeBuildMode enum/string so scripts can tell when the project is being built (so build time could act differently than stage time, etc)
  - Making use of the enum and other env vars to skip steps when not needed

- Other fixes for project generation
  - Added -modernxcode and -legacyxcode comandline options which will override the .ini setting (refactored all UseModern checks into one function)
  - Support for programs that have a .uproject, and GPF with -game -project=<program.uproject>
  - Added success return value to FinalizeAppWithModernXcode
  - Added quotes to fix paths with spaces in GenerateProjectFiles.command
  - Enabled parallel AddAdditionalNativeTargetInformation for gathering Frameworks from targts, now that parallel project generation has been enabled and most parallel issues are fixed

#preflight 646ce67c2e78be98411323d9
#rb zack.neyland
#preflight 646f8f2850786bb5ba8a98f0

[CL 25623979 by Josh Adams in ue5-main branch]
2023-05-25 13:04:27 -04:00

49 lines
2.5 KiB
XML

<?xml version='1.0'?>
<BuildGraph xmlns="http://www.epicgames.com/BuildGraph" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.epicgames.com/BuildGraph ../Graph/Schema.xsd">
<Option Name="TestPrograms" DefaultValue="true" Description="Test building/packaging Programs" />
<Option Name="TestContentOnly" DefaultValue="true" Description="Test building/packaging Content Only projects" />
<Option Name="TestCodeBased" DefaultValue="true" Description="Test building/packaging Code Base projects" />
<Option Name="TestHybrid" DefaultValue="true" Description="Test building/packaging Hybrid Projects" />
<Property Name="UBTArgs" Value="-modernxcode" />
<Property Name="BCRArgs" Value="-platform=Mac -build -cook -stage -pak -package -modernxcode" />
<Agent Name="Modern Xcode Programs" Type="Mac">
<Node Name="Build Programs">
<Compile Target="CrashReportClient" Platform="Mac" Configuration="Development" Arguments="$(UBTArgs)" />
<Command Name="BuildCookRun" Arguments="$(BCRArgs) -project=SlateUGS -skipcook" />
</Node>
</Agent>
<Agent Name="Modern Xcode ContentOnly" Type="Mac">
<Node Name="Build Content Only">
<Compile Target="UnrealGame" Platform="Mac" Configuration="Development" Arguments="$(UBTArgs) -architecture=host" />
<Command Name="BuildCookRun" Arguments="$(BCRArgs) -project=TP_PuzzleBP -architecture=host" />
</Node>
</Agent>
<Agent Name="Modern Xcode CodeBased" Type="Mac">
<Node Name="Build Code Based">
<Compile Target="QAGame" Platform="Mac" Configuration="Development" Arguments="$(UBTArgs) -architecture=host" />
<Command Name="BuildCookRun" Arguments="$(BCRArgs) -project=QAGame -architecture=host" />
</Node>
</Agent>
<Agent Name="Modern Xcode Hybrid" Type="Mac">
<Node Name="Build Hybrid">
<Compile Target="Cropout" Platform="Mac" Configuration="Development" Arguments="$(UBTArgs) -architecture=host" />
<Command Name="BuildCookRun" Arguments="$(BCRArgs) -project=Cropout -architecture=host" />
</Node>
</Agent>
<Property Name="AllBuilds" Value="" />
<Property Name="AllBuilds" Value="$(AllBuilds);Build Programs" If="$(TestPrograms)" />
<Property Name="AllBuilds" Value="$(AllBuilds);Build Content Only" If="$(TestContentOnly)" />
<Property Name="AllBuilds" Value="$(AllBuilds);Build Code Based" If="$(TestCodeBased)" />
<Property Name="AllBuilds" Value="$(AllBuilds);Build Hybrid" If="$(TestHybrid)" />
<Aggregate Name="Test Modern Xcode" Requires="$(AllBuilds)"/>
</BuildGraph>