Browse Source

Merge topic 'revert-automoc-src-per-dir'

091b649e Revert "Automoc: Fix support of files with the same name (#12873)"
Brad King 9 năm trước cách đây
mục cha
commit
be98577f13

+ 3 - 32
Source/cmQtAutoGenerators.cxx

@@ -1104,39 +1104,10 @@ void cmQtAutoGenerators::ParseHeaders(const std::set<std::string>& absHeaders,
         std::cout << "AUTOGEN: Checking " << headerName << std::endl;
         }
 
-      std::string headerDirectory;
-      if (cmsys::SystemTools::IsSubDirectory(headerName,
-                                             this->ProjectSourceDir))
-        {
-        headerDirectory = this->ProjectSourceDir;
-        }
-      else if (cmsys::SystemTools::IsSubDirectory(headerName,
-                                                  this->ProjectBinaryDir))
-        {
-        headerDirectory = this->ProjectBinaryDir;
-        }
-      else
-        {
-        cmsys::SystemTools::SplitPathRootComponent(headerName,
-                                                   &headerDirectory);
-        }
-
-      std::string baseHeaderName =
-        cmsys::SystemTools::GetFilenameWithoutLastExtension(headerName);
-
-      headerDirectory = cmsys::SystemTools::RelativePath(
-        headerDirectory, cmsys::SystemTools::GetParentDirectory(headerName));
-
-      if (!headerDirectory.empty())
-        {
-        headerDirectory += "/";
-        }
-
-      std::string mocName = headerDirectory + baseHeaderName;
-
-      cmSystemTools::ReplaceString(mocName, "/", "_");
+      const std::string basename = cmsys::SystemTools::
+                                   GetFilenameWithoutLastExtension(headerName);
 
-      const std::string currentMoc = "moc_" + mocName + ".cpp";
+      const std::string currentMoc = "moc_" + basename + ".cpp";
       std::string macroName;
       if (requiresMocing(contents, macroName))
         {

+ 1 - 1
Tests/QtAutogen/Adir/CMakeLists.txt

@@ -3,6 +3,6 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
 set(CMAKE_AUTOMOC ON)
 set(CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE ON)
 
-add_library(libA SHARED libA.cpp foo.cpp bar/foo.cpp)
+add_library(libA SHARED libA.cpp)
 target_link_libraries(libA LINK_PUBLIC ${QT_QTCORE_TARGET})
 generate_export_header(libA)

+ 0 - 4
Tests/QtAutogen/Adir/bar/foo.cpp

@@ -1,4 +0,0 @@
-#include "foo.h"
-
-bar::foo::foo() {}
-bar::foo::~foo() {}

+ 0 - 10
Tests/QtAutogen/Adir/bar/foo.h

@@ -1,10 +0,0 @@
-#include <QObject>
-
-namespace bar {
-  class foo: public QObject {
-    Q_OBJECT
-  public:
-    foo();
-    ~foo();
-  };
-}

+ 0 - 4
Tests/QtAutogen/Adir/foo.cpp

@@ -1,4 +0,0 @@
-#include "foo.h"
-
-foo::foo() {}
-foo::~foo() {}

+ 0 - 8
Tests/QtAutogen/Adir/foo.h

@@ -1,8 +0,0 @@
-#include <QObject>
-
-class foo: public QObject {
-  Q_OBJECT
-public:
-  foo();
-  ~foo();
-};