Commit Graph

104 Commits

Author SHA1 Message Date
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
michael sartain
43ef13a97b Fix UnrealBuildTool unused variable warnings
#jira none
#rb Ben.Marsh
[FYI] Andrew.Grant, Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 12224860 in //UE4/Release-4.25/... via CL 12224862
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v663-12210973)

[CL 12224868 by michael sartain in Main branch]
2020-03-16 19:04:42 -04:00
josh adams
5482171bf2 - Removed extra Engine directory under the UE4 project above the Platforms directory (Platforms was the only folder in the Engine folder)
#jira UE-89854
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 11827890 in //UE4/Release-4.25/... via CL 11827895
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 11827996 by josh adams in Main branch]
2020-03-02 11:48:53 -05:00
anthony bills
1ef400627b Add support for whitelisting additional plugins and adding additional modules to plugin extensions.
Additionally allow monolithic programs inside platform extensions to ouput to the Binaries directory in the extension.

[at]brian.white, [at]josh.adams, [at]ben.marsh
#jira UE-81798
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 11655119 in //UE4/Release-4.25/... via CL 11655234
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 11655284 by anthony bills in Main branch]
2020-02-27 10:47:20 -05:00
ben marsh
0f201db161 Add support for UAT script projects using foreign engine builds, and for game projects to output binaries under their own project directory.
* UAT will now read each *.Automation.csproj file to determine the output path, and load from there rather than just loading anything under Engine\Binaries\AutomationScripts.
* When compiling *.Automation.csproj files, UAT will set the $(EngineDir) directory to the current engine directory, allowing the project to resolve assembly references to the correct location.
* When generating project files, UBT will create an *.Automation.csproj.props file next to the project containing the path to the engine directory, allowing the assembly to be compiled correctly from Visual Studio.

#rb none
#jira UE-77934

#ROBOMERGE-SOURCE: CL 11601626 in //UE4/Release-4.25/... via CL 11601635
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11601659 by ben marsh in Main branch]
2020-02-25 09:26:12 -05:00
Josh Adams
aa9705149b Copying Private-LoadTimes-4.24 stream to Main. Biggest changes are in Materials/Shader memory freezing.
#rb none

[CL 11282608 by Josh Adams in Main branch]
2020-02-06 13:13:41 -05:00
Ben Marsh
0e6aa011b3 Copying //UE4/Dev-Build @ CL 11166028 to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 11166227 by Ben Marsh in Main branch]
2020-01-29 14:48:18 -05:00
ben marsh
03ae195b79 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536 via CL 10870955
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v624-10872983)

[CL 10876681 by ben marsh in Dev-Build branch]
2020-01-05 17:24:44 -05:00
Ryan Durand
9ef3748747 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870955 by Ryan Durand in Main branch]
2019-12-26 23:01:54 -05:00
marc audy
7aae276001 Submit of Josh Adams' restructuring of platform handling in UBT
[FYI] Josh.Adams

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 10590881 via CL 10590882
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v610-10636431)

[CL 10785306 by marc audy in Dev-Build branch]
2019-12-17 22:42:25 -05:00
donal maccarthy
a5df949957 Expose Target Configurations to BuildConfiguration.xml
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: donal.maccarthy
#ROBOMERGE-SOURCE: CL 10483331 via CL 10483352 via CL 10483359
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v610-10636431)

[CL 10778382 by donal maccarthy in Dev-Build branch]
2019-12-17 17:30:27 -05:00