Commit Graph

113 Commits

Author SHA1 Message Date
Mike Fricker
08f9474eb0 Fixed exception-related compile errors with Clang on Windows
- Exceptions are not yet supported in Clang on Windows platform

[CL 2260725 by Mike Fricker in Main branch]
2014-08-18 08:53:57 -04:00
Steve Robb
82fcd06c42 enum class support for UENUMs. Currently only supports enum classes of underlying type uint8, because the property system needs to be updated to handle more than that.
EPropertyReferenceFlags removed too, because it is unused.

#ttp 329394: UHT: Support the C++ "enum class" syntax for UENUMs

#codereview robert.manuszewski

[CL 2252907 by Steve Robb in Main branch]
2014-08-12 08:51:25 -04:00
Robert Manuszewski
26f250c9a2 Hot-reload: support for structural changes for hot-reload (adding/removing properties/classes/structs/enums)
#change Classes will now be defer registered instead of being created during static initialization
#change Added class re-instancing after hot-reload
#change Changes to UHT to keep track of generated code changes
#change Refactored a few CoreUObject delegates to a common namespace struct.

[CL 2235479 by Robert Manuszewski in Main branch]
2014-07-29 02:43:48 -04:00
Robert Manuszewski
e6a88f66a4 UBT will no longer use ini file to get the list of plugins to compile for programs. Removed 'ScriptPlugins' ini setting (replaced with plugin category path).
[CL 2121693 by Robert Manuszewski in Main branch]
2014-06-30 06:19:02 -04:00
Robert Manuszewski
63ef616a62 ScriptPlugins: generated glue files will now be including using relative paths
[CL 2113855 by Robert Manuszewski in Main branch]
2014-06-23 06:27:04 -04:00
Jaroslaw Palczynski
ebce413232 UE4 Refactoring. Changed OVERRIDE and FINAL macros to keywords override and final.
[CL 2104397 by Jaroslaw Palczynski in Main branch]
2014-06-13 06:14:46 -04:00
Steve Robb
4973bd00ac Plugin linker fix
#add Fake linker-only function generated in UHT for every Module.generated.cpp.
#change UELinkerFixups file is now processed *after* running UHT.
#change Fake function called from UELinkerFixups for every statically-linked dependent project.

#codereview robert.manuszewski,jj.hoesing

[CL 2103062 by Steve Robb in Main branch]
2014-06-12 08:08:47 -04:00
Mike Fricker
16d1f0a4fd Always use "override" and "final" keyword on all platforms
[CL 2099153 by Mike Fricker in Main branch]
2014-06-09 11:17:17 -04:00
Matt Kuhlenschmidt
fb672d5990 Removed UAttributeProperty and all related changes
[CL 2091937 by Matt Kuhlenschmidt in Main branch]
2014-06-02 14:20:58 -04:00
Steve Robb
864bd3d8da WIP refactors
#ttp 331467: Make UHT not depend on CoreUObject

#change GScriptHelper made an object instead of a heap-allocated pointer.
#change NameLookupCPP made an object instead of a heap-allocated pointer.
#add FClasses::FindAnyClass added.
#change FClasses construction moved earlier.
#change FClass::GetInnerClass added.
#change More UClasses changed to FClasses.

#codereview robert.manuszewski

[CL 2091696 by Steve Robb in Main branch]
2014-06-02 07:02:29 -04:00
Robert Manuszewski
a05ad646c2 UBT: More detailed module types. ScriptPlugins can now ingore modules by their type.
[CL 2081573 by Robert Manuszewski in Main branch]
2014-05-22 01:20:24 -04:00
Steve Robb
d3d90eafb4 #ttp 333737: UHT should not output anything differently for Rocket - resubmitted after CL# 2068336 was backed out due to UAT rebuild problems.
#change Root module path added to include paths.
#change Plugins now write intermediates to the project folder.
#change All generated #includes are now relative.
#change Updated UHTDebugging.manifest to new format.
#change Android response files now use relative include paths to prevent overly-large response files.
#remove Rocket-specific UHT execution removed.
#remove iOS header hack removed.

#codereview robert.manuszewski,ben.marsh

[CL 2077472 by Steve Robb in Main branch]
2014-05-19 06:57:00 -04:00
Mikolaj Sieluzycki
804973185b Add clickable error with file name and line number information in error/output window when superclass is missing.
#ttp 332332 UE4: Core: UnrealHeaderTool: Doesn't provide source file and line number for error about missing superclass
#proj core
#branch UE4
#summary Add clickable error with file name and line number information in error/output window when superclass is missing.
#codereview steve.robb

[CL 2077342 by Mikolaj Sieluzycki in Main branch]
2014-05-19 03:21:12 -04:00
Steve Robb
ddad01ad2f Back out changelist 2073005
[CL 2073795 by Steve Robb in Main branch]
2014-05-14 23:07:26 -04:00
Steve Robb
cd8b6a99d2 #ttp 333737: UHT should not output anything differently for Rocket - resubmitted after CL# 2068336 was backed out due to UAT rebuild problems.
#change Root module path added to include paths.
#change Plugins now write intermediates to the project folder.
#change All generated #includes are now relative.
#change Updated UHTDebugging.manifest to new format.
#remove Rocket-specific UHT execution removed.
#remove Some bHackHeaderGenerator usage removed.
#remove iOS header hack removed.

#codereview robert.manuszewski,ben.marsh

[CL 2073005 by Steve Robb in Main branch]
2014-05-14 14:50:21 -04:00
Steve Robb
2a0aca7a62 Back out changelist 2068336
[CL 2068514 by Steve Robb in Main branch]
2014-05-09 15:12:56 -04:00
Steve Robb
1478c2cdc7 #ttp 333737: UHT should not output anything differently for Rocket
#change Root module path added to include paths.
#change Plugins now write intermediates to the project folder.
#change All generated #includes are now relative.
#change Updated UHTDebugging.manifest to new format.
#remove Rocket-specific UHT execution removed.
#remove Some bHackHeaderGenerator usage removed.
#remove iOS header hack removed.

#codereview robert.manuszewski,ben.marsh

[CL 2068336 by Steve Robb in Main branch]
2014-05-09 13:02:49 -04:00
Jamie Dale
a91bccb10d CIS fix - Replaced ARRAYSIZE with our cross platform ARRAY_COUNT
[CL 2065432 by Jamie Dale in Main branch]
2014-05-07 06:23:29 -04:00
Jamie Dale
102224fbd6 UHT no longer assumes an include path will always contain a folder
TTP# 333824 - Add Code To Project not including game-specific headers

It would previously assume that all include paths contained a Public/Private/Classes folder, and would blindly try and strip them out, meaning that a project without these folders (like the ones created by the game templates) would produce incorrect or empty include paths.

It instead now explicitly checks for a Public/Private/Classes folder, rather than just doing it blindly.

ReviewedBy James.Hopkin, Max.Preussner

[CL 2065412 by Jamie Dale in Main branch]
2014-05-07 05:38:15 -04:00
Steve Robb
ab842a9d04 Warnings issued when including a .generated.inl file.
#add Wrote out a .generated.inl file for every module which contains a #pragma message asking the user to delete their include.

#codereview robert.manuszewski,mike.fricker

[CL 2062361 by Steve Robb in Main branch]
2014-05-02 14:40:02 -04:00
Robert Manuszewski
37ea47855d Script Plugins: better handling of non-game targets
[CL 2059708 by Robert Manuszewski in Main branch]
2014-04-30 07:58:33 -04:00
Robert Manuszewski
e7273f5f61 Script plugins: more CIS fixes
[CL 2058670 by Robert Manuszewski in Main branch]
2014-04-29 09:36:01 -04:00
Robert Manuszewski
a1ba9b3386 UHT: Make script parsing errors not-errors for now.
[CL 2058639 by Robert Manuszewski in Main branch]
2014-04-29 08:55:38 -04:00
Robert Manuszewski
212c47eec9 Support for scripting language integrations via plugins. Experimental Lua integration.
- Added program-only plugin support and made UHT script plugin aware
- Added 3 generic script plugins with experimental Lua integration: ScriptGeneratorPlugin (UHT), ScriptPlugin (Engine), ScriptEditorPlugin (Editor-side)
- Lua integration is disabled by default

[CL 2058611 by Robert Manuszewski in Main branch]
2014-04-29 06:45:18 -04:00
Mikolaj Sieluzycki
57df0c45a0 Remove HeaderGroup support from UHT.
[CL 2057577 by Mikolaj Sieluzycki in Main branch]
2014-04-28 05:03:10 -04:00