| # Copyright 1999-2012 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI=4 |
| |
| inherit eutils fortran-2 flag-o-matic multilib toolchain-funcs versionator prefix |
| |
| MY_PN="Raster3D" |
| MY_PV=$(replace_version_separator 2 -) |
| MY_P="${MY_PN}_${MY_PV}" |
| |
| DESCRIPTION="Generation high quality raster images of proteins or other molecules" |
| HOMEPAGE="http://www.bmsc.washington.edu/raster3d/raster3d.html" |
| SRC_URI="http://www.bmsc.washington.edu/${PN}/${MY_P}.tar.gz -> ${MY_P}.tar" |
| |
| LICENSE="Artistic-2" |
| SLOT="0" |
| KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux" |
| IUSE="gd tiff" |
| |
| RDEPEND=" |
| tiff? ( media-libs/tiff:0 ) |
| gd? ( media-libs/gd[jpeg,png] )" |
| DEPEND="${RDEPEND}" |
| |
| S="${WORKDIR}/${MY_P}" |
| |
| src_prepare() { |
| epatch \ |
| "${FILESDIR}"/${PV}-as-needed.patch \ |
| "${FILESDIR}"/${PV}-gentoo-prefix.patch |
| |
| sed \ |
| -e "s:MYPF:${PF}:" \ |
| -e "s:MYLIB:$(get_libdir):g" \ |
| -i Makefile.template || \ |
| die "Failed to patch makefile.template" |
| |
| if ! use gd; then |
| sed \ |
| -e "/GDLIBS/s:^:#:g" \ |
| -e "/GDDEFS/s:^:#:g" \ |
| -i Makefile.template || die |
| fi |
| |
| if ! use tiff; then |
| sed \ |
| -e "/TLIBS/s:^:#:g" \ |
| -e "/TDEFS/s:^:#:g" \ |
| -i Makefile.template || die |
| fi |
| |
| if [[ $(tc-getFC) =~ gfortran ]]; then |
| append-cflags -Dgfortran |
| fi |
| |
| append-fflags -ffixed-line-length-132 |
| |
| eprefixify Makefile.template |
| cp Makefile.template Makefile.incl || die |
| } |
| |
| src_compile() { |
| local target |
| local i |
| |
| if [[ $(tc-getFC) =~ gfortran ]]; then |
| target="linux" |
| else |
| target="linux-$(tc-getFC)" |
| fi |
| |
| for i in render.o ${target} all; do |
| emake \ |
| CFLAGS="${CFLAGS}" \ |
| LDFLAGS="${LDFLAGS}" \ |
| FFLAGS="${FFLAGS}" \ |
| CC="$(tc-getCC)"\ |
| FC="$(tc-getFC)" \ |
| INCDIRS="-I${EPREFIX}/usr/include" \ |
| LIBDIRS="-L${EPREFIX}/usr/$(get_libdir)" \ |
| ${i} |
| done |
| } |
| |
| src_install() { |
| emake prefix="${ED}"/usr \ |
| bindir="${ED}"/usr/bin \ |
| datadir="${ED}"/usr/share/Raster3D/materials \ |
| mandir="${ED}"/usr/share/man/man1 \ |
| htmldir="${ED}"/usr/share/doc/${PF}/html \ |
| examdir="${ED}"/usr/share/Raster3D/examples \ |
| install |
| |
| dodir /etc/env.d |
| echo -e "R3D_LIB=${EPREFIX}/usr/share/${NAME}/materials" > \ |
| "${ED}"/etc/env.d/10raster3d || \ |
| die "Failed to install env file." |
| } |
| |
| pkg_postinst() { |
| elog "Add following line:" |
| elog "<delegate decode=\"r3d\" command='\"render\" < \"%i\" > \"%o\"' />" |
| elog "to ${EPREFIX}/usr/$(get_libdir)/ImageMagick-6.5.8/config/delegates.xml" |
| elog "to make imagemagick use raster3d for .r3d files" |
| } |