Commit Graph

1362 Commits

Author SHA1 Message Date
Chris Babcock
9038a4c061 Allow UPL to use tools schema
Allow "build" as part of project names

#jira UE-173037
#android
#review-23584632 none
#rb none

#preflight https://horde.devtools.epicgames.com/log/639e0337012902cb8df765e4

[CL 23584631 by Chris Babcock in ue5-main branch]
2023-01-04 20:52:16 -05:00
bryan sefcik
13665b41ad Turned off VTune and ISPC when compiling windows arm64
#preflight 63b607132960b73220d02835

[CL 23583219 by bryan sefcik in ue5-main branch]
2023-01-04 18:23:39 -05:00
dorgonman
4e4792e9dd PR #9842: [BugFix][UBT][AndroidToolChain] Fix Regex failed to parse AndroidClangBuild (Contributed by dorgonman)
#preflight 63b4a76a2960b73220581296

[CL 23570634 by dorgonman in ue5-main branch]
2023-01-03 17:12:24 -05:00
eric knapik
057ccf695d #jira: FORT-549398
Fix PDB issue where UEFN can't generate a PDB
Disable PDB generation for UnrealEditorFortnite

[REVIEW] [at]Phillip.Kavan [at]Josh.Adams [at]Gary.Yuan [at]Henrik.Karlsson

[CL 23535440 by eric knapik in ue5-main branch]
2022-12-15 21:07:12 -05:00
joe kirchoff
e9abc7f4c4 UnrealBuildTool: Disallow propagating more environment variables to subprocesses that could affect the msvc compiler
#rnx
#rb Ryan.Hummer

[CL 23485143 by joe kirchoff in ue5-main branch]
2022-12-12 19:14:59 -05:00
Josh Adams
844b22fdf0 - Fixing some issues (mostly with programs) on IOS/Mac
- Fixed executable path for programs under Restricted
  - Fixed paths when there's an ExeSubDir in the Target
  - Allow for codesigning frameworks under programs without a .uproject
#preflight 6397a2528c64c74ac8489545
#rb Rafa.Lecina

[CL 23484025 by Josh Adams in ue5-main branch]
2022-12-12 17:46:48 -05:00
bryan sefcik
c998a06737 Fixes to get arm64 and arm64ec to partially compile.
#jira
#fyi josh.adams
#preflight 6392612567018b14b5af1d5f

[CL 23456665 by bryan sefcik in ue5-main branch]
2022-12-08 17:28:30 -05:00
Josh Adams
622efc4c0d - More Architecture cleanup
- Added UAT params to pass architecture by target type (-editorarchitecture, -clientarchitecture, -serverarchitecture, -programarchitecture). Keeping -specifiedarchitecture for compat, and it will set all the other 4 if they are not specified
- Changed ProjectGenerator to find Program .uproject files (logic was looking for .Target files under the .uproject's directory, which is not the case for Programs)
- Added two params to GetProjectArchitectures:
    - bGetAllSupported - used to get all supported architectures, not just the ones currently being built for (needed for XcodeProject to know what architectures to allow in the dropdown)
    - bIsDistributionMode - used to get architectures to compile when making distribution builds (probably want to compile all architectures for distro's)
- Removed the MacExports.TargetsAlowedForAppleSilicon, updated XcodeProject code to use the new GetProjectArchitectures()
#rb david.harvey
#jira none
#preflight 63909f217e0feab0b7bd8241

[CL 23428114 by Josh Adams in ue5-main branch]
2022-12-07 09:42:34 -05:00
Josh Adams
e6d0fb6486 - Added to new architecture APIs to UEBuildPlatform
- ConvertToReadableArchitecture() - turn an internal platform arch string to a printable version
  - IsX86Architecture() - returns true if the platform arch string represents an x86 architecture
- Changed Linux to use the HumanReadableName as the FolderNameForArchitecture, so it's shorter and it is not obfuscated anymore
#rb brandon.schaefer
#preflight 638fc65e9549ddaa288ccf73
#fyi dan.thompson

[CL 23419149 by Josh Adams in ue5-main branch]
2022-12-06 18:21:19 -05:00
Joe Kirchoff
a3dadf2787 UnrealBuildTool: Suppress msvc /analyze warnings in external headers with /analyze:external-
#rnx
#rb trivial
#preflight 638fbdf09549ddaa288b1a1b

[CL 23417769 by Joe Kirchoff in ue5-main branch]
2022-12-06 17:30:42 -05:00
Josh Adams
05a81c5f00 - Fixed some issues with getting projet architectures
#rb trivial
#preflight skip

[CL 23398612 by Josh Adams in ue5-main branch]
2022-12-05 15:50:05 -05:00
Josh Adams
1e0b0a3eff - Added GetProjectArchitectures, which UBT will use to determine the architecture to build with when -architecture is not specified (UEBuildMac is now using it to control architectures for programs/projects)
- Changed the very high level loop over targets and architectures to move the Architecture as innermost loop - this allows each target to compile with different architectures in the case of mutli-target compiling
- Added [Editor]DefaultArchitecture to Mac ini's - the [Editor]TargetArchitecture property is now what the target _supports_, and Default is what it will be built with if no architecture is specified (usually will be "Host" to indicate that whatever the current host platform is will be what is compiled. "All" can be used to compile Fat binaries by default.
- Updated the LinkEnvironment constructor that takes another LinkEnvironment and an Architecture, to filter the input files for that architecture, and removed the similar code from MacToolchain
- Updates for Programs for Mac compilation, either:
  -  Adding an .ini and a .uproject files - programs need a .uproject for UBT to be able to find their Config directory in a standard way)
  - Marking the Target as not supporting Mac (some programs call Windows code directly)
  - Updating libs to be fat (intel+arm)
#rb david.harvey
#preflight 638e47395624e6da5e9658d6

[CL 23397419 by Josh Adams in ue5-main branch]
2022-12-05 14:57:26 -05:00
David Harvey
b328094315 Gauntlet PGO Profiling support on Windows platforms.
- also includes -PGOFastGen to enable /FASTGENPROFILE for a better framerate during PGO Profiling.
 - also favoring the PGC file that matches the executable when building PGO Optimize builds rather than failing.

#jira UE-159562
#rb Wojciech.Krywult, Eric.McDaniel
#preflight 638db5c00e4613faed110db5

[CL 23387994 by David Harvey in ue5-main branch]
2022-12-05 04:23:14 -05:00
dmytro vovk
83fef012da Fixed HWASan build on Android
#rb trivial

[CL 23376312 by dmytro vovk in ue5-main branch]
2022-12-02 13:39:00 -05:00
Josh Adams
de6e5f3794 - Fixed PostBuild not being called on Mac compiles
#jira UE-171620
#rb trivial
#preflight 638a233db36822f1c3994359

[CL 23373941 by Josh Adams in ue5-main branch]
2022-12-02 11:25:57 -05:00
Josh Adams
b337b06556 - Allow for a platform to compile for multiple architectures, and have the high-level compile separately, and then link not separately (this means we can't use the one-target-per-architecture stuff that is already present)
- Mac changes to compile separately,  but link together (with lipo) after making two .dylibs/executables
- Removed FixDylibDependencies on Mac by making "stub dylibs" to mimic what Windows does with import libs, to solve circular dependencies
- Added DependenciesToSkipByArchitecture to ModuleRules that is used, when making a new single-arch LinkEnvironment from a multi-arch LinkEnvironment, to strip out libraries, etc, that should not be included with that single architecture
#preflight 6387891b4004f73f623c85a0
#rb zack.neyland

[CL 23336522 by Josh Adams in ue5-main branch]
2022-11-30 13:38:45 -05:00
calvin zheng
3a7b5426a8 Remove static lib version check on Mac
#jira none
#preflight 6384d5044004f73f626b37c3
#rb Adam.King, Zack.Neyland
#lockdown Rolando.Caloca

[CL 23300214 by calvin zheng in ue5-main branch]
2022-11-28 19:14:20 -05:00
Rafa Lecina
f1425c2193 Set iOS default architecture that was lost after resolving. This is breaking builds for iOS
check https://p4-swarm.epicgames.net/reviews/23193114/v0,3 vs https://p4-swarm.epicgames.net/reviews/23193114/v0,4

#review-23286959 @Sam.Zamani, @Bertrand.Carre, @Josh.Adams
#preflight

[CL 23287057 by Rafa Lecina in ue5-main branch]
2022-11-28 06:42:59 -05:00
emrekultursay
49e85fca23 PR #9690: Use vswhere -find to identify if AGDE is installed (Contributed by emrekultursay)
#jira UE-168019
#android
[REVIEW] [at]Jack.Porter
#rb Jack.Porter

#preflight

[CL 23286040 by emrekultursay in ue5-main branch]
2022-11-28 02:42:22 -05:00
axel riffard
9412e8c6c2 Cleanup Clang check for older XCode versions
#rb dmitriy.dyomin
#jira UE-168436
#preflight none

[CL 23256760 by axel riffard in ue5-main branch]
2022-11-24 02:06:41 -05:00
roman dzieciol
3ce3813f96 Fix typo in ld arguments for edge case Android libs that don't start with "lib".
The intention was:
/some/path/libfoo.a -->
AdditionalLibs.Add(libfoo.a) -> -lfoo
AdditionalLibraryPaths.Add(/some/path) -> -L/some/path
/some/path/bar.a -->
AdditionalLibs.Add(/some/path/bar.a) -> /some/path/bar.a

#rb Josh.Adams
#jira none
#preflight none
(Copy from 4.27+)

[CL 23243817 by roman dzieciol in ue5-main branch]
2022-11-22 19:51:10 -05:00
Rafa Lecina
908cc56236 Remove some customizations from iOS and TvOS builds
#review-23193114 @Sam.Zamani, @Bertrand.Carre, @Josh.Adams
#preflight

[CL 23218558 by Rafa Lecina in ue5-main branch]
2022-11-21 04:28:08 -05:00
Joe Kirchoff
85e3b6fe46 UnrealBuildTool: Compiling Microsoft platforms with Clang when using VS2022 runtime requires Clang 14
#rnx
#jira UE-170540
#rb trivial
#preflight 6377beee337745090079d37a

[CL 23198054 by Joe Kirchoff in ue5-main branch]
2022-11-18 12:39:33 -05:00
joe kirchoff
95c918e91c UnrealBuildTool: Set VS2022 as the default generated solution and compiler if all available platforms are supported
#rb Francis.Hurteau
#rb Josh.Adams
#preflight 63768595de1d9b5c3c33cf9c

[CL 23184507 by joe kirchoff in ue5-main branch]
2022-11-17 16:58:58 -05:00
brandon schaefer
4f85084928 [UBT] Add options to enable pie and stack protector for target rules
disabled by default

#rb Josh.Adams, Zack.Neyland
#preflight 637526e4ee4d25f90aa62e6c

[CL 23163701 by brandon schaefer in ue5-main branch]
2022-11-16 17:02:54 -05:00