Commit Graph

41 Commits

Author SHA1 Message Date
ben marsh
4d9ed7e417 EpicGames.BuildGraph: Apply standard naming conventions to BuildGraph.Automation.
[CL 33835640 by ben marsh in ue5-main branch]
2024-05-22 13:17:22 -04:00
ben marsh
c14d97c48d BuildGraph: Enable warnings for string comparisons in BuildGraph.Automation.
#rnx

[CL 33817664 by ben marsh in ue5-main branch]
2024-05-21 21:06:38 -04:00
ben marsh
7918a7011d BuildGraph: Enable warnings for declaring visibile instance fields in BuildGraph.Automation.
[CL 33817522 by ben marsh in ue5-main branch]
2024-05-21 20:54:09 -04:00
Ben Marsh
7af2532ec9 Horde: Functionality to support multi-agent cooks.
[CL 28065915 by Ben Marsh in ue5-main branch]
2023-09-20 19:32:02 -04:00
Ryan Hummer
3ebc0e1bcf Removing mono/xbuild part 1
* Updating references to use dotnet
* Add new RunDotnet scripts
* Removing Mono sh scripts and references to them

#rnx
#jira UE-153293
#rb josh.adams, zack.neyland, brandon.schaefer

[CL 26737744 by Ryan Hummer in ue5-main branch]
2023-08-01 10:02:58 -04:00
Ben Marsh
235eb77726 Change to structured logging in other AutomationTool projects.
#preflight 6408c4478c0039bbf750e861

[CL 24562553 by Ben Marsh in ue5-main branch]
2023-03-08 12:43:35 -05:00
Ben Marsh
89d6613573 UAT: Refactor AutomationUtils and BuildGraph to use structured logging.
#preflight 6407c4c26e1dadfcdab25849

[CL 24553706 by Ben Marsh in ue5-main branch]
2023-03-07 21:23:47 -05:00
Ben Marsh
64b6cb04f1 BuildGraph: Fix UDN documentation output.
#preflight none

[CL 20774471 by Ben Marsh in ue5-main branch]
2022-06-22 10:42:19 -04:00
jonathan adamczewski
f515402a7a CsCompile: Don't use /restore when compiling with xbuild
#jira none
#fyi ryan.hummer
#rnx
#preflight 62697de92735a2c0ea8a153c

[CL 19943308 by jonathan adamczewski in ue5-main branch]
2022-04-27 14:04:02 -04:00
Ben Marsh
347784c8b8 BuildGraph: Add a parameter to the CsCompile task to allow using the system C# compiler rather than the UE-bundled version. Allows compiling Swarm et al correctly as part of installed build script.
#preflight none
#fyi Jonathan.Adamczewski

[CL 19772216 by Ben Marsh in ue5-main branch]
2022-04-15 12:25:18 -04:00
jonathan adamczewski
196e422d10 CsCompile: Fix argument order (and use msbuild rather than build, consistent with elsewhere)
#jira none
#rnx
#preflight 624f15f9933134aa0538dbe3

[CL 19672505 by jonathan adamczewski in ue5-main branch]
2022-04-07 13:09:10 -04:00
jonathan adamczewski
7cf9663b93 CsCompile: Include project in command line
#jira none
#fyi ben.marsh
#rnx
#preflight 624ef817f94f766ffaad7d57

[CL 19669311 by jonathan adamczewski in ue5-main branch]
2022-04-07 10:56:47 -04:00
Ben Marsh
2c879673ff BuildGraph: Fix compilation of C# projects with the bundled NET runtime.
#preflight 624dec312c73c3b0c045a51a

[CL 19654182 by Ben Marsh in ue5-main branch]
2022-04-06 15:56:36 -04:00
Ben Marsh
a59ef99c07 BuildGraph: New mechanism for declaring graphs using C# code (WIP).
Nodes can now be implemented by arbitary C# methods. Graph structure is specified through expression trees implemented using Bg* types, which are not substituted with values until execution time. Doing so allows determination of node and option dependencies for a particular target, allowing us to generate dynamic UI for presenting relevant settings to the user.

Includes partial implementation of Installed Build script as an example implementation.

#preflight 61bb85d46c2686e86322eec9

[CL 18477305 by Ben Marsh in ue5-main branch]
2021-12-16 13:55:22 -05:00
Ben Marsh
6a2855f64c UAT: Add support for async build commands and BuildGraph tasks.
#preflight 61b3aa86e928cffe866fa918

[CL 18433916 by Ben Marsh in ue5-main branch]
2021-12-10 15:36:47 -05:00
Ben Marsh
ff1f79e46f BuildGraph: Merging BuildGraph library refactor from //UE5/Release-5.0.
[CL 18107814 by Ben Marsh in ue5-main branch]
2021-11-09 12:36:25 -05:00
jonathan adamczewski
4ece24e65a AutomationTool, BuildUtilities:
UnrealBuild -> Unreal for EngineDirectory, RootDirectory, IsEngineInstalled, UnrealBuildToolPath
Remove CommandUtils EngineDirectory, RootDirectory, IsEngineInstalled - use equvalents from UnrealBuildBase.Unreal

#jira none

[CL 16648181 by jonathan adamczewski in ue5-main branch]
2021-06-11 18:20:44 -04:00
jonathan adamczewski
17602ab008 Support two msbuilds, for NET Framework and Core
This is a preparatory change ahead of adding the ability to build NET Core projects to the CsCompile task, and subsequent conversion of NET Framework projects to NET Core. On its own, it should have no substantive visible effect.

#jira none

[CL 16008195 by jonathan adamczewski in ue5-main branch]
2021-04-14 13:24:20 -04:00
jonathan adamczewski
70ed64e369 Fix "Build Tools CS Mac" on Mac
RunUAT.sh:
Setup Mono environment on Mac and Linux so that AutomationTool is able to launch xbuild for CsCompile tasks that have not been transitioned to NET Core.
(Linux change is untested)

CsCompileTask.cs:
Don't add the "/restore" argument to command line when building using xbuild as it does not appear to be supported.

InstalledEngineBuild.xml:
Remove CsCompile invocations for UAT projects as these are currently not able to be compiled by UAT: CsCompile does not know how use the bundled dotnet to build NET Core projects, and [our bundled] mono does not support NET Core projects.

This file is consumed by AutomationTool, which is compiled by RunUAT.sh. As such, it can generally be assumed that the UAT build is up to date when the built files are consumed (InstalledEngineBuild.xml has directives to tag the AutomationTool files to ensure they are included.)

#jira UE-112471

[CL 15902338 by jonathan adamczewski in ue5-main branch]
2021-04-02 12:03:38 -04:00
Ben Marsh
068f97616c Restore packages before building projects. Should fix IncludeTool errors in CIS.
#rb none
#rnx

[CL 14964192 by Ben Marsh in ue5-main branch]
2020-12-23 11:23:34 -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
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
Ben Marsh
6ee8803dd7 Add support for passing properties to the <CsCompile> task, and fix parsing of ShooterGame project files in the BuildEditorAndTools.xml script.
#rb none
#rnx

[CL 14043020 by Ben Marsh in ue5-main branch]
2020-08-05 17:49:47 -04: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
Mitchell Wilson
f0a83e9112 Copying //UE4/Dev-Documentation to Samples-Main (//UE4/Samples-Main)
#rb none
#rnx

[CL 9551884 by Mitchell Wilson in Main branch]
2019-10-11 16:59:16 -04:00