Commit Graph

72 Commits

Author SHA1 Message Date
josh adams
d32436ab0e - FIx for loading plugin configs when uproject name doesn't match directory name
- Added ProjectDescriptor.FromDirectory(), which will attempt to find and load a .uproject file from a project direectory (with .uproject in the root of that dir)

#rb David.Harvey, Joe.Kirchoff

[CL 36005543 by josh adams in ue5-main branch]
2024-09-04 09:10:37 -04:00
josh adams
40b23a4c9b - Added ability to read plugins into a config hierarchy, controlled by passing optional IncludePluginsForTargetType param to ConfigCache.ReadHierarchy(), with a TargetType (like Game or Editor).
- Use this in CopyBuildToStagingDIrectory when reading the Packaging settings when staging. This allows plugins to add files/directories to stage without needing to modify every project.
- Added a ConfigTester Turnkey command that can help test C# inis programmatically. Currently need to pass in these 3 params on commandline, it doesn't ask for them: -Branch=Engine -Section=SomeSection -Key=SomeKey

#rb David.Harvey

[CL 35927236 by josh adams in ue5-main branch]
2024-08-30 11:05:34 -04:00
marc audy
ac0ec29059 Add support for a new type of Restricted folder, LimitedAccess
LimitedAccess will allow Plugins and Programs to be shared externally with a limited subset of users under alternate agreements or for varying purposes without requiring bespoke, problematic, custom permissions that reach in to the NotForLicencees folders or bespoke, problematic, custom distribution processes for providing the code.

[CL 35094184 by marc audy in ue5-main branch]
2024-07-25 16:15:56 -04:00
joe kirchoff
f64c22a4f3 UnrealBuildTool: Resolve CA1001, CA1012, CA1018, CA2213
#rnx

[CL 32716079 by joe kirchoff in ue5-main branch]
2024-04-03 19:55:53 -04:00
joe kirchoff
65f7eab2cd UnrealBuildTool: Resolve CA2254, IDE0011, IDE0017, IDE0030, IDE0031, IDE0037, IDE0056, IDE0075, IDE2000, IDE2001
#rnx

[CL 32711093 by joe kirchoff in ue5-main branch]
2024-04-03 17:18:04 -04:00
joe kirchoff
a20c9fbb9e UnrealBuildTool: Format documents, remove and sort usings
#rnx

[CL 32700883 by joe kirchoff in ue5-main branch]
2024-04-03 12:22:43 -04:00
joe kirchoff
e895acc0bb UnrealBuildTool: Resolve IDE0018, IDE0019, IDE0034, IDE0038, IDE0041, IDE0054, IDE0057, IDE0074, IDE0090
#rnx

[CL 32686487 by joe kirchoff in ue5-main branch]
2024-04-02 19:54:03 -04:00
david harvey
55919f638d Adding generic structure parsers to ConfigHierarchy, allowing full struct hierarchies to be parsed from a single config key.
Supported types:
 - Basic primitives - string, int, float, bool etc.
 - Enums
 - Array, List, Dictionary
 - structs & classes
 - DirectoryReference & FileReference for FDirectoryPath & FFilePath

#rnx
#rb Josh.Adams

[CL 28713409 by david harvey in ue5-main branch]
2023-10-12 12:06:36 -04:00
david harvey
1f3d876003 Add a new TryParseAsMap helper function to read a serialized UPROPERTY TMap into a Dictionary.
#rnx
#rb Josh.Adams

[CL 25865983 by david harvey in ue5-main branch]
2023-06-08 03:49:07 -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
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
joe kirchoff
57a8fe409c UnrealBuildTool: Use expression body for simple properties and accessors
#rnx
#preflight 64766abcfe6a3b258a04cb50

[CL 25691579 by joe kirchoff in ue5-main branch]
2023-05-30 18:01:50 -04:00
stephen ma
190d569079 - Fixes NFL + Programs + Platform directories to look in the removed restricted program path, brings structure closer to Engine standard within Restricted Platform folders.
Before:
 "Engine\Restricted\NoRedist\Platforms\{Platform}\Restricted\NotForLicensees\Programs\{Project}Config\{Platform}Engine.ini"
After:
 "Engine\Restricted\NoRedist\Platforms\{Platform}\Programs\{Project}\Config\{Platform}Engine.ini"
- Fixed config paths for Restricted, non-Platform, program ini files (last change had put OPT_SUBDIR in too many places, it's only needed for Restricted Programs Platform files)

#rb Josh.Adams
#preflight 6466f5b775696d2bd71832dc

[CL 25548254 by stephen ma in ue5-main branch]
2023-05-19 13:53:24 -04:00
David Harvey
0d0744a604 Add missing NotNullWhen to config string array TryParse helper function.
#rb trivial
#rnx
#jira none
#preflight 6464b073317ee2d9d12c64fe

[CL 25504694 by David Harvey in ue5-main branch]
2023-05-17 07:07:05 -04:00
bryan sefcik
70f4bd7856 Moved UserDir logic to Unreal.cs and removed duplicate code.
#fyi joe.kirchoff
#preflight 642b30208f078cc7033df071

[CL 24899656 by bryan sefcik in ue5-main branch]
2023-04-03 16:21:25 -04:00
bryan sefcik
3eaa022618 Updated several places in UBT to be thread safe.
#fyi joe.kirchoff
#preflight 641de24b7703a8de3ddb63a7

[CL 24785255 by bryan sefcik in ue5-main branch]
2023-03-24 15:42:24 -04:00
Josh Adams
5eac55ec21 - Fixed location of ini files that are Restricted + Program + PlatformExtension ini files
- Previously it would look in, say, "/Engine/Restricted/NotForLicensees/Programs/UnrealHeaderTool/Platforms/Mac/Config/MacEngine.ini", which breaks the structure of Restricted and Platforms. Now it will look in "/Engine/Restricted/NotForLicensees/Platforms/Mac/Programs/UnrealHeaderTool/Config/MacEngine.ini" which is correct
#rb tim.smith
#preflight 6405fb063206d45d200b7e36

[CL 24521853 by Josh Adams in ue5-main branch]
2023-03-06 09:56:14 -05:00
Joe Kirchoff
db0395ddf7 UnrealBuildTool: Add Editor to ConfigHierarchyType
#rnx
#rb trival
#preflight 63ebe66b346bca0035bd4268

[CL 24219140 by Joe Kirchoff in ue5-main branch]
2023-02-14 15:03:53 -05:00
josh adams
523b4f0318 - Moved a utility function from two (copy/pasted) places into ConfigHierarchy - GetStructKeyValuePairs(), which will return a Dictionary that contains the keys and values from a standard UE struct definition (almost always loaded from a .ini file). Similar in nature to GetStructEntry(), but will entries in the struct
#rb tim.smith
#preflight 6377efaf815e4b9b7564d565

[CL 23212737 by josh adams in ue5-main branch]
2022-11-18 20:39:31 -05:00
joe kirchoff
144ce56048 UnrealBuildTool: Move some util properties to EpicGames.Build
#rnx
#rb trivial
#preflight 6362e8e86000216d2e2b4bdd

[CL 22937953 by joe kirchoff in ue5-main branch]
2022-11-02 23:07:24 -04:00
gary yuan
7e85f4f2ac #jira: none
Fix if conditional logic in TryGetValue for Enum TryParse

#rb Tim.Kennedy
#preflight: 62feeb09d85afae4d4508ddf
[FYI] ben.marsh

[CL 21499938 by gary yuan in ue5-main branch]
2022-08-22 21:22:31 -04:00
tim smith
ab6f014b6d Fix UBT configuration reading code to read the editor per project user setting from the corrected saved file location.
This resolves a UBT issue where building from Visual Studio/Rider while the editor is running wouldn't automatically change to HotReload mode.
#preflight 626698887e06ec75059f44b8
#jira none
#rb Ben.Marsh, Jonathan.Adamczewski
#lockdown mark.lintott

#ROBOMERGE-AUTHOR: tim.smith
#ROBOMERGE-SOURCE: CL 19901402 in //UE5/Release-5.0/... via CL 19902726
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v942-19904256)

[CL 19904470 by tim smith in ue5-main branch]
2022-04-25 12:47:17 -04:00