You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
========================== MAJOR FEATURES + CHANGES ========================== Change 2857832 on 2016/02/05 by Ben.Marsh GitHub #1959 - Prevent UELinkerFixups file from using shared PCHs; it doesn't necessarily have the right compile environment to be able to use them. Change 2858189 on 2016/02/06 by Ben.Marsh Allow runtime dependencies to be optional, so we can allow games to be staged without requiring PhysX/Apex PDBs. Change 2858968 on 2016/02/08 by Ben.Marsh Allow plugins to be enabled/disabled depending on different target types. Contributed by Ben Everett/Hi-Rez Studios. Change 2859325 on 2016/02/08 by Ben.Marsh Stop adding a debug output device if it goes to the same place as the regular log output device. Prevent output messages printing to the log twice on Mac. #codereview Michael.Trepka Change 2859995 on 2016/02/09 by Matthew.Griffin Changed UnrealFileServer to be non-monolithic so that it doesn't include code that is not public Change 2860393 on 2016/02/09 by Ben.Marsh Add support for pre and post build steps for projects and plugin files. Steps are specified as a list of shell commands per-target platform, and are written to a shell script by UBT. Whenever the target is built, the pre-build steps are executed before UHT, and post-build steps are executed at the end. The following target properties are expanded with UBT properties in the commands: $(EngineDir), $(ProjectDir), $(TargetName), $(TargetPlatform), $(TargetConfiguration), $(TargetType), $(ProjectFile), $(PluginDir). Example JSON fragment: "PreBuildSteps": { "Win64": [ "echo EngineDir=$(EngineDir)", "echo ProjectDir=$(ProjectDir)", "echo TargetName=$(TargetName)", "echo TargetPlatform=$(TargetPlatform)", "echo TargetConfiguration=$(TargetConfiguration)", "echo TargetType=$(TargetType)", "echo ProjectFile=$(ProjectFile)", "echo PluginDir=$(PluginDir)" ] }, Change 2860504 on 2016/02/09 by Ben.Marsh Remove nodes from the grid view that we don't have any data for. Change 2860592 on 2016/02/09 by Ben.Marsh Add script to copy all UAT/UBT build products to another directory. To be used to avoid compiling multiple times on build system. Change 2861087 on 2016/02/09 by Ben.Marsh Allow UAT binaries compiled on the initial agent to be copied to all other agents in a build. Saves a lot of startup time on Mac, in particular. Change 2861788 on 2016/02/10 by Ben.Marsh Fix warnings and mangled notification email if triggers finish before all their jobsteps have been created. #lockdown Nick.Penwarden [CL 2863732 by Ben Marsh in Main branch]
56 lines
1.5 KiB
C#
56 lines
1.5 KiB
C#
// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.IO;
|
|
using AutomationTool;
|
|
using UnrealBuildTool;
|
|
|
|
/// <summary>
|
|
/// Copies all UAT and UBT build products to a directory
|
|
/// </summary>
|
|
public class CopyUAT : BuildCommand
|
|
{
|
|
public override void ExecuteBuild()
|
|
{
|
|
// Get the output directory
|
|
string TargetDir = ParseParamValue("TargetDir");
|
|
if(TargetDir == null)
|
|
{
|
|
throw new AutomationException("Missing -Target argument to CopyUAT");
|
|
}
|
|
|
|
// Construct a dummy UE4Build object to get a list of the UAT and UBT build products
|
|
UE4Build Build = new UE4Build(this);
|
|
Build.AddUATFilesToBuildProducts();
|
|
if(ParseParam("WithLauncher"))
|
|
{
|
|
Build.AddUATLauncherFilesToBuildProducts();
|
|
}
|
|
Build.AddUBTFilesToBuildProducts();
|
|
|
|
// Get a list of all the input files
|
|
List<string> FileNames = new List<string>(Build.BuildProductFiles);
|
|
foreach(string FileName in Build.BuildProductFiles)
|
|
{
|
|
string SymbolFileName = Path.ChangeExtension(FileName, ".pdb");
|
|
if(File.Exists(SymbolFileName))
|
|
{
|
|
FileNames.Add(SymbolFileName);
|
|
}
|
|
}
|
|
|
|
// Copy all the files over
|
|
foreach(string FileName in FileNames)
|
|
{
|
|
string TargetFileName = Utils.MakeRerootedFilePath(FileName, CommandUtils.CmdEnv.LocalRoot, TargetDir);
|
|
Directory.CreateDirectory(Path.GetDirectoryName(TargetFileName));
|
|
File.Copy(FileName, TargetFileName);
|
|
}
|
|
|
|
Log("Copied {0} files to {1}", FileNames.Count, TargetDir);
|
|
}
|
|
}
|