Commit Graph

42 Commits

Author SHA1 Message Date
leon huang
3850621dd1 Localization:
Introduced the experimental LocalizationTargetEditor UAT command. This command allows users to create, update, delete and query localization targets in the Engine or project. The LocalizationTargetEditor UAT command is set up to have a series of sub-commands which can be executed with different parameters. This allows the LocalizationTargetEditor to be extensible to users for specialized localization target operations.
- Introduced the LocalizationTargetCommand abstract base class. This class is what all othe LocalizationTargetEditor sub-commands should be drived from. A scan of all sub-classes of LocalizationTargetCommand will be scanned for to determine all available localization target commands.
- Introduced the PluginLocalizationTargetCommand abstract base class. All commands to be operated on plugins should derive from this class.
- Introduced the NewPluginLocalizationTarget sub-command which will create localization config files for plugins and make the necessary updates to .uplugin files. All plugins under a provided directory can be operated on at a time to batch create the necessary localization config files.
- The NewPluginLocalizationTarget sub-command has perforce integration and can automatically add/check out all files that have been created/edited.
- Introduced a number of classes to encapsulate all the data in the various localization config files. This allows for generation of localization config files from code.
- Introduced the LocalizationConfigFileBuilder and LocalizationConfigFileGenerator base classes. These classes and their sub-classes are used to generate localization config files in the correct format provided the config file data. Current support is only for modular localization config files. However, the LocalizationConfigFileBuilder can also be used to generate Monolithic localization config files if necessary.also

#rb: Jamie.Dale
#jira: UE-194872, UE-194873, UE-194874,
#test Used the NewPluginLocalizationTarget sub-command to generate a number of plugins. The generated localization config files yield correct localization gather results and the plugin .locres file was successfully loaded at runtime to display the correct localized text.

[CL 28424727 by leon huang in ue5-main branch]
2023-10-03 14:44:56 -04:00
leon huang
b3b7f0a6dc Localization:
Update the Localize UAT command to better handle gathering for plugins.
- Introduced the -IncludePluginsDirectory parameter to include all plugins under a particular directory
- Introduce the ExcludePluginsDirectory parameter to exclude all plugins under a particular directory
- Introduce the EnableIncludedPlugins flag to add all  included plugins that pass the exclude filter to the -EnablePlugins editor command line parameter to ensure the plugins are enabled for gathering.
#rb: Jamie.Dale
#jira: none
#test Used the new commands to perform gathers for directories of plugins and enabling plugins that are not on by default.

[CL 26161937 by leon huang in ue5-main branch]
2023-06-21 16:45:17 -04:00
Ben Marsh
7e26c34d2b EpicGames.Core: Deprecate legacy log methods to prefer structured logging interface.
#preflight 640a23d928026468d9de7cbd

[CL 24580590 by Ben Marsh in ue5-main branch]
2023-03-09 14:51:40 -05:00
jonathan adamczewski
c12d99d854 .net6.0 is not supported in VS2019. Suppress warnings about that when using that IDE (with this change, when building UnrealBuildTool & AutomationTool)
#jira none
#rnx
#rb joe.kirchoff
#preflight 624f2c163c2aff69c54ff9eb

[CL 19675097 by jonathan adamczewski in ue5-main branch]
2022-04-07 15:06:02 -04:00
jonathan adamczewski
c1bb6901bf Upgrade to .NET 6.0
#jira UE-119846
#preflight 624cbb2ecc0872e96b0d5181

[CL 19652696 by jonathan adamczewski in ue5-main branch]
2022-04-06 14:46:50 -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
5fde59b49e AutomationTool:
When looking for types that come from script modules, look at just the script module assemblies.

#jira none
#rb none

[CL 17352195 by jonathan adamczewski in ue5-main branch]
2021-08-30 10:42:00 -04:00
jonathan adamczewski
62804f6373 When iterating through script assemblies, skip AutomationTool
#jira UE-121817
#rb none

[CL 17328223 by jonathan adamczewski in ue5-main branch]
2021-08-26 19:19:04 -04:00
jonathan adamczewski
db8046e278 Move DotNETCommon/BuildUtilities to Shared/EpicGames.Build
Also moves DotNETCommon/Metadata.cs to Shared/Metadata.cs

#jira none
#rb tim.smith

[CL 17116964 by jonathan adamczewski in ue5-main branch]
2021-08-10 11:08:41 -04:00
Nick Darnell
66e5332a42 Localization - Adding CrowdinLocalization provider, basic support implemented. Updated the API for localization providers to make async/await easier to implement.
#jira none
#review-16912308 Jamie.Dale

[CL 16912307 by Nick Darnell in ue5-main branch]
2021-07-21 14:15:40 -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
017048f505 Changed pdb format to not use portable pdbs (which is the default in net core) and instead back to our old pdb configuration.
This resolves a issue with PCBs were pdbcopy failed to run because it does not support portable pdbs.

#rb none

[CL 14837521 by Joakim Lindqvist in ue5-main branch]
2020-12-02 14:54:53 -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
1b4f6b3ac9 Changed output directory for UAT projects under netcore, now outputting to a seperate directory for each addin. This avoids the risk of output stomping each other breaking incremental builds. Furthermore it makes it easier to understand who adds what dependency to the output.
Also cleaned up some output assemblies, preventing all transative references from being outputed (as we assume they build directly to the output directory instead). Unfortunatley the UBT references still cause tranastive dependencies to be copied as this is also a executable that needs to work outside of UAT as well, we should eventually move all UBT referenced code into BuildUtilities.

#rb none
#fyi ben.marsh

[CL 14775171 by Joakim Lindqvist in ue5-main branch]
2020-11-18 10:18:50 -04:00
Joakim Lindqvist
bd18d9e6e8 Disabled copy local on project references for netcore projects, fixes build warnigns caused by multiple copies trying to write to the same output files.
Also reduces footprint on disk and speedsup builds slightly.

Also took a pass over all projects to fixup their output paths as there were some inconsitencies from my port to netcore.
Lastly I disabled the resource folders for everything but english to reduce some of the noise in the output folder, this just impacts which languages you get code analysis.

#jira UE-102147
#rb none

[CL 14651855 by Joakim Lindqvist in ue5-main branch]
2020-11-04 09:48:49 -04:00
Joakim Lindqvist
2750553a40 UAT Net Core - Copied project files into net core compatible format
#rb none

[CL 14572287 by Joakim Lindqvist in ue5-main branch]
2020-10-26 06:05:41 -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
Ben Marsh
0cc6e3dca6 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 6631504 by Ben Marsh in Main branch]
2019-05-24 11:51:54 -04:00
Jamie Dale
a27aefcf57 Changed some of the localization automation to use classes with read-only members, rather than use structs
#jira UE-65600
#rb Francis.Hurteau
#lockdown Matt.Kuhlenschmidt

[CL 4762550 by Jamie Dale in Dev-Editor branch]
2019-01-21 12:57:05 -05:00
Jamie Dale
adc2fefb19 Added support for splitting off per-platform localization
This is handled by the ELocTextPlatformSplitMode enum, used by FLocTextHelper (default is ELocTextPlatformSplitMode::None to preserve old behavior), and allows you to optionally split localization data for all platforms, or for any NDA restricted platforms. Note: Any localization data that is used by multiple platforms is still considered platform agnostic, even if it appears only within platform specific files.

#jira UE-65600
#rb Francis.Hurteau
#lockdown Matt.Kuhlenschmidt

[CL 4761508 by Jamie Dale in Dev-Editor branch]
2019-01-21 11:07:47 -05:00
Chris Gagnon
1dd3e0189f Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4730305 by Chris Gagnon in Dev-Editor branch]
2019-01-15 18:47:22 -05:00
Ben Marsh
0f885bbf64 Switch UAT and UBT to use .NET 4.6.2, in order to support long file names (which is enabled via an app.manifest file in each application).
#rb none

[CL 4679962 by Ben Marsh in Dev-Build branch]
2019-01-03 16:47:48 -05:00
Chris Gagnon
8fc25ea18e Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4676797 by Chris Gagnon in Dev-Editor branch]
2019-01-02 14:54:39 -05:00
Ben Marsh
530369c613 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4662695 by Ben Marsh in Dev-Build branch]
2018-12-14 14:49:12 -05:00