summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2019-12-08 23:08:26 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2019-12-08 23:35:34 +0100
commitcf8463aabc4aea65dd937bc80a2de42168188f08 (patch)
treece20476fdf46d9a0c0050fbfd84c61f66b454947
parentsys-libs/libunwind: drop old (diff)
downloadgentoo-cf8463aabc4aea65dd937bc80a2de42168188f08.tar.gz
gentoo-cf8463aabc4aea65dd937bc80a2de42168188f08.tar.bz2
gentoo-cf8463aabc4aea65dd937bc80a2de42168188f08.zip
net-libs/signond: Fix pkgconfig libdir paths
Closes: https://bugs.gentoo.org/701142 Package-Manager: Portage-2.3.81, Repoman-2.3.20 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--net-libs/signond/files/signond-8.60-buildsystem.patch51
-rw-r--r--net-libs/signond/files/signond-8.60-consistent-paths.patch263
-rw-r--r--net-libs/signond/signond-8.60-r1.ebuild61
3 files changed, 375 insertions, 0 deletions
diff --git a/net-libs/signond/files/signond-8.60-buildsystem.patch b/net-libs/signond/files/signond-8.60-buildsystem.patch
new file mode 100644
index 00000000000..95c4791ac4e
--- /dev/null
+++ b/net-libs/signond/files/signond-8.60-buildsystem.patch
@@ -0,0 +1,51 @@
+From 43e953418a5a08c3492d1160e4268dbcf82e7be9 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 8 Dec 2019 20:35:11 +0100
+Subject: [PATCH] Fix build system for Gentoo
+
+1) remove unused dependency Qt5Xml
+2) don't install example plugin
+3) don't install static libs
+---
+ lib/SignOn/SignOn.pro | 4 +---
+ src/plugins/plugins.pro | 1 -
+ src/signond/signond.pro | 1 -
+ 3 files changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/lib/SignOn/SignOn.pro b/lib/SignOn/SignOn.pro
+index f6a1d61..28af041 100644
+--- a/lib/SignOn/SignOn.pro
++++ b/lib/SignOn/SignOn.pro
+@@ -1,7 +1,5 @@
+ TEMPLATE = subdirs
+ CONFIG += ordered
+-SUBDIRS = \
+- libsignon-qt-shared.pro \
+- libsignon-qt-static.pro
++SUBDIRS = libsignon-qt-shared.pro
+
+ include(doc/doc.pri)
+diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro
+index dfccc4a..ca1c1ae 100644
+--- a/src/plugins/plugins.pro
++++ b/src/plugins/plugins.pro
+@@ -1,4 +1,3 @@
+ TEMPLATE = subdirs
+ SUBDIRS = password \
+- example \
+ test
+diff --git a/src/signond/signond.pro b/src/signond/signond.pro
+index 60ee5e7..211dab6 100644
+--- a/src/signond/signond.pro
++++ b/src/signond/signond.pro
+@@ -4,7 +4,6 @@ TEMPLATE = app
+ TARGET = signond
+ QT += core \
+ sql \
+- xml \
+ network \
+ dbus
+
+--
+2.24.0
+
diff --git a/net-libs/signond/files/signond-8.60-consistent-paths.patch b/net-libs/signond/files/signond-8.60-consistent-paths.patch
new file mode 100644
index 00000000000..f32ac319e57
--- /dev/null
+++ b/net-libs/signond/files/signond-8.60-consistent-paths.patch
@@ -0,0 +1,263 @@
+From c68f31b964f9decf323cd212282cf13d4a42ad21 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 8 Dec 2019 22:52:46 +0100
+Subject: [PATCH] Consistent overrideable install paths
+
+At least signon-plugins.pc and signon-plugins-common.pc were getting it wrong.
+
+This patch is converting absolute INSTALL_LIBDIR to LIBDIR relative beneath INSTALL_PREFIX.
+---
+ common-installs-config.pri | 2 +-
+ common-pkgconfig.pri | 2 +-
+ common-project-config.pri | 30 +++++++++----------
+ lib/SignOn/SignOnQt5Config.cmake.in | 6 ++--
+ lib/SignOn/libsignon-qt.pc.in | 2 +-
+ lib/SignOn/libsignon-qt.pri | 2 +-
+ lib/SignOn/libsignon-qt5.pc.in | 2 +-
+ .../signon-plugins-common.pc.in | 4 +--
+ lib/plugins/signon-plugins.pc.in | 4 +--
+ lib/signond/SignOn/SignOnExtension.pc.in | 2 +-
+ lib/signond/signond.pc.in | 2 +-
+ src/extensions/cryptsetup/cryptsetup.pro | 2 +-
+ src/plugins/plugins.pri | 4 +--
+ 13 files changed, 32 insertions(+), 32 deletions(-)
+
+diff --git a/common-installs-config.pri b/common-installs-config.pri
+index 69c5ae8..b72477a 100644
+--- a/common-installs-config.pri
++++ b/common-installs-config.pri
+@@ -18,7 +18,7 @@ contains( TEMPLATE, app ) {
+ # default installation target for libraries
+ #-----------------------------------------------------------------------------
+ contains( TEMPLATE, lib ) {
+- target.path = $${INSTALL_LIBDIR}
++ target.path = $${INSTALL_PREFIX}/$${LIBDIR}
+ INSTALLS += target
+ message("====")
+ message("==== INSTALLS += target")
+diff --git a/common-pkgconfig.pri b/common-pkgconfig.pri
+index 975068a..9f010d3 100644
+--- a/common-pkgconfig.pri
++++ b/common-pkgconfig.pri
+@@ -3,7 +3,7 @@
+ !isEmpty(pkgconfig.files) {
+ QMAKE_SUBSTITUTES += $${pkgconfig.files}.in
+ pkgconfig.CONFIG = no_check_exist
+- pkgconfig.path = $${INSTALL_LIBDIR}/pkgconfig
++ pkgconfig.path = $${INSTALL_PREFIX}/$${LIBDIR}/pkgconfig
+ QMAKE_EXTRA_TARGETS += pkgconfig
+
+ QMAKE_CLEAN += $${pkgconfig.files}
+diff --git a/common-project-config.pri b/common-project-config.pri
+index 606f70b..1185559 100644
+--- a/common-project-config.pri
++++ b/common-project-config.pri
+@@ -57,36 +57,36 @@ exists( meego-release ) {
+ ARCH = $$system(uname -m)
+ }
+
+-linux-g++-64|linux-icc-64: INSTALL_LIBDIR = $${INSTALL_PREFIX}/lib64
+-else: linux-g++-32|linux-icc-32: INSTALL_LIBDIR = $${INSTALL_PREFIX}/lib32
+-else: INSTALL_LIBDIR = $${INSTALL_PREFIX}/lib
++linux-g++-64|linux-icc-64: DEFAULT_LIBDIR = lib64
++else: linux-g++-32|linux-icc-32: DEFAULT_LIBDIR = lib32
++else: DEFAULT_LIBDIR = lib
+
+ # default library directory can be overriden by defining LIBDIR when
+ # running qmake
+ isEmpty( LIBDIR ) {
++ LIBDIR = $${DEFAULT_LIBDIR}
+ message("====")
+- message("==== NOTE: To override the library installation path run: `qmake LIBDIR=/custom/path'")
+- message("==== (current installation path is `$${INSTALL_LIBDIR}')")
++ message("==== NOTE: To override the library dir beneath INSTALL_PREFIX run: `qmake LIBDIR=customdir'")
++ message("==== (current library dir is `$${LIBDIR}`, install path `$${INSTALL_PREFIX}/$${LIBDIR}')")
+ } else {
+- INSTALL_LIBDIR = $${LIBDIR}
+ message("====")
+- message("==== library install path set to `$${INSTALL_LIBDIR}'")
++ message("==== library dir set to `$${LIBDIR}`, install path `$${INSTALL_PREFIX}/$${LIBDIR}'")
+ }
+
+-isEmpty ( CMAKE_CONFIG_PATH ) {
+- CMAKE_CONFIG_PATH = $${INSTALL_LIBDIR}/cmake/$${CMAKE_BASENAME}
++isEmpty ( CMAKE_MODULE_DIR ) {
++ CMAKE_MODULE_DIR = $${LIBDIR}/cmake/$${CMAKE_BASENAME}
+ message("====")
+- message("==== NOTE: To override the cmake module installation path run: `qmake CMAKE_CONFIG_PATH=/custom/path'")
+- message("==== (current installation path is `$${CMAKE_CONFIG_PATH}')")
++ message("==== NOTE: To override the cmake module dir beneath INSTALL_PREFIX run: `qmake CMAKE_MODULE_DIR=customdir'")
++ message("==== (current cmake module dir is `$${CMAKE_MODULE_DIR}`, install path `$${INSTALL_PREFIX}/$${CMAKE_MODULE_DIR}')")
+ } else {
+ message("====")
+- message("==== cmake module install path set to `$${CMAKE_CONFIG_PATH}'")
++ message("==== cmake module dir set to `$${CMAKE_MODULE_DIR}', install path `$${INSTALL_PREFIX}/$${CMAKE_MODULE_DIR}')")
+ }
+
+ # Default directory for signond extensions
+ _EXTENSIONS = $$(SIGNOND_EXTENSIONS_DIR)
+ isEmpty(_EXTENSIONS) {
+- SIGNOND_EXTENSIONS_DIR = $${INSTALL_LIBDIR}/signon/extensions
++ SIGNOND_EXTENSIONS_DIR = $${INSTALL_PREFIX}/$${LIBDIR}/signon/extensions
+ } else {
+ SIGNOND_EXTENSIONS_DIR = $$_EXTENSIONS
+ }
+@@ -94,7 +94,7 @@ SIGNOND_EXTENSIONS_DIR_QUOTED = \\\"$$SIGNOND_EXTENSIONS_DIR\\\"
+
+ _PLUGINS = $$(SIGNOND_PLUGINS_DIR)
+ isEmpty(_PLUGINS) {
+- SIGNOND_PLUGINS_DIR = $${INSTALL_LIBDIR}/signon
++ SIGNOND_PLUGINS_DIR = $${INSTALL_PREFIX}/$${LIBDIR}/signon
+ } else {
+ SIGNOND_PLUGINS_DIR = $$_PLUGINS
+ }
+@@ -102,7 +102,7 @@ SIGNOND_PLUGINS_DIR_QUOTED = \\\"$$SIGNOND_PLUGINS_DIR\\\"
+
+ # Note that you have to CONFIG+=install_tests in order to install tests
+ isEmpty(TESTDIR) {
+- INSTALL_TESTDIR = $${INSTALL_LIBDIR}/signon
++ INSTALL_TESTDIR = $${INSTALL_PREFIX}/$${LIBDIR}/signon
+ } else {
+ INSTALL_TESTDIR = $${TESTDIR}
+ }
+diff --git a/lib/SignOn/SignOnQt5Config.cmake.in b/lib/SignOn/SignOnQt5Config.cmake.in
+index 523fffb..7105315 100644
+--- a/lib/SignOn/SignOnQt5Config.cmake.in
++++ b/lib/SignOn/SignOnQt5Config.cmake.in
+@@ -2,6 +2,6 @@
+ # SIGNONQT_LIBRARIES - The libraries needed to use libsignon-qt
+ # SIGNONQT_LIBRARIES_STATIC - The static version of libsignon-qt
+
+-set(SIGNONQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so)
+-set(SIGNONQT_LIBRARIES_STATIC $${INSTALL_LIBDIR}/lib$${TARGET}.a)
+-set(SIGNONQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET})
+\ No newline at end of file
++set(SIGNONQT_LIBRARIES $${INSTALL_PREFIX}/$${LIBDIR}/lib$${TARGET}.so)
++set(SIGNONQT_LIBRARIES_STATIC $${INSTALL_PREFIX}/$${LIBDIR}/lib$${TARGET}.a)
++set(SIGNONQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET})
+diff --git a/lib/SignOn/libsignon-qt.pc.in b/lib/SignOn/libsignon-qt.pc.in
+index 26f0f5b..c614541 100644
+--- a/lib/SignOn/libsignon-qt.pc.in
++++ b/lib/SignOn/libsignon-qt.pc.in
+@@ -1,6 +1,6 @@
+ prefix=$$INSTALL_PREFIX
+ exec_prefix=${prefix}
+-libdir=$$INSTALL_LIBDIR
++libdir=${prefix}/$$LIBDIR
+ includedir=${prefix}/include
+
+ Name: libsignon-qt
+diff --git a/lib/SignOn/libsignon-qt.pri b/lib/SignOn/libsignon-qt.pri
+index 1458c50..d80f8bb 100644
+--- a/lib/SignOn/libsignon-qt.pri
++++ b/lib/SignOn/libsignon-qt.pri
+@@ -79,6 +79,6 @@ QMAKE_SUBSTITUTES += $${CMAKE_BASENAME}Config.cmake.in \
+ $${CMAKE_BASENAME}ConfigVersion.cmake.in
+ cmake_modules.files = $${CMAKE_BASENAME}Config.cmake \
+ $${CMAKE_BASENAME}ConfigVersion.cmake
+-cmake_modules.path = $${CMAKE_CONFIG_PATH}
++cmake_modules.path = $${INSTALL_PREFIX}/$${CMAKE_MODULE_DIR}
+
+ INSTALLS += cmake_modules
+diff --git a/lib/SignOn/libsignon-qt5.pc.in b/lib/SignOn/libsignon-qt5.pc.in
+index 2181359..5d98b6d 100644
+--- a/lib/SignOn/libsignon-qt5.pc.in
++++ b/lib/SignOn/libsignon-qt5.pc.in
+@@ -1,6 +1,6 @@
+ prefix=$$INSTALL_PREFIX
+ exec_prefix=${prefix}
+-libdir=$$INSTALL_LIBDIR
++libdir=${prefix}/$$LIBDIR
+ includedir=${prefix}/include
+
+ Name: libsignon-qt5
+diff --git a/lib/plugins/signon-plugins-common/signon-plugins-common.pc.in b/lib/plugins/signon-plugins-common/signon-plugins-common.pc.in
+index 3d7f3db..2240789 100644
+--- a/lib/plugins/signon-plugins-common/signon-plugins-common.pc.in
++++ b/lib/plugins/signon-plugins-common/signon-plugins-common.pc.in
+@@ -1,10 +1,10 @@
+ prefix=$$INSTALL_PREFIX
+ exec_prefix=${prefix}
+-libdir=$$INSTALL_LIBDIR
++libdir=${prefix}/$$LIBDIR
+ includedir=${prefix}/include
+ plugin_includedir=${includedir}/signon-plugins/SignOn
+ Name: signon-plugins-common
+ Description: SignonPluginsCommon
+ Version: $$PROJECT_VERSION
+-Libs.private: -L/usr/lib -lQt5Core
++Libs.private: -L${libdir} -lQt5Core
+ Cflags: -I${includedir}/signon-plugins -I${includedir}/signon-plugins/SignOn
+diff --git a/lib/plugins/signon-plugins.pc.in b/lib/plugins/signon-plugins.pc.in
+index 5be38df..2e3c087 100644
+--- a/lib/plugins/signon-plugins.pc.in
++++ b/lib/plugins/signon-plugins.pc.in
+@@ -1,6 +1,6 @@
+ prefix=$$INSTALL_PREFIX
+ exec_prefix=${prefix}
+-libdir=$$INSTALL_LIBDIR
++libdir=${prefix}/$$LIBDIR
+ includedir=${prefix}/include
+ plugin_includedir=${includedir}/signon-plugins/SignOn
+ plugindir=$$SIGNOND_PLUGINS_DIR
+@@ -8,6 +8,6 @@ Name: signon-plugins
+ Description: SignonPlugins
+ Version: $$PROJECT_VERSION
+ Requires: $${LIBSIGNON}
+-Libs.private: -L/usr/lib -lQt5Core
++Libs.private: -L${libdir} -lQt5Core
+ Cflags: -I${includedir}/signon-plugins -I${includedir}/signon-plugins/SignOn
+ Libs: -lsignon-plugins
+diff --git a/lib/signond/SignOn/SignOnExtension.pc.in b/lib/signond/SignOn/SignOnExtension.pc.in
+index e439284..8fc669c 100644
+--- a/lib/signond/SignOn/SignOnExtension.pc.in
++++ b/lib/signond/SignOn/SignOnExtension.pc.in
+@@ -1,6 +1,6 @@
+ prefix=$$INSTALL_PREFIX
+ exec_prefix=${prefix}
+-libdir=$$INSTALL_LIBDIR
++libdir=${prefix}/$$LIBDIR
+ includedir=${prefix}/include
+ plugindir=$$SIGNOND_EXTENSIONS_DIR
+
+diff --git a/lib/signond/signond.pc.in b/lib/signond/signond.pc.in
+index a7b5036..9ec0b1a 100644
+--- a/lib/signond/signond.pc.in
++++ b/lib/signond/signond.pc.in
+@@ -1,6 +1,6 @@
+ prefix=$$INSTALL_PREFIX
+ exec_prefix=${prefix}
+-libdir=$$INSTALL_LIBDIR
++libdir=${prefix}/$$LIBDIR
+ includedir=${prefix}/include
+
+ Name: signond-dev
+diff --git a/src/extensions/cryptsetup/cryptsetup.pro b/src/extensions/cryptsetup/cryptsetup.pro
+index f4b6e53..2657b47 100644
+--- a/src/extensions/cryptsetup/cryptsetup.pro
++++ b/src/extensions/cryptsetup/cryptsetup.pro
+@@ -41,6 +41,6 @@ LIBS += \
+
+ include( $${TOP_SRC_DIR}/common-installs-config.pri )
+
+-target.path = $${INSTALL_LIBDIR}/signon/extensions
++target.path = $${INSTALL_PREFIX}/$${LIBDIR}/signon/extensions
+ INSTALLS += target
+
+diff --git a/src/plugins/plugins.pri b/src/plugins/plugins.pri
+index 2c03e74..ea2fcb2 100644
+--- a/src/plugins/plugins.pri
++++ b/src/plugins/plugins.pri
+@@ -27,7 +27,7 @@ QMAKE_CXXFLAGS += -fno-exceptions \
+
+ headers.path = $${INSTALL_PREFIX}/include/signon-plugins
+
+-pkgconfig.path = $${INSTALL_LIBDIR}/pkgconfig
++pkgconfig.path = $${INSTALL_PREFIX}/$${LIBDIR}/pkgconfig
+
+-target.path = $${INSTALL_LIBDIR}/signon
++target.path = $${INSTALL_PREFIX}/$${LIBDIR}/signon
+ INSTALLS = target
+--
+2.24.0
+
diff --git a/net-libs/signond/signond-8.60-r1.ebuild b/net-libs/signond/signond-8.60-r1.ebuild
new file mode 100644
index 00000000000..c1a0e3886e4
--- /dev/null
+++ b/net-libs/signond/signond-8.60-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit qmake-utils
+
+DESCRIPTION="Signon daemon for libaccounts-glib"
+HOMEPAGE="https://gitlab.com/accounts-sso"
+SRC_URI="https://gitlab.com/accounts-sso/${PN}/-/archive/VERSION_${PV}/${PN}-VERSION_${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="doc test"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsql:5
+ net-libs/libproxy
+"
+DEPEND="${RDEPEND}
+ test? ( dev-qt/qttest:5 )
+"
+BDEPEND="doc? ( app-doc/doxygen )"
+
+PATCHES=(
+ "${FILESDIR}/${P}-buildsystem.patch"
+ "${FILESDIR}/${P}-consistent-paths.patch" # bug 701142
+)
+
+S="${WORKDIR}/${PN}-VERSION_${PV}"
+
+src_prepare() {
+ default
+
+ # install docs to correct location
+ sed -e "s|share/doc/\$\${PROJECT_NAME}|share/doc/${PF}|" -i doc/doc.pri || die
+ sed -e "/^documentation.path = /c\documentation.path = \$\${INSTALL_PREFIX}/share/doc/${PF}/\$\${TARGET}/" \
+ -i lib/plugins/doc/doc.pri || die
+ sed -e "/^documentation.path = /c\documentation.path = \$\${INSTALL_PREFIX}/share/doc/${PF}/libsignon-qt/" \
+ -i lib/SignOn/doc/doc.pri || die
+
+ # make tests optional
+ use test || sed -i -e '/^SUBDIRS/s/tests//' signon.pro || die "couldn't disable tests"
+
+ # make docs optional
+ use doc || sed -e "/include(\s*doc\/doc.pri\s*)/d" -i \
+ signon.pro -i lib/SignOn/SignOn.pro lib/plugins/plugins.pro || die
+}
+
+src_configure() {
+ eqmake5 PREFIX="${EPREFIX}"/usr LIBDIR=$(get_libdir)
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install
+}