Commit Graph

212 Commits

Author SHA1 Message Date
joe kirchoff
c2917fa859 UnrealBuildTool: Filter out programs when generating projects if they're not located under Source/Programs after the TargetRule is created
#rnx
#rb trivial

[CL 25860547 by joe kirchoff in ue5-main branch]
2023-06-07 18:15:41 -04:00
josh adams
11028c13f4 - Fixed a crash when generating some Xcode stub projects for commandline building. I could not repro, but this fix works for someone that could
#rb adam.kinge

[CL 25857364 by josh adams in ue5-main branch]
2023-06-07 16:43:13 -04:00
joe kirchoff
90ee0e778b [Backout] - CL25209946
#fyi Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: Fix failure to open/browse to source file in Visual Studio
* Always update PrimaryProjectName.txt when a project specific solution is generated
* -Game solution is always placed under the project directory, update SourceCodeAccessor according, this code was out of date

#rnx
#jira UE-114382
#preflight 6449c0c4401d328ad93a635b

[CL 25732405 by joe kirchoff in ue5-main branch]
2023-06-01 13:38:36 -04:00
joe kirchoff
acacd6a8de UnrealBuildTool: More automated code cleanup
* Use object type rather than var
* Remove double newlines
* Use pattern matching

#rnx
#preflight 647780095d23eca37d28a387

[CL 25706751 by joe kirchoff in ue5-main branch]
2023-05-31 13:37:21 -04:00
Ben Marsh
c80dcd77cb Fix UBT/UAT building on Windows ARM64.
#preflight 6477562f4b0d5a1eb1411fa1

[CL 25701794 by Ben Marsh in ue5-main branch]
2023-05-31 10:31:38 -04:00
joe kirchoff
acf80ab609 [Backout] - CL25694851
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: More automated code cleanup

#rnx

[CL 25695155 by joe kirchoff in ue5-main branch]
2023-05-30 19:55:37 -04:00
joe kirchoff
7ed1a39679 UnrealBuildTool: More automated code cleanup
#rnx

[CL 25694864 by joe kirchoff in ue5-main branch]
2023-05-30 19:36:05 -04:00
joe kirchoff
c04da27b3b UnrealBuildTool: More automated code cleanup
#rnx
#preflight 64767efb4b1ead7c7f428c7a

[CL 25693857 by joe kirchoff in ue5-main branch]
2023-05-30 18:59:32 -04:00
joe kirchoff
36d266e932 UnrealBuildTool: Automated code cleanup
#rnx
#preflight 6476799e947ff6973c225619

[CL 25693241 by joe kirchoff in ue5-main branch]
2023-05-30 18:38:07 -04:00
Josh Adams
017c7ef4c5 - Allow a project file generator to create temporary primary projects (.sln, .xcworkspace, etc) in the Intermediate/ProjectFIles directory where the rest of the projects are created (the generator would need to not hardcode relative paths from parimary to sub projects)
#rb joe.kirchoff
#preflight 646fb3d68174dda722e93c2c

[CL 25629330 by Josh Adams in ue5-main branch]
2023-05-25 17:18:29 -04:00
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
Josh Adams
9d4caec55a - Brought the idea of hybrid/temp targets for content only projects that need to be treated as code, to UBT instead of UAT. Generate temp targets when building or generating projects
- Only active when the project generator says it supports ContentOnly projects, although that is just for now until Xcode can test it out, in case it causes Visual Studio issues
#rb joe.kirchoff
#preflight 64638f4a4404e3cdd240327f

[CL 25490732 by Josh Adams in ue5-main branch]
2023-05-16 11:49:47 -04:00
Benn Gallagher
7473847b3c Fix UBT project generation skipping remove on invalid targets when buliding the collection of project file targets.
#rb Josh.Adams
#jira none
#preflight 645e384eea1c7ba4d6127813

[CL 25447281 by Benn Gallagher in ue5-main branch]
2023-05-12 09:20:56 -04:00
Josh Adams
0bf75c41e2 - Added support for allowing ContentOnly projects to have projectfiles generated for them (with GenerateProjectFiles -game -project=<project>). A projectfile generator needs to opt in for this because the generator will need to handle the special cases for using UnrealGame in the context of a .uproject. Xcode will be the first generator to support it
#rb joe.kirchoff,david.harvey
#preflight 645d23616b4bdec267a26121

[CL 25431284 by Josh Adams in ue5-main branch]
2023-05-11 13:29:59 -04:00
Josh Adams
d1511ade28 - Fixed generatingXcode temporary projects (hybrid content-only-as-code projects)
- Updated the temp .Target.cs to use modern include order to avoid some warning spam
#preflight 645871664c3ec54e6ef344ca
#rb none (but tested by wei.lu)

[CL 25370095 by Josh Adams in ue5-main branch]
2023-05-08 09:44:42 -04:00
Joe Kirchoff
d0a2767ece UnrealBuildTool: Fix failure to open/browse to source file in Visual Studio
* Always update PrimaryProjectName.txt when a project specific solution is generated
* -Game solution is always placed under the project directory, update SourceCodeAccessor according, this code was out of date

#rnx
#jira UE-114382
#preflight 6449c0c4401d328ad93a635b

[CL 25209946 by Joe Kirchoff in ue5-main branch]
2023-04-26 20:42:54 -04:00
AfterThunk
574803c791 PR #10354: Allow AdditionalPlugins use in multiple projects (Contributed by AfterThunk)
#preflight 6441619ba35280ed4f4383e1

[CL 25129223 by AfterThunk in ue5-main branch]
2023-04-20 12:06:13 -04:00
Josh Adams
4c3471b8a7 - After staging, Modern xcode projects will build with stub xcode project to generate a complete .app in the root of the staging directory (tested Mac and IOS)
- Fixed up scripts for copying files into mac .app with modern xcode
- Changed bIncludeEngineSource being false to not remove game/samples/mods/etc from projects (only stub xcode projects set it to false, afaict)
#rb zack.neyland
#preflight 642cc4c21d19c0312af476c0

[CL 24922909 by Josh Adams in ue5-main branch]
2023-04-04 20:54:06 -04:00
bryan sefcik
27af9dd7cb Updated to write out the PrimaryProjectName.txt only once even if the contents need to change. This fixes an issue where a certain platform was writing it twice and UBT would throw an warning about the file being written multiple times.
#jira UE-181790
#fyi joe.kirchoff
#preflight 6425bc9c50546ea33649da6f

[CL 24856495 by bryan sefcik in ue5-main branch]
2023-03-30 13:13:51 -04:00
bryan sefcik
87412acf5e Updated the intellisense data to be created in parallel.
#fyi joe.kirchoff
#preflight 6423506d051bec41cdbdfbfb

[CL 24826596 by bryan sefcik in ue5-main branch]
2023-03-28 17:05:50 -04:00
bryan sefcik
46e8628604 Updated the vc projects to be created in parallel.
#fyi joe.kirchoff
#preflight 64220ba5974dfaa53cb64402

[CL 24810549 by bryan sefcik in ue5-main branch]
2023-03-27 17:59:01 -04:00
bryan sefcik
df232bdd38 Updated the PrimaryProjectName.txt not be written out unless it changed.
#fyi joe.kirchoff
#preflight 6421ee8c973e609670b4a9a1

[CL 24807770 by bryan sefcik in ue5-main branch]
2023-03-27 15:53:36 -04:00
Josh Adams
f650515e01 - Added a parameter to GenerateProjectFiles() to control if it generates the QueryTargets data for the editor (only the first project format needs to do this)
- Disabled it with IOS stub project gneeration that doesn't need the data (it can be slow)
#rb joe.kirchoff
#preflight 641a0b24ec01de1664e1bd7d

[CL 24738624 by Josh Adams in ue5-main branch]
2023-03-21 16:17:30 -04:00
LennardF1989
9a67525476 PR #8239: Support for project-specific BuildConfiguration.xml and Programs during project file generation (Contributed by LennardF1989)
Contains some additional changes from Joe.Kirchoff:
* Fix project dependency for rules parent chain
* Always add UnrealBuildTool and AutomationTool .csproj for game targets -except-
* Filter out other non-critial .csproj unless engine programs are included

#jira UE-120122
#jira UE-176963
#preflight 6413c6668354cad0facc7388

[CL 24690813 by LennardF1989 in ue5-main branch]
2023-03-17 12:14:26 -04:00
Josh Adams
0842a7adb3 - Added Framework support in Modern Xcode projects - this will copy and code sign frameworks directly via Xcode, instead of UBT doing it
#rb zack.neyland
#preflight 64078e282559570cc7f40fe2

[CL 24545611 by Josh Adams in ue5-main branch]
2023-03-07 14:28:06 -05:00