diff options
| author | Jussi Pakkanen <jpakkane@gmail.com> | 2016-11-12 12:19:28 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-11-12 12:19:28 -0500 |
| commit | 28b70ba4e583cba7c9043a42ab8696547fc0dcbc (patch) | |
| tree | 974bb0722caf07d9ca04930fc0f15887c4b6b162 /test cases/frameworks | |
| parent | 1d9c40c9c311e2f015104dcfa568a9eaf82a1e76 (diff) | |
| parent | cedfa575f6144b9eb3ed9f777074c7b95ad52231 (diff) | |
| download | meson-28b70ba4e583cba7c9043a42ab8696547fc0dcbc.tar.gz | |
Merge pull request #1010 from centricular/qt5-broken-moc-detection
Overhaul Qt4/5 detection with pkg-config/qmake and improve moc/uic/rcc detection
Diffstat (limited to 'test cases/frameworks')
| -rw-r--r-- | test cases/frameworks/4 qt/main.cpp (renamed from test cases/frameworks/4 qt5/main.cpp) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/mainWindow.cpp (renamed from test cases/frameworks/4 qt5/mainWindow.cpp) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/mainWindow.h (renamed from test cases/frameworks/4 qt5/mainWindow.h) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/mainWindow.ui (renamed from test cases/frameworks/4 qt5/mainWindow.ui) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/manualinclude.cpp (renamed from test cases/frameworks/4 qt5/manualinclude.cpp) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/manualinclude.h (renamed from test cases/frameworks/4 qt5/manualinclude.h) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/meson.build | 45 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/q5core.cpp (renamed from test cases/frameworks/4 qt5/q5core.cpp) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/stuff.qrc (renamed from test cases/frameworks/4 qt5/stuff.qrc) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/stuff2.qrc (renamed from test cases/frameworks/4 qt5/stuff2.qrc) | 0 | ||||
| -rw-r--r-- | test cases/frameworks/4 qt/thing.png (renamed from test cases/frameworks/4 qt5/thing.png) | bin | 40303 -> 40303 bytes | |||
| -rw-r--r-- | test cases/frameworks/4 qt/thing2.png (renamed from test cases/frameworks/4 qt5/thing2.png) | bin | 40303 -> 40303 bytes | |||
| -rw-r--r-- | test cases/frameworks/4 qt5/meson.build | 41 |
13 files changed, 45 insertions, 41 deletions
diff --git a/test cases/frameworks/4 qt5/main.cpp b/test cases/frameworks/4 qt/main.cpp index 4c257a4ba..4c257a4ba 100644 --- a/test cases/frameworks/4 qt5/main.cpp +++ b/test cases/frameworks/4 qt/main.cpp diff --git a/test cases/frameworks/4 qt5/mainWindow.cpp b/test cases/frameworks/4 qt/mainWindow.cpp index cc82c4fb2..cc82c4fb2 100644 --- a/test cases/frameworks/4 qt5/mainWindow.cpp +++ b/test cases/frameworks/4 qt/mainWindow.cpp diff --git a/test cases/frameworks/4 qt5/mainWindow.h b/test cases/frameworks/4 qt/mainWindow.h index 7f6d90601..7f6d90601 100644 --- a/test cases/frameworks/4 qt5/mainWindow.h +++ b/test cases/frameworks/4 qt/mainWindow.h diff --git a/test cases/frameworks/4 qt5/mainWindow.ui b/test cases/frameworks/4 qt/mainWindow.ui index 2eb226a6e..2eb226a6e 100644 --- a/test cases/frameworks/4 qt5/mainWindow.ui +++ b/test cases/frameworks/4 qt/mainWindow.ui diff --git a/test cases/frameworks/4 qt5/manualinclude.cpp b/test cases/frameworks/4 qt/manualinclude.cpp index 06028823f..06028823f 100644 --- a/test cases/frameworks/4 qt5/manualinclude.cpp +++ b/test cases/frameworks/4 qt/manualinclude.cpp diff --git a/test cases/frameworks/4 qt5/manualinclude.h b/test cases/frameworks/4 qt/manualinclude.h index 4a00b6c28..4a00b6c28 100644 --- a/test cases/frameworks/4 qt5/manualinclude.h +++ b/test cases/frameworks/4 qt/manualinclude.h diff --git a/test cases/frameworks/4 qt/meson.build b/test cases/frameworks/4 qt/meson.build new file mode 100644 index 000000000..1096c7801 --- /dev/null +++ b/test cases/frameworks/4 qt/meson.build @@ -0,0 +1,45 @@ +project('qt4 and 5 build test', 'cpp') + +foreach qt : ['qt4', 'qt5'] + qtdep = dependency(qt, modules : ['Core', 'Gui', 'Widgets'], required : qt == 'qt5') + if qtdep.found() + qtmodule = import(qt) + + # The following has two resource files because having two in one target + # requires you to do it properly or you get linker symbol clashes. + + prep = qtmodule.preprocess( + moc_headers : ['mainWindow.h'], # These need to be fed through the moc tool before use. + ui_files : 'mainWindow.ui', # XML files that need to be compiled with the uic tol. + qresources : ['stuff.qrc', 'stuff2.qrc'], # Resource file for rcc compiler. + ) + + qexe = executable(qt + 'app', + sources : ['main.cpp', 'mainWindow.cpp', # Sources that don't need preprocessing. + prep], + dependencies : qtdep) + + # We need a console test application because some test environments + # do not have an X server. + + qtcore = dependency(qt, modules : 'Core') + + qtcoreapp = executable(qt + 'core', 'q5core.cpp', + dependencies : qtcore) + + test(qt + 'test', qtcoreapp) + + # The build system needs to include the cpp files from + # headers but the user must manually include moc + # files from sources. + manpreprocessed = qtmodule.preprocess( + moc_sources : 'manualinclude.cpp', + moc_headers : 'manualinclude.h') + + qtmaninclude = executable(qt + 'maninclude', + sources : ['manualinclude.cpp', manpreprocessed], + dependencies : qtcore) + + test(qt + 'maninclude', qtmaninclude) + endif +endforeach diff --git a/test cases/frameworks/4 qt5/q5core.cpp b/test cases/frameworks/4 qt/q5core.cpp index 706e4dc87..706e4dc87 100644 --- a/test cases/frameworks/4 qt5/q5core.cpp +++ b/test cases/frameworks/4 qt/q5core.cpp diff --git a/test cases/frameworks/4 qt5/stuff.qrc b/test cases/frameworks/4 qt/stuff.qrc index fdfb58eab..fdfb58eab 100644 --- a/test cases/frameworks/4 qt5/stuff.qrc +++ b/test cases/frameworks/4 qt/stuff.qrc diff --git a/test cases/frameworks/4 qt5/stuff2.qrc b/test cases/frameworks/4 qt/stuff2.qrc index 910e2fbae..910e2fbae 100644 --- a/test cases/frameworks/4 qt5/stuff2.qrc +++ b/test cases/frameworks/4 qt/stuff2.qrc diff --git a/test cases/frameworks/4 qt5/thing.png b/test cases/frameworks/4 qt/thing.png Binary files differindex 4b001bd5c..4b001bd5c 100644 --- a/test cases/frameworks/4 qt5/thing.png +++ b/test cases/frameworks/4 qt/thing.png diff --git a/test cases/frameworks/4 qt5/thing2.png b/test cases/frameworks/4 qt/thing2.png Binary files differindex 4b001bd5c..4b001bd5c 100644 --- a/test cases/frameworks/4 qt5/thing2.png +++ b/test cases/frameworks/4 qt/thing2.png diff --git a/test cases/frameworks/4 qt5/meson.build b/test cases/frameworks/4 qt5/meson.build deleted file mode 100644 index 56720719f..000000000 --- a/test cases/frameworks/4 qt5/meson.build +++ /dev/null @@ -1,41 +0,0 @@ -project('qt5 build test', 'cpp') - -qt5 = import('qt5') -qt5dep = dependency('qt5', modules : ['Core', 'Gui', 'Widgets']) - -# The following has two resource files because having two in one target -# requires you to do it properly or you get linker symbol clashes. - -prep = qt5.preprocess( - moc_headers : ['mainWindow.h'], # These need to be fed through the moc tool before use. - ui_files : 'mainWindow.ui', # XML files that need to be compiled with the uic tol. - qresources : ['stuff.qrc', 'stuff2.qrc'], # Resource file for rcc compiler. -) - -q5exe = executable('qt5app', - sources : ['main.cpp', 'mainWindow.cpp', # Sources that don't need preprocessing. - prep], - dependencies : qt5dep) - -# We need a console test application because some test environments -# do not have an X server. - -qt5core = dependency('qt5', modules : 'Core') - -qt5coreapp = executable('q5core', 'q5core.cpp', - dependencies : qt5core) - -test('qt5test', qt5coreapp) - -# The build system needs to include the cpp files from -# headers but the user must manually include moc -# files from sources. -manpreprocessed = qt5.preprocess( - moc_sources : 'manualinclude.cpp', - moc_headers : 'manualinclude.h') - -q5maninclude = executable('q5maninclude', - sources : ['manualinclude.cpp', manpreprocessed], - dependencies : qt5core) - -test('q5maninclude', q5maninclude) |
