Autogen: Revert processing of .hh files for compatibility
Since commit 4a9154537c
(Autogen: Use cmake::IsHeader/SourceExtension
for file type detection, 2019-07-02, v3.16.0-rc1~470^2~4) we process
`.hh` files with `AUTOMOC`. However, this change can break existing
projects that do not expect the behavior. Revert it for now. It can
be restored later via a policy.
Fixes: #20101
This commit is contained in:
parent
4771c4e447
commit
7fa7f55230
@ -764,7 +764,8 @@ bool cmQtAutoGenInitializer::InitScanFiles()
|
||||
|
||||
// Register files that will be scanned by moc or uic
|
||||
if (this->MocOrUicEnabled()) {
|
||||
if (cm->IsHeaderExtension(extLower)) {
|
||||
// FIXME: Add a policy to include .hh files.
|
||||
if (cm->IsHeaderExtension(extLower) && extLower != "hh") {
|
||||
addMUFile(makeMUFile(sf, fullPath, true), true);
|
||||
} else if (cm->IsSourceExtension(extLower)) {
|
||||
addMUFile(makeMUFile(sf, fullPath, true), false);
|
||||
@ -876,7 +877,8 @@ bool cmQtAutoGenInitializer::InitScanFiles()
|
||||
std::string const& extLower =
|
||||
cmSystemTools::LowerCase(sf->GetExtension());
|
||||
|
||||
if (cm->IsHeaderExtension(extLower)) {
|
||||
// FIXME: Add a policy to include .hh files.
|
||||
if (cm->IsHeaderExtension(extLower) && extLower != "hh") {
|
||||
if (!cmContains(this->AutogenTarget.Headers, sf)) {
|
||||
auto muf = makeMUFile(sf, fullPath, false);
|
||||
if (muf->SkipMoc || muf->SkipUic) {
|
||||
|
@ -18,7 +18,6 @@ add_executable(sameName
|
||||
ccc/data.qrc
|
||||
item.cpp
|
||||
object.h
|
||||
object.hh
|
||||
object.h++
|
||||
object.hpp
|
||||
object.hxx
|
||||
|
@ -6,7 +6,6 @@
|
||||
#include "item.hpp"
|
||||
#include "object.h"
|
||||
#include "object.h++"
|
||||
#include "object.hh"
|
||||
#include "object.hpp"
|
||||
#include "object.hxx"
|
||||
#include "object_upper_ext.H"
|
||||
@ -22,7 +21,6 @@ int main(int argv, char** args)
|
||||
::ccc::Item ccc_item;
|
||||
// Object instances
|
||||
::Object_h obj_h;
|
||||
::Object_hh obj_hh;
|
||||
::Object_hplpl obj_hplpl;
|
||||
::Object_hpp obj_hpp;
|
||||
::Object_hxx obj_hxx;
|
||||
|
@ -1,13 +0,0 @@
|
||||
#ifndef OBJECT_HH
|
||||
#define OBJECT_HH
|
||||
|
||||
#include <QObject>
|
||||
|
||||
class Object_hh : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_SLOT
|
||||
void go(){};
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user