diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2019-04-05 15:29:37 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2019-04-16 10:43:03 +0000 |
commit | 87570b4e360ab62ef5791d5c23ddd36aaa07ba05 (patch) | |
tree | bd9d160650b9a3a4a2d3189eda993d2731ce24ce /mkspecs | |
parent | 5de670283e3093fcdd2a91dcca30ffbe0b03d230 (diff) |
Make .moc files jumbo built
Split the moc generated sources to a separate source_set, and make it
jumbo.
Change-Id: Icdbe9e7fb57cc07d89b766ef9e8efc78ff67bc8b
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/features/gn_generator.prf | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/mkspecs/features/gn_generator.prf b/mkspecs/features/gn_generator.prf index 4b8462415..4efbd92f2 100644 --- a/mkspecs/features/gn_generator.prf +++ b/mkspecs/features/gn_generator.prf @@ -26,6 +26,8 @@ isEmpty(GN_FILE): GN_FILE = $$system_path($$_PRO_FILE_PWD_/BUILD.gn) isEmpty(GN_RUN_BINARY_SCRIPT): GN_RUN_BINARY_SCRIPT = "//build/gn_run_binary.py" isEmpty(GN_FIND_MOCABLES_SCRIPT): GN_FIND_MOCABLES_SCRIPT = "//build/gn_find_mocables.py" +GN_CONTENTS += "import(\"//build/config/jumbo.gni\")" + # MOC SETUP GN_CONTENTS += "moc_source_h_files = exec_script(\"$$GN_FIND_MOCABLES_SCRIPT\"," @@ -169,6 +171,26 @@ GN_CONTENTS += "}" # TARGET SETUP +GN_CONTENTS += "jumbo_source_set(\"$${TARGET}_MOC\") {" +GN_CONTENTS += " configs += [ \":$${TARGET}_config\" ]" +GN_CONTENTS += " configs += [ \"//build/config:precompiled_headers\" ]" +GN_CONTENTS += " sources = []" +GN_CONTENTS += " deps = []" +GN_CONTENTS += " if (moc_source_h_files != []) {" +GN_CONTENTS += " deps += [" +GN_CONTENTS += " \":generate_h_mocs\"," +GN_CONTENTS += " ]" +# Add moc output files to compile +GN_CONTENTS += " sources += get_target_outputs(\":generate_h_mocs\")" +GN_CONTENTS += " }" +GN_CONTENTS += " if (moc_source_cpp_files != []) {" +GN_CONTENTS += " deps += [" +GN_CONTENTS += " \":generate_cpp_mocs\"," +GN_CONTENTS += " ]" +GN_CONTENTS += " }" +GN_CONTENTS += "}" + + TARGET_TYPE = $$getTargetType() GN_CONTENTS += "$${TARGET_TYPE}(\"$$TARGET\") {" @@ -221,18 +243,7 @@ win32 { CONFIG(rtti): GN_CONTENTS += " configs += [\"//build/config/compiler:rtti\"]" } -GN_CONTENTS += " if (moc_source_h_files != []) {" -GN_CONTENTS += " deps += [" -GN_CONTENTS += " \":generate_h_mocs\"," -GN_CONTENTS += " ]" -# Add moc output files to compile -GN_CONTENTS += " sources += get_target_outputs(\":generate_h_mocs\")" -GN_CONTENTS += " }" -GN_CONTENTS += " if (moc_source_cpp_files != []) {" -GN_CONTENTS += " deps += [" -GN_CONTENTS += " \":generate_cpp_mocs\"," -GN_CONTENTS += " ]" -GN_CONTENTS += " }" +GN_CONTENTS += " deps += [ \":$${TARGET}_MOC\" ]" GN_CONTENTS += "}" GN_CONTENTS += "" GN_CONTENTS += "if (!defined(core_include_dirs)) {"\ |