Commit Graph

183 Commits

Author SHA1 Message Date
bryan sefcik
2797e3e4e9 Optimized the ItemGroup values in VCProject by moving values to properties so can be shared across ClCompile items.
This change drastically cut down on the generated project folder size:
Before: 641 MB
After: 77.1 MB

#preflight 643994e80a5a4b944e6308a1
#fyi joe.kirchoff

[CL 25047199 by bryan sefcik in ue5-main branch]
2023-04-14 15:08:08 -04:00
bryan sefcik
cc312680a6 Moved some of the VS project properties to the common section.
#fyi joe.kirchoff
#preflight 642619469621ba9cb4712518

[CL 24862972 by bryan sefcik in ue5-main branch]
2023-03-30 19:45:03 -04:00
bryan sefcik
be8b73eacc Fixed an issue where some common properties from a different platform were stomping on top of another.
Lots of minor cleanup.

#fyi joe.kirchoff
#preflight 641f0e56973e60967033b3bb

[CL 24796604 by bryan sefcik in ue5-main branch]
2023-03-25 12:06:11 -04:00
bryan sefcik
4bcaed87be Removed more redundant import, configuration and system settings from the generated projects.
#preflight 641e613f7703a8de3d0f1153
#fyi joe.kirchoff

[CL 24792376 by bryan sefcik in ue5-main branch]
2023-03-24 23:20:44 -04:00
bryan sefcik
15d9c6de30 Removed the redundant configuration data from the generated projects.
#preflight 641e1782b72410fc17bef6d3
#fyi joe.kirchoff

[CL 24789336 by bryan sefcik in ue5-main branch]
2023-03-24 18:00:39 -04:00
bryan sefcik
02dce152d4 Fixed an issue where vs project platform properties would leak into other platforms.
#fyi joe.kirchoff
#preflight 641de5aac42c7fd1cbc9371c

[CL 24783941 by bryan sefcik in ue5-main branch]
2023-03-24 14:39:40 -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
61f180726f - Fixed NMakeOutput to not have x64 architecture inlined for Windows builds
#rb trivial
#preflight skip

[CL 23830525 by Josh Adams in ue5-main branch]
2023-01-24 10:06:11 -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
AfterThunk
58c87fd785 PR #10020: Add -Project param to command line build params (Contributed by AfterThunk)
#preflight 63cb37db544e5bb0753f69a0

[CL 23801044 by AfterThunk in ue5-main branch]
2023-01-20 19:58:04 -05:00
real-mikhail
56d6e37459 PR #9942: Added support for coroutines (enabled via bEnableCppCoroutinesForEvaluation) in Rider (Contributed by real-mikhail)
#preflight 63b472011c35d1cbdb411a58

[CL 23568004 by real-mikhail in ue5-main branch]
2023-01-03 13:35:58 -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
Wojciech Krywult
7ea828b1f9 UBT: Projects: Fixed live code edit (edit and continue) on some platforms.
Technically, it did work on the affected platforms, because we could modify a .cpp file and deploy this change, but UBT ran a full build script including compilation, linking and symbol generation, which is unnecessary because only compilation is needed. Thus, it increased the update time from 1-10 sec to 60 seconds (the time is dominated by the link time).

Fixed by adding a special Target to our projects that runs only compilation steps.

#preflight 6348626af622f6c4bbd93647
#rb Joe.Kirchoff,
#jira UE-165149

#rn fix Sony Live code edit (edit and continue) no longer triggers linking when applying code changes. This way iteration time is significantly reduced.

[CL 22534283 by Wojciech Krywult in ue5-main branch]
2022-10-14 16:53:54 -04:00
yujiang wang
aba16650b3 StaticLighting: Prevent UnrealLightmass from being compiled in configurations other than Debug and Development. Also check the Lightmass executable with Development configuration specifically since the editor can default to DebugGame
#preflight 633b13f36b10157eac5d6357

[CL 22322280 by yujiang wang in ue5-main branch]
2022-10-03 20:40:20 -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