diff options
Diffstat (limited to 'x11-libs/qscintilla/qscintilla-2.10.ebuild')
-rw-r--r-- | x11-libs/qscintilla/qscintilla-2.10.ebuild | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/x11-libs/qscintilla/qscintilla-2.10.ebuild b/x11-libs/qscintilla/qscintilla-2.10.ebuild new file mode 100644 index 000000000000..0a2c0de126ff --- /dev/null +++ b/x11-libs/qscintilla/qscintilla-2.10.ebuild @@ -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 +} |