Commit Graph

114 Commits

Author SHA1 Message Date
ben marsh
252afb693c UBT: Rename UE4CSharp.prog files to *.uprogram.
#rb none
#jira UE-104764

#ROBOMERGE-SOURCE: CL 15440534 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15454164 by ben marsh in ue5-main branch]
2021-02-18 13:09:06 -04:00
Marc Audy
cac1fe0019 Merge UE5/Release-Engine-Staging @ CL# 15299266 to UE5/Main
This represents UE4/Main @ CL# 15277572

[CL 15299962 by Marc Audy in ue5-main branch]
2021-02-03 14:57:28 -04:00
Marc Audy
bf80889353 UE5/Release-Engine-Staging to UE5/Main
This represents UE4/Main up to CL# 14958402

[CL 15028197 by Marc Audy in ue5-main branch]
2021-01-08 19:56:07 -04:00
Ben Marsh
6f927647b1 Changing C# code over to using EpicGames.Core over DotNETCommon.
#rb none
#rnx

[CL 14962096 by Ben Marsh in ue5-main branch]
2020-12-21 23:07:37 -04:00
Ben Marsh
d841d84ddb Missing files.
#rb none
#rnx

[CL 14962041 by Ben Marsh in ue5-main branch]
2020-12-21 22:17:17 -04:00
Ben Marsh
f86c977d59 Forking DotNETUtilities into EpicGames.Common, to allow unification with Horde. Uses Core-style hierarchical naming, and excludes classes that have counterparts in NET Core. DotNETUtilities will be deprecated/made as a wrapper around EpicGames.Common.
#rb none
#rnx

[CL 14961221 by Ben Marsh in ue5-main branch]
2020-12-21 11:50:46 -04:00
Ben Marsh
83f27d27e9 UBT: Mark platforms and project file generation code as not nullable aware.
#rb none
#rnx

[CL 14960496 by Ben Marsh in ue5-main branch]
2020-12-20 17:32:59 -04:00
Phillip Kavan
11c00323ea Remove exposed parts of the Blueprint nativization feature (deprecated), and decouple it from the editor/cooking phase.
#jira UE-103261
#rb Michael.Noland

[CL 14882147 by Phillip Kavan in ue5-main branch]
2020-12-08 16:28:03 -04:00
Joakim Lindqvist
302f1f8ddd UBT can now filter out any project which requires dotnet support from the solution, which we do for VS2017 as it does not support Dotnet Core 3+
#rb ben.marsh

[CL 14855498 by Joakim Lindqvist in ue5-main branch]
2020-12-04 12:20:48 -04:00
Joakim Lindqvist
e7039d3d35 UBT and UAT now use .NET Core instead of Framework and Mono. This means that we use the same runtime on Windows, Linux and Mac. Further benefits including newer C# features and a lot of intresting features for the future around AOT and Tiered compilation.
Some behavior changes:
Output paths - Both tools are now output to a subdirectory of Binaries/Dotnet, I believe most hardcoded paths have been fixed up but there may be tools that will fail because of this.
UAT Plugin Building - As .NET Core does not support AppDomain unloading, how we build the plugins has changed quite a bit, these are now built before UAT is started rather then by UAT itself. If you just start UAT via RunUAT.bat/sh this should just continue to work.

#rb ben.marsh

[CL 14834347 by Joakim Lindqvist in ue5-main branch]
2020-12-02 06:57:13 -04:00
Joakim Lindqvist
b4d3e129ca Moved logic for finding automation tool projects into msbuild, making the generated .reference file from UBT redundant.
This makes it possible to build UAT with these references without having to run UBT first. Thus also fixes net core building of the project.

This adds about 5 seconds to the build time of automation tool but eliminates the need to run UBT and should avoid the need to implement -compile in UAT (in the end saving more then these 5 seconds)

This essentially does the same as UBT did before, create a .reference file on disk that can then be read by msbuild, it just does this in msbuild as well so we have fewer components involved.

#rb ben.marsh

[CL 14640899 by Joakim Lindqvist in ue5-main branch]
2020-11-03 08:00:07 -04:00
Joakim Lindqvist
394b90b098 UBT changes required for netcore projects.
* Added support for more complex Msbuild conditions (using static property methods) as we use this to do per platform checks in the csprojs.
* Tweaks to the parsing of csprojs as expecations are different for netcore (mostly for how configurations are defined)
* Lastly if -dotnetcore flag is present when generating projects, use the netcore project files instead.

#rb ben.marsh

[CL 14572331 by Joakim Lindqvist in ue5-main branch]
2020-10-26 06:08:01 -04:00
Joakim Lindqvist
4aa09904f2 UnrealBuildTool now supports running as a net core project.
Added a set of netcore csprojs to BuildUtilities and DotnetUtilities that build to a seperate output folder. This allows other tools to still target .net framework (like UAT for instance).
UBT is still by default targeted as .net framework.

Note that UBT built for net core has a different output directory Engine/Binaries/DotNet/UnrealBuildTool/UnrealBuildTool.exe - this is due to how a netcore project output looks with signficantly more files that are related to that application (that would be overwritten if using a shared directory).

To opt in to this set UE_USE_DOTNET=1 environment variable.
Please note that due to the changed output directory a lot of tooling will likely break at this point.

#rb ben.marsh

[CL 14419918 by Joakim Lindqvist in ue5-main branch]
2020-10-05 08:13:04 -04:00
Ben Marsh
52672b7bf5 Remove references to Enterprise from UBT.
#rb none

[CL 14354554 by Ben Marsh in ue5-main branch]
2020-09-20 15:18:41 -04:00
Ben Marsh
03675533ea Rename UE4Game -> UnrealGame, UE4Client -> UnrealClient, UE4Server -> UnrealServer.
Mostly a find/replace, though I have looked through the changes and attempted to update references to other things as necessary (eg. renaming IOS plist files for IOS). I'm not set up to test on any platforms other than windows, and was hoping to get your blessing to submit and give QA enough time as possible to uncover issues before the next milestone release.

Particular things that I know I'm not sure about:
- Android references /UE4Game/ paths everywhere (for paths on device, I think). I have no idea if I've got them all.
- I've renamed the iOS mobileprovisions, but I don't know if they need regenerating for the new app name.
- Likewise, not sure what needs to be updated for icon bundles on iOS.

Things that have not been changed:
- Windows still uses IDI_UE4ICON for its icon
- UE4CommandLine.txt
- There's still a UE4Game module which is used by content-only projects

#rb none

[CL 14301890 by Ben Marsh in ue5-main branch]
2020-09-11 15:54:42 -04:00
Ben Marsh
be7034ec27 Rename UE4Editor to UE5Editor, and generated solution/projects from UE4 -> UE5.
UE4Game/Client/Server targets left intact for the time being.

#rb none

[CL 14288076 by Ben Marsh in ue5-main branch]
2020-09-10 09:10:30 -04:00
Marc Audy
7379fa99c5 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14229157
[CL 14233282 by Marc Audy in ue5-main branch]
2020-09-01 14:07:48 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
graeme thornton
7199481e65 Second attempt at submitting:
UBT: When generating visual studio project files, projects with multiple editor targets will use the default editor target config setting, if it exists, to determine which editor target should be added to the main project file. All others will generate separate projects inside the VS solution.

#rb ben.marsh

#ROBOMERGE-SOURCE: CL 13169045 via CL 13169053 via CL 13169054 via CL 13169058 via CL 13169079
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v688-13145358)

[CL 13169085 by graeme thornton in Main branch]
2020-05-05 05:22:31 -04:00
graeme thornton
b8d176d2f8 Backing out my change to project file generation as it seems to be causing some problems
#rnx

#ROBOMERGE-SOURCE: CL 13132309 via CL 13137042 via CL 13137199 via CL 13137212 via CL 13137228
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v687-13115495)

[CL 13137240 by graeme thornton in Main branch]
2020-04-30 23:19:44 -04:00
graeme thornton
62991995ea UBT: When generating visual studio project files, projects with multiple editor targets will use the default editor target config setting, if it exists, to determine which editor target should be added to the main project file. All others will generate separate projects inside the VS solution.
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 13115425 via CL 13115430 via CL 13115434 via CL 13115440 via CL 13115446
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v686-13045012)

[CL 13115454 by graeme thornton in Main branch]
2020-04-30 10:55:26 -04:00
josh adams
00fb0510ae - Added ability for a module to add additional directories (ConditionalAddModuleDirectory). Used for adding source files in Restricted (without needing the extra Build.cs files the way PlatformExtensions are set up).
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 12754541 via CL 12754548 via CL 12754551
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v678-12743200)

[CL 12754556 by josh adams in Main branch]
2020-04-13 10:18:08 -04:00
josh adams
90ff579ecc - UBT/C++ changes needed for new Restricted locations
- Does not have the changes for new .ini file locations
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 12676628 via CL 12676630 via CL 12676633
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12676637 by josh adams in Main branch]
2020-04-08 15:07:46 -04:00
ben marsh
4a408fa900 UBT: Ignore any targets that can't be built on the current host platform when generating intellisense data for project files.
#rb none
#jira

#ROBOMERGE-SOURCE: CL 12232883 in //UE4/Release-4.25/... via CL 12232888
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v664-12234175)

[CL 12234793 by ben marsh in Main branch]
2020-03-17 15:11:31 -04:00