summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-chemistry/ccp4/ccp4-6.0.1.ebuild')
-rw-r--r--sci-chemistry/ccp4/ccp4-6.0.1.ebuild432
1 files changed, 0 insertions, 432 deletions
diff --git a/sci-chemistry/ccp4/ccp4-6.0.1.ebuild b/sci-chemistry/ccp4/ccp4-6.0.1.ebuild
deleted file mode 100644
index d3a1e56b5431..000000000000
--- a/sci-chemistry/ccp4/ccp4-6.0.1.ebuild
+++ /dev/null
@@ -1,432 +0,0 @@
-# Copyright 1999-2006 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/ccp4/ccp4-6.0.1.ebuild,v 1.1 2006/06/16 20:46:02 spyderous Exp $
-
-inherit fortran eutils gnuconfig toolchain-funcs
-
-FORTRAN="g77 gfortran ifc"
-
-SRC="ftp://ftp.ccp4.ac.uk/ccp4"
-
-PATCH_TOT="0"
-#PATCH1=( src
-# anisoanl.f-r1.22-r1.24.diff )
-#PATCH2=( src/sc_
-# sc.f-r1.9-r1.9.2.1.diff )
-#PATCH3=( src/sc_
-# setup.fh-r1.5-r1.5.2.1.diff )
-
-DESCRIPTION="Protein X-ray crystallography toolkit"
-HOMEPAGE="http://www.ccp4.ac.uk/"
-RESTRICT="mirror stricter"
-SRC_URI="${SRC}/${PV}/packed/${P}-core-src.tar.gz"
-# ${SRC}/${PV}/patches/${PATCH1[1]}
-# ${SRC}/${PV}/patches/${PATCH2[1]}
-# ${SRC}/${PV}/patches/${PATCH3[1]}"
-LICENSE="ccp4"
-SLOT="0"
-KEYWORDS="~ppc ~x86"
-IUSE="X"
-# app-office/sc overlaps sc binary and man page
-# We can't rename ours since the automated ccp4i interface expects it there,
-# as do many scripts. app-office/sc can't rename its because that's the name
-# of the package.
-RDEPEND="X? (
- || (
- (
- x11-libs/libX11
- x11-libs/libXt
- x11-libs/libXaw
- )
- virtual/x11
- )
- )
- >=dev-lang/tcl-8.3
- >=dev-lang/tk-8.3
- >=dev-tcltk/blt-2.4
- virtual/lapack
- virtual/blas
- =sci-libs/fftw-2*
- sci-chemistry/pdb-extract
- sci-chemistry/rasmol
- sci-libs/mccp4
- || ( app-shells/tcsh app-shells/csh )
- !app-office/sc"
-# >=sys-apps/portage-2.1.1_pre1 for RESTRICT=stricter
-# Otherwise portage dies instead of fixing RPATHs
-DEPEND="${RDEPEND}
- X? (
- || (
- (
- x11-misc/imake
- x11-proto/inputproto
- x11-proto/xextproto
- )
- virtual/x11
- )
- )
- >=sys-apps/portage-2.1.1_pre1"
-
-S="${WORKDIR}/${PN}-${PV}"
-
-src_unpack() {
- unpack ${A}
- cd ${S}
-
- einfo "Applying upstream patches ..."
- for patch in $(seq $PATCH_TOT); do
- base="PATCH${patch}"
- dir=$(eval echo \${${base}[0]})
- p=$(eval echo \${${base}[1]})
- pushd ${dir} >& /dev/null
- ccp_patch ${DISTDIR}/${p}
- popd >& /dev/null
- done
- einfo "Done."
- echo
-
- einfo "Applying Gentoo patches ..."
- # These two only needed when attempting to install outside build dir via
- # --bindir and --libdir instead of straight copying after build
-
- # it attempts to install some libraries during the build
- #ccp_patch ${FILESDIR}/${P}-install-libs-at-install-time.patch
- # hklview/ipdisp.exe/xdlmapman/ipmosflm can't find libxdl_view
- # without this patch when --libdir is set
- # Rotgen still needs more patching to find it
- #ccp_patch ${FILESDIR}/add-xdl-libdir.patch
-
- # it tries to create libdir, bindir etc on live system in configure
- ccp_patch ${FILESDIR}/${PV}-dont-make-dirs-in-configure.patch
-
- # We already have sci-chemistry/rasmol
- ccp_patch ${FILESDIR}/dont-build-rasmol.patch
-
- # We already have sci-chemistry/pdb-extract
-# Use configure option instead
-# ccp_patch ${FILESDIR}/dont-build-pdb-extract.patch
-
- ccp_patch ${FILESDIR}/create-mosflm-bindir.patch
- ccp_patch ${FILESDIR}/make-mosflm-libdir.patch
- ccp_patch ${FILESDIR}/make-mosflm-index-libdir.patch
- ccp_patch ${FILESDIR}/make-mosflm-cbf-libdir.patch
- ccp_patch ${FILESDIR}/make-ipmosflm-dir.patch
-
-# Don't use these when we aren't building phaser
-# ccp_patch ${FILESDIR}/make-phaser-bindir.patch
-# ccp_patch ${FILESDIR}/no-phaser-ld-assume-kernel.patch
-# # scons config.py tries to chmod python on live system
-# ccp_patch ${FILESDIR}/dont-chmod-python-binary.patch
-
- # Don't use this when we aren't building clipper
- # For some reason clipper check for $enableval even when --enable is passed
- ccp_patch ${FILESDIR}/pass-clipper-enablevals.patch
- ccp_patch ${FILESDIR}/clipper-find-mccp4-includes.patch
-
- # Default to firefox browser, not 'netscape'
- ccp_patch ${FILESDIR}/ccp4i-default-to-firefox.patch
-
- # Also use -lpthread when linking blas and lapack
- # We may need more fixing to use libcblas for the C files
- ccp_patch ${FILESDIR}/check-blas-lapack-pthread.patch
-
- # gerror_ gets defined twice on ppc if you're using gfortran/g95
- ccp_patch ${FILESDIR}/${PV}-ppc-double-define-gerror.patch
-
- einfo "Done." # done applying Gentoo patches
- echo
-
- gnuconfig_update
-}
-
-src_compile() {
- # GENTOO_OSNAME can be one of:
- # irix irix64 sunos sunos64 aix hpux osf1 linux freebsd
- # linux_compaq_compilers linux_intel_compilers generic Darwin
- # ia64_linux_intel Darwin_ibm_compilers linux_ibm_compilers
- if [[ "${FORTRANC}" = "ifc" ]]; then
- if use ia64; then
- GENTOO_OSNAME="ia64_linux_intel"
- else
- # Should be valid for x86, maybe amd64
- GENTOO_OSNAME="linux_intel_compilers"
- fi
- else
- # Should be valid for x86 and amd64, at least
- GENTOO_OSNAME="linux"
- fi
-
- # Sets up env
- ln -s \
- ccp4.setup-bash \
- ${S}/include/ccp4.setup
-
- # We agree to the license by emerging this, set in LICENSE
- sed -i \
- -e "s~^\(^agreed=\).*~\1yes~g" \
- ${S}/configure
-
- # Fix up variables -- need to reset CCP4_MASTER at install-time
- sed -i \
- -e "s~^\(setenv CCP4_MASTER.*\)/.*~\1${WORKDIR}~g" \
- -e "s~^\(setenv CCP4I_TCLTK.*\)/usr/local/bin~\1/usr/bin~g" \
- ${S}/include/ccp4.setup*
-
- # Set up variables for build
- source ${S}/include/ccp4.setup
-
- export CC=$(tc-getCC)
- export CXX=$(tc-getCXX)
- export COPTIM=${CFLAGS}
- export CXXOPTIM=${CXXFLAGS}
- # Default to -O2 if FFLAGS is unset
- export FC=${FORTRANC}
- export FOPTIM=${FFLAGS:- -O2}
-
- # Add xdl libraries to library search path
- # Note: some of configure attaches CCP4_LIB to -L, and other parts
- # append libfoo.a immediately after it, so it can only be a single path.
- export CCP4_LIB="${CCP4}/x-windows/xdl_view/src/.libs"
-
- # Can't use econf, configure rejects unknown options like --prefix
- ./configure \
- $(use_enable X x) \
- --with-shared-libs \
- --with-fftw=/usr \
- --with-warnings \
- --disable-pdb_extract \
- --disable-cctbx \
- --disable-phaser \
- --tmpdir="${TMPDIR}" \
- ${GENTOO_OSNAME} || die "econf failed"
- emake -j1 || die "emake failed"
-}
-
-src_install() {
-# Only needed when using --bindir and --libdir
- # Needed to avoid errors. Originally tried to make lib and bin
- # in configure script, now patched out by dont-make-dirs-in-configure.patch
-# dodir /usr/include /usr/$(get_libdir) /usr/bin
-
-# make install || die "install failed"
- einstall || die "install failed"
-
- # Fix env
- sed -i \
- -e "s~^\(setenv CCP4_MASTER.*\)${WORKDIR}~\1/usr~g" \
- -e "s~^\(setenv CCP4.*\$CCP4_MASTER\).*~\1~g" \
- -e "s~^\(setenv CCP4I_TOP\).*~\1 \$CCP4/$(get_libdir)/ccp4/ccp4i~g" \
- -e "s~^\(.*setenv CINCL.*\$CCP4\).*~\1/share/ccp4/include~g" \
- -e "s~^\(.*setenv CLIBD .*\$CCP4\).*~\1/share/ccp4/data~g" \
- -e "s~^\(.*setenv CLIBD_MON .*\)\$CCP4.*~\1\$CLIBD/monomers/~g" \
- -e "s~^\(.*setenv MOLREPLIB .*\)\$CCP4.*~\1\$CLIBD/monomers/~g" \
- -e "s~^\(.*setenv CCP4_BROWSER.*\).*~\1 firefox~g" \
- ${S}/include/ccp4.setup*
-
- # Get rid of S instances
- # Also the main clipper library is built as libclipper-core, not libclipper
- sed -i \
- -e "s:${S}:${ROOT}usr:g" \
- -e "s:lclipper :lclipper-core :g" \
- ${S}/bin/clipper-config
-# sed -i \
-# -e "s:${S}:${ROOT}usr:g" \
-# ${S}/$(get_libdir)/cctbx/cctbx_build/setpaths*
-
- # Bins
- EXEDESTTREE="/usr/bin" doexe ${S}/bin/*
-
- # Libs
- for file in ${S}/lib/*; do
- if [[ -d ${file} ]]; then
- continue
- elif [[ -x ${file} ]]; then
- dolib.so ${file}
- else
- INSDESTTREE="/usr/$(get_libdir)" doins ${file}
- fi
- done
-
- # Fix libdir in all *.la files
- sed -i \
- -e "s:^\(libdir=\).*:\1\'/usr/$(get_libdir)\':g" \
- ${D}/usr/$(get_libdir)/*.la
-
- # Library symlinks
- local LIBNAMES="libclipper-ccp4.so.0.0.0
- libclipper-cif.so.0.0.0
- libclipper-contrib.so.0.0.0
- libclipper-core.so.0.0.0
- libclipper-minimol.so.0.0.0
- libclipper-mmdbold.so.0.0.0
- libclipper-mmdb.so.0.0.0
- libclipper-mtz.so.1.0.0
- libclipper-phs.so.0.0.0
- libjwc_c.so.0.1.1
- libjwc_f.so.0.1.1
- libssm.so.0.0.0
- libxdl_viewextra.so.0.0.0
- libxdl_view.so.2.0.0"
-
- for LIBNAME in ${LIBNAMES}; do
- library_dosym ${LIBNAME}
- done
-
-# dosym libclipper-ccp4.so.0.0.0 /usr/$(get_libdir)/libclipper-ccp4.so
-# dosym libclipper-ccp4.so.0.0.0 /usr/$(get_libdir)/libclipper-ccp4.so.0
-# dosym libclipper-ccp4.so.0.0.0 /usr/$(get_libdir)/libclipper-ccp4.so.0.0
-#
-# dosym libclipper-cif.so.0.0.0 /usr/$(get_libdir)/libclipper-cif.so
-# dosym libclipper-cif.so.0.0.0 /usr/$(get_libdir)/libclipper-cif.so.0
-# dosym libclipper-cif.so.0.0.0 /usr/$(get_libdir)/libclipper-cif.so.0.0
-#
-# dosym libclipper-contrib.so.0.0.0 /usr/$(get_libdir)/libclipper-contrib.so
-# dosym libclipper-contrib.so.0.0.0 /usr/$(get_libdir)/libclipper-contrib.so.0
-# dosym libclipper-contrib.so.0.0.0 /usr/$(get_libdir)/libclipper-contrib.so.0.0
-#
-# dosym libclipper-core.so.0.0.0 /usr/$(get_libdir)/libclipper-core.so
-# dosym libclipper-core.so.0.0.0 /usr/$(get_libdir)/libclipper-core.so.0
-# dosym libclipper-core.so.0.0.0 /usr/$(get_libdir)/libclipper-core.so.0.0
-#
-# dosym libclipper-minimol.so.0.0.0 /usr/$(get_libdir)/libclipper-minimol.so
-# dosym libclipper-minimol.so.0.0.0 /usr/$(get_libdir)/libclipper-minimol.so.0
-# dosym libclipper-minimol.so.0.0.0 /usr/$(get_libdir)/libclipper-minimol.so.0.0
-#
-# dosym libclipper-mmdbold.so.0.0.0 /usr/$(get_libdir)/libclipper-mmdbold.so
-# dosym libclipper-mmdbold.so.0.0.0 /usr/$(get_libdir)/libclipper-mmdbold.so.0
-# dosym libclipper-mmdbold.so.0.0.0 /usr/$(get_libdir)/libclipper-mmdbold.so.0.0
-#
-# dosym libclipper-mmdb.so.0.0.0 /usr/$(get_libdir)/libclipper-mmdb.so
-# dosym libclipper-mmdb.so.0.0.0 /usr/$(get_libdir)/libclipper-mmdb.so.0
-# dosym libclipper-mmdb.so.0.0.0 /usr/$(get_libdir)/libclipper-mmdb.so.0.0
-#
-# dosym libclipper-mtz.so.1.0.0 /usr/$(get_libdir)/libclipper-mtz.so
-# dosym libclipper-mtz.so.1.0.0 /usr/$(get_libdir)/libclipper-mtz.so.1
-# dosym libclipper-mtz.so.1.0.0 /usr/$(get_libdir)/libclipper-mtz.so.1.0
-#
-# dosym libclipper-phs.so.0.0.0 /usr/$(get_libdir)/libclipper-phs.so
-# dosym libclipper-phs.so.0.0.0 /usr/$(get_libdir)/libclipper-phs.so.0
-# dosym libclipper-phs.so.0.0.0 /usr/$(get_libdir)/libclipper-phs.so.0.0
-#
-# dosym libjwc_c.so.0.1.1 /usr/$(get_libdir)/libjwc_c.so
-# dosym libjwc_c.so.0.1.1 /usr/$(get_libdir)/libjwc_c.so.0
-# dosym libjwc_c.so.0.1.1 /usr/$(get_libdir)/libjwc_c.so.0.1
-#
-# dosym libjwc_f.so.0.1.1 /usr/$(get_libdir)/libjwc_f.so
-# dosym libjwc_f.so.0.1.1 /usr/$(get_libdir)/libjwc_f.so.0
-# dosym libjwc_f.so.0.1.1 /usr/$(get_libdir)/libjwc_f.so.0.1
-#
-# dosym libssm.so.0.0.0 /usr/$(get_libdir)/libssm.so
-# dosym libssm.so.0.0.0 /usr/$(get_libdir)/libssm.so.0
-# dosym libssm.so.0.0.0 /usr/$(get_libdir)/libssm.so.0.0
-#
-# dosym libxdl_viewextra.so.0.0.0 /usr/$(get_libdir)/libxdl_viewextra.so
-# dosym libxdl_viewextra.so.0.0.0 /usr/$(get_libdir)/libxdl_viewextra.so.0
-# dosym libxdl_viewextra.so.0.0.0 /usr/$(get_libdir)/libxdl_viewextra.so.0.0
-#
-# dosym libxdl_view.so.2.0.0 /usr/$(get_libdir)/libxdl_view.so
-# dosym libxdl_view.so.2.0.0 /usr/$(get_libdir)/libxdl_view.so.2
-# dosym libxdl_view.so.2.0.0 /usr/$(get_libdir)/libxdl_view.so.2.0
-
- # Environment files, setup scripts, etc.
- INSDESTTREE="/usr/share/ccp4/include" doins ${S}/include/*
-
- # CCP4Interface - GUI
- INSDESTTREE="/usr/$(get_libdir)/ccp4" doins -r ${S}/ccp4i
- EXEDESTTREE="/usr/$(get_libdir)/ccp4/ccp4i/bin" doexe ${S}/ccp4i/bin/*
-
- # Data
- INSDESTTREE="/usr/share/ccp4" doins -r ${S}/lib/data
-
- # Include files
- for i in ccp4 clipper mmdb ssm; do
- INSDESTTREE="/usr/include" doins -r ${S}/include/${i}
- done
-
- # Install docs and examples
-
- doman ${S}/man/cat1/*
-
- mv ${S}/manual/README ${S}/manual/README-manual
- dodoc ${S}/manual/*
-
- dodoc ${S}/README ${S}/CHANGES
-
- dodoc ${S}/doc/*
- rm ${D}/usr/share/doc/${PF}/GNUmakefile.gz
- rm ${D}/usr/share/doc/${PF}/COPYING.gz
-
- dohtml -r ${S}/html/*
- dodoc ${S}/examples/README
-
- # Fix wrongly installed HTML pages from clipper
- dohtml "${D}"/usr/html/*
- rm -rf "${D}"/usr/html
-
- for i in data rnase toxd; do
- DOCDESTTREE="examples/${i}" dodoc ${S}/examples/${i}/*
- done
-
- DOCDESTTREE="examples/tutorial" dohtml -r ${S}/examples/tutorial/html
- DOCDESTTREE="examples/tutorial" dohtml examples/tutorial/tut.css
- for i in data results; do
- DOCDESTTREE="examples/tutorial/${i}" dodoc ${S}/examples/tutorial/${i}/*
- done
-
- for i in non-runnable runnable; do
- DOCDESTTREE="examples/unix/${i}" dodoc ${S}/examples/unix/${i}
- done
-
- # Needed for ccp4i docs to work
- dosym ../../share/doc/${PF}/examples /usr/$(get_libdir)/ccp4/examples
- dosym ../../share/doc/${PF}/html /usr/$(get_libdir)/ccp4/html
-
- # Fix overlaps with other packages
- rm ${D}/usr/share/man/man1/rasmol.1.gz
-}
-
-pkg_postinst() {
- einfo "The Web browser defaults to firefox. Change CCP4_BROWSER"
- einfo "in /usr/share/ccp4/include/ccp4.setup* to modify this."
-
- ewarn "Set your .bashrc or other shell login file to source"
- ewarn "one of the ccp4.setup* files in ${ROOT}usr/share/ccp4/include."
- ewarn "CCP4 will not work without this."
-}
-
-# Epatch wrapper for bulk patching
-ccp_patch() {
- EPATCH_SINGLE_MSG=" ${1##*/} ..." epatch ${1}
-}
-
-# Links libname.so, libname.so.major and libname.so.major.minor
-# to libname.so.major.minor.micro
-library_dosym() {
- local LIBNAME LIBDIR SUFFIX CORE_LIBNAME LIB_MAJOR LIB_MINOR LIB_VERSIONS
-
- LIBNAME=${1}
- LIBDIR=${2:-/usr/$(get_libdir)}
-
- # Tag / on the end of libdir if needed
- if [[ ${LIBDIR:$((${#LIBDIR}-1)):1} != "/" ]]; then
- LIBDIR="${LIBDIR}/"
- fi
-
- if [[ "${LIBNAME}" != *.so.* ]]; then
- msg="library_dosym() requires a shared, versioned library as an argument"
- eerror "$msg"
- die "$msg"
- fi
-
- SUFFIX=${LIBNAME##*so.}
- CORE_LIBNAME=${LIBNAME%.so.*}
- CORE_LIBNAME="${CORE_LIBNAME}.so"
- LIB_MAJOR=${SUFFIX%%.*}
- LIB_MINOR=${SUFFIX#*.}
- LIB_MINOR=${SUFFIX%%.*}
- LIB_VERSIONS="${LIB_MAJOR} ${LIB_MAJOR}.${LIB_MINOR}"
- for LIB_SUFFIX in .${LIB_MAJOR} .${LIB_MAJOR}.${LIB_MINOR} ""; do
- einfo "Calling dosym ${LIBNAME} ${LIBDIR} ${CORE_LIBNAME} ${LIB_SUFFIX}"
- dosym ${LIBNAME} ${LIBDIR}${CORE_LIBNAME}${LIB_SUFFIX}
- done
-}