extends test case to fail if macro is undefined durcing preprocessing

This commit is contained in:
Leif Middelschulte 2017-10-25 22:31:47 +02:00
parent 050a56ad47
commit 98e095bd47
3 changed files with 8 additions and 0 deletions

View File

@ -10,9 +10,14 @@ class MocClass : public QObject {
Q_OBJECT Q_OBJECT
}; };
void testSlot() {
;
}
int main(int argc, char **argv) { int main(int argc, char **argv) {
ManualInclude mi; ManualInclude mi;
MocClass mc; MocClass mc;
QObject::connect(&mi, &ManualInclude::mysignal, &testSlot);
return 0; return 0;
} }

View File

@ -9,7 +9,9 @@ class ManualInclude : public QObject {
public: public:
ManualInclude(); ManualInclude();
#if defined(MOC_EXTRA_FLAG)
signals: signals:
#endif
int mysignal(); int mysignal();
}; };

View File

@ -61,6 +61,7 @@ foreach qt : ['qt4', 'qt5']
# headers but the user must manually include moc # headers but the user must manually include moc
# files from sources. # files from sources.
manpreprocessed = qtmodule.preprocess( manpreprocessed = qtmodule.preprocess(
moc_extra_arguments : ['-DMOC_EXTRA_FLAG'], # This is just a random macro to test `moc_extra_arguments`
moc_sources : 'manualinclude.cpp', moc_sources : 'manualinclude.cpp',
moc_headers : 'manualinclude.h', moc_headers : 'manualinclude.h',
method : get_option('method')) method : get_option('method'))