jlec        15/01/28 13:31:17

  Modified:             ChangeLog
  Added:                qwt-6.1.2-r1.ebuild
  Log:
  x11-libs/qwt: Add qt5 support #517866, thanks Eugene Shalygin for the ebuild
  
  (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 
B9D4F231BD1558AB!)

Revision  Changes    Path
1.138                x11-libs/qwt/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/qwt/ChangeLog?rev=1.138&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/qwt/ChangeLog?rev=1.138&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/qwt/ChangeLog?r1=1.137&r2=1.138

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/x11-libs/qwt/ChangeLog,v
retrieving revision 1.137
retrieving revision 1.138
diff -u -r1.137 -r1.138
--- ChangeLog   15 Jan 2015 20:09:17 -0000      1.137
+++ ChangeLog   28 Jan 2015 13:31:17 -0000      1.138
@@ -1,6 +1,11 @@
 # ChangeLog for x11-libs/qwt
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/qwt/ChangeLog,v 1.137 2015/01/15 
20:09:17 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/qwt/ChangeLog,v 1.138 2015/01/28 
13:31:17 jlec Exp $
+
+*qwt-6.1.2-r1 (28 Jan 2015)
+
+  28 Jan 2015; Justin Lecher <j...@gentoo.org> +qwt-6.1.2-r1.ebuild:
+  Add qt5 support #517866, thanks Eugene Shalygin for the ebuild
 
   15 Jan 2015; Justin Lecher <j...@gentoo.org> qwt-6.1.2.ebuild:
   Add missing dep on dev-qt/qtopengl, #536642



1.1                  x11-libs/qwt/qwt-6.1.2-r1.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/qwt/qwt-6.1.2-r1.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/qwt/qwt-6.1.2-r1.ebuild?rev=1.1&content-type=text/plain

Index: qwt-6.1.2-r1.ebuild
===================================================================
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/x11-libs/qwt/qwt-6.1.2-r1.ebuild,v 1.1 
2015/01/28 13:31:17 jlec Exp $

EAPI=5

inherit eutils multibuild multilib qmake-utils

MY_P="${PN}-${PV/_/-}"

DESCRIPTION="2D plotting library for Qt4"
HOMEPAGE="http://qwt.sourceforge.net/";
SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV/_/-}/${MY_P}.tar.bz2"

LICENSE="qwt mathml? ( LGPL-2.1 Nokia-Qt-LGPL-Exception-1.1 )"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux 
~x86-linux ~x86-macos"
SLOT="6"
IUSE="doc examples mathml opengl qt4 qt5 static-libs svg"

DEPEND="
        !<x11-libs/qwt-5.2.3
        qt4? (
                dev-qt/designer:4
                dev-qt/qtcore:4
                dev-qt/qtgui:4
                opengl? ( dev-qt/qtopengl:4 )
                svg? ( dev-qt/qtsvg:4 )
        )
        qt5? (
                dev-qt/designer:5
                dev-qt/qtcore:5
                dev-qt/qtgui:5
                dev-qt/qtconcurrent:5
                dev-qt/qtwidgets:5
                opengl? ( dev-qt/qtopengl:5 )
                svg? ( dev-qt/qtsvg:5 )
        )
        doc? ( !<media-libs/coin-3.1.3[doc] )
        opengl? ( virtual/opengl )
        "
RDEPEND="${DEPEND}"

S="${WORKDIR}"/${MY_P}

DOCS="README"

PATCHES=(
        "${FILESDIR}"/${PN}-6.0.2-invalid-read.patch
        "${FILESDIR}"/${PN}-6.1.1-pc-destdir.patch
        )

src_prepare() {
        cat > qwtconfig.pri <<-EOF
                QWT_INSTALL_LIBS = "${EPREFIX}/usr/$(get_libdir)"
                QWT_INSTALL_HEADERS = "${EPREFIX}/usr/include/qwt6"
                QWT_INSTALL_DOCS = "${EPREFIX}/usr/share/doc/${PF}"
                QWT_CONFIG += QwtPlot QwtWidgets QwtDesigner QwtPkgConfig
                VERSION = ${PV/_*}
                QWT_VERSION = ${PV/_*}
        EOF

        use mathml && echo "QWT_CONFIG += QwtMathML" >> qwtconfig.pri
        use opengl && echo "QWT_CONFIG += QwtOpenGL" >> qwtconfig.pri
        use svg && echo "QWT_CONFIG += QwtSvg" >> qwtconfig.pri

        cat > qwtbuild.pri <<-EOF
                QWT_CONFIG += qt warn_on thread release no_keywords
        EOF

        MULTIBUILD_VARIANTS=( )

        if use qt4; then
                use static-libs && MULTIBUILD_VARIANTS+=( qt4-static )
                MULTIBUILD_VARIANTS+=( qt4-shared )
        fi

        if use qt5; then
                use static-libs && MULTIBUILD_VARIANTS+=( qt5-static )
                MULTIBUILD_VARIANTS+=( qt5-shared )
        fi

        multibuild_copy_sources

        preparation() {
                if [[ ${MULTIBUILD_VARIANT} == *-shared ]]; then
                        echo "QWT_CONFIG += QwtDll" >> qwtconfig.pri
                fi

                case "${MULTIBUILD_VARIANT}" in
                        qt4-*)
                                cat >> qwtconfig.pri <<-EOF
                                        QWT_INSTALL_PLUGINS   = 
"${EPREFIX}/usr/$(get_libdir)/qt4/plugins/designer"
                                        QWT_INSTALL_FEATURES  = 
"${EPREFIX}/usr/share/qt4/mkspecs/features"
                                EOF
                                sed \
                                        -e 's/target doc/target/' \
                                        -e "/^TARGET/s:(qwt):(qwt6-qt4):g" \
                                        -e "/^TARGET/s:qwt):qwt6-qt4):g" \
                                        -i src/src.pro || die

                                sed \
                                        -e 
'/qwtAddLibrary/s:(qwt):(qwt6-qt4):g' \
                                        -e '/qwtAddLibrary/s:qwt):qwt6-qt4):g' \
                                        -i qwt.prf designer/designer.pro 
examples/examples.pri \
                                        textengines/mathml/qwtmathml.prf 
textengines/textengines.pri || die

                        ;;
                        qt5-*)
                                cat >> qwtconfig.pri <<-EOF
                                        QWT_INSTALL_PLUGINS   = 
"${EPREFIX}/usr/$(get_libdir)/qt5/plugins/designer"
                                        QWT_INSTALL_FEATURES  = 
"${EPREFIX}/usr/share/qt5/mkspecs/features"
                                EOF
                                sed \
                                        -e 's/target doc/target/' \
                                        -e "/^TARGET/s:(qwt):(qwt6-qt5):g" \
                                        -e "/^TARGET/s:qwt):qwt6-qt5):g" \
                                        -i src/src.pro || die

                                sed \
                                        -e 
'/qwtAddLibrary/s:(qwt):(qwt6-qt5):g' \
                                        -e '/qwtAddLibrary/s:qwt):qwt6-qt5):g' \
                                        -i qwt.prf designer/designer.pro 
examples/examples.pri \
                                        textengines/mathml/qwtmathml.prf 
textengines/textengines.pri || die
                        ;;
                esac
                epatch "${PATCHES[@]}"
        }

        multibuild_foreach_variant run_in_build_dir preparation
}

src_configure() {
        configuration() {
                case "${MULTIBUILD_VARIANT}" in
                        qt4-*)
                                eqmake4
                                ;;
                        qt5-*)
                                eqmake5
                                ;;
                esac
        }
        multibuild_parallel_foreach_variant run_in_build_dir configuration
}

src_compile() {
        multibuild_foreach_variant run_in_build_dir default
}

src_test() {
        testing() {
                cd examples || die
                case "${MULTIBUILD_VARIANT}" in
                        qt4-*)
                                eqmake4 examples.pro
                                ;;
                        qt5-*)
                                eqmake5 examples.pro
                                ;;
                esac
                emake
        }
        multibuild_foreach_variant run_in_build_dir testing
}

src_install () {
        rm -f doc/man/*/{_,deprecated}* || die

        multibuild_foreach_variant run_in_build_dir emake INSTALL_ROOT="${D}" 
install

        if use qt4; then
                mv "${ED}"/usr/$(get_libdir)/pkgconfig/qwt6{-qt4,}.pc || die
        fi

        if use mathml; then
                sed \
                        -e "s: -L${WORKDIR}.* -lqwt6: -lqwt6:g" \
                        -i "${ED}"/usr/$(get_libdir)/pkgconfig/qwtmathml.pc || 
die
        fi

        use doc && dohtml -r doc/html/*

        if use examples; then
                # don't build examples - fix the qt files to build once 
installed
                cat > examples/examples.pri <<-EOF
                        include( qwtconfig.pri )
                        TEMPLATE     = app
                        MOC_DIR      = moc
                        INCLUDEPATH += "${EPREFIX}/usr/include/qwt6"
                        DEPENDPATH  += "${EPREFIX}/usr/include/qwt6"
                        LIBS        += -lqwt6
                EOF
                sed -i -e 's:../qwtconfig:qwtconfig:' examples/examples.pro || 
die
                cp *.pri examples/ || die
                insinto /usr/share/${PN}6
                doins -r examples
        fi
}




Reply via email to