Commit Graph

99 Commits

Author SHA1 Message Date
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
joe kirchoff
c40bc8f0d5 [Backout] - CL21728329
#fyi Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: Set VS2022 as default compiler and generated solution if all available platforms are supported
Add messaging when generating if the default solution must be downgraded to VS2019 due to a platform that does not support VS2022
Unban 17.3-14.33

#rb Francis.Hurteau
#rb Josh.Adams
#preflight 63080ed91670d55ad5de0945
#preflight 630fb22c660db81edbbe7d12

[CL 21732165 by joe kirchoff in ue5-main branch]
2022-08-31 19:25:13 -04:00
Joe Kirchoff
3384dbfc26 UnrealBuildTool: Set VS2022 as default compiler and generated solution if all available platforms are supported
Add messaging when generating if the default solution must be downgraded to VS2019 due to a platform that does not support VS2022
Unban 17.3-14.33

#rb Francis.Hurteau
#rb Josh.Adams
#preflight 63080ed91670d55ad5de0945
#preflight 630fb22c660db81edbbe7d12

[CL 21728329 by Joe Kirchoff in ue5-main branch]
2022-08-31 16:55:58 -04:00
Joe Kirchoff
b9d2ffdc2f UnrealBuildTool: Allow generating visual studio solutions even if no valid toolchains are installed, as the user can now open the solution to install those needed components.
#jira UE-162369
#rnx
#rb trivial
#preflight 630d395b556fc14dce5458d1

[CL 21690511 by Joe Kirchoff in ue5-main branch]
2022-08-29 18:18:18 -04:00
Joe Kirchoff
f8512512ba UnrealBuildTool: Generate .vsconfig that recommends Visual Studio components to be installed, this will prompt the user to run the installer in the Solution Explorer
PR #9185 (inspired by)

#rb Francis.Hurteau
#jira UE-151859
#preflight 63092a22e45e4787a3f889fb

[CL 21598167 by Joe Kirchoff in ue5-main branch]
2022-08-26 16:33:56 -04:00
Joe Kirchoff
2631ac5db7 UnrealBuildTool: Change VS2019 .NET project generation warning to information
#rnx
#rb trivial
#preflight 6307a3d92a56ec23c843ed40

[CL 21567513 by Joe Kirchoff in ue5-main branch]
2022-08-25 13:06:48 -04:00
Joe Kirchoff
929828c6f4 UnrealBuildTool: Disallow .NET projects in the generated VS2019 solution and warn when generating
#jira UE-160343
#rnx
#rb trivial
#preflight 63066534a45b007ea2ae28b3

[CL 21546950 by Joe Kirchoff in ue5-main branch]
2022-08-24 14:06:10 -04:00
Tim Smith
12fc6759d5 [Backout] - CL20817342 - Preventing people from building UE5 or other large projects.
#fyi Joe.Kirchoff
#rnx

Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: Ignore VCProjectFileSettings.MaxSharedIncludePaths for VS2022

#rnx
#rb none
#preflight 62b62e6fa072cea0b5989414
#preflight 62b9b58bba62f4498a3209c2

[CL 20830204 by Tim Smith in ue5-main branch]
2022-06-27 09:55:34 -04:00
Joe Kirchoff
447f374426 UnrealBuildTool: Ignore VCProjectFileSettings.MaxSharedIncludePaths for VS2022
#rnx
#rb none
#preflight 62b62e6fa072cea0b5989414

[CL 20817342 by Joe Kirchoff in ue5-main branch]
2022-06-24 17:41:49 -04:00
Ben Marsh
cbb950c578 UBT: Use ILogger throughout UBT, rather than legacy EpicGames.Core.Log methods. All output going forwards should use structured logging rather than String.Format style logging.
#preflight 628e9dc6e746de4961f60032

[CL 20373777 by Ben Marsh in ue5-main branch]
2022-05-25 19:55:37 -04:00
Joe Kirchoff
c512a89ace Rename UnrealBuildTool.EngineSourceDirectory -> Unreal.EngineSourceDirectory
#rnx
#rb trivial
#preflight 628e9fdaf622d972b59ebe85

[CL 20372061 by Joe Kirchoff in ue5-main branch]
2022-05-25 17:54:39 -04:00
Josh Adams
fa845ed9b9 - VSMac project generation now takes into account projects that are windows only, and doesn't attempt to put them into the solution
- Don't make solution folders if there are no projects anywhere in them
- Fixed MemProfiler2.csproj to open on VSMac (although now with the above it is skipped anyway because it requires windows - but if we make it not require windows, we'd need this fix to match what UBT does)
#jira none
#rb tim.smith
#preflight 6255a8bfcd5ed4dd091a8ece

[CL 19725910 by Josh Adams in ue5-main branch]
2022-04-12 14:29:41 -04:00
jonathan adamczewski
c1bb6901bf Upgrade to .NET 6.0
#jira UE-119846
#preflight 624cbb2ecc0872e96b0d5181

[CL 19652696 by jonathan adamczewski in ue5-main branch]
2022-04-06 14:46:50 -04:00
Josh Adams
3a60b1efab - Moved most of the remaining SDK discovery/versioning from UEBuildWindows.cs to MicrosoftPlatformSDK.cs
#preflight 62476ac7f73c316f680e9ad3
#rb joe.kirchoff
#jira none

[CL 19604020 by Josh Adams in ue5-main branch]
2022-04-03 15:04:38 -04:00
jonathan adamczewski
5c68d1d9ef Revert //UE5/Main/... changelist 19531725 - return to NET Core 3.1
#preflight 62422fd0470aff98e946bfce
#jira UE-119846

[CL 19534572 by jonathan adamczewski in ue5-main branch]
2022-03-28 18:25:19 -04:00
jonathan adamczewski
18ac15cbb1 Upgrade to .NET 6.0
#jira UE-119846
#preflight 6241fc06470aff98e943c035

[CL 19531725 by jonathan adamczewski in ue5-main branch]
2022-03-28 15:30:56 -04:00
jeff fisher
c1958b0acd UE-136919 //UE5/Main - Compile UnrealGame HoloLens - No required compiler toolchain found
-The build machine was trying to use a locally installed toolchain that did not have the arm64 toolchain installed.
-We now identify toolchains with arm64 support and select from only those for arm64 builds.
#rb Joe.Kirchoff, Josh.Adams
#jira UE-136919
#preflight

#ROBOMERGE-AUTHOR: jeff.fisher
#ROBOMERGE-SOURCE: CL 18665835 in //UE5/Release-5.0/... via CL 18665840 via CL 18665864
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v901-18665521)

[CL 18665888 by jeff fisher in ue5-main branch]
2022-01-19 16:20:07 -05:00
jonathan adamczewski
5c48869c86 UnrealBuildTool: rename MasterProject settings as PrimaryProject, and some other uses of 'master'
Variable, function and class renames only. XML-facing variables included deprecated support for the old names.

Renaming of the MasterProjectName.txt file will be handled in a subsequent change.

#jira none
#preflight 61d8a162ec35d1b940f74818

#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18550269 in //UE5/Release-5.0/... via CL 18550308
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18550325 by jonathan adamczewski in ue5-release-engine-test branch]
2022-01-07 15:40:01 -05:00