x11-libs/qscintilla: version bump (p.masked)
authorDavide Pesavento <pesa@gentoo.org>
Sun, 26 Feb 2017 01:50:53 +0000 (02:50 +0100)
committerDavide Pesavento <pesa@gentoo.org>
Sun, 26 Feb 2017 01:50:53 +0000 (02:50 +0100)
Finally supports side-by-side installation of qt4 and qt5 variants.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

x11-libs/qscintilla/Manifest
x11-libs/qscintilla/qscintilla-2.10.ebuild [new file with mode: 0644]

index 7bebb5af12eb0aad3c7956b813a0ad054b8b7324..80af86f450c77541d17adeb71647f57ecc05cf0c 100644 (file)
@@ -1,2 +1,3 @@
+DIST QScintilla_gpl-2.10.tar.gz 2662004 SHA256 16be30577bc178470936c458551f2512cc068aff6e7a7de6ed244e28c045f6ec SHA512 fe33471de0807bc4e0d6b86e78eac70531a20c96b5c3269111d4c89eca7ccae5e55752fc2a5c8f20f37220a3ccfb6e9d7d718c02058dd8b40075d40da211a93b WHIRLPOOL 40973a8f925e7a2545b8960ad09547ea62ac7e67ac964a00f775dd62259f8cfe7420a7bfb18e4cfce83ecfa67af68a43742ebee36e89fa89e4bc9b6204601429
 DIST QScintilla_gpl-2.9.2.tar.gz 2491222 SHA256 f2c8ccdc9d3dbb90764ceed53ea096da9bb13b6260da1324e6ab4ecea29e620a SHA512 28f88111d7eb6a016a4b87f04d2b7f5d6481b521a3361a526b3b45a56240f5c8de10310e819234fcba773c6df73bf398ae2dce622976a8e760f506be1defb7c8 WHIRLPOOL a04420c66fd417e5304c92a1ee3c1998f6849bccb9088dae96ed48c06cab0a9b1c012f073aafb1e05aaee46564de9ac89ae07145f3ded35cf47beac78065650a
 DIST QScintilla_gpl-2.9.4.tar.gz 2557199 SHA256 8b3a23023e9f0573caed6f9cee86f898d87b768ee15b8c211a423783a4cfa4e6 SHA512 5a2eebbe523a0f2f1c7bc63ce5ee9cb8793a597d00eea5b638f18f90d6e798e92c281be23ee5e7072d5afced9e1fccb6ae51526a3623d373d57c3db64d026b16 WHIRLPOOL 68aacdcd0fc7102494ccae1f0ea3e222845bdd3f9bef603d89fe50d50dba6ac77471228a84c1c281a46ccf74bdb6902aa3bb21f89388ec5408bdde5876cf8655
diff --git a/x11-libs/qscintilla/qscintilla-2.10.ebuild b/x11-libs/qscintilla/qscintilla-2.10.ebuild
new file mode 100644 (file)
index 0000000..0a2c0de
--- /dev/null
@@ -0,0 +1,100 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit flag-o-matic multibuild qmake-utils
+
+MY_P=QScintilla_gpl-${PV/_pre/.dev}
+
+DESCRIPTION="A Qt port of Neil Hodgson's Scintilla C++ editor class"
+HOMEPAGE="https://www.riverbankcomputing.com/software/qscintilla/intro"
+SRC_URI="mirror://sourceforge/pyqt/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/13"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="designer doc +qt4 qt5"
+
+REQUIRED_USE="|| ( qt4 qt5 )"
+
+DEPEND="
+       qt4? (
+               dev-qt/qtcore:4
+               dev-qt/qtgui:4
+               designer? ( dev-qt/designer:4 )
+       )
+       qt5? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               dev-qt/qtprintsupport:5
+               dev-qt/qtwidgets:5
+               designer? ( dev-qt/designer:5 )
+       )
+"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+       default
+
+       # Sub-slot sanity check
+       local subslot=${SLOT#*/}
+       local version=$(sed -nre 's:.*VERSION\s*=\s*([0-9\.]+):\1:p' "${S}"/Qt4Qt5/qscintilla.pro)
+       local major=${version%%.*}
+       if [[ ${subslot} != ${major} ]]; then
+               eerror
+               eerror "Ebuild sub-slot (${subslot}) does not match QScintilla major version (${major})"
+               eerror "Please update SLOT variable as follows:"
+               eerror "    SLOT=\"${SLOT%%/*}/${major}\""
+               eerror
+               die "sub-slot sanity check failed"
+       fi
+
+       MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) )
+       multibuild_copy_sources
+}
+
+qsci_run_in() {
+       pushd "$1" >/dev/null || die
+       shift || die
+       "$@" || die
+       popd >/dev/null || die
+}
+
+src_configure() {
+       use qt4 && append-cxxflags -std=gnu++0x
+       if use designer; then
+               # prevent building against system version (bug 466120)
+               append-cxxflags -I../Qt4Qt5
+               append-ldflags -L../Qt4Qt5
+       fi
+
+       configure() {
+               qsci_run_in Qt4Qt5 eqmake${MULTIBUILD_VARIANT#qt}
+               use designer && qsci_run_in designer-Qt4Qt5 eqmake${MULTIBUILD_VARIANT#qt}
+       }
+       multibuild_foreach_variant run_in_build_dir configure
+}
+
+src_compile() {
+       compile() {
+               qsci_run_in Qt4Qt5 emake
+               use designer && qsci_run_in designer-Qt4Qt5 emake
+       }
+       multibuild_foreach_variant run_in_build_dir compile
+}
+
+src_install() {
+       install() {
+               qsci_run_in Qt4Qt5 emake INSTALL_ROOT="${D}" install
+               use designer && qsci_run_in designer-Qt4Qt5 emake INSTALL_ROOT="${D}" install
+       }
+       multibuild_foreach_variant run_in_build_dir install
+
+       DOCS=( ChangeLog NEWS )
+       use doc && HTML_DOCS=( doc/html-Qt4Qt5/. )
+       einstalldocs
+}