From dc4452571efeb0950f2f0197d7cde2558e00d7a5 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Thu, 2 May 2019 18:25:41 +0200 Subject: [PATCH 1/7] Fix header install prefix --- libnymea/libnymea.pro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libnymea/libnymea.pro b/libnymea/libnymea.pro index d5401e59..a851d67f 100644 --- a/libnymea/libnymea.pro +++ b/libnymea/libnymea.pro @@ -136,7 +136,7 @@ INSTALLS += generateplugininfo # install header file with relative subdirectory for(header, HEADERS) { - path = $${PREFIX}/include/nymea/$${dirname(header)} + path = $$[QT_INSTALL_PREFIX]/include/nymea/$${dirname(header)} eval(headers_$${path}.files += $${header}) eval(headers_$${path}.path = $${path}) eval(INSTALLS *= headers_$${path}) @@ -150,7 +150,7 @@ INSTALLS += target CONFIG += create_pc create_prl no_install_prl QMAKE_PKGCONFIG_NAME = libnymea QMAKE_PKGCONFIG_DESCRIPTION = nymea development library -QMAKE_PKGCONFIG_PREFIX = $${PREFIX} +QMAKE_PKGCONFIG_PREFIX = $$[QT_INSTALL_PREFIX] QMAKE_PKGCONFIG_LIBDIR = $$target.path QMAKE_PKGCONFIG_INCDIR = /usr/include/nymea QMAKE_PKGCONFIG_VERSION = $$NYMEA_VERSION_STRING From ac766c9cc8a641e6fb15d2a886256d0c5158a89f Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Fri, 3 May 2019 13:40:18 +0200 Subject: [PATCH 2/7] Some more fixes for pkgconfig --- debian/libnymea1-dev.install.in | 2 +- libnymea/libnymea.pro | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/debian/libnymea1-dev.install.in b/debian/libnymea1-dev.install.in index e3c0e18f..cb9b9625 100644 --- a/debian/libnymea1-dev.install.in +++ b/debian/libnymea1-dev.install.in @@ -2,4 +2,4 @@ usr/lib/@DEB_HOST_MULTIARCH@/libnymea.so usr/include/nymea/* usr/include/nymea usr/bin/nymea-generateplugininfo usr/bin libnymea/plugin/plugin.pri usr/include/nymea/ -usr/lib/@DEB_HOST_MULTIARCH@/nymea.pc usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/ +usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/nymea.pc diff --git a/libnymea/libnymea.pro b/libnymea/libnymea.pro index a851d67f..b329bece 100644 --- a/libnymea/libnymea.pro +++ b/libnymea/libnymea.pro @@ -151,6 +151,8 @@ CONFIG += create_pc create_prl no_install_prl QMAKE_PKGCONFIG_NAME = libnymea QMAKE_PKGCONFIG_DESCRIPTION = nymea development library QMAKE_PKGCONFIG_PREFIX = $$[QT_INSTALL_PREFIX] +QMAKE_PKGCONFIG_INCDIR = $$[QT_INSTALL_PREFIX]/include/nymea/ QMAKE_PKGCONFIG_LIBDIR = $$target.path -QMAKE_PKGCONFIG_INCDIR = /usr/include/nymea QMAKE_PKGCONFIG_VERSION = $$NYMEA_VERSION_STRING +QMAKE_PKGCONFIG_FILE = nymea +QMAKE_PKGCONFIG_DESTDIR = pkgconfig From b03899ce39be5021ec851a11410a2b7f28b8feb9 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Fri, 3 May 2019 15:46:44 +0200 Subject: [PATCH 3/7] make use of pkg-config in plugin.pri --- libnymea/plugin/plugin.pri | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libnymea/plugin/plugin.pri b/libnymea/plugin/plugin.pri index 536a6572..22f036f1 100644 --- a/libnymea/plugin/plugin.pri +++ b/libnymea/plugin/plugin.pri @@ -27,10 +27,9 @@ TEMPLATE = lib -CONFIG += plugin +CONFIG += plugin link_pkgconfig -INCLUDEPATH += /usr/include/nymea -LIBS += -lnymea +PKGCONFIG += nymea PLUGIN_PATH=/usr/lib/$$system('dpkg-architecture -q DEB_HOST_MULTIARCH')/nymea/plugins/ From 0803881c924c64e31c4d79b5c87f1c944c4a9879 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Fri, 3 May 2019 17:13:22 +0200 Subject: [PATCH 4/7] install plugin.pri via build system --- libnymea/libnymea.pro | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libnymea/libnymea.pro b/libnymea/libnymea.pro index b329bece..6966326b 100644 --- a/libnymea/libnymea.pro +++ b/libnymea/libnymea.pro @@ -131,9 +131,13 @@ RESOURCES += \ # install plugininfo python script for libnymea-dev generateplugininfo.files = $$top_srcdir/plugins/nymea-generateplugininfo generateplugininfo.path = /usr/bin - INSTALLS += generateplugininfo +# install plugin.pri for external plugins +pluginpri.files = $$top_srcdir/plugins/plugin.pri +pluginpri.path = $$[QT_INSTALL_PREFIX]/include/nymea/plugin.pri +INSTALLS += pluginpri + # install header file with relative subdirectory for(header, HEADERS) { path = $$[QT_INSTALL_PREFIX]/include/nymea/$${dirname(header)} From 426bbf0907dea20560e39c7f29e7824e31e313b2 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Mon, 6 May 2019 14:10:03 +0200 Subject: [PATCH 5/7] Fix some more install paths --- libnymea/libnymea.pro | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libnymea/libnymea.pro b/libnymea/libnymea.pro index 6966326b..3abebf98 100644 --- a/libnymea/libnymea.pro +++ b/libnymea/libnymea.pro @@ -130,12 +130,12 @@ RESOURCES += \ # install plugininfo python script for libnymea-dev generateplugininfo.files = $$top_srcdir/plugins/nymea-generateplugininfo -generateplugininfo.path = /usr/bin -INSTALLS += generateplugininfo +generateplugininfo.path = $$[QT_INSTALL_PREFIX]/bin +INSTALLS += generateplugininfo # install plugin.pri for external plugins -pluginpri.files = $$top_srcdir/plugins/plugin.pri -pluginpri.path = $$[QT_INSTALL_PREFIX]/include/nymea/plugin.pri +pluginpri.files = plugin/plugin.pri +pluginpri.path = $$[QT_INSTALL_PREFIX]/include/nymea/ INSTALLS += pluginpri # install header file with relative subdirectory @@ -160,3 +160,4 @@ QMAKE_PKGCONFIG_LIBDIR = $$target.path QMAKE_PKGCONFIG_VERSION = $$NYMEA_VERSION_STRING QMAKE_PKGCONFIG_FILE = nymea QMAKE_PKGCONFIG_DESTDIR = pkgconfig + From 8698a5c1af69326af1812cc74f5b521de9a9c5be Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Mon, 6 May 2019 16:11:28 +0200 Subject: [PATCH 6/7] move generateplugininfo to libnymea --- libnymea/libnymea.pro | 2 +- {plugins => libnymea/plugin}/nymea-generateplugininfo | 0 plugins/plugins.pri | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename {plugins => libnymea/plugin}/nymea-generateplugininfo (100%) diff --git a/libnymea/libnymea.pro b/libnymea/libnymea.pro index 3abebf98..0324f856 100644 --- a/libnymea/libnymea.pro +++ b/libnymea/libnymea.pro @@ -129,7 +129,7 @@ RESOURCES += \ ## Install instructions # install plugininfo python script for libnymea-dev -generateplugininfo.files = $$top_srcdir/plugins/nymea-generateplugininfo +generateplugininfo.files = plugin/nymea-generateplugininfo generateplugininfo.path = $$[QT_INSTALL_PREFIX]/bin INSTALLS += generateplugininfo diff --git a/plugins/nymea-generateplugininfo b/libnymea/plugin/nymea-generateplugininfo similarity index 100% rename from plugins/nymea-generateplugininfo rename to libnymea/plugin/nymea-generateplugininfo diff --git a/plugins/plugins.pri b/plugins/plugins.pri index 9b106c94..405d9dd6 100644 --- a/plugins/plugins.pri +++ b/plugins/plugins.pri @@ -14,7 +14,7 @@ JSONFILE=$$PWD/$$TARGET/deviceplugin"$$TARGET".json plugininfo.input = JSONFILE plugininfo.output = plugininfo.h plugininfo.CONFIG = no_link target_predeps -plugininfo.commands = $$top_srcdir/plugins/nymea-generateplugininfo \ +plugininfo.commands = $$top_srcdir/libnymea/plugin/nymea-generateplugininfo \ --filetype i \ --jsonfile $$PWD/$$TARGET/deviceplugin"$$TARGET".json \ --output plugininfo.h \ From 37c0cbdb283d43240138b875124bb22d536090c4 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Mon, 6 May 2019 23:08:11 +0200 Subject: [PATCH 7/7] fix install target for external plugin file --- libnymea/plugin/plugin.pri | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libnymea/plugin/plugin.pri b/libnymea/plugin/plugin.pri index 22f036f1..817a0c90 100644 --- a/libnymea/plugin/plugin.pri +++ b/libnymea/plugin/plugin.pri @@ -31,8 +31,6 @@ CONFIG += plugin link_pkgconfig PKGCONFIG += nymea -PLUGIN_PATH=/usr/lib/$$system('dpkg-architecture -q DEB_HOST_MULTIARCH')/nymea/plugins/ - QMAKE_CXXFLAGS *= -Werror -std=c++11 -g QMAKE_LFLAGS *= -std=c++11 @@ -83,5 +81,5 @@ HEADERS += $$OUT_PWD/plugininfo.h \ DEPENDPATH += $$OUT_PWD # Install plugin -target.path = $$PLUGIN_PATH +target.path = $$[QT_INSTALL_LIBS]/nymea/plugins/ INSTALLS += target translations