diff options
author | Donald Carr <donald.carr@nokia.com> | 2012-06-06 20:10:11 +0000 |
---|---|---|
committer | Jørgen Lind <jorgen.lind@nokia.com> | 2012-06-11 12:57:00 +0200 |
commit | 4097fb07df32eb3c748b75088684dd17a15970c9 (patch) | |
tree | 1f02160c17e5b699c8e7a9fa34e620d7a2402f9f | |
parent | b0a4355c5320eecdf008521e1b40cd221e8352f2 (diff) | |
download | qtwayland-4097fb07df32eb3c748b75088684dd17a15970c9.tar.gz |
Introduce standard pkg-config usage
Use our own qualified pkg-config mkspec feature rather than directly
executing the system binary
Change-Id: I4b162cd8d2d9a8bd5d0b3adb9ca935df9ff96a69
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
-rw-r--r-- | config.tests/xkbcommon/xkbcommon.pro | 11 | ||||
-rw-r--r-- | examples/qml-compositor/qml-compositor.pro | 3 | ||||
-rw-r--r-- | examples/qwidget-compositor/qwidget-compositor.pro | 3 | ||||
-rw-r--r-- | examples/qwindow-compositor/qwindow-compositor.pro | 3 | ||||
-rw-r--r-- | src/compositor/compositor.pri | 25 | ||||
-rw-r--r-- | src/compositor/compositor.pro | 3 | ||||
-rw-r--r-- | src/plugins/platforms/wayland/wayland.pro | 34 | ||||
-rw-r--r-- | tests/auto/client/client.pro | 27 | ||||
-rw-r--r-- | tests/auto/compositor/compositor.pro | 29 |
9 files changed, 24 insertions, 114 deletions
diff --git a/config.tests/xkbcommon/xkbcommon.pro b/config.tests/xkbcommon/xkbcommon.pro index facc28e5..e21015b4 100644 --- a/config.tests/xkbcommon/xkbcommon.pro +++ b/config.tests/xkbcommon/xkbcommon.pro @@ -4,14 +4,13 @@ QT = core DEPENDPATH += . INCLUDEPATH += . +CONFIG += link_pkgconfig + !contains(QT_CONFIG, no-pkg-config) { - QMAKE_CFLAGS_XKBCOMMON=$$system(pkg-config --cflags xkbcommon 2>/dev/null) - QMAKE_LIBS_XKBCOMMON=$$system(pkg-config --libs xkbcommon 2>/dev/null) + PKGCONFIG += xkbcommon +} else { + LIBS += -lxkbcommon } -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XKBCOMMON -QMAKE_CFLAGS += $$QMAKE_CFLAGS_XKBCOMMON -LIBS += $$QMAKE_LIBS_XKBCOMMON - # Input SOURCES += main.cpp diff --git a/examples/qml-compositor/qml-compositor.pro b/examples/qml-compositor/qml-compositor.pro index dd99f8c6..0bc0b02d 100644 --- a/examples/qml-compositor/qml-compositor.pro +++ b/examples/qml-compositor/qml-compositor.pro @@ -1,8 +1,5 @@ DEFINES += QT_COMPOSITOR_QUICK -# comment out the following to not use pkg-config in the pri files -CONFIG += use_pkgconfig - LIBS += -L ../../lib QT += quick qml v8 diff --git a/examples/qwidget-compositor/qwidget-compositor.pro b/examples/qwidget-compositor/qwidget-compositor.pro index beec269c..20dce5a6 100644 --- a/examples/qwidget-compositor/qwidget-compositor.pro +++ b/examples/qwidget-compositor/qwidget-compositor.pro @@ -1,6 +1,3 @@ -# comment out the following to not use pkg-config in the pri files -CONFIG += use_pkgconfig - # if you want to compile QtCompositor as part of the application # instead of linking to it, remove the QT += compositor and uncomment # the following line diff --git a/examples/qwindow-compositor/qwindow-compositor.pro b/examples/qwindow-compositor/qwindow-compositor.pro index 068b0889..465c0d99 100644 --- a/examples/qwindow-compositor/qwindow-compositor.pro +++ b/examples/qwindow-compositor/qwindow-compositor.pro @@ -1,8 +1,5 @@ QT += gui gui-private core-private compositor -# comment out the following to not use pkg-config in the pri files -CONFIG += use_pkgconfig - LIBS += -L ../../lib #include (../../src/qt-compositor/qt-compositor.pri) diff --git a/src/compositor/compositor.pri b/src/compositor/compositor.pri index 77467c2d..d1339134 100644 --- a/src/compositor/compositor.pri +++ b/src/compositor/compositor.pri @@ -1,4 +1,4 @@ -CONFIG += module +CONFIG += module link_pkgconfig load(qt_module) MODULE_PRI += $$PWD/../../modules/qt_compositor.pri @@ -8,26 +8,9 @@ DEFINES += QT_WAYLAND_WINDOWMANAGER_SUPPORT DEFINES += QT_BUILD_COMPOSITOR_LIB !contains(QT_CONFIG, no-pkg-config) { - #If Qt uses pkg-config then override pkgconfig from mkspec - QMAKE_CFLAGS_WAYLAND=$$system(pkg-config --cflags wayland-server 2>/dev/null) - QMAKE_LIBS_WAYLAND_SERVER=$$system(pkg-config --libs-only-l wayland-server 2>/dev/null) - QMAKE_INCDIR_WAYLAND=$$system("pkg-config --cflags-only-I wayland-server 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'") - QMAKE_LIBDIR_WAYLAND=$$system("pkg-config --libs-only-L wayland-server 2>/dev/null | sed -e 's,^-L,,g' -e 's, -L, ,g'") - QMAKE_DEFINES_WAYLAND="" -} - -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_WAYLAND -QMAKE_CFLAGS += $$QMAKE_CFLAGS_WAYLAND -DEFINES += $$QMAKE_DEFINES_WAYLAND -LIBS += $$QMAKE_LIBS_WAYLAND_SERVER -!isEmpty(QMAKE_LIBDIR_WAYLAND) { - LIBS += -L$$QMAKE_LIBDIR_WAYLAND -} - -!isEmpty(QMAKE_LFLAGS_RPATH) { - !isEmpty(QMAKE_LIBDIR_WAYLAND) { - QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${QMAKE_LIBS_WAYLAND} - } + PKGCONFIG += wayland-server +} else { + LIBS += -lwayland-server } HEADERS += qtcompositorversion.h diff --git a/src/compositor/compositor.pro b/src/compositor/compositor.pro index 71254177..850e350d 100644 --- a/src/compositor/compositor.pro +++ b/src/compositor/compositor.pro @@ -3,9 +3,6 @@ load(qt_module) TARGET = QtCompositor QPRO_PWD = $$PWD -# comment out the following to not use pkg-config in the pri files -CONFIG += use_pkgconfig - include (compositor.pri) load(qt_module_config) diff --git a/src/plugins/platforms/wayland/wayland.pro b/src/plugins/platforms/wayland/wayland.pro index 92a04c07..20598260 100644 --- a/src/plugins/platforms/wayland/wayland.pro +++ b/src/plugins/platforms/wayland/wayland.pro @@ -2,7 +2,7 @@ TARGET = qwayland load(qt_plugin) load(qt_module) -CONFIG += qpa/genericunixfontdatabase +CONFIG += link_pkgconfig qpa/genericunixfontdatabase DESTDIR = $$QT.gui.plugins/platforms @@ -61,13 +61,10 @@ DEFINES += Q_PLATFORM_WAYLAND contains(config_test_xkbcommon,yes) { !contains(QT_CONFIG, no-pkg-config) { - QMAKE_CFLAGS_XKBCOMMON=$$system(pkg-config --cflags xkbcommon 2>/dev/null) - QMAKE_LIBS_XKBCOMMON=$$system(pkg-config --libs xkbcommon 2>/dev/null) + PKGCONFIG += xkbcommon + } else { + LIBS += -lxkbcommon } - - QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XKBCOMMON - QMAKE_CFLAGS += $$QMAKE_CFLAGS_XKBCOMMON - LIBS += $$QMAKE_LIBS_XKBCOMMON } else { DEFINES += QT_NO_WAYLAND_XKB } @@ -85,26 +82,9 @@ OTHER_FILES += wayland.json INCLUDEPATH += $$PWD/../../../shared !contains(QT_CONFIG, no-pkg-config) { - #If Qt uses pkg-config then override pkgconfig from mkspec - QMAKE_CFLAGS_WAYLAND=$$system(pkg-config --cflags wayland-client 2>/dev/null) - QMAKE_LIBS_WAYLAND_CLIENT=$$system(pkg-config --libs-only-l wayland-client 2>/dev/null) - QMAKE_INCDIR_WAYLAND=$$system("pkg-config --cflags-only-I wayland-client 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'") - QMAKE_LIBDIR_WAYLAND=$$system("pkg-config --libs-only-L wayland-client 2>/dev/null | sed -e 's,^-L,,g' -e 's, -L, ,g'") - QMAKE_DEFINES_WAYLAND="" -} - -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_WAYLAND -QMAKE_CFLAGS += $$QMAKE_CFLAGS_WAYLAND -DEFINES += $$QMAKE_DEFINES_WAYLAND -LIBS += $$QMAKE_LIBS_WAYLAND_CLIENT -!isEmpty(QMAKE_LIBDIR_WAYLAND) { - LIBS += -L$$QMAKE_LIBDIR_WAYLAND -} - -!isEmpty(QMAKE_LFLAGS_RPATH) { - !isEmpty(QMAKE_LIBDIR_WAYLAND) { - QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${QMAKE_LIBS_WAYLAND} - } + PKGCONFIG += wayland-client +} else { + LIBS += -lwayland-client } target.path += $$[QT_INSTALL_PLUGINS]/platforms diff --git a/tests/auto/client/client.pro b/tests/auto/client/client.pro index 9a7e2c8c..a92aa88b 100644 --- a/tests/auto/client/client.pro +++ b/tests/auto/client/client.pro @@ -1,32 +1,13 @@ -CONFIG += testcase +CONFIG += testcase link_pkgconfig TARGET = tst_client QT += testlib QT += core-private gui-private !contains(QT_CONFIG, no-pkg-config) { - #If Qt uses pkg-config then override pkgconfig from mkspec - QMAKE_CFLAGS_WAYLAND=$$system(pkg-config --cflags wayland-client 2>/dev/null) - QMAKE_LIBS_WAYLAND_CLIENT=$$system(pkg-config --libs-only-l wayland-client 2>/dev/null) - QMAKE_LIBS_WAYLAND_SERVER=$$system(pkg-config --libs-only-l wayland-server 2>/dev/null) - QMAKE_INCDIR_WAYLAND=$$system("pkg-config --cflags-only-I wayland-client 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'") - QMAKE_LIBDIR_WAYLAND=$$system("pkg-config --libs-only-L wayland-client 2>/dev/null | sed -e 's,^-L,,g' -e 's, -L, ,g'") - QMAKE_DEFINES_WAYLAND="" -} - -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_WAYLAND -QMAKE_CFLAGS += $$QMAKE_CFLAGS_WAYLAND -DEFINES += $$QMAKE_DEFINES_WAYLAND -LIBS += $$QMAKE_LIBS_WAYLAND_CLIENT -LIBS += $$QMAKE_LIBS_WAYLAND_SERVER -!isEmpty(QMAKE_LIBDIR_WAYLAND) { - LIBS += -L$$QMAKE_LIBDIR_WAYLAND -} - -!isEmpty(QMAKE_LFLAGS_RPATH) { - !isEmpty(QMAKE_LIBDIR_WAYLAND) { - QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${QMAKE_LIBS_WAYLAND} - } + PKGCONFIG += wayland-client wayland-server +} else { + LIBS += -lwayland-client -lwayland-server } SOURCES += tst_client.cpp \ diff --git a/tests/auto/compositor/compositor.pro b/tests/auto/compositor/compositor.pro index 68524f6c..1da1ba25 100644 --- a/tests/auto/compositor/compositor.pro +++ b/tests/auto/compositor/compositor.pro @@ -1,35 +1,14 @@ -CONFIG += testcase +CONFIG += testcase link_pkgconfig TARGET = tst_compositor QT += testlib QT += core-private gui-private compositor !contains(QT_CONFIG, no-pkg-config) { - #If Qt uses pkg-config then override pkgconfig from mkspec - QMAKE_CFLAGS_WAYLAND=$$system(pkg-config --cflags wayland-server 2>/dev/null) - QMAKE_LIBS_WAYLAND_SERVER=$$system(pkg-config --libs-only-l wayland-server 2>/dev/null) - QMAKE_LIBS_WAYLAND_CLIENT=$$system(pkg-config --libs-only-l wayland-client 2>/dev/null) - QMAKE_INCDIR_WAYLAND=$$system("pkg-config --cflags-only-I wayland-server 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'") - QMAKE_LIBDIR_WAYLAND=$$system("pkg-config --libs-only-L wayland-server 2>/dev/null | sed -e 's,^-L,,g' -e 's, -L, ,g'") - QMAKE_DEFINES_WAYLAND="" + PKGCONFIG += wayland-client wayland-server +} else { + LIBS += -lwayland-client -lwayland-server } -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_WAYLAND -QMAKE_CFLAGS += $$QMAKE_CFLAGS_WAYLAND -DEFINES += $$QMAKE_DEFINES_WAYLAND -LIBS += $$QMAKE_LIBS_WAYLAND_SERVER -LIBS += $$QMAKE_LIBS_WAYLAND_CLIENT -!isEmpty(QMAKE_LIBDIR_WAYLAND) { - LIBS += -L$$QMAKE_LIBDIR_WAYLAND -} - -!isEmpty(QMAKE_LFLAGS_RPATH) { - !isEmpty(QMAKE_LIBDIR_WAYLAND) { - QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${QMAKE_LIBS_WAYLAND} - } -} - -QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_WAYLAND - SOURCES += tst_compositor.cpp testcompositor.cpp mockclient.cpp HEADERS += testcompositor.h mockclient.h |