diff options
author | Markus Dittrich <markusle@gentoo.org> | 2009-12-19 16:41:31 +0000 |
---|---|---|
committer | Markus Dittrich <markusle@gentoo.org> | 2009-12-19 16:41:31 +0000 |
commit | 1f12aa49270039ae864dd876aeab05269f94b45f (patch) | |
tree | d732eb5d62040a76bc09060c2e381e5657fe20c6 /sci-libs/vtk | |
parent | Stable for HPPA (bug #297306). (diff) | |
download | gentoo-2-1f12aa49270039ae864dd876aeab05269f94b45f.tar.gz gentoo-2-1f12aa49270039ae864dd876aeab05269f94b45f.tar.bz2 gentoo-2-1f12aa49270039ae864dd876aeab05269f94b45f.zip |
New revision uses cmake-utils eclass and is significantly cleaned up. This should have also fixed bugs #295053 and #287591.
(Portage version: 2.1.7.14/cvs/Linux x86_64)
Diffstat (limited to 'sci-libs/vtk')
-rw-r--r-- | sci-libs/vtk/ChangeLog | 9 | ||||
-rw-r--r-- | sci-libs/vtk/vtk-5.4.2-r1.ebuild | 245 |
2 files changed, 253 insertions, 1 deletions
diff --git a/sci-libs/vtk/ChangeLog b/sci-libs/vtk/ChangeLog index fa05005f282f..a649aa03349f 100644 --- a/sci-libs/vtk/ChangeLog +++ b/sci-libs/vtk/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sci-libs/vtk # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/vtk/ChangeLog,v 1.58 2009/12/17 23:43:31 markusle Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-libs/vtk/ChangeLog,v 1.59 2009/12/19 16:41:31 markusle Exp $ + +*vtk-5.4.2-r1 (19 Dec 2009) + + 19 Dec 2009; Markus Dittrich <markusle@gentoo.org> +vtk-5.4.2-r1.ebuild: + New revision uses cmake-utils eclass and is significantly cleaned up. + This should have also fixed bugs #295053 and #287591. + Thanks much to Francois Bissey <f.r.bissey@massey.ac.nz> for his help. 17 Dec 2009; Markus Dittrich <markusle@gentoo.org> vtk-5.4.2.ebuild: Updated dependency on cmake to >=2.6 (fixes bug #295531). diff --git a/sci-libs/vtk/vtk-5.4.2-r1.ebuild b/sci-libs/vtk/vtk-5.4.2-r1.ebuild new file mode 100644 index 000000000000..bca078e3d255 --- /dev/null +++ b/sci-libs/vtk/vtk-5.4.2-r1.ebuild @@ -0,0 +1,245 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/vtk/vtk-5.4.2-r1.ebuild,v 1.1 2009/12/19 16:41:31 markusle Exp $ + +EAPI="2" +inherit eutils flag-o-matic toolchain-funcs versionator java-pkg-opt-2 python qt3 qt4 cmake-utils + +# Short package version +SPV="$(get_version_component_range 1-2)" + +DESCRIPTION="The Visualization Toolkit" +HOMEPAGE="http://www.vtk.org" +SRC_URI="http://www.${PN}.org/files/release/${SPV}/${P}.tar.gz + examples? ( http://www.${PN}.org/files/release/${SPV}/${PN}data-${PV}.tar.gz ) + doc? ( http://www.${PN}.org/doc/release/${SPV}/${PN}DocHtml-${PV}.tar.gz )" + +LICENSE="BSD LGPL-2" +KEYWORDS="~amd64 ~x86" +SLOT="0" +IUSE="boost cg doc examples mpi patented python tcl tk threads qt3 qt4" +RDEPEND="mpi? ( || ( + sys-cluster/openmpi + sys-cluster/lam-mpi + sys-cluster/mpich2[cxx] ) ) + python? ( >=dev-lang/python-2.0 ) + cg? ( media-gfx/nvidia-cg-toolkit ) + tcl? ( >=dev-lang/tcl-8.2.3 ) + tk? ( >=dev-lang/tk-8.2.3 ) + java? ( >=virtual/jre-1.5 ) + !qt4? ( qt3? ( >=x11-libs/qt-3.3.4:3 ) ) + qt4? ( x11-libs/qt-core:4 + x11-libs/qt-opengl:4 + x11-libs/qt-gui:4 ) + examples? ( x11-libs/qt-core:4[qt3support] + x11-libs/qt-gui:4[qt3support] ) + dev-libs/expat + dev-libs/libxml2 + media-libs/freetype + media-libs/jpeg + media-libs/libpng + media-libs/tiff + virtual/opengl + x11-libs/libXmu" + +DEPEND="${RDEPEND} + java? ( >=virtual/jdk-1.5 ) + boost? ( dev-libs/boost ) + >=dev-util/cmake-2.6" + +S="${WORKDIR}"/VTK + +pkg_setup() { + echo + einfo "Please note that the VTK build occasionally fails when" + einfo "using parallel make. Hence, if you experience a build" + einfo "failure please try re-emerging with MAKEOPTS=\"-j1\" first." + echo + epause 5 + + java-pkg-opt-2_pkg_setup + if use qt3 && use qt4; then + echo + ewarn "qt3 and qt4 support for vtk are mutually exclusive and" + ewarn "qt4 support has therefore been enabled by default." + echo + fi + + if use qt4; then + qt4_pkg_setup + fi +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-cg-path.patch + epatch "${FILESDIR}"/${PN}-5.2.0-tcl-install.patch + sed -e "s:@VTK_TCL_LIBRARY_DIR@:/usr/$(get_libdir):" \ + -i Wrapping/Tcl/pkgIndex.tcl.in \ + || die "Failed to fix tcl pkgIndex file" +} + +src_configure() { + # general configuration + local mycmakeargs=" + -Wno-dev + -DVTK_INSTALL_PACKAGE_DIR=/$(get_libdir)/${PN}-${SPV} + -DCMAKE_SKIP_RPATH=YES + -DVTK_DIR=${S} + -DVTK_INSTALL_LIB_DIR=/$(get_libdir)/ + -DVTK_DATA_ROOT:PATH=/usr/share/${PN}/data + -DCMAKE_INSTALL_PREFIX=/usr + -DBUILD_SHARED_LIBS=ON + -DVTK_USE_SYSTEM_FREETYPE=ON + -DVTK_USE_SYSTEM_JPEG=ON + -DVTK_USE_SYSTEM_PNG=ON + -DVTK_USE_SYSTEM_TIFF=ON + -DVTK_USE_SYSTEM_ZLIB=ON + -DVTK_USE_SYSTEM_EXPAT=ON + -DVTK_USE_SYSTEM_LIBXML2=ON + -DBUILD_TESTING=OFF + -DBUILD_EXAMPLES=OFF + -DVTK_USE_HYBRID=ON + -DVTK_USE_GL2PS=ON + -DVTK_USE_RENDERING=ON" + + # use flag triggered options + mycmakeargs="${mycmakeargs} + $(cmake-utils_use boost VTK_USE_BOOST) + $(cmake-utils_use cg VTK_USE_CG_SHADERS) + $(cmake-utils_use tcl VTK_WRAP_TCL) + $(cmake-utils_use tk VTK_USE_TK) + $(cmake-utils_use threads VTK_USE_PARALLEL) + $(cmake-utils_use patented VTK_USE_PATENTED) + $(cmake-utils_use doc DOCUMENTATION_HTML_HELP) + $(cmake-utils_use_build doc DOCUMENTATION) + $(cmake-utils_use mpi VTK_USE_MPI)" + + # mpi needs the parallel framework + if use mpi && use !threads; then + mycmakeargs="${mycmakeargs} + -DVTK_USE_PARALLEL=ON" + fi + + if use java; then + mycmakeargs="${mycmakeargs} + -DVTK_WRAP_JAVA=ON + -DJAVA_AWT_INCLUDE_PATH=`java-config -O`/include + -DJAVA_INCLUDE_PATH:PATH=`java-config -O`/include + -DJAVA_INCLUDE_PATH2:PATH=`java-config -O`/include/linux" + + if [ "${ARCH}" == "amd64" ]; then + mycmakeargs="${mycmakeargs} + -DJAVA_AWT_LIBRARY=`java-config -O`/jre/lib/${ARCH}/libjawt.so" + else + mycmakeargs="${mycmakeargs} + -DJAVA_AWT_LIBRARY:PATH=`java-config -O`/jre/lib/i386/libjawt.so" + fi + fi + + if use python; then + python_version + mycmakeargs="${mycmakeargs} + -DVTK_WRAP_PYTHON=ON + -DPYTHON_INCLUDE_PATH=/usr/include/python${PYVER} + -DPYTHON_LIBRARY=/usr/$(get_libdir)/libpython${PYVER}.so + -DVTK_PYTHON_SETUP_ARGS:STRING=--root=${D}" + fi + + if use qt3 || use qt4 ; then + mycmakeargs="${mycmakeargs} + -DVTK_USE_GUISUPPORT=ON + -DVTK_USE_QVTK=ON + -DVTK_USE_QVTK_QTOPENGL=ON + -DQT_WRAP_CPP=ON + -DQT_WRAP_UI=ON" + fi + + # these options we only enable if the use request qt3 + # only. In case of qt3 && qt4 or qt4 only qt4 always + # overrides qt3 + if use qt3 && use !qt4; then + mycmakeargs="${mycmakeargs} + -DVTK_INSTALL_QT_DIR=/qt/3/plugins/${PN} + -DDESIRED_QT_VERSION=3 + -DQT_MOC_EXECUTABLE=/usr/qt/3/bin/moc + -DQT_UIC_EXECUTABLE=/usr/qt/3/bin/uic + -DQT_INCLUDE_DIR=/usr/qt/3/include + -DQT_QT_LIBRARY=/usr/qt/3/$(get_libdir)/libqt.so + -DQT_QMAKE_EXECUTABLE=/usr/qt/3/bin/qmake" + fi + + if use qt4; then + mycmakeargs="${mycmakeargs} + -DVTK_INSTALL_QT_DIR=/$(get_libdir)/qt4/plugins/${PN} + -DDESIRED_QT_VERSION=4 + -DQT_MOC_EXECUTABLE=/usr/bin/moc + -DQT_UIC_EXECUTABLE=/usr/bin/uic + -DQT_INCLUDE_DIR=/usr/include/qt4 + -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake" + fi + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + # install docs + dohtml "${S}"/README.html || die "Failed to install docs" + + # install Tcl docs + docinto vtk_tcl + dodoc "${S}"/Wrapping/Tcl/README || \ + die "Failed to install Tcl docs" + + # install examples + if use examples; then + dodir /usr/share/${PN} || \ + die "Failed to create data/examples directory" + + cp -pPR "${S}"/Examples "${D}"/usr/share/${PN}/examples || \ + die "Failed to copy example files" + + # fix example's permissions + find "${D}"/usr/share/${PN}/examples -type d -exec \ + chmod 0755 {} \; || \ + die "Failed to fix example directories permissions" + find "${D}"/usr/share/${PN}/examples -type f -exec \ + chmod 0644 {} \; || \ + die "Failed to fix example files permissions" + + cp -pPR "${WORKDIR}"/VTKData "${D}"/usr/share/${PN}/data || \ + die "Failed to copy data files" + + # fix data's permissions + find "${D}"/usr/share/${PN}/data -type d -exec \ + chmod 0755 {} \; || \ + die "Failed to fix data directories permissions" + find "${D}"/usr/share/${PN}/data -type f -exec \ + chmod 0644 {} \; || \ + die "Failed to fix data files permissions" + fi + + #install big docs + if use doc; then + cd "${WORKDIR}"/html + rm -f *.md5 || die "Failed to remove superfluous hashes" + einfo "Installing API docs. This may take some time." + insinto "/usr/share/doc/${PF}/api-docs" + doins -r ./* || die "Failed to install docs" + fi + + # environment + echo "VTK_DATA_ROOT=/usr/share/${PN}/data" >> "${T}"/40${PN} + echo "VTK_DIR=/usr/$(get_libdir)/${PN}-${SPV}" >> "${T}"/40${PN} + echo "VTKHOME=/usr" >> "${T}"/40${PN} + doenvd "${T}"/40${PN} +} + +pkg_postinst() { + if use patented; then + ewarn "Using patented code in VTK may require a license." + ewarn "For more information, please read:" + ewarn "http://public.kitware.com/cgi-bin/vtkfaq?req=show&file=faq07.005.htp" + fi +} |