diff options
author | David Seifert <soap@gentoo.org> | 2017-02-18 20:09:44 +0100 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2017-02-18 20:10:08 +0100 |
commit | 51fd4fb2277b7117039a9572f242dd39ffd322cb (patch) | |
tree | 0c01ec2ac166bd8165bf6a7418c28e842211b5c8 | |
parent | dev-python/jupyter_console: Fix doc building (diff) | |
download | gentoo-51fd4fb2277b7117039a9572f242dd39ffd322cb.tar.gz gentoo-51fd4fb2277b7117039a9572f242dd39ffd322cb.tar.bz2 gentoo-51fd4fb2277b7117039a9572f242dd39ffd322cb.zip |
sci-libs/plplot: Version bump to 5.12.0
Bug: https://bugs.gentoo.org/show_bug.cgi?id=529382
Bug: https://bugs.gentoo.org/show_bug.cgi?id=554156
Bug: https://bugs.gentoo.org/show_bug.cgi?id=585114
Package-Manager: Portage-2.3.3, Repoman-2.3.1
-rw-r--r-- | sci-libs/plplot/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/plplot/files/plplot-5.12.0-java-install-path.patch | 13 | ||||
-rw-r--r-- | sci-libs/plplot/files/plplot-5.12.0-multiarch.patch | 49 | ||||
-rw-r--r-- | sci-libs/plplot/plplot-5.12.0.ebuild | 269 |
4 files changed, 332 insertions, 0 deletions
diff --git a/sci-libs/plplot/Manifest b/sci-libs/plplot/Manifest index f31d3e9684cb..e94655ac8ece 100644 --- a/sci-libs/plplot/Manifest +++ b/sci-libs/plplot/Manifest @@ -1 +1,2 @@ DIST plplot-5.11.1.tar.gz 15445404 SHA256 289dff828c440121e57b70538b3f0fb4056dc47159bc1819ea444321f2ff1c4c SHA512 663da681a2e1ab2cb551e028485a55dfa111d8828187e84a50f5605c3346288ebd07a0e20ff4c50f00efc4f52be84bc100602de42e5713868ad32fdb431b80fd WHIRLPOOL 21e11c496b89060d00c9b0e513a0fb4833713f021d1fa63ea9210198713324e6efc3a1a28a218a75acd1fa5752ee4058465575481c27cfaec1cb91c52db40864 +DIST plplot-5.12.0.tar.gz 16253895 SHA256 8dc5da5ef80e4e19993d4c3ef2a84a24cc0e44a5dade83201fca7160a6d352ce SHA512 5566b9db0ddbb5ecaa677168f65f240197b2b8b23a02a812efc7e97fc79686b523591edad9c83de2e72935090d426b4cb9fe82496d9eb5a5a521c42161e9848b WHIRLPOOL ef50a5974d6e5043cf225e840021517bd13b9c3ae8680f8f4f808c9e641f5593d2faab6e0825a93e884c42509dc7a9b77655b2da7e793991e9384ccf0bf00ecb diff --git a/sci-libs/plplot/files/plplot-5.12.0-java-install-path.patch b/sci-libs/plplot/files/plplot-5.12.0-java-install-path.patch new file mode 100644 index 000000000000..2c053a2b1669 --- /dev/null +++ b/sci-libs/plplot/files/plplot-5.12.0-java-install-path.patch @@ -0,0 +1,13 @@ +Java libs are installed into an already prefixed path. + +--- a/bindings/java/CMakeLists.txt ++++ b/bindings/java/CMakeLists.txt +@@ -189,7 +189,7 @@ + ) + endif(APPLE) + +- install(TARGETS plplotjavac_wrap LIBRARY DESTINATION ${JAVAWRAPPER_HARDDIR}) ++ install(TARGETS plplotjavac_wrap LIBRARY DESTINATION ${JAVAWRAPPER_DIR}) + + set(JAVA_CLASSES) + foreach( srcfile ${JAVA_FILES_FULL} ) diff --git a/sci-libs/plplot/files/plplot-5.12.0-multiarch.patch b/sci-libs/plplot/files/plplot-5.12.0-multiarch.patch new file mode 100644 index 000000000000..63e92f5aa5ab --- /dev/null +++ b/sci-libs/plplot/files/plplot-5.12.0-multiarch.patch @@ -0,0 +1,49 @@ +--- a/examples/c/Makefile.examples.in ++++ b/examples/c/Makefile.examples.in +@@ -25,9 +25,6 @@ + CC = @CC@ + EXEEXT = @EXEEXT@ + +-PKG_CONFIG_ENV = @PKG_CONFIG_ENV@ +-RPATHCMD = @RPATHCMD@ +- + @extXdrawable_true@extXdrawable_EXECUTABLES_list = \ + @extXdrawable_true@ extXdrawable_demo$(EXEEXT) + +--- a/examples/c++/Makefile.examples.in ++++ b/examples/c++/Makefile.examples.in +@@ -25,10 +25,7 @@ + CXX = @CXX@ + EXEEXT = @EXEEXT@ + +-PKG_CONFIG_ENV = @PKG_CONFIG_ENV@ +-RPATHCMD = @RPATHCMD@ + @qt_gui_true@QT_MOC_EXECUTABLE = @QT_MOC_EXECUTABLE@ +-@qt_gui_true@qt_RPATHCMD = @qt_RPATHCMD@ + + @wxwidgets_true@PLPLOTWXWIDGETS_EXECUTABLES_list = \ + @wxwidgets_true@ @wxdemo_name@$(EXEEXT) +--- a/examples/f95/Makefile.examples.in ++++ b/examples/f95/Makefile.examples.in +@@ -25,9 +25,6 @@ + F95 = @FC@ + EXEEXT = @EXEEXT@ + +-PKG_CONFIG_ENV = @PKG_CONFIG_ENV@ +-FORTRAN_RPATHCMD = @FORTRAN_RPATHCMD@ +- + EXECUTABLES_list = \ + x00f$(EXEEXT) \ + x01f$(EXEEXT) \ +--- a/examples/tk/Makefile.examples.in ++++ b/examples/tk/Makefile.examples.in +@@ -24,9 +24,6 @@ + CC = @CC@ + EXEEXT = @EXEEXT@ + +-PKG_CONFIG_ENV = @PKG_CONFIG_ENV@ +-plplottcltk_Main_RPATHCMD = @plplottcltk_Main_RPATHCMD@ +- + EXECUTABLES_list = xtk01$(EXEEXT) + # Second and fourth examples depend on itk. + @itk_true@itk_EXECUTABLES_list = xtk02$(EXEEXT) xtk04$(EXEEXT) diff --git a/sci-libs/plplot/plplot-5.12.0.ebuild b/sci-libs/plplot/plplot-5.12.0.ebuild new file mode 100644 index 000000000000..5bf49807a6d8 --- /dev/null +++ b/sci-libs/plplot/plplot-5.12.0.ebuild @@ -0,0 +1,269 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +WX_GTK_VER=3.0-gtk3 +FORTRAN_NEEDED=fortran +FORTRAN_STANDARD=95 +PYTHON_COMPAT=( python2_7 ) + +inherit cmake-utils fortran-2 java-pkg-opt-2 python-single-r1 toolchain-funcs virtualx wxwidgets + +DESCRIPTION="Multi-language scientific plotting library" +HOMEPAGE="http://plplot.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2" +SLOT="0/14" # SONAME of libplplot.so +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="cairo cxx doc +dynamic examples fortran gd java jpeg latex lua octave pdf + pdl png python qhull qt5 shapefile svg tcl test threads tk truetype wxwidgets X" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) qt5? ( dynamic ) test? ( latex ) tk? ( tcl )" +RESTRICT="octave? ( test )" + +RDEPEND=" + cairo? ( x11-libs/cairo:0=[svg?,X] ) + gd? ( media-libs/gd:2=[jpeg?,png?] ) + java? ( >=virtual/jre-1.5:* ) + latex? ( + app-text/ghostscript-gpl + virtual/latex-base + ) + lua? ( dev-lang/lua:0= ) + octave? ( sci-mathematics/octave:0= ) + pdf? ( media-libs/libharu:0= ) + pdl? ( + dev-perl/PDL + dev-perl/XML-DOM + ) + python? ( + ${PYTHON_DEPS} + dev-python/numpy[${PYTHON_USEDEP}] + qt5? ( dev-python/PyQt5[${PYTHON_USEDEP}] ) + ) + qhull? ( media-libs/qhull:0= ) + qt5? ( + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtprintsupport + ) + shapefile? ( sci-libs/shapelib:0= ) + tcl? ( + dev-lang/tcl:0= + dev-tcltk/itcl:0= + tk? ( + dev-lang/tk:0= + dev-tcltk/itk + ) + ) + truetype? ( + media-fonts/freefont + media-libs/lasi:0= + gd? ( media-libs/gd:2=[truetype] ) + ) + wxwidgets? ( + x11-libs/wxGTK:${WX_GTK_VER}=[X] + x11-libs/agg:0=[truetype?] + ) + X? ( + x11-libs/libX11:0= + x11-libs/libXau:0= + x11-libs/libXdmcp:0= + )" + +DEPEND="${RDEPEND} + virtual/pkgconfig + java? ( + >=virtual/jdk-1.5 + dev-lang/swig + ) + octave? ( >=dev-lang/swig-3.0.12 ) + python? ( dev-lang/swig ) + test? ( + media-fonts/font-misc-misc + media-fonts/font-cursor-misc + )" + +PATCHES=( + "${FILESDIR}"/${PN}-5.9.6-python.patch + "${FILESDIR}"/${PN}-5.11.0-octave.patch + "${FILESDIR}"/${PN}-5.12.0-multiarch.patch + "${FILESDIR}"/${PN}-5.12.0-java-install-path.patch +) + +pkg_setup() { + use python && python-single-r1_pkg_setup + use java && java-pkg-opt-2_pkg_setup + use fortran && fortran-2_pkg_setup +} + +src_prepare() { + use wxwidgets && need-wxwidgets unicode + cmake-utils_src_prepare + + # avoid installing license + sed -i -e '/COPYING.LIB/d' CMakeLists.txt || die + + # prexify hard-coded /usr/include in cmake modules + sed -i \ + -e "s:/usr/include:${EPREFIX}/usr/include:g" \ + -e "s:/usr/lib:${EPREFIX}/usr/$(get_libdir):g" \ + -e "s:/usr/share:${EPREFIX}/usr/share:g" \ + cmake/modules/*.cmake || die + + # change default install directories for doc and examples + local f + while IFS="" read -d $'\0' -r f; do + sed -i -e 's:${DATA_DIR}/examples:${DOC_DIR}/examples:g' "${f}" || die + done < <(find "${S}" -name CMakeLists.txt -print0) + + sed -i \ + -e 's:${VERSION}::g' \ + -e "s:doc/\${PACKAGE}:doc/${PF}:" \ + cmake/modules/instdirs.cmake || die + + java-utils-2_src_prepare +} + +src_configure() { + # - don't build doc, it pulls in a whole stack of horrible dependencies + # - Bindings: + # * Ada is a mess in Gentoo, don't use + # * D has been removed from Gentoo, don't use + # * OCaml is a general disaster and randomly inserts RPATH + # on the basis of absolute -L linker paths: + # https://caml.inria.fr/mantis/view.php?id=5943 + # * Qt4 has been disabled, as it is deprecated and unsupported upstream + # - DPLD_* drivers need to use ON/OFF instead of the usex defaults yes/no, as + # the testsuite performs a string comparison to determine which tests to run + local mycmakeargs=( + ## Features + -DBUILD_DOC=OFF + -DBUILD_DOX_DOC=OFF + -DUSE_RPATH=OFF + -DCMAKE_SKIP_INSTALL_RPATH=ON + -DPREBUILT_DOC=$(usex doc) + -DHAVE_SHAPELIB=$(usex shapefile) + -DWITH_FREETYPE=$(usex truetype) + -DPL_HAVE_PTHREAD=$(usex threads) + -DPL_HAVE_QHULL=$(usex qhull) + -DPLPLOT_USE_QT5=$(usex qt5) + + ## Tests + -DTEST_DYNDRIVERS=OFF + -DBUILD_TEST=$(usex test) + + ## Bindings + -DENABLE_ada=OFF + -DENABLE_d=OFF + -DENABLE_ocaml=OFF + -DENABLE_pyqt4=OFF + -DENABLE_cxx=$(usex cxx) + -DENABLE_DYNDRIVERS=$(usex dynamic) + -DENABLE_f95=$(usex fortran) + -DENABLE_java=$(usex java) + -DENABLE_lua=$(usex lua) + -DTRY_OCTAVE4=$(usex octave) + -DENABLE_octave=$(usex octave) + -DENABLE_pdl=$(usex pdl) + -DENABLE_python=$(usex python) + -DENABLE_qt=$(usex qt5) + -DENABLE_tcl=$(usex tcl) + -DENABLE_itcl=$(usex tcl) + -DENABLE_tk=$(usex tk) + -DENABLE_itk=$(usex tk) + -DENABLE_wxwidgets=$(usex wxwidgets) + + ## Drivers + -DPLD_cgm=OFF + -DPLD_gif=OFF + -DPLD_jpeg=OFF + -DPLD_plmeta=OFF + -DPLD_png=OFF + -DPLD_pstex=OFF + -DPLD_wxpng=OFF + -DPLD_mem=ON + -DPLD_null=ON + -DPLD_wingcc=ON + # Cairo + $(usex cairo "" "-DDEFAULT_NO_CAIRO_DEVICES=ON") + -DPLD_epscairo=$(usex cairo ON OFF) + -DPLD_extcairo=$(usex cairo ON OFF) + -DPLD_memcairo=$(usex cairo ON OFF) + -DPLD_pdfcairo=$(usex cairo ON OFF) + -DPLD_pngcairo=$(usex cairo ON OFF) + -DPLD_pscairo=$(usex cairo ON OFF) + -DPLD_svgcairo=$(usex cairo ON OFF) + -DPLD_xcairo=$(usex cairo ON OFF) + # LaTeX + -DPLD_ps=$(usex latex ON OFF) + # PDF + -DPLD_pdf=$(usex pdf ON OFF) + # Qt + -DPLD_aqt=$(usex qt5 ON OFF) + -DPLD_bmpqt=$(usex qt5 ON OFF) + -DPLD_epsqt=$(usex qt5 ON OFF) + -DPLD_extqt=$(usex qt5 ON OFF) + -DPLD_jpgqt=$(usex qt5 ON OFF) + -DPLD_memqt=$(usex qt5 ON OFF) + -DPLD_pdfqt=$(usex qt5 ON OFF) + -DPLD_pngqt=$(usex qt5 ON OFF) + -DPLD_ppmqt=$(usex qt5 ON OFF) + -DPLD_qtwidget=$(usex qt5 ON OFF) + -DPLD_svgqt=$(usex qt5 ON OFF) + -DPLD_tiffqt=$(usex qt5 ON OFF) + # SVG + -DPLD_svg=$(usex svg ON OFF) + # Tk + -DPLD_ntk=$(usex tk ON OFF) + -DPLD_tk=$(usex tk ON OFF) + -DPLD_tkwin=$(usex tk ON OFF) + # Truetype + -DPLD_psttf=$(usex truetype ON OFF) + # Wx + -DPLD_wxwidgets=$(usex wxwidgets ON OFF) + # X + -DPLD_xfig=$(usex X ON OFF) + -DPLD_xwin=$(usex X ON OFF) + ) + + use truetype && mycmakeargs+=( + -DPL_FREETYPE_FONT_PATH="${EPREFIX}"/usr/share/fonts/freefont + ) + use shapefile && mycmakeargs+=( + -DSHAPELIB_INCLUDE_DIR="${EPREFIX}"/usr/include/libshp + ) + use python && mycmakeargs+=( + -DENABLE_pyqt5=$(usex qt5) + ) + + cmake-utils_src_configure + + # clean up bloated pkg-config files (help linking properly on prefix) + sed -i \ + -e "/Cflags/s:-I\(${EPREFIX}\|\)/usr/include[[:space:]]::g" \ + -e "/Libs/s:-L\(${EPREFIX}\|\)/usr/lib\(64\|\)[[:space:]]::g" \ + -e "s:${LDFLAGS}::g" \ + "${BUILD_DIR}"/pkgcfg/*pc || die +} + +src_test() { + virtx cmake-utils_src_test +} + +src_install() { + cmake-utils_src_install + + if use examples; then + docompress -x /usr/share/doc/${PF}/examples + else + rm -r "${ED%/}"/usr/share/doc/${PF}/examples || die + fi + + if use java; then + java-pkg_dojar "${BUILD_DIR}"/examples/java/${PN}.jar + java-pkg_regso /usr/$(get_libdir)/jni/plplotjavac_wrap.so + fi +} |