Commit Graph

296 Commits

Author SHA1 Message Date
joe kirchoff
851687444c UnrealBuildTool: Error earlier if there are duplicate named source files in a module, as this will cause intermediate file conflicts in NonUnity builds
#rnx
#jira UE-215018

[CL 34252414 by joe kirchoff in ue5-main branch]
2024-06-10 16:33:57 -04:00
joe kirchoff
e4db99b42d UnrealBuildTool: Fix logic for disabling SharedPCH for cpp17 modules
#rnx

[CL 34023196 by joe kirchoff in ue5-main branch]
2024-05-30 20:20:48 -04:00
brandon schaefer
98b4996b7e Remove bAllowAutoRTFM in favor of bDisableAutoRTFM, so by default we will always enable AutoRTFM for module if using AutoRTFM compiler unless the module disables it
[CL 34015078 by brandon schaefer in ue5-main branch]
2024-05-30 18:01:07 -04:00
brandon schaefer
6d609fcb13 Support moving to disabling AutoRTFM support only vs explicitly enabling
#rb Neil.Henning

[CL 34014580 by brandon schaefer in ue5-main branch]
2024-05-30 17:47:55 -04:00
joe kirchoff
4901d933ec UnrealBuildTool: Allow disabling specific PVS analyzer errors for modules
#rnx

[CL 33897774 by joe kirchoff in ue5-main branch]
2024-05-24 12:38:56 -04:00
marc audy
38a8d9fdfc Remove the Platform.h experiment as it fails if files are in modules that don't include Core and put back the one off pragma disable for the single file cases in to DirectHeaderCompiling.h, leaving the global case in place for most use cases
#rnx

[CL 33806551 by marc audy in ue5-main branch]
2024-05-21 15:49:19 -04:00
marc audy
94f319872d Globally disable C5105 instead of just for direct header including
Include Platform.h before doing a single file header include (to set up the compiler correctly)
#rnx

[CL 33803971 by marc audy in ue5-main branch]
2024-05-21 14:42:39 -04:00
marc audy
5a0718a314 direct header compiling tools
#rb christopher.waters

[CL 33798962 by marc audy in ue5-main branch]
2024-05-21 12:23:35 -04:00
henrik karlsson
d420d28a78 [UBT]
* Fixed so PerModule cpp file creates its own translation unit if module merging is enabled
* Fixed so only one translation unit of PerModule.cpp is added per binary if module merging is enabled

[CL 33735442 by henrik karlsson in ue5-main branch]
2024-05-17 16:08:18 -04:00
henrik karlsson
b250c11229 Changed so operator new/delete overloads are pulled in through a special include compiled in a generated cpp file that goes in its own translation unit. This will make it possible to support merging of modules and only include one of the .obj files for these overloads
If a module depends on Core and does not want the overloads it needs to add the private define SUPPRESS_PER_MODULE_INLINE_FILE or set PER_MODULE_INLINE_FILE to point to a different file

[CL 33709297 by henrik karlsson in ue5-main branch]
2024-05-16 22:34:40 -04:00
joe kirchoff
f778f524de UnrealBuildTool: Preprocess SharedPCH when generating project files to prevent writing to the same file multiple times
#rnx
#jira UE-213872

[CL 33690581 by joe kirchoff in ue5-main branch]
2024-05-16 12:21:10 -04:00
marc audy
6a76a0e4b9 Add UE_DIRECT_HEADER_COMPILE to allow avoiding warnings/errors in single-header compilation.
Replace setting SUPPRESS_MONOLITHIC_HEADER_WARNINGS with UE_DIRECT_HEADER_COMPILE for header compilation situations
#rnx
#rb Christopher.Waters, Joe.Kirchoff

[CL 33672325 by marc audy in ue5-main branch]
2024-05-15 17:47:03 -04:00
joe kirchoff
15dd07ca7e UnrealBuildTool: Always write a .cpp file when compiling stand-alone headers
#rnx

[CL 33638117 by joe kirchoff in ue5-main branch]
2024-05-14 18:12:01 -04:00
joe kirchoff
5066d97820 UnrealBuildTool: Shorten -IncludeHeader path
#rnx

[CL 33634799 by joe kirchoff in ue5-main branch]
2024-05-14 15:15:28 -04:00
joe kirchoff
aae11b81ee UnrealBuildTool: -IncludeHeader fixes
* Headers can have duplicate filenames which results in intermediate file conflicts, generate an intermediate subdirectory using the header relative path from the module root
* Don't use PCH for headers (also fix the original unmodified module compile environment being overwitten due to not making a copy !!!)
* Set SUPPRESS_MONOLITHIC_HEADER_WARNINGS=0 for header compiles
* Remove the need to generate a separate file to include the header with -SingleFile
* Fix /TC not being passed to clang-cl
* Disable a few clang #pragma related warnings

#rnx
#jira UE-214521
#rb christopher.waters

[CL 33608666 by joe kirchoff in ue5-main branch]
2024-05-13 16:24:15 -04:00
joe kirchoff
d28a36cabb UnrealBuildTool: Fix /analyze not being applied to -SingleFile when the module contains generated cpp files
#jira UE-213788
#rb henrik.karlsson

[CL 33461515 by joe kirchoff in ue5-main branch]
2024-05-06 13:14:41 -04:00
joe kirchoff
b10d0d13bf UnrealBuildTool: Put a mutex around project intellisense generation
#rnx
#jira UE-213872

[CL 33429991 by joe kirchoff in ue5-main branch]
2024-05-03 13:43:57 -04:00
henrik karlsson
026b657d49 [UBT]
* Fixed so Classes/Public/Internal/Private includes are only added if there are files directly or indirectly under directory. Change is to make rsp files deterministic even if p4 left empty directories behind

#rb joe.kirchoff

[CL 33206443 by henrik karlsson in ue5-main branch]
2024-04-24 14:08:39 -04:00
joe kirchoff
65f7eab2cd UnrealBuildTool: Resolve CA2254, IDE0011, IDE0017, IDE0030, IDE0031, IDE0037, IDE0056, IDE0075, IDE2000, IDE2001
#rnx

[CL 32711093 by joe kirchoff in ue5-main branch]
2024-04-03 17:18:04 -04:00
joe kirchoff
a20c9fbb9e UnrealBuildTool: Format documents, remove and sort usings
#rnx

[CL 32700883 by joe kirchoff in ue5-main branch]
2024-04-03 12:22:43 -04:00
joe kirchoff
b7c0b15b6c UnrealBuildTool: Fix CS8603: Possible null reference return
#rnx

[CL 32687187 by joe kirchoff in ue5-main branch]
2024-04-02 20:40:48 -04:00
joe kirchoff
89805bc149 UnrealBuildTool: Resolve IDE0008, IDE0049
#rnx

[CL 32687030 by joe kirchoff in ue5-main branch]
2024-04-02 20:29:22 -04:00
christopher waters
0a67185c9f When compiling with -IncludeHeaders, don't include headers from modules that are marked as not supporting IWYU.
#rb Joe.Kirchoff

[CL 31683228 by christopher waters in ue5-main branch]
2024-02-21 10:44:13 -05:00
joe kirchoff
38eea919ce UnrealBuildTool: Don't analyze generated files by default
#rnx
#jira UE-207534

[CL 31669338 by joe kirchoff in ue5-main branch]
2024-02-20 20:49:13 -05:00
joe kirchoff
c0357d6a15 UnrealBuildTool: Option to disable anaylzing engine modules or generated code
#jira UE-207534, UE-207535

[CL 31669299 by joe kirchoff in ue5-main branch]
2024-02-20 20:48:55 -05:00