summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2010-02-02 20:38:16 +0000
committerJustin Lecher <jlec@gentoo.org>2010-02-02 20:38:16 +0000
commitf212200bb8a6e6c98170c5e14cf07004aaaec793 (patch)
treea889cdc329bf4b9313054012581be95d5bea674c /sci-libs/ccp4-libs
parentVersion bump 1.9.48 (diff)
downloadgentoo-2-f212200bb8a6e6c98170c5e14cf07004aaaec793.tar.gz
gentoo-2-f212200bb8a6e6c98170c5e14cf07004aaaec793.tar.bz2
gentoo-2-f212200bb8a6e6c98170c5e14cf07004aaaec793.zip
Splitt out ccp4 libraries -- big thanks to dberkholz starting this project
(Portage version: 2.2_rc62/cvs/Linux x86_64)
Diffstat (limited to 'sci-libs/ccp4-libs')
-rw-r--r--sci-libs/ccp4-libs/ChangeLog14
-rw-r--r--sci-libs/ccp4-libs/ccp4-libs-6.1.3.ebuild212
-rw-r--r--sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch11
-rw-r--r--sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch33
-rw-r--r--sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch26
-rw-r--r--sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch87
-rw-r--r--sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch22
-rw-r--r--sci-libs/ccp4-libs/files/6.1.3-link-proberly.patch230
-rw-r--r--sci-libs/ccp4-libs/metadata.xml9
9 files changed, 644 insertions, 0 deletions
diff --git a/sci-libs/ccp4-libs/ChangeLog b/sci-libs/ccp4-libs/ChangeLog
new file mode 100644
index 000000000000..e49335cd36e4
--- /dev/null
+++ b/sci-libs/ccp4-libs/ChangeLog
@@ -0,0 +1,14 @@
+# ChangeLog for sci-libs/ccp4-libs
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/ccp4-libs/ChangeLog,v 1.1 2010/02/02 20:38:16 jlec Exp $
+
+*ccp4-libs-6.1.3 (02 Feb 2010)
+
+ 02 Feb 2010; Justin Lecher (jlec) <jlec@gentoo.org>
+ +files/6.0.2-ppc-double-define-gerror.patch,
+ +files/6.1.3-ccif-shared.patch, +files/6.1.3-dont-build-mmdb.patch,
+ +files/6.1.3-dont-make-dirs-in-configure.patch,
+ +files/6.1.3-glibc2.10.patch, +files/6.1.3-link-proberly.patch,
+ +ccp4-libs-6.1.3.ebuild, +metadata.xml:
+ Splitted libraries from sci-chemistry/ccp4
+
diff --git a/sci-libs/ccp4-libs/ccp4-libs-6.1.3.ebuild b/sci-libs/ccp4-libs/ccp4-libs-6.1.3.ebuild
new file mode 100644
index 000000000000..448e07f69a91
--- /dev/null
+++ b/sci-libs/ccp4-libs/ccp4-libs-6.1.3.ebuild
@@ -0,0 +1,212 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/ccp4-libs/ccp4-libs-6.1.3.ebuild,v 1.1 2010/02/02 20:38:16 jlec Exp $
+
+EAPI="3"
+
+inherit fortran eutils gnuconfig toolchain-funcs
+
+FORTRAN="g77 gfortran ifc"
+
+SRC="ftp://ftp.ccp4.ac.uk/ccp4"
+
+#UPDATE="04_03_09"
+#PATCHDATE="090511"
+
+MY_P="${P/-libs}"
+
+PATCH_TOT="0"
+# Here's a little scriptlet to generate this list from the provided
+# index.patches file
+#
+# i=1; while read -a line; do [[ ${line//#} != ${line} ]] && continue;
+# echo "PATCH${i}=( ${line[1]}"; echo "${line[0]} )"; (( i++ )); done <
+# index.patches
+#PATCH1=( src/topp_
+#topp.f-r1.16.2.5-r1.16.2.6.diff )
+#PATCH2=( .
+#configure-r1.372.2.18-r1.372.2.19.diff )
+
+DESCRIPTION="Protein X-ray crystallography toolkit"
+HOMEPAGE="http://www.ccp4.ac.uk/"
+SRC_URI="${SRC}/${PV}/${MY_P}-core-src.tar.gz"
+# patch tarball from upstream
+ [[ -n ${UPDATE} ]] && SRC_URI="${SRC_URI} ${SRC}/${PV}/updates/${P}-src-patch-${UPDATE}.tar.gz"
+# patches created by us
+ [[ -n ${PATCHDATE} ]] && SRC_URI="${SRC_URI} http://dev.gentooexperimental.org/~jlec/science-dist/${PV}-${PATCHDATE}-updates.patch.bz2"
+
+for i in $(seq $PATCH_TOT); do
+ NAME="PATCH${i}[1]"
+ SRC_URI="${SRC_URI}
+ ${SRC}/${PV}/patches/${!NAME}"
+done
+
+LICENSE="ccp4"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ app-shells/tcsh
+ !<sci-chemistry/ccp4-6.1.3
+ =sci-libs/fftw-2*
+ sci-libs/mmdb
+ sci-libs/monomer-db
+ virtual/lapack
+ virtual/blas"
+DEPEND="${RDEPEND}"
+
+RESTRICT="mirror"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ 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
+
+ [[ -n ${PATCHDATE} ]] && epatch "${WORKDIR}"/${PV}-${PATCHDATE}-updates.patch
+
+ einfo "Applying Gentoo patches ..."
+ # it tries to create libdir, bindir etc on live system in configure
+ ccp_patch "${FILESDIR}"/${PV}-dont-make-dirs-in-configure.patch
+
+ # gerror_ gets defined twice on ppc if you're using gfortran/g95
+ ccp_patch "${FILESDIR}"/6.0.2-ppc-double-define-gerror.patch
+
+ # make creation of libccif.so smooth
+ ccp_patch "${FILESDIR}"/${PV}-ccif-shared.patch
+
+ # lets try to build libmmdb seperatly
+ ccp_patch "${FILESDIR}"/${PV}-dont-build-mmdb.patch
+
+ einfo "Done." # done applying Gentoo patches
+ echo
+
+ gnuconfig_update
+}
+
+src_configure() {
+ # Build system is broken if we set LDFLAGS
+ userldflags="${LDFLAGS}"
+ export SHARED_LIB_FLAGS="${LDFLAGS}"
+ unset LDFLAGS
+
+ # 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${EPREFIX}/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}
+# export CCP4_SCR="${T}"
+
+ # Fix linking
+# $(tc-getCC) ${userldflags} -shared -Wl,-soname,libmmdb.so -o libmmdb.so \${MMDBOBJS} $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lm -lstdc++ && \
+ export SHARE_LIB="\
+ $(tc-getCC) ${userldflags} -shared -Wl,-soname,libccp4c.so -o libccp4c.so \${CORELIBOBJS} \${CGENERALOBJS} \${CUCOBJS} \${CMTZOBJS} \${CMAPOBJS} \${CSYMOBJS} -L.. -lccif $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lm && \
+ ${FORTRANC} ${userldflags} -shared -Wl,-soname,libccp4f.so -o libccp4f.so \${FORTRANLOBJS} \${FINTERFACEOBJS} -L.. -lccif -L. -lccp4c -lmmdb $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lstdc++ -lgfortran -lm"
+
+ # Can't use econf, configure rejects unknown options like --prefix
+ ./configure \
+ --onlylibs \
+ --with-shared-libs \
+ --with-fftw=${EPREFIX}/usr \
+ --with-warnings \
+ --disable-cctbx \
+ --disable-clipper \
+ --tmpdir="${TMPDIR}" \
+ ${GENTOO_OSNAME} || die "econf failed"
+}
+
+src_compile() {
+ emake -j1 onlylib || die "emake failed"
+}
+
+src_install() {
+ # Set up variables for build
+ source "${S}"/include/ccp4.setup
+
+ einstall || die "install failed"
+
+ # Libs
+ for file in "${S}"/lib/*; do
+ if [[ -d ${file} ]]; then
+ continue
+ elif [[ -x ${file} ]]; then
+ dolib.so ${file} || die
+ else
+ insinto /usr/$(get_libdir)
+ doins ${file} || die
+ fi
+ done
+
+ # Bins
+ dobin bin/{automask,diff2jpeg,diffdump,printpeaks} || die
+ newbin bin/superpose superpose-ccp4 || die
+
+ # Fix libdir in all *.la files
+ sed -i \
+ -e "s:^\(libdir=\).*:\1\'${EPREFIX}/usr/$(get_libdir)\':g" \
+ "${ED}"/usr/$(get_libdir)/*.la || die
+
+ # Data
+ insinto /usr/share/ccp4/data/
+ doins -r "${S}"/lib/data/{*.PARM,*.prt,*.lib,*.dic,*.idl,*.cif,*.resource,*.york,*.hist,fraglib,reference_structures} || die
+ dodoc "${S}"/lib/data/*.doc
+ newdoc "${S}"/lib/data/README DATA-README
+
+ # Include files
+ insinto /usr/include
+ for i in ccp4; do
+ doins -r "${S}"/include/${i} || die
+ done
+}
+
+# Epatch wrapper for bulk patching
+ccp_patch() {
+ EPATCH_SINGLE_MSG=" ${1##*/} ..." epatch ${1}
+}
diff --git a/sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch b/sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch
new file mode 100644
index 000000000000..a77d9494a05c
--- /dev/null
+++ b/sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch
@@ -0,0 +1,11 @@
+--- ccp4-6.0.1.orig/lib/src/library_f.c 2006-06-12 07:06:22.000000000 -0700
++++ ccp4-6.0.1/lib/src/library_f.c 2006-06-12 07:21:56.000000000 -0700
+@@ -716,7 +716,7 @@
+
+ #endif /* end of apple xlf support */
+
+-#if ( defined (__linux__) && defined (_CALL_SYSV) )
++#if ( defined (__linux__) && defined (_CALL_SYSV) && ! defined(G95) && ! defined (GFORTRAN) )
+ /* linuxppc xlf support */
+ void gerror_ (str, Lstr)
+ char *str;
diff --git a/sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch b/sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch
new file mode 100644
index 000000000000..ca18d75bc840
--- /dev/null
+++ b/sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch
@@ -0,0 +1,33 @@
+--- configure 2009-08-04 22:35:34.000000000 +0200
++++ configure.new 2009-08-04 22:54:32.000000000 +0200
+@@ -3136,8 +3136,8 @@
+ fi
+ ( touch /tmp/$$.cache_file 2>/dev/null && \
+ cat /dev/null > /tmp/$$.cache_file && \
+- ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif --cache-file=/tmp/$$.cache_file ) || \
+- ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif
++ ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif --cache-file=/tmp/$$.cache_file --enable-shared-lib ) || \
++ ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif --enable-shared-lib
+ rm -f /tmp/$$.cache_file
+ if [ "X$LIBFOPTIM" != "X" ]; then
+ FOPTIM=$FOPTIM_save
+--- lib/ccif/configure 2009-08-04 22:35:37.000000000 +0200
++++ lib/ccif/configure.new 2009-08-04 23:05:44.000000000 +0200
+@@ -5568,7 +5568,7 @@
+ enable_shared_lib=no
+ ;;
+
+- i?86-unknown-linux | i?86-pc-linux-gnu )
++ i?86-unknown-linux | i?86-pc-linux-gnu | x86_64-unknown-linux-gnu)
+ if test $enable_shared_lib = yes ; then
+
+ SO_LOC_VAR='LD_LIBRARY_PATH'
+@@ -5585,7 +5585,7 @@
+ else
+ SHARED_LIB_PATH='LD_LIBRARY_PATH=`pwd`'
+ fi
+- SHARED_LIB_CMD='$(CC) $(SHARED_LIB_FLAGS) -shared -Wl,-soname -Wl,$(SHARED_LIB_NAME) '"$SHARED_LIB_RESTRICT"' ${LOBJS} $(RX_LFLAG) -o $(SHARED_LIB_NAME)'
++ SHARED_LIB_CMD='$(CC) $(SHARED_LIB_FLAGS) -shared -Wl,-soname -Wl,$(SHARED_LIB_NAME) '"$SHARED_LIB_RESTRICT"' ${LOBJS} $(RX_LFLAG) -o $(SHARED_LIB_NAME) -lm'
+ # SHARED_LIB_EXPORTS_CMD='cp libccif-universal-ld.lis $(SHARED_LIB_EXPORTS)'
+ SHARED_LIB_EXPORTS_CMD=''
+ fi
diff --git a/sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch b/sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch
new file mode 100644
index 000000000000..b3fefacdac54
--- /dev/null
+++ b/sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch
@@ -0,0 +1,26 @@
+--- lib/src/Makefile.in 2009-06-18 15:44:08.000000000 +0200
++++ lib/src/Makefile.in.new 2009-08-11 11:58:25.000000000 +0200
+@@ -176,7 +176,7 @@
+
+ ##### Makefile targets ######
+
+-all: fsplit $(LMMDB) $(LC) $(LF) $(SCRIPT_MODULES)
++all: fsplit $(LC) $(LF) $(SCRIPT_MODULES)
+ # maybe create shared library
+ $(SHARE_LIB)
+
+--- lib/src/Makefile.in 2009-06-18 15:44:08.000000000 +0200
++++ lib/src/Makefile.in.new 2009-08-11 12:17:53.000000000 +0200
+@@ -716,11 +716,9 @@
+ rm -f $(DESTDIR)$(includedir)/mmdb/$$f; \
+ done
+
+-install : all install-ccp4HEADERS install-mmdbHEADERS
+- $(INSTALL_DATA) `pwd`/$(LMMDB) $(libdir)/$(LMMDB)
++install : all install-ccp4HEADERS
+ $(INSTALL_DATA) `pwd`/$(LC) $(libdir)/$(LC)
+ $(INSTALL_DATA) `pwd`/$(LF) $(libdir)/$(LF)
+- $(RANLIB) $(libdir)/$(LMMDB)
+ $(RANLIB) $(libdir)/$(LC)
+ $(RANLIB) $(libdir)/$(LF)
+ $(SHARE_INST)
diff --git a/sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch b/sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch
new file mode 100644
index 000000000000..583697cea0a1
--- /dev/null
+++ b/sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch
@@ -0,0 +1,87 @@
+--- ccp4-6.0.99e.orig/configure 2008-07-31 10:37:22.000000000 -0700
++++ ccp4-6.0.99e/configure 2008-07-31 10:39:18.000000000 -0700
+@@ -643,45 +643,45 @@
+ # echo "! Beware -- the $system installation isn't properly tested." ; }
+ syswarn='echo; echo "! Beware -- the $system installation is not properly tested."'
+
+-if test -z "$onlylibs" ; then
+- for i in CCP4_SCR BINSORT_SCR; do
+- if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then :
+- else
+- eval echo "! No directory \$$i and can\'t create it."
+- echo " Check the value of $i."
+- badvar=1
+- fi
+- done
+-
+- for i in libdir bindir includedir; do
+- if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then :
+- else
+- eval echo "! No directory \$$i and can\'t create it."
+- echo " Check the argument of --$i."
+- badvar=1
+- fi
+- done
+-
+- for i in $dotsrc $dotunsupp $dotunsuppsrc $dotdeprec $dotdeprecsrc ./lib ./lib/src ./lib/data ./ccp4i/etc/unix $mosflmdir/lib $mosflmdir/bin $mosflmdir/cbf/lib ; do
+- if test -d $i || mkdir $i; then :
+- else
+- eval echo "! No directory $i and can\'t create it."
+- badvar=1
+- fi
+- done
+-else
+- # Kludge to fool the "Makefile" target in the top-level CCP4
+- # Makefile into not trying to remake src/Makefile.in
+- for i in $srcdir/src $srcdir/lib/src ; do
+- if test -d $i || mkdir $i; then
+- if ! test -f $i/Makefile.in ; then
+- echo
+- echo "onlylibs: making dummy file $i/Makefile.in"
+- touch $i/Makefile.in
+- fi
+- fi
+- done
+-fi
++#if test -z "$onlylibs" ; then
++# for i in CCP4_SCR BINSORT_SCR; do
++# if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then :
++# else
++# eval echo "! No directory \$$i and can\'t create it."
++# echo " Check the value of $i."
++# badvar=1
++# fi
++# done
++#
++# for i in libdir bindir includedir; do
++# if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then :
++# else
++# eval echo "! No directory \$$i and can\'t create it."
++# echo " Check the argument of --$i."
++# badvar=1
++# fi
++# done
++#
++# for i in $dotsrc $dotunsupp $dotunsuppsrc $dotdeprec $dotdeprecsrc ./lib ./lib/src ./lib/data ./ccp4i/etc/unix $mosflmdir/lib $mosflmdir/bin $mosflmdir/cbf/lib ; do
++# if test -d $i || mkdir $i; then :
++# else
++# eval echo "! No directory $i and can\'t create it."
++# badvar=1
++# fi
++# done
++#else
++# # Kludge to fool the "Makefile" target in the top-level CCP4
++# # Makefile into not trying to remake src/Makefile.in
++# for i in $srcdir/src $srcdir/lib/src ; do
++# if test -d $i || mkdir $i; then
++# if ! test -f $i/Makefile.in ; then
++# echo
++# echo "onlylibs: making dummy file $i/Makefile.in"
++# touch $i/Makefile.in
++# fi
++# fi
++# done
++#fi
+
+ ### sanity checks
+
diff --git a/sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch b/sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch
new file mode 100644
index 000000000000..6e3997647955
--- /dev/null
+++ b/sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch
@@ -0,0 +1,22 @@
+--- lib/ccif/configure.in 2009-06-10 13:52:59.000000000 +0200
++++ lib/ccif/configure.in.new 2009-06-10 14:04:31.000000000 +0200
+@@ -363,7 +363,7 @@
+ fi
+ SHARED_LIB_CMD='$(LD) $(SHARED_LIB_FLAGS) -shared -soname $(SHARED_LIB_NAME) \\\
+ --whole-archive '"$SHARED_LIB_RESTRICT"' $L \\\
+- $(RX_LFLAG) -o $(SHARED_LIB_NAME)'
++ $(RX_LFLAG) -o $(SHARED_LIB_NAME) -lm'
+ SHARED_LIB_EXPORTS_CMD='cp libccif-universal-ld.lis $(SHARED_LIB_EXPORTS)'
+ fi
+ ;;
+--- lib/ccif/configure 2009-06-10 14:26:58.000000000 +0200
++++ lib/ccif/configure.new 2009-06-10 14:43:31.000000000 +0200
+@@ -1807,7 +1807,7 @@
+ SHARED_LIB_CMD='$(LD) $(SHARED_LIB_CFLAGS) -shared -soname \\\
+ $(SHARED_LIB_NAME) \\\
+ --whole-archive $L \\\
+- -o $(SHARED_LIB_NAME)'
++ -o $(SHARED_LIB_NAME) -lm'
+ SHARED_LIB_EXPORTS_CMD=''
+ fi
+ ;;
diff --git a/sci-libs/ccp4-libs/files/6.1.3-link-proberly.patch b/sci-libs/ccp4-libs/files/6.1.3-link-proberly.patch
new file mode 100644
index 000000000000..24a0a2d8e4a2
--- /dev/null
+++ b/sci-libs/ccp4-libs/files/6.1.3-link-proberly.patch
@@ -0,0 +1,230 @@
+--- lib/src/Makefile.in 2009-03-02 17:53:15.000000000 +0100
++++ lib/src/Makefile.in.new 2009-03-02 17:52:09.000000000 +0100
+@@ -172,9 +172,8 @@
+
+ ##### Makefile targets ######
+
+-all: fsplit $(LMMDB) $(LC) $(LF) $(SCRIPT_MODULES)
++all: fsplit $(LMMDB) LMMDB_SO $(LC) LC_SO $(LF) LF_SO $(SCRIPT_MODULES)
+ # maybe create shared library
+- $(SHARE_LIB)
+
+ $(LC) : $(CORELIBOBJS) $(CGENERALOBJS) $(CUCOBJS) $(CMTZOBJS) $(CMAPOBJS) $(CSYMOBJS)
+ $(AR) $(LC) $?
+@@ -186,6 +185,27 @@
+ $(AR) $(LF) $(FINTERFACEOBJS)
+ $(RANLIB) $@
+
++LMMDB_SO :
++ $(CC) $(COPTIM) -shared -Wl,-soname,libmmdb.so.0 -o libmmdb.so.0.0.0 \
++ $(MMDBOBJS) && \
++ ln -sf libmmdb.so.0.0.0 libmmdb.so.0 && \
++ ln -sf libmmdb.so.0.0.0 libmmdb.so
++
++LC_SO :
++ $(CC) $(COPTIM) -shared -Wl,-soname,libccp4c.so.0 -o libccp4c.so.0.0.0 \
++ $(CORELIBOBJS) $(CGENERALOBJS) $(CUCOBJS) $(CMTZOBJS) $(CMAPOBJS) $(CSYMOBJS) && \
++ ln -sf libccp4c.so.0.0.0 libccp4c.so.0 && \
++ ln -sf libccp4c.so.0.0.0 libccp4c.so
++
++LF_SO :
++ $(FC) $(FOPTIM) -shared -Wl,-soname,libccp4f.so.0 -o libccp4f.so.0.0.0 \
++ parser.dir/*.o ccplib.dir/*.o lgglib.dir/*.o plot84lib.dir/*.o \
++ libhtml.dir/*.o pxxml.dir/*.o rwbrook.dir/*.o cciflib.dir/*.o \
++ harvlib.dir/*.o keyparse.dir/*.o dna_output.dir/*.o plotsubs.dir/*.o \
++ modlib.dir/*.o fftlib.dir/*.o unix.dir/*.o pack_f.o pack_c.o $(FINTERFACEOBJS) && \
++ ln -sf libccp4f.so.0.0.0 libccp4f.so.0 && \
++ ln -sf libccp4f.so.0.0.0 libccp4f.so
++
+ # cmtz library only
+
+ cmtz: $(LCMTZ)
+@@ -339,9 +356,7 @@
+ fi
+ cd parser.dir && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f parser.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ parser : parser.o
+ $(RANLIB) $(LF)
+
+@@ -351,9 +366,7 @@
+ echo ' END' >> ccplib.dir/ccplib.$F
+ cd ccplib.dir && $(fsplit_dir)/fsplit $(srcdir)/ccplib.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f ccplib.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ ccplib : ccplib.o
+ $(RANLIB) $(LF)
+
+@@ -364,9 +377,7 @@
+ @$(SETFLAGS) ; \
+ cd lgglib.dir && $(fsplit_dir)/fsplit $(srcdir)/lgglib.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- eval $(FC) -c $${lgglib_FLAGS-"$(FFLAGS)"} $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f lgglib.dir/*.o
++ eval $(FC) -c $${lgglib_FLAGS-"$(FFLAGS)"} $(SHARED_LIB_FFLAGS) $$i; done
+ lgglib : lgglib.o
+ $(RANLIB) $(LF)
+
+@@ -376,9 +387,7 @@
+ echo ' END' >> plot84lib.dir/plot84lib.$F
+ cd plot84lib.dir && $(fsplit_dir)/fsplit $(srcdir)/plot84lib.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f plot84lib.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ plot84lib : plot84lib.o
+ $(RANLIB) $(LF)
+
+@@ -388,9 +397,7 @@
+ echo ' END' >> libhtml.dir/libhtml.$F
+ cd libhtml.dir && $(fsplit_dir)/fsplit $(srcdir)/libhtml.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f libhtml.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ libhtml : libhtml.o
+ $(RANLIB) $(LF)
+
+@@ -400,9 +407,7 @@
+ echo ' END' >> pxxml.dir/pxxml.$F
+ cd pxxml.dir && $(fsplit_dir)/fsplit $(srcdir)/pxxml.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f pxxml.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ pxxml : pxxml.o
+ $(RANLIB) $(LF)
+
+@@ -412,9 +417,7 @@
+ echo ' END' >> rwbrook.dir/rwbrook.$F
+ cd rwbrook.dir && $(fsplit_dir)/fsplit $(srcdir)/rwbrook.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f rwbrook.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ rwbrook : rwbrook.o
+ $(RANLIB) $(LF)
+
+@@ -424,9 +427,7 @@
+ echo ' END' >> cciflib.dir/cciflib.$F
+ cd cciflib.dir && $(fsplit_dir)/fsplit $(srcdir)/cciflib.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) -I$(srcdir) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f cciflib.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) -I$(srcdir) $$i; done
+ cciflib : cciflib.o
+ $(RANLIB) $(LF)
+
+@@ -440,9 +441,7 @@
+ && $(AR) ../$(LF) *.o ; else \
+ cd harvlib.dir && $(fsplit_dir)/fsplit $(srcdir)/harv_dummy.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) -I$(srcdir) $$i; done\
+- && $(AR) ../$(LF) *.o ; fi
+- rm -f harvlib.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) -I$(srcdir) $$i; done; fi
+ harvlib : harvlib.o
+ $(RANLIB) $(LF)
+
+@@ -452,9 +451,7 @@
+ echo ' END' >> keyparse.dir/keyparse.$F
+ cd keyparse.dir && $(fsplit_dir)/fsplit $(srcdir)/keyparse.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f keyparse.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ keyparse : keyparse.o
+ $(RANLIB) $(LF)
+
+@@ -464,9 +461,7 @@
+ echo ' END' >> dna_output.dir/dna_output.$F
+ cd dna_output.dir && $(fsplit_dir)/fsplit $(srcdir)/dna_output.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -I$(srcdir) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f dna_output.dir/*.o
++ $(FC) -I$(srcdir) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ dna_output : dna_output.o
+ $(RANLIB) $(LF)
+
+@@ -474,10 +469,9 @@
+ # for ipdisp. May be useful but could be moved.
+ $(LF)(pack_c.o): $(srcdir)/pack_c.c $(srcdir)/pack_c.h
+ $(CC) $(CFLAGS) $(SHARED_LIB_CFLAGS) -I$(srcdir) -c $(srcdir)/pack_c.c
+- $(AR) $(LF) pack_c.o && rm pack_c.o
++ $(AR) $(LF) pack_c.o
+ $(LF)(pack_f.o): $(srcdir)/pack_f.f
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $(srcdir)/pack_f.$(F) && $(AR) $(LF) pack_f.o \
+- && rm pack_f.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $(srcdir)/pack_f.$(F) && $(AR) $(LF) pack_f.o
+ pack: $(LF)(pack_c.o) $(LF)(pack_f.o)
+ $(RANLIB) $(LF)
+
+@@ -488,9 +482,7 @@
+ echo ' END' >> sorting_main.dir/sorting_main.$F
+ cd sorting_main.dir && $(fsplit_dir)/fsplit $(srcdir)/sorting_main.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f sorting_main.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ sorting_main : sorting_main.o
+ $(RANLIB) $(LF)
+
+@@ -500,9 +492,7 @@
+ echo ' END' >> plotsubs.dir/plotsubs.$F
+ cd plotsubs.dir && $(fsplit_dir)/fsplit $(srcdir)/plotsubs.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f plotsubs.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ plotsubs : plotsubs.o
+ $(RANLIB) $(LF)
+
+@@ -512,9 +502,7 @@
+ echo ' END' >> modlib.dir/modlib.$F
+ cd modlib.dir && $(fsplit_dir)/fsplit $(srcdir)/modlib.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f modlib.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ modlib : modlib.o
+ $(RANLIB) $(LF)
+
+@@ -524,9 +512,7 @@
+ echo ' END' >> fftlib.dir/fftlib.$F
+ cd fftlib.dir && $(fsplit_dir)/fsplit $(srcdir)/fftlib.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done \
+- && $(AR) ../$(LF) *.o
+- rm -f fftlib.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ fftlib : fftlib.o
+ $(RANLIB) $(LF)
+
+@@ -541,9 +527,7 @@
+ echo ' END' >> unix.dir/unix.f
+ cd unix.dir && $(fsplit_dir)/fsplit ../unix.f >/dev/null && $(RMEMPTY) && \
+ for i in `pwd`/*.$F; do \
+- $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done\
+- && $(AR) ../$(LF) *.o
+- rm -f unix.dir/*.o
++ $(FC) -c $(FFLAGS) $(SHARED_LIB_FFLAGS) $$i; done
+ unix : unix.o
+ $(RANLIB) $(LF)
+
diff --git a/sci-libs/ccp4-libs/metadata.xml b/sci-libs/ccp4-libs/metadata.xml
new file mode 100644
index 000000000000..02902885aa4c
--- /dev/null
+++ b/sci-libs/ccp4-libs/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci-chemistry</herd>
+ <maintainer>
+ <email>jlec@gentoo.org</email>
+ <name>Justin Lecher (jlec)</name>
+ </maintainer>
+</pkgmetadata>