diff options
Diffstat (limited to 'dev-qt')
6 files changed, 236 insertions, 0 deletions
diff --git a/dev-qt/qtsingleapplication/Manifest b/dev-qt/qtsingleapplication/Manifest new file mode 100644 index 00000000..45d4d15e --- /dev/null +++ b/dev-qt/qtsingleapplication/Manifest @@ -0,0 +1 @@ +DIST qt-solutions-20171024.tar.xz 710532 BLAKE2B 365f4c6fc3bee34bf26ac5039984ceac1d90527297b985b0d1b606f3ba67219bab7f7cba40b4adca55446c34e9f4fe218b4449ee255ba6f6409de78f80ccdaec SHA512 4784d88c2f40c88f06abeb728842875fb5e428a630dbf749f71055681b0c631803d2901b60aa8cc95f5f382dcd21da8d739873aa45e3dd3676ee95925f0198da diff --git a/dev-qt/qtsingleapplication/files/2.6.1_p20130904-no-gui.patch b/dev-qt/qtsingleapplication/files/2.6.1_p20130904-no-gui.patch new file mode 100644 index 00000000..19019e28 --- /dev/null +++ b/dev-qt/qtsingleapplication/files/2.6.1_p20130904-no-gui.patch @@ -0,0 +1,67 @@ +From f66352d6c2918123466bd72aee2118b9167562af Mon Sep 17 00:00:00 2001 +From: Davide Pesavento <davidepesa@gmail.com> +Date: Sat, 28 Dec 2013 16:43:18 +0100 +Subject: [PATCH] no gui + +--- + buildlib/buildlib.pro | 4 +++- + src/qtsingleapplication.pri | 11 +++++------ + src/qtsinglecoreapplication.pri | 2 +- + 3 files changed, 9 insertions(+), 8 deletions(-) + +diff --git a/buildlib/buildlib.pro b/buildlib/buildlib.pro +index 37dddcd..f7c6508 100644 +--- a/buildlib/buildlib.pro ++++ b/buildlib/buildlib.pro +@@ -2,7 +2,9 @@ TEMPLATE=lib + CONFIG += qt dll qtsingleapplication-buildlib + mac:CONFIG += absolute_library_soname + win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all +-include(../src/qtsingleapplication.pri) ++include(../common.pri) ++include(../src/qtsinglecoreapplication.pri) ++exists(../config.pri):!infile(../config.pri, QTSA_NO_GUI, yes):include(../src/qtsingleapplication.pri) + TARGET = $$QTSINGLEAPPLICATION_LIBNAME + DESTDIR = $$QTSINGLEAPPLICATION_LIBDIR + win32 { +diff --git a/src/qtsingleapplication.pri b/src/qtsingleapplication.pri +index 02c9e5b..772924d 100644 +--- a/src/qtsingleapplication.pri ++++ b/src/qtsingleapplication.pri +@@ -1,15 +1,14 @@ +-include(../common.pri) +-INCLUDEPATH += $$PWD +-DEPENDPATH += $$PWD +-QT *= network ++INCLUDEPATH *= $$PWD ++DEPENDPATH *= $$PWD ++QT *= gui network + greaterThan(QT_MAJOR_VERSION, 4): QT *= widgets + CONFIG *= qtlockedfile + + qtsingleapplication-uselib:!qtsingleapplication-buildlib { + LIBS += -L$$QTSINGLEAPPLICATION_LIBDIR -l$$QTSINGLEAPPLICATION_LIBNAME + } else { +- SOURCES += $$PWD/qtsingleapplication.cpp $$PWD/qtlocalpeer.cpp +- HEADERS += $$PWD/qtsingleapplication.h $$PWD/qtlocalpeer.h ++ SOURCES += $$PWD/qtsingleapplication.cpp ++ HEADERS += $$PWD/qtsingleapplication.h + } + + win32 { +diff --git a/src/qtsinglecoreapplication.pri b/src/qtsinglecoreapplication.pri +index f5b8414..bf14a3f 100644 +--- a/src/qtsinglecoreapplication.pri ++++ b/src/qtsinglecoreapplication.pri +@@ -3,7 +3,7 @@ DEPENDPATH += $$PWD + HEADERS += $$PWD/qtsinglecoreapplication.h $$PWD/qtlocalpeer.h + SOURCES += $$PWD/qtsinglecoreapplication.cpp $$PWD/qtlocalpeer.cpp + +-QT *= network ++QT = core network + CONFIG *= qtlockedfile + + win32:contains(TEMPLATE, lib):contains(CONFIG, shared) { +-- +1.8.5.2 + diff --git a/dev-qt/qtsingleapplication/files/2.6.1_p20130904-unbundle-qtlockedfile.patch b/dev-qt/qtsingleapplication/files/2.6.1_p20130904-unbundle-qtlockedfile.patch new file mode 100644 index 00000000..93c78fab --- /dev/null +++ b/dev-qt/qtsingleapplication/files/2.6.1_p20130904-unbundle-qtlockedfile.patch @@ -0,0 +1,81 @@ +From 62210d463f87abb0584ce699915e1845cacaa480 Mon Sep 17 00:00:00 2001 +From: Davide Pesavento <davidepesa@gmail.com> +Date: Sat, 28 Dec 2013 16:33:15 +0100 +Subject: [PATCH] unbundle qtlockedfile + +--- + src/qtlocalpeer.cpp | 11 +---------- + src/qtlocalpeer.h | 2 +- + src/qtsingleapplication.pri | 1 + + src/qtsinglecoreapplication.pri | 1 + + 4 files changed, 4 insertions(+), 11 deletions(-) + +diff --git a/src/qtlocalpeer.cpp b/src/qtlocalpeer.cpp +index 332b064..f17e662 100644 +--- a/src/qtlocalpeer.cpp ++++ b/src/qtlocalpeer.cpp +@@ -55,15 +55,6 @@ static PProcessIdToSessionId pProcessIdToSessionId = 0; + #include <unistd.h> + #endif + +-namespace QtLP_Private { +-#include "qtlockedfile.cpp" +-#if defined(Q_OS_WIN) +-#include "qtlockedfile_win.cpp" +-#else +-#include "qtlockedfile_unix.cpp" +-#endif +-} +- + const char* QtLocalPeer::ack = "ack"; + + QtLocalPeer::QtLocalPeer(QObject* parent, const QString &appId) +@@ -114,7 +105,7 @@ bool QtLocalPeer::isClient() + if (lockFile.isLocked()) + return false; + +- if (!lockFile.lock(QtLP_Private::QtLockedFile::WriteLock, false)) ++ if (!lockFile.lock(QtLockedFile::WriteLock, false)) + return true; + + bool res = server->listen(socketName); +diff --git a/src/qtlocalpeer.h b/src/qtlocalpeer.h +index 1b533b1..1127735 100644 +--- a/src/qtlocalpeer.h ++++ b/src/qtlocalpeer.h +@@ -68,7 +68,7 @@ protected: + QString id; + QString socketName; + QLocalServer* server; +- QtLP_Private::QtLockedFile lockFile; ++ QtLockedFile lockFile; + + private: + static const char* ack; +diff --git a/src/qtsingleapplication.pri b/src/qtsingleapplication.pri +index 6f2bced..02c9e5b 100644 +--- a/src/qtsingleapplication.pri ++++ b/src/qtsingleapplication.pri +@@ -3,6 +3,7 @@ INCLUDEPATH += $$PWD + DEPENDPATH += $$PWD + QT *= network + greaterThan(QT_MAJOR_VERSION, 4): QT *= widgets ++CONFIG *= qtlockedfile + + qtsingleapplication-uselib:!qtsingleapplication-buildlib { + LIBS += -L$$QTSINGLEAPPLICATION_LIBDIR -l$$QTSINGLEAPPLICATION_LIBNAME +diff --git a/src/qtsinglecoreapplication.pri b/src/qtsinglecoreapplication.pri +index d2d6cc3..f5b8414 100644 +--- a/src/qtsinglecoreapplication.pri ++++ b/src/qtsinglecoreapplication.pri +@@ -4,6 +4,7 @@ HEADERS += $$PWD/qtsinglecoreapplication.h $$PWD/qtlocalpeer.h + SOURCES += $$PWD/qtsinglecoreapplication.cpp $$PWD/qtlocalpeer.cpp + + QT *= network ++CONFIG *= qtlockedfile + + win32:contains(TEMPLATE, lib):contains(CONFIG, shared) { + DEFINES += QT_QTSINGLECOREAPPLICATION_EXPORT=__declspec(dllexport) +-- +1.8.5.2 + diff --git a/dev-qt/qtsingleapplication/files/qtsingleapplication.prf b/dev-qt/qtsingleapplication/files/qtsingleapplication.prf new file mode 100644 index 00000000..3171424f --- /dev/null +++ b/dev-qt/qtsingleapplication/files/qtsingleapplication.prf @@ -0,0 +1,9 @@ +INCLUDEPATH *= $$[QT_INSTALL_HEADERS]/QtSolutions +greaterThan(QT_MAJOR_VERSION, 4) { +LIBS *= -lQt$${QT_MAJOR_VERSION}Solutions_SingleApplication-2.6 +QT *= widgets +} else { +LIBS *= -lQtSolutions_SingleApplication-2.6 +} +QT *= network +CONFIG *= qtlockedfile diff --git a/dev-qt/qtsingleapplication/files/qtsinglecoreapplication.prf b/dev-qt/qtsingleapplication/files/qtsinglecoreapplication.prf new file mode 100644 index 00000000..87d2a958 --- /dev/null +++ b/dev-qt/qtsingleapplication/files/qtsinglecoreapplication.prf @@ -0,0 +1,8 @@ +INCLUDEPATH *= $$[QT_INSTALL_HEADERS]/QtSolutions +greaterThan(QT_MAJOR_VERSION, 4) { +LIBS *= -lQt$${QT_MAJOR_VERSION}Solutions_SingleApplication-2.6 +} else { +LIBS *= -lQtSolutions_SingleApplication-2.6 +} +QT *= network +CONFIG *= qtlockedfile diff --git a/dev-qt/qtsingleapplication/qtsingleapplication-2.6.1_p20171024-r1.ebuild b/dev-qt/qtsingleapplication/qtsingleapplication-2.6.1_p20171024-r1.ebuild new file mode 100644 index 00000000..91161fc3 --- /dev/null +++ b/dev-qt/qtsingleapplication/qtsingleapplication-2.6.1_p20171024-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit qmake-utils + +MY_P=qt-solutions-${PV#*_p} + +DESCRIPTION="Qt library to start applications only once per user" +HOMEPAGE="https://code.qt.io/cgit/qt-solutions/qt-solutions.git/" +SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.xz" + +LICENSE="|| ( LGPL-2.1 GPL-3 )" +SLOT="0" +KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86" +IUSE="doc X" + +DEPEND=" + dev-qt/qtcore:5 + dev-qt/qtlockedfile[qt5(+)] + dev-qt/qtnetwork:5 + X? ( + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + ) +" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}/${PN}" + +PATCHES=( + "${FILESDIR}/2.6.1_p20130904-unbundle-qtlockedfile.patch" + "${FILESDIR}/2.6.1_p20130904-no-gui.patch" +) + +src_prepare() { + default + + echo 'SOLUTIONS_LIBRARY = yes' > config.pri + use X || echo 'QTSA_NO_GUI = yes' >> config.pri + + sed -i -e "s/-head/-${PV%.*}/" common.pri || die + sed -i -e '/SUBDIRS+=examples/d' ${PN}.pro || die + + # to ensure unbundling + rm src/qtlockedfile* || die +} + +src_configure() { + eqmake5 +} + +src_install() { + use doc && local HTML_DOCS=( doc/html/. ) + einstalldocs + + # libraries + dolib.so lib/* + + # headers + insinto "$(qt5_get_headerdir)"/QtSolutions + doins src/qtsinglecoreapplication.h + use X && doins src/{QtSingleApplication,${PN}.h} + + # .prf files + insinto "$(qt5_get_mkspecsdir)"/features + doins "${FILESDIR}"/qtsinglecoreapplication.prf + use X && doins "${FILESDIR}"/${PN}.prf +} |