diff options
author | Stephen Kelly <steveire@gmail.com> | 2013-05-15 17:17:41 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2013-05-15 17:24:18 (GMT) |
commit | 5c0f2a131f358ac11da52a919f637b57d34cc544 (patch) | |
tree | 9750c919a1e9ba333516a02a411d6f7562c52249 | |
parent | 6489015c75367493c9ea6a7bea69b67a88972651 (diff) | |
download | CMake-5c0f2a131f358ac11da52a919f637b57d34cc544.zip CMake-5c0f2a131f358ac11da52a919f637b57d34cc544.tar.gz CMake-5c0f2a131f358ac11da52a919f637b57d34cc544.tar.bz2 |
Test the use of target transitive compile definitions with moc.
-rw-r--r-- | Tests/QtAutomoc/CMakeLists.txt | 3 | ||||
-rw-r--r-- | Tests/QtAutomoc/defines_test/CMakeLists.txt | 6 | ||||
-rw-r--r-- | Tests/QtAutomoc/defines_test/defines_test.cpp | 38 |
3 files changed, 47 insertions, 0 deletions
diff --git a/Tests/QtAutomoc/CMakeLists.txt b/Tests/QtAutomoc/CMakeLists.txt index 49d433f..a18baef 100644 --- a/Tests/QtAutomoc/CMakeLists.txt +++ b/Tests/QtAutomoc/CMakeLists.txt @@ -5,6 +5,9 @@ project(QtAutomoc) if (QT_TEST_VERSION STREQUAL 4) find_package(Qt4 REQUIRED) + # Include this directory before using the UseQt4 file. + add_subdirectory(defines_test) + include(UseQt4) set(QT_QTCORE_TARGET Qt4::QtCore) diff --git a/Tests/QtAutomoc/defines_test/CMakeLists.txt b/Tests/QtAutomoc/defines_test/CMakeLists.txt new file mode 100644 index 0000000..ad4e684 --- /dev/null +++ b/Tests/QtAutomoc/defines_test/CMakeLists.txt @@ -0,0 +1,6 @@ + +include_directories(${CMAKE_CURRENT_BINARY_DIR}) + +add_executable(defines_test defines_test.cpp) +set_target_properties(defines_test PROPERTIES AUTOMOC TRUE) +target_link_libraries(defines_test Qt4::QtGui) diff --git a/Tests/QtAutomoc/defines_test/defines_test.cpp b/Tests/QtAutomoc/defines_test/defines_test.cpp new file mode 100644 index 0000000..2836d35 --- /dev/null +++ b/Tests/QtAutomoc/defines_test/defines_test.cpp @@ -0,0 +1,38 @@ + +#include <QObject> + +#ifdef QT_GUI_LIB +#include <QTextDocument> + +class SomeDocument : public QTextDocument +{ + Q_OBJECT + +Q_SIGNALS: + void someSig(); +}; +#endif + +#ifdef QT_CORE_LIB +class SomeObject : public QObject +{ + Q_OBJECT + +Q_SIGNALS: + void someSig(); +}; +#endif + +int main(int argc, char **argv) +{ +#ifdef QT_CORE_LIB + QMetaObject sosmo = SomeObject::staticMetaObject; +#endif +#ifdef QT_GUI_LIB + QMetaObject sdsmo = SomeDocument::staticMetaObject; +#endif + + return 0; +} + +#include "defines_test.moc" |