summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-chemistry/gamess/ChangeLog10
-rw-r--r--sci-chemistry/gamess/Manifest14
-rw-r--r--sci-chemistry/gamess/gamess-20100325.2.ebuild315
3 files changed, 336 insertions, 3 deletions
diff --git a/sci-chemistry/gamess/ChangeLog b/sci-chemistry/gamess/ChangeLog
index 2b92975e1f07..1c838dcd01ae 100644
--- a/sci-chemistry/gamess/ChangeLog
+++ b/sci-chemistry/gamess/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sci-chemistry/gamess
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v 1.39 2009/11/30 15:13:46 alexxy Exp $
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v 1.40 2010/05/24 12:38:11 alexxy Exp $
+
+*gamess-20100325.2 (24 May 2010)
+
+ 24 May 2010; Alexey Shvetsov <alexxy@gentoo.org>
+ +gamess-20100325.2.ebuild:
+ Version bump with improved qmmm stuff
30 Nov 2009; Alexey Shvetsov <alexxy@gentoo.org>
gamess-20090112.3-r1.ebuild:
diff --git a/sci-chemistry/gamess/Manifest b/sci-chemistry/gamess/Manifest
index 88cb1555f29e..f0cf39953387 100644
--- a/sci-chemistry/gamess/Manifest
+++ b/sci-chemistry/gamess/Manifest
@@ -1,13 +1,25 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX gamess-20080411.1.gentoo.patch 12549 RMD160 531faefa0d45a8d249c089aec8138783406563e5 SHA1 c8a93487889528d74384096562398f5096a76f5c SHA256 7df4e4c70da0a9029043c86a4607bbc58f35cf4e34994df393e02dcd3ac7f2b5
AUX gamess-20090112.1.gentoo.patch 12259 RMD160 08dea4576f98233af6b36d73fccbe52b8eec4961 SHA1 f24da2cdf997b2d58a7f991111e0555407ce1f3b SHA256 fcaa3aafda7f95b45bbc45d98cb3875048e6b2b3c06730c97492f7b77d120255
DIST gamess-20080411.1.tar.gz 10301653 RMD160 9742a676cc2da693fff78594cdc0edf0f380a2de SHA1 8e0e01b255ebad8e2fd9b2012248648a11212b5c SHA256 493a99448afc6de15b6f054b702c6e67646e020cfee551aca0ef48a374fc6d05
DIST gamess-20090112.1.tar.gz 10823509 RMD160 409aafba9136a441c1524fe30eb1fccdff1f9883 SHA1 4af8dd470700649d32317d8ab57814b010a4403d SHA256 9f7763933479ba8aa730c392af25b8a271152115a0392707786b45871b52f6e0
DIST gamess-20090112.3.tar.gz 11000803 RMD160 8bb155885d9a1264a894b72004d9662c3c4a0cd4 SHA1 4c0cd9a50d422b2e4462cbef83902b9a34e548a9 SHA256 0502c216c792a1c0fcebd6d3955f0feaeb4f9295b75cf0cb3af04c3516cec0bd
+DIST gamess-20100325.2.tar.gz 12216199 RMD160 852b21ae4f06f81f15f76ce94696b852b963d5c3 SHA1 d301e02a7fbc79b75e1c6c38119a7d21afd1ffba SHA256 781d02c98fa1c93c8fed079aa64601f0fd8f1538ee541944ccf5631cc882d33a
DIST tinker.tar.Z 1038267 RMD160 7231bdbe1785e98890037d654e8d3eab8ac066cf SHA1 05de4825fc2e97d3a898f2776a6494aed02da47a SHA256 d3e06eb13c2c35b01bbbc8dc7bc8c3a32337d9b9e26ff754db1ff0a1cc153db8
EBUILD gamess-20080411.1.ebuild 6449 RMD160 f4ce142a0e539f7d9d6c6b53cb6365b146184296 SHA1 66ed15b13ace9f16e7a1c4898a6177e929938f7f SHA256 851552f6fc1e7f85d1590850c5718c18e7f2748cd0b0361b0a665be746c30d08
EBUILD gamess-20090112.1-r1.ebuild 7711 RMD160 cf27a39cbd5d355e934b31a2c36be200f9c45b3d SHA1 5e4e95dfc4ffdeea724e658c2e90bb7c57641e99 SHA256 9db00c8b9bc6ce4f840995886fdfd0d441786af843a7918fbdae1f78a05e2f92
EBUILD gamess-20090112.1.ebuild 6456 RMD160 f26f2ccab0b5c230da6be09efd017555f6a815be SHA1 3ff4edc79c03d71f457101616b2ace00c4b0c066 SHA256 5674413ba5f411e9a5cde75677387c87fdf62d8f0eb65ddbf7b2e136807ffefa
EBUILD gamess-20090112.3-r1.ebuild 8851 RMD160 3c6d7c66b0bbf2f4cc42d5ed04117bd19b063e3d SHA1 616a0eaccb9b080250524da2d3571ee255cb0d95 SHA256 5446ab8819c515b4d4d0f208985439bc1febe6811e041d1206e5c513ed35e44a
EBUILD gamess-20090112.3.ebuild 8092 RMD160 3ed0193d970f44ee1ad69008f1dbd687bd80db08 SHA1 bd4939fbf4d0752926b3b4c729d6cd0e8204edde SHA256 2bb1b4d791156fc28f562a871ed035eb950e59c182f247778e736bdb79480347
-MISC ChangeLog 8524 RMD160 5e758d8357c12d0d421727fc78bd205ea35775d4 SHA1 c27ccd9be7302fcdb472ebc34128b699e46e9fae SHA256 4edb120c101db34dbf30afff48ddb6916812603f8b9299542b5d2ddbd8433169
+EBUILD gamess-20100325.2.ebuild 9874 RMD160 33b3ebd79752ff560f278984a8a39c8ee7cb7463 SHA1 aebd5956560c6a20c15955736b9fd84af88b0739 SHA256 fed84b0f780e31dbe749aee3c6358859b2c80b2a4c9c9b8b1d4b432a5422d61b
+MISC ChangeLog 8679 RMD160 8dc6e8291e0518ee043430930793487ba65f39ff SHA1 af9567e947c1a0a2b462e8f85a86e729a59992e9 SHA256 b819d045f4b6570fa9dbdaf971ed16bcb0e0871e998f7e7d43d25113f6a389e1
MISC metadata.xml 432 RMD160 36785f37503fb3d7ab09a459d5c146ba9f2639c5 SHA1 3e7483cf552e4946b0791b97f40fae541c8ee1aa SHA256 bcc821dc1c54441f16d9b763e7dd172cc8a1f9b51a6e93fa9af5dc2fa56f3e8d
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.15 (GNU/Linux)
+
+iEYEARECAAYFAkv6cz4ACgkQ5BmOA85PVLhcaACfTA4zCUwA+ujN4Okl6AsQFX4U
+/WcAnRVRug+BmVTGZraOfHtMpCWjWB9l
+=LucQ
+-----END PGP SIGNATURE-----
diff --git a/sci-chemistry/gamess/gamess-20100325.2.ebuild b/sci-chemistry/gamess/gamess-20100325.2.ebuild
new file mode 100644
index 000000000000..753db5d445ec
--- /dev/null
+++ b/sci-chemistry/gamess/gamess-20100325.2.ebuild
@@ -0,0 +1,315 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/gamess-20100325.2.ebuild,v 1.1 2010/05/24 12:38:11 alexxy Exp $
+
+EAPI="2"
+
+inherit eutils toolchain-funcs fortran flag-o-matic
+
+DESCRIPTION="A powerful quantum chemistry package"
+LICENSE="gamess"
+HOMEPAGE="http://www.msg.chem.iastate.edu/GAMESS/GAMESS.html"
+SRC_URI="
+ ${P}.tar.gz
+ qmmm-tinker? ( tinker.tar.Z )"
+
+SLOT="0"
+# NOTE: PLEASE do not stabilize gamess. It does not make sense
+# since the tarball has fetch restrictions and upstream only
+# provides the latest version. In other words: As soon as a
+# new version comes out the stable version will be useless since
+# users can not get at the tarball any more.
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="hardened mpi qmmm-tinker"
+
+RESTRICT="fetch"
+
+DEPEND="app-shells/tcsh
+ hardened? ( sys-apps/paxctl )
+ mpi? ( virtual/mpi )
+ virtual/blas"
+
+RDEPEND="${DEPEND}
+ net-misc/openssh"
+
+S="${WORKDIR}/${PN}"
+
+GAMESS_DOWNLOAD="http://www.msg.ameslab.gov/GAMESS/License_Agreement.html"
+GAMESS_VERSION="12 JAN 2009 (R3)"
+FORTRAN="ifc g77 gfortran"
+
+pkg_nofetch() {
+ echo
+ elog "Please download ${PN}-current.tar.gz from"
+ elog "${GAMESS_DOWNLOAD}."
+ elog "Be sure to select the version ${GAMESS_VERSION} tarball!!"
+ elog "Then move the tarball to"
+ elog "${DISTDIR}/${P}.tar.gz"
+ if use qmmm-tinker ; then
+ elog "Also download http://www.msg.ameslab.gov/GAMESS/tinker.tar.Z"
+ elog "and place tinker.tar.Z to ${DISTDIR}"
+ fi
+ echo
+}
+
+pkg_setup() {
+ fortran_pkg_setup
+
+ # currently amd64 is only supported with gfortran
+ if [[ "${ARCH}" == "amd64" ]] && [[ "${FORTRANC}" != "gfortran" ]];
+ then die "You will need gfortran to compile gamess on amd64"
+ fi
+
+ # note about qmmm-tinker
+ if use qmmm-tinker; then
+ if [ "x$QMMM_GAMESS_MAXMM" == "x" || \
+ "x$QMMM_GAMESS_MAXCLASS" == "x" || \
+ "x$QMMM_GAMESS_MAXCTYP" == "x" || \
+ "x$QMMM_GAMESS_MAXHESS" == "x" ]; then
+ einfo "By default MM subsistem is restricted to 1000 atoms"
+ einfo "if you want larger MM subsystems then you should set"
+ einfo "QMMM_GAMESS_MAXMM variable to needed value in your make.conf"
+ einfo "By default maximum number of atom classes types and size of"
+ einfo "hessian are restricted to 250, 500 and 1000000 respectively"
+ einfo "If you want larger sizes set:"
+ einfo "QMMM_GAMESS_MAXCLASS"
+ einfo "QMMM_GAMESS_MAXCTYP"
+ einfo "QMMM_GAMESS_MAXHESS"
+ einfo "in your make.conf"
+ ebeep 5
+ fi
+ fi
+
+ #note about mpi
+ if use mpi; then
+ ewarn ""
+ ewarn "You should adjust rungms script for your mpi implentation"
+ ewarn "because deafult one will not work"
+ ewarn ""
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ if use qmmm-tinker; then
+ mv tinker gamess/ || die "failed to move tinker directory"
+ fi
+}
+
+src_prepare() {
+ # apply LINUX-arch patches to gamess makesfiles
+ epatch "${FILESDIR}"/${PN}-20090112.1.gentoo.patch
+ # select arch
+ # NOTE: please leave lked alone; it should be good as is!!
+ cd "${S}"
+ local active_arch;
+ if [[ "${ARCH}" == "amd64" ]]; then
+ active_arch="linux64";
+ else
+ active_arch="linux32";
+ fi
+ sed -e "s:gentoo-target:${active_arch}:" \
+ -i comp compall ddi/compddi \
+ || die "Failed to select proper architecure"
+
+ # for hardened-gcc let't turn off ssp, since it breakes
+ # a few routines
+ if use hardened && [[ "${FORTRANC}" = "g77" ]]; then
+ FFLAGS="${FFLAGS} -fno-stack-protector-all"
+ fi
+
+ # Enable mpi stuff
+ if use mpi; then
+ sed -e "s:set COMM = sockets:set COMM = mpi:g" \
+ -i ddi/compddi || die "Enabling mpi build failed"
+ sed -e "s:MPI_INCLUDE_PATH = ' ':MPI_INCLUDE_PATH = '-I/usr/include ':g" \
+ -i ddi/compddi || die "Enabling mpi build failed"
+ sed -e "s:MSG_LIBRARIES='../ddi/libddi.a -lpthread':MSG_LIBRARIES='../ddi/libddi.a -lmpi -lpthread':g" \
+ -i lked || die "Enabling mpi build failed"
+ fi
+
+ # enable NEO
+ sed -e "s:NEO=false:NEO=true:" -i compall lked || \
+ die "Failed to enable NEO code"
+ # enable GAMESS-qmmm
+ if use qmmm-tinker; then
+ sed -e "s:TINKER=false:TINKER=true:" -i compall lked || \
+ die "Failed to enable TINKER code"
+ if [ "x$QMMM_GAMESS_MAXMM" == "x" ]; then
+ einfo "No QMMM_GAMESS_MAXMM set. Using default value = 1000"
+ else
+ einfo "Setting QMMM_GAMESS_MAXMM to $QMMM_GAMESS_MAXMM"
+ sed -e "s:maxatm=1000:maxatm=$QMMM_GAMESS_MAXMM:g" \
+ -i tinker/sizes.i \
+ || die "Setting QMMM_GAMESS_MAXMM failed"
+ sed -e "s:MAXATM=1000:MAXATM=$QMMM_GAMESS_MAXMM:g" \
+ -i source/inputb.src \
+ || die "Setting QMMM_GAMESS_MAXMM failed"
+ fi
+ sed -e "s:maxclass=250:maxclass=$QMMM_GAMESS_MAXCLASS:g" \
+ -i tinker/sizes.i \
+ || die "Setting QMMM_GAMESS_MAXCLASS failed"
+ sed -e "s:maxtyp=500:maxtyp=$QMMM_GAMESS_MAXCTYP:g" \
+ -i tinker/sizes.i \
+ || die "Setting QMMM_GAMESS_MAXCTYP failed"
+ sed -e "s:maxhess=1000000:maxhess=$QMMM_GAMESS_MAXHESS:g" \
+ -i tinker/sizes.i \
+ || die "Setting QMMM_GAMESS_MAXHESS failed"
+ fi
+ # greate proper activate sourcefile
+ cp "./tools/actvte.code" "./tools/actvte.f" || \
+ die "Failed to create actvte.f"
+ sed -e "s/^\*UNX/ /" -i "./tools/actvte.f" || \
+ die "Failed to perform UNX substitutions in actvte.f"
+
+ # fix GAMESS' compall script to use proper CC
+ sed -e "s|\$CCOMP -c \$extraflags source/zunix.c|$(tc-getCC) -c \$extraflags source/zunix.c|" \
+ -i compall || die "Failed setting up compall script"
+
+ # insert proper FFLAGS into GAMESS' comp makefile
+ # in case we're using ifc let's strip all the gcc
+ # specific stuff
+ if [[ "${FORTRANC}" == "ifc" ]]; then
+ sed -e "s/gentoo-OPT = '-O2'/OPT = '${FFLAGS} -quiet'/" \
+ -e "s/gentoo-g77/${FORTRANC}/" \
+ -i comp || die "Failed setting up comp script"
+ elif ! use x86; then
+ sed -e "s/-malign-double //" \
+ -e "s/gentoo-OPT = '-O2'/OPT = '${FFLAGS}'/" \
+ -e "s/gentoo-g77/${FORTRANC}/" \
+ -i comp || die "Failed setting up comp script"
+ else
+ sed -e "s/gentoo-OPT = '-O2'/OPT = '${FFLAGS}'/" \
+ -e "s/gentoo-g77/${FORTRANC}/" \
+ -i comp || die "Failed setting up comp script"
+ fi
+
+ # fix up GAMESS' linker script;
+ sed -e "s/gentoo-g77/${FORTRANC}/" \
+ -e "s/gentoo-LDOPTS=' '/LDOPTS='${LDFLAGS}'/" \
+ -i lked || die "Failed setting up lked script"
+
+ # fix up GAMESS' ddi TCP/IP socket build
+ sed -e "s/gentoo-CC = 'gcc'/CC = '$(tc-getCC)'/" \
+ -e "s/gentoo-g77/${FORTRANC}/" \
+ -i ddi/compddi || die "Failed setting up compddi script"
+
+ # fix up the checker scripts for gamess tests
+ sed -e "s:set GMSPATH:#set GMSPATH:g" \
+ -e "s:\$GMSPATH/tools/checktst:.:g" \
+ -i tools/checktst/checktst
+}
+
+src_compile() {
+ # build actvte
+ cd "${S}"/tools
+ "${FORTRANC}" -o actvte.x actvte.f || \
+ die "Failed to compile actvte.x"
+
+ # for hardened (PAX) users and ifc we need to turn
+ # MPROTECT off
+ if [[ "${FORTRANC}" == "ifc" ]] && use hardened; then
+ /sbin/paxctl -PemRxS actvte.x 2> /dev/null || \
+ die "paxctl failed on actvte.x"
+ fi
+
+ # build gamess
+ cd "${S}"
+ ./compall || die "compall failed"
+
+ # build the ddi TCP/IP socket stuff
+ cd ${S}/"ddi"
+ ./compddi || die "compddi failed"
+
+ # finally, link it all together
+ cd "${S}"
+ ./lked || die "lked failed"
+
+ # for hardened (PAX) users and ifc we need to turn
+ # MPROTECT off
+ if [[ "${FORTRANC}" == "ifc" ]] && use hardened; then
+ /sbin/paxctl -PemRxS ${PN}.00.x 2> /dev/null || \
+ die "paxctl failed on actvte.x"
+ fi
+}
+
+src_install() {
+ # the executables
+ dobin ${PN}.00.x rungms \
+ || die "Failed installing binaries"
+ if use !mpi; then
+ dobin ddi/ddikick.x \
+ || die "Failed installing binaries"
+ fi
+
+ # the docs
+ dodoc *.DOC qmnuc/*.DOC || die "Failed installing docs"
+
+ # install ericftm
+ insinto /usr/share/${PN}/ericfmt
+ doins ericfmt.dat || die "Failed installing ericfmt.dat"
+
+ # install mcpdata
+ insinto /usr/share/${PN}/mcpdata
+ doins mcpdata/* || die "Failed installing mcpdata"
+
+ # install tinker params in case of qmmm
+ if use qmmm-tinker ; then
+ dodoc tinker/simomm.doc || die "Failed installing docs"
+ insinto /usr/share/${PN}
+ doins -r tinker/params || die "Failed to install Tinker params"
+ fi
+
+ # install the tests the user should run, and
+ # fix up the runscript; also grab a copy of rungms
+ # so the user is ready to run the tests
+ insinto /usr/share/${PN}/tests
+ insopts -m0644
+ doins tests/* || die "Failed installing tests"
+ insopts -m0744
+ doins runall || die "Failed installing tests"
+ doins tools/checktst/checktst tools/checktst/chkabs || \
+ die "Failed to install main test checker"
+ doins tools/checktst/exam* || \
+ die "Failed to install individual test files"
+
+ insinto /usr/share/${PN}/neotests
+ insopts -m0644
+ doins -r qmnuc/neotests/* || die "Failed to install NEO tests"
+}
+
+pkg_postinst() {
+ echo
+ einfo "Before you use GAMESS for any serious work you HAVE"
+ einfo "to run the supplied test files located in"
+ einfo "/usr/share/gamess/tests and check them thoroughly."
+ einfo "Otherwise all scientific publications resulting from"
+ einfo "your GAMESS runs should be immediately rejected :)"
+ einfo "To do so copy the content of /usr/share/gamess/tests"
+ einfo "to some temporary location and execute './runall'. "
+ einfo "Then run the checktst script in the same directory to"
+ einfo "validate the tests."
+ einfo "Please consult TEST.DOC and the other docs!"
+
+ if [[ "${FORTRANC}" == "ifc" ]]; then
+ echo
+ ewarn "IMPORTANT NOTE: We STRONGLY recommend to stay away"
+ ewarn "from ifc-9.0 for now and use the ifc-8.1 series of"
+ ewarn "compilers UNLESS you can run through ALL of the "
+ ewarn "test cases (see above) successfully."
+ fi
+
+ echo
+ einfo "If you want to run on more than a single CPU"
+ einfo "you will have to acquaint yourself with the way GAMESS"
+ einfo "does multiprocessor runs and adjust rungms according to"
+ einfo "your target network architecture."
+ echo
+
+ if use qmmm-tinker; then
+ einfo "You may want to install sci-chemistry/tinker to use addition FF"
+ einfo "parameters for your qmmm calculations"
+ echo
+ fi
+}