Browse Source

Autogen: Don't change the order of HEADERS array in AutogenInfo.json

Qt6 reads our internal AutogenInfo.json file. In 92d7b456e5
(Autogen: Add support for per-config sources, 2020-10-20), the
ordering of the HEADERS array elements was changed and this
broke their cmake_automoc_parser. We don't need to change the
order of the array elements, we can append to the existing ones
instead. Do this to allow their cmake_automoc_parser to continue
to work.

Fixes: #21823
Craig Scott 4 years ago
parent
commit
a3df25c694
2 changed files with 4 additions and 4 deletions
  1. 2 2
      Source/cmQtAutoGenInitializer.cxx
  2. 2 2
      Source/cmQtAutoMocUic.cxx

+ 2 - 2
Source/cmQtAutoGenInitializer.cxx

@@ -1568,8 +1568,8 @@ bool cmQtAutoGenInitializer::SetupWriteAutogenInfo()
                        jval[0u] = muf->FullPath;
                        jval[1u] = cmStrCat(muf->MocIt ? 'M' : 'm',
                                            muf->UicIt ? 'U' : 'u');
-                       jval[2u] = cfgArray(muf->Configs);
-                       jval[3u] = this->GetMocBuildPath(*muf);
+                       jval[2u] = this->GetMocBuildPath(*muf);
+                       jval[3u] = cfgArray(muf->Configs);
                      });
   info.SetArrayArray(
     "SOURCES", sources, [&cfgArray](Json::Value& jval, MUFile const* muf) {

+ 2 - 2
Source/cmQtAutoMocUic.cxx

@@ -2520,8 +2520,8 @@ bool cmQtAutoMocUicT::InitFromInfo(InfoT const& info)
 
       Json::Value const& entryName = entry[0u];
       Json::Value const& entryFlags = entry[1u];
-      Json::Value const& entryConfigs = entry[2u];
-      Json::Value const& entryBuild = entry[3u];
+      Json::Value const& entryBuild = entry[2u];
+      Json::Value const& entryConfigs = entry[3u];
       if (testEntry(entryName.isString(),
                     "JSON value for name is not a string.") ||
           testEntry(entryFlags.isString(),