Commit Graph

116 Commits

Author SHA1 Message Date
josh adams
8a379d2aeb - Made AutomationTool references be non-copy-local, so it loads the .dlls from AutomatonTools\AutomationScripts. This solves the problem of making changes in automation scripts, then RunUAT would fail to get the changes, because building AT would copy the .dll's next to the .exe, but then iterating on automation scripts and using RunUAT (without building AT.exe proper), would not copy new dlls on top of the ones next to the .exe
- Added a task to AutomationTool.csproj to delete the stale (bad) dlls that were next to the .exe
#rb Joe.Kirchoff

[CL 30576493 by josh adams in ue5-main branch]
2024-01-11 15:47:26 -05:00
josh adams
cd4c4e0639 Need to back this out because it will no have forever-stale dlls next to the .exe
[Backout] - CL30504014
[FYI] Josh.Adams
Original CL Desc
-----------------------------------------------------------------
- Made AutomationTool references be non-copy-local, so it loads the .dlls from AutomatonTools\AutomationScripts. This solves the problem of making changes in automation scripts, then RunUAT would fail to get the changes
#rb Joe.Kirchoff

[CL 30504141 by josh adams in ue5-main branch]
2024-01-09 09:58:22 -05:00
josh adams
1f86808603 - Made AutomationTool references be non-copy-local, so it loads the .dlls from AutomatonTools\AutomationScripts. This solves the problem of making changes in automation scripts, then RunUAT would fail to get the changes
#rb Joe.Kirchoff

[CL 30504031 by josh adams in ue5-main branch]
2024-01-09 09:53:45 -05:00
bryan sefcik
01b619ae9c Readded splitting up the architectures in VS. In the case of Win64, the name in VS stays the same(i.e. not Win64-x64) but the other architectures have the -<architecture> suffix. This gets around an issue where VS would reset the selected config/platform because the name changed.
#jira
#rb joe.kirchoff

[CL 27032388 by bryan sefcik in ue5-main branch]
2023-08-11 12:50:25 -04:00
bryan sefcik
dd629c9b68 Turned off the creation of the additional platform/architectures options until I figure out a way to not have VS reset what current config/platform was previously selected.
[FYI] joe.kirchoff
#jira

[CL 26825507 by bryan sefcik in ue5-main branch]
2023-08-03 16:24:09 -04:00
bryan sefcik
9a81ca5c26 Added support to have multiple architectures per platform in the VS sln/projects.
Updated the project generators to search the VS platform directory when HasVisualStudioSupport is called to find out whether a platform is supported. This fixes several issues where platforms were being generated like they were supported by the host machine but actually weren't.

#rb joe.kirchoff
#jira

[CL 26795017 by bryan sefcik in ue5-main branch]
2023-08-02 20:27:20 -04:00
joe kirchoff
da089d0875 Support for .natstepfilter
#rnx
#jira UE-190863
#jira UE-191341

#ushell-cherrypick of 26715542 by Joe.Kirchoff

[CL 26723680 by joe kirchoff in ue5-main branch]
2023-07-31 18:02:16 -04:00
joe kirchoff
01a82374aa UnrealBuildTool: Allow configuring toolchain and toolchain version to control what msvc version is used when clang is used to compile
#rb Tim.Smith

[CL 26449366 by joe kirchoff in ue5-main branch]
2023-07-18 17:55:15 -04:00
bryan sefcik
8d879983bc Moved the default VS include paths to the common file.
#jira

[CL 26170375 by bryan sefcik in ue5-main branch]
2023-06-21 20:04:42 -04:00
bryan sefcik
eaab0fef8a Added a common UECommon.props file that contains common properties all VS projects need.
Split the common paths into separate properties to save some memory.

Before: 82.6 MB (86,654,951 bytes)
After: 72.3 MB (75,873,141 bytes)

#rb joe.kirchoff
#preflight 647811487f02573726caf5f6
#jira

[CL 25730657 by bryan sefcik in ue5-main branch]
2023-06-01 12:58:20 -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
bryan sefcik
d4379d0f03 Remove redundant saving of the AutomationTool.csproj.References file.
#fyi joe.kirchoff
#preflight 641de208803cb466e853fe00

[CL 24783615 by bryan sefcik in ue5-main branch]
2023-03-24 14:15:34 -04:00
Josh Adams
11b99788c5 - Actually disabled bMakeProjectPerTarget, it was left on mistakenly in my last checkin
#preflight skip
#rb trivial

[CL 24285890 by Josh Adams in ue5-main branch]
2023-02-17 13:01:39 -05:00
Josh Adams
4d71a93586 - Added ability to have a IDE project for each Target (UnrealGame vs UnrealEditor) and remove the Type from the Configurations (Debug, Development, etc - no more Development Editor config)
- Enabled for Xcode, added support but left disabled for VisualStudio
- For Games and Samples with multiple projects, a solution folder now contains them
#rb joe.kirchoff
#preflight 63efb20061378b7ea02bc32d

[CL 24285567 by Josh Adams in ue5-main branch]
2023-02-17 12:53:28 -05:00
josh adams
1610c3bee3 UnrealArch/UnrealArchitectures changes
- Creates the UnrealArchitectures class, which wraps a list of UnrealArch objects
 - UnrealArch is a single architecture, expandable enum-like struct
 - There is no more concept of "no/default architecture", there is always a valid active architecture when building
 - Most uses of "string Architecture" are replaced with one of the two above, depending if multiple architectures are supported or not
 - UnrealArch has some platform-extensions for platform-specific naming (like Linux adds in LinuxName that turns, for instance, Arm64 -> aarch64-unknown-linux-gnueabi, which is used in folder names, etc)
 - UnrealArch has bIsX64 which can be used determine intel instruction set (as opposed to arm)
 - TargetRules class has an "Architecture" accessor that will return a single architecture if the active architectures is a single architecture, or throw an exception if multiple. This is useful in a majority of the cases where a paltform can only have a single architecture active in TargetRules (microsoft platforms, for instance, will create separate targets when compiling multiple architectures at once)
 - Added UnrealArchitectureConfig class, which contains all the architecture information for a platform (what architectures are supported, what ones are currently active for given project, etc)

#preflight 63c81fb5b065224750a1759e
#rb mike.fricker,roman.dzieciol,joe.kirchoff,dmytro.vovk,brandon.schaefer [various parts]
#p4v-preflight-copy 23562471

[CL 23829977 by josh adams in ue5-main branch]
2023-01-24 09:30:28 -05:00
joe kirchoff
95c918e91c UnrealBuildTool: Set VS2022 as the default generated solution and compiler if all available platforms are supported
#rb Francis.Hurteau
#rb Josh.Adams
#preflight 63768595de1d9b5c3c33cf9c

[CL 23184507 by joe kirchoff in ue5-main branch]
2022-11-17 16:58:58 -05:00
Josh Adams
9ced2f36be - Fixed VSMac project generation
#rb joe.kirchoff
#okfrogithub public
#preflight 634d78d19c29024c9834f89b

[CL 22567001 by Josh Adams in ue5-main branch]
2022-10-17 12:07:45 -04:00
joe kirchoff
0b357878a3 UnrealBuildTool: Revert initial visual studio selection logic back to how it was before the downgrade logic was added. It will still downgrade to 2019 if a platform sdk requires it.
#rnx
#rb trivial
#preflight none

[CL 22142152 by joe kirchoff in ue5-main branch]
2022-09-22 15:05:33 -04:00
joe kirchoff
9cb4952d3c UnrealBuildTool: Support automatically downgrading project if platform sdk does not support a version of visual studio
This is required to update the default visual studio version, however that change is currently on hold due to a compiler issue

#rnx
#rb trivial
#preflight 6328f2df826e0c2fe90f097a

[CL 22088638 by joe kirchoff in ue5-main branch]
2022-09-20 00:48:51 -04:00
real-mikhail
c717e1f3b3 PR #9569: Rider project model: get the list of supported configurations from UnrealBuildTool (Contributed by real-mikhail)
#jira UE-163885
#rb Joe.Kirchoff
#tests Tested in Rider and MSVS

[CL 22058287 by real-mikhail in ue5-main branch]
2022-09-16 15:53:01 -04:00