Commit Graph

49 Commits

Author SHA1 Message Date
Josh Adams
b0e29c9e75 - Added basic support for compiling Swift code (not general purpose yet, only the UESwift.swift file in this CL will work for now)
- Added an example SwiftUI view shown on VisionOS, using UIHostingViewController (must be created in Swift, not Obj-C)
- Refactored AppleToolChainSettings and children so AppleToolChain can have a single Swift compile function, and still target the proper toolchain (more cleaning up and pulling into AppleToolChain should now be possible)
#rb joe.kirchoff

[CL 26346396 by Josh Adams in ue5-main branch]
2023-06-30 12:08:50 -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
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
60234ab3bb UnrealBuildTool: Update support for minimum cpu arch for x64 platforms. Replaces ModuleRules.bUseAVX
* Add MinimumCpuArchitectureX64 enum, valid values are None, AVX, AVX2, & AVX512. Default value is None
* Obsolete boolean bUseAVX in favor of MinCpuArchX64
* Add MinCpuArchX64 setting to TargetRules
* Add Optional MinCpuArchX64 to ModuleRules, will override any target setting if not null
* Only pass this /arch for x64 platforms
* Can be controlled on the command line with -MinCpuArchX64=

#jira UE-181851
#rb Bryan.Sefcik
#preflight 6425fc7f91589478cdc7867c

[CL 24861220 by Joe Kirchoff in ue5-main branch]
2023-03-30 17:52:50 -04:00
bryan sefcik
ff81794e79 Windows ARM64EC fixes.
#fyi josh.adams
#preflight 63d1c8b96a14d8406d8bc780

[CL 23862381 by bryan sefcik in ue5-main branch]
2023-01-25 19:48:06 -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
DecoyRS
6e9e383c0e PR #9958: Fixing generating Rider project model (Contributed by DecoyRS)
#preflight 63b4760cc6265e21bc034e3d

[CL 23568081 by DecoyRS in ue5-main branch]
2023-01-03 13:46:11 -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
4bd342fb6c UnrealBuildTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list
#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2

[CL 22798627 by joe kirchoff in ue5-main branch]
2022-10-26 19:13:07 -04:00
joe kirchoff
20c19d6503 [Backout] - CL22754728
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealHeaderTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list

#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2

[CL 22795918 by joe kirchoff in ue5-main branch]
2022-10-26 18:18:06 -04:00
joe kirchoff
6e28fec987 UnrealHeaderTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list
#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2

[CL 22793005 by joe kirchoff in ue5-main branch]
2022-10-26 17:30:50 -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
SmelJey
88bf150c2f PR #9330: Add build information to Rider Project Model (Contributed by SmelJey)
#preflight 62ce1722c644c2b870dd0b0f

[CL 21066492 by SmelJey in ue5-main branch]
2022-07-12 20:57:59 -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
DecoyRS
3aec2651f8 PR #9096: Fix missing includes rider (Contributed by DecoyRS)
#tests Tested in Rider
[REVIEW] michael.galetzka

#ROBOMERGE-AUTHOR: charles.lefebvre
#ROBOMERGE-SOURCE: CL 19827801 via CL 19827806 via CL 19827811
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19835115 by DecoyRS in ue5-main branch]
2022-04-20 14:39:08 -04:00
Josh Adams
604aec8368 - Allow for multiple full sdks for a platform (uses a new SDKCollection class to gather sdk versions and their validityt, etc)
- Windows will be first to use it, but in a future CL, with toolchain separate from Windows SDK
- Cleaned up some of the PlatformSDK API to have fewer public members (mainly so the functions that receive multiple versions can be automatically populated with the current single version functions in the subclasses)
- Updated the Turnkey menu to handle multiple versions

#jira none
#rb david.harvey
#preflight 62508cd8f10bcc0f4fa8b5d1

[CL 19692492 by Josh Adams in ue5-main branch]
2022-04-08 15:34:51 -04:00
jonathan adamczewski
0a6164bbd3 nullability annotations, rethrow fixes, net6.0 warning suppression
#jira none
#trivial
#rnx
#preflight 62425155c61d8a458f230657

[CL 19536049 by jonathan adamczewski in ue5-main branch]
2022-03-28 20:50:06 -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
jonathan adamczewski
1f97d3c26e UnrealBuildTool: Remove references to UE4, changes affecting Linux
#jira UE-111420
#rb brandon.schaefer
#preflight none

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

[CL 18565911 by jonathan adamczewski in ue5-release-engine-test branch]
2022-01-10 17:07:17 -05:00
jonathan adamczewski
c7aeb00f62 UnrealBuildTool: Remove various references to UE4.
#jira UE-111420
#trivial
#preflight none

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

[CL 18565586 by jonathan adamczewski in ue5-release-engine-test branch]
2022-01-10 16:46:00 -05:00
jonathan adamczewski
df8d8dbfed Remove references to i686
#jira none
#trivial
#preflight 61d75c39322ebb01f70f51eb

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

[CL 18536034 by jonathan adamczewski in ue5-release-engine-test branch]
2022-01-06 16:22:54 -05:00
joe kirchoff
08cebf3c6e UnrealBuildTool: Replace Compiler >= WindowsCompiler.VisualStudio2019 with Compiler.IsMSVC() extension function
#rnx
#rb jonathan.adamczewski
#preflight 61d6228f4c252480ca1fef34

#ROBOMERGE-AUTHOR: joe.kirchoff
#ROBOMERGE-SOURCE: CL 18526227 in //UE5/Release-5.0/... via CL 18526234
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18526242 by joe kirchoff in ue5-release-engine-test branch]
2022-01-05 18:15:00 -05:00
brandon schaefer
50763eb539 Fix include path when we changed dir from Linux -> Unix (thanks arcolight! PR #8640)
#jira UE-135449
#rb none

#ROBOMERGE-AUTHOR: brandon.schaefer
#ROBOMERGE-SOURCE: CL 18309443 in //UE5/Release-5.0/... via CL 18309463
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18309510 by brandon schaefer in ue5-release-engine-test branch]
2021-11-29 10:02:36 -05:00