From f320d3a08c95e81457faae45270b2761099f6c6c Mon Sep 17 00:00:00 2001 From: Markus Dittrich Date: Thu, 14 Dec 2006 14:52:07 +0000 Subject: [PATCH] Version bump. This version includes the NEO code. Package-Manager: portage-2.1.2_rc3-r2 --- sci-chemistry/gamess/ChangeLog | 8 +- sci-chemistry/gamess/Manifest | 20 +- .../gamess/files/digest-gamess-20060907.4 | 3 + .../files/gamess-20060907.4.gentoo.patch | 221 ++++++++++++++++++ sci-chemistry/gamess/gamess-20060907.4.ebuild | 217 +++++++++++++++++ 5 files changed, 464 insertions(+), 5 deletions(-) create mode 100644 sci-chemistry/gamess/files/digest-gamess-20060907.4 create mode 100644 sci-chemistry/gamess/files/gamess-20060907.4.gentoo.patch create mode 100644 sci-chemistry/gamess/gamess-20060907.4.ebuild diff --git a/sci-chemistry/gamess/ChangeLog b/sci-chemistry/gamess/ChangeLog index 9fa212fc1b2f..c3598029d25e 100644 --- a/sci-chemistry/gamess/ChangeLog +++ b/sci-chemistry/gamess/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sci-chemistry/gamess # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v 1.17 2006/09/26 14:43:09 markusle Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v 1.18 2006/12/14 14:52:07 markusle Exp $ + +*gamess-20060907.4 (14 Dec 2006) + + 14 Dec 2006; Markus Dittrich + +files/gamess-20060907.4.gentoo.patch, +gamess-20060907.4.ebuild: + Version bump. This version includes the NEO code. *gamess-20060222.5 (26 Sep 2006) diff --git a/sci-chemistry/gamess/Manifest b/sci-chemistry/gamess/Manifest index a72a33d42f47..7b727ad135ca 100644 --- a/sci-chemistry/gamess/Manifest +++ b/sci-chemistry/gamess/Manifest @@ -10,6 +10,10 @@ AUX gamess-20060222.5.gentoo.patch 7001 RMD160 628c66b898cc77c6c1d3764736be5e9db MD5 2fa728a1477318be87970c3b66306e02 files/gamess-20060222.5.gentoo.patch 7001 RMD160 628c66b898cc77c6c1d3764736be5e9db39b3d28 files/gamess-20060222.5.gentoo.patch 7001 SHA256 70c44a573aee55e9d1519fcf2def4ada721cddc11fdae09d6d1c155121efc450 files/gamess-20060222.5.gentoo.patch 7001 +AUX gamess-20060907.4.gentoo.patch 7562 RMD160 8ac95f4971990986b0106fa6fb1dc4013c415fa4 SHA1 09190eed9886b2f827e3d29a600f8eb34b9912df SHA256 575acc81876552816f9f4c848553ad45361ad19defde7a90a7e15b7709d231ae +MD5 e1835b33c11adda432a1e4925b9622fc files/gamess-20060907.4.gentoo.patch 7562 +RMD160 8ac95f4971990986b0106fa6fb1dc4013c415fa4 files/gamess-20060907.4.gentoo.patch 7562 +SHA256 575acc81876552816f9f4c848553ad45361ad19defde7a90a7e15b7709d231ae files/gamess-20060907.4.gentoo.patch 7562 AUX gamess-glibc-2.4-gentoo.patch 1670 RMD160 d358496e8ef31fd18019253e4dda358f0e101b87 SHA1 62ce37da3eba58b1bfb7b93f5bfe2cee299492db SHA256 c8b3fda9a3916897e6d006ceb1545e8b56920566cf25942df61a14f8d85b99ad MD5 a62216bb611be7630594636f2b170b39 files/gamess-glibc-2.4-gentoo.patch 1670 RMD160 d358496e8ef31fd18019253e4dda358f0e101b87 files/gamess-glibc-2.4-gentoo.patch 1670 @@ -20,6 +24,7 @@ RMD160 22b884e347d08a2041006a7789a7e9daf3d83483 files/rungms-runall-20060222.2.p SHA256 6b995a78ca1b74e2936f553e8cc286303211d040c9f35a8c540f4b8ce88ae331 files/rungms-runall-20060222.2.patch 2293 DIST gamess-20060222.2.tar.gz 6438153 RMD160 e833f0562591ac1bc56b88653012733e63025b6f SHA1 f31cd02beb8e3f38772be416a7d1d6c7bee9a579 SHA256 480c21c3c684fe384cb6612438b9e2112588ce7518a3fe1c82643e8a69edc304 DIST gamess-20060222.5.tar.gz 7546444 RMD160 3c0c0f758578106c5ae74a12a8c18d663cc81291 SHA1 adb7e923f4308d211ba87208aeec7ee2d9a263fe SHA256 a383ce26a770c7ad0d5107f470f0baae80e45778e0f8b2c7a10a57e4aa3f662c +DIST gamess-20060907.4.tar.gz 7864905 RMD160 6e01ab4aabc41980fff74b512ef3b952a5e3f0c8 SHA1 f48ad18115b24861fffdc16cebe97e6b1ed80091 SHA256 8361f50e18ce5301e42375f820d8c41297ca1639fe02441c0a376b19d5e61ea9 EBUILD gamess-20060222.2.ebuild 7646 RMD160 a420b964d1f966cc0671e85b9ca93476edbde1bc SHA1 44b5d3461fc3488c32fa224d7d890e9d9a18ca95 SHA256 b62a9d4c6995f792e14b6a66d55360a7ced3dc43682d6b154cf7bc0636ff9539 MD5 7ec74a1330233f8db990fee265d8badd gamess-20060222.2.ebuild 7646 RMD160 a420b964d1f966cc0671e85b9ca93476edbde1bc gamess-20060222.2.ebuild 7646 @@ -28,10 +33,14 @@ EBUILD gamess-20060222.5.ebuild 6160 RMD160 e015c592facca2de9ae4a3dbaa6f00bf0118 MD5 8c91c53032104a1a9789e2c00aeea8b9 gamess-20060222.5.ebuild 6160 RMD160 e015c592facca2de9ae4a3dbaa6f00bf0118be42 gamess-20060222.5.ebuild 6160 SHA256 43e567cceb37f5318a752e6f66cb8eb6e08474430e56ae2118bf4eed01f3d5fe gamess-20060222.5.ebuild 6160 -MISC ChangeLog 4496 RMD160 af4fc2b00be002628329adbffb49fa4632e4647b SHA1 586c794f1345d0d5758b94414ea9c5222086601a SHA256 f766d4230269136dabaddfe83e774fbad4a67a7c3828582abd1f83fefff7eaa4 -MD5 bc08c8ba89bbba2509d9ff80546201eb ChangeLog 4496 -RMD160 af4fc2b00be002628329adbffb49fa4632e4647b ChangeLog 4496 -SHA256 f766d4230269136dabaddfe83e774fbad4a67a7c3828582abd1f83fefff7eaa4 ChangeLog 4496 +EBUILD gamess-20060907.4.ebuild 6389 RMD160 4a54c20a380ed94502bd6e2d43f1169139db81db SHA1 21bfaa151b199fc0d2e1aad31072338f6f372182 SHA256 e9464dd66c6e2ef6c04c89eb5b7efe82cc53055c7df848b60c47b106401c747c +MD5 735849b937e40986b685994c6968064c gamess-20060907.4.ebuild 6389 +RMD160 4a54c20a380ed94502bd6e2d43f1169139db81db gamess-20060907.4.ebuild 6389 +SHA256 e9464dd66c6e2ef6c04c89eb5b7efe82cc53055c7df848b60c47b106401c747c gamess-20060907.4.ebuild 6389 +MISC ChangeLog 4704 RMD160 eb7a17b3c93dc1fcba08449095c682e9e760cd28 SHA1 ca9a0d11cb5cd131a5442a7acb555c0cdf0f4718 SHA256 63fdc3e572e28755365157095448922ad924a1b72c9f066bb32c167ada956237 +MD5 1060f419102707f5a2f92d5e4b042460 ChangeLog 4704 +RMD160 eb7a17b3c93dc1fcba08449095c682e9e760cd28 ChangeLog 4704 +SHA256 63fdc3e572e28755365157095448922ad924a1b72c9f066bb32c167ada956237 ChangeLog 4704 MISC metadata.xml 264 RMD160 f2d7d7c401f209aec88c85770c5d1fc73ee66c89 SHA1 90b72142265c0cf5b2e2c37f6d14209fc12de279 SHA256 a6dba0fee2e8489ae831c04e7240ee646ac65c2333485a3ae46da9ed000c4d9f MD5 77147e914a4b31a9394148a47cccbf2d metadata.xml 264 RMD160 f2d7d7c401f209aec88c85770c5d1fc73ee66c89 metadata.xml 264 @@ -42,3 +51,6 @@ SHA256 d4dfab6eb88cc38fcf5528e937579905ab4d21ed7d8e6947871d53a12e0c8b21 files/di MD5 8d7a30849b18431a71e82c57c33114cf files/digest-gamess-20060222.5 256 RMD160 e522464f96aded4ee678c21d15f6b8aa236b89fa files/digest-gamess-20060222.5 256 SHA256 374123c0ff566869b45c0513e8aefddea579f42be9c7d9794d69956f1fa04465 files/digest-gamess-20060222.5 256 +MD5 b68f0d67985e27d9dd87e253b24562b0 files/digest-gamess-20060907.4 256 +RMD160 dee7f73ba970a9f2752d051bfe5b9fb63a64ccf2 files/digest-gamess-20060907.4 256 +SHA256 9d599766437686873907e88b32e456763da018fb1c3a10291e5c34a8802dac9e files/digest-gamess-20060907.4 256 diff --git a/sci-chemistry/gamess/files/digest-gamess-20060907.4 b/sci-chemistry/gamess/files/digest-gamess-20060907.4 new file mode 100644 index 000000000000..f59129bd8b3f --- /dev/null +++ b/sci-chemistry/gamess/files/digest-gamess-20060907.4 @@ -0,0 +1,3 @@ +MD5 1f31f0c02dd8f87cdeec37e9ebfd9d48 gamess-20060907.4.tar.gz 7864905 +RMD160 6e01ab4aabc41980fff74b512ef3b952a5e3f0c8 gamess-20060907.4.tar.gz 7864905 +SHA256 8361f50e18ce5301e42375f820d8c41297ca1639fe02441c0a376b19d5e61ea9 gamess-20060907.4.tar.gz 7864905 diff --git a/sci-chemistry/gamess/files/gamess-20060907.4.gentoo.patch b/sci-chemistry/gamess/files/gamess-20060907.4.gentoo.patch new file mode 100644 index 000000000000..746f778de006 --- /dev/null +++ b/sci-chemistry/gamess/files/gamess-20060907.4.gentoo.patch @@ -0,0 +1,221 @@ +diff -Naur gamess/comp gamess-new/comp +--- gamess/comp 2006-11-06 10:17:54.000000000 -0500 ++++ gamess-new/comp 2006-12-13 18:06:06.000000000 -0500 +@@ -11,8 +11,8 @@ + # linux-ia64,linux-pc,mac32,macG5,necsx,sgi32,sgi64,sun32,sun64 + # 2. Choose your GAMESS directory tree. + # +-set TARGET=ibm64 +-chdir /u1/mike/gamess ++set TARGET=linux-pc ++#chdir /u1/mike/gamess + # + # ---- and now the script begins... + # +@@ -300,6 +300,7 @@ + if ($MODULE == neomp2) set NEOCMP=true + if ($MODULE == neosym) set NEOCMP=true + if ($MODULE == neotrn) set NEOCMP=true ++if ($MODULE == neopos) set NEOCMP=true + if ($NEOCMP == true && $ACTONLY != true) set SRCDIR=qmnuc/neo + # + # ----- Does this module need to be activated? ----- +@@ -701,7 +702,7 @@ + switch ($FORTRAN) + + case gfortran: +- set OPT='-O2' ++ set gentoo-OPT = '-O2' + if ($MODULE == zheev) set OPT='-O0' # defensive compiling + if (($MODULE == qeigen) || ($MODULE == int2c)) then + mv $MODULE.f $MODULE.junk +@@ -1148,7 +1149,7 @@ + # The only thing you need to change is the next line. + # Note: you must make the analogous choice in compddi and lked, as well. + # +- set FORTRAN=g77 # choose from g77, gfortran, ifort, pgf77, f2c ++ set FORTRAN=gentoo-g77 # choose from g77, gfortran, ifort, pgf77, f2c + # + switch ($FORTRAN) + # +@@ -1167,7 +1168,7 @@ + # Pentium II fractionally). None of these optimizations are used below. + # + case g77: +- set OPT = '-O2' ++ set gentoo-OPT = '-O2' + if ($MODULE == ormas1) set OPT='-O2 -fno-move-all-movables' # RH9, g77 3.3 + if ($MODULE == zheev) set OPT='-O0' # defensive compiling + # +@@ -1203,7 +1204,7 @@ + # -std=legacy suppresses warnings about use of f77 constructs. + # + case gfortran: +- set OPT='-O2' ++ set gentoo-OPT = '-O2' + if ($MODULE == zheev) set OPT='-O0' # defensive compiling + if (($MODULE == qeigen) || ($MODULE == int2c)) then + mv $MODULE.f $MODULE.junk +@@ -1230,7 +1231,7 @@ + # but that may cause certain ifort versions to fail on some files. + # + case ifort: +- set OPT = '-O3' ++ set gentoo-OPT = '-O2' + if ($MODULE == delocl) set OPT='-O0' # from Cheol + if ($MODULE == zheev) set OPT='-O0' + set echo +diff -Naur gamess/compall gamess-new/compall +--- gamess/compall 2006-11-19 18:02:49.000000000 -0500 ++++ gamess-new/compall 2006-12-13 09:13:42.000000000 -0500 +@@ -12,8 +12,8 @@ + # linux-ia64,linux-pc,mac32,macG5,necsx,sgi32,sgi64,sun32,sun64 + # 2. Choose your GAMESS directory tree. + # +-set TARGET=ibm64 +-chdir /u1/mike/gamess ++set TARGET=linux-pc ++#chdir /u1/mike/gamess + # + # ----- and now the script begins... + # +diff -Naur gamess/ddi/compddi gamess-new/ddi/compddi +--- gamess/ddi/compddi 2006-08-30 09:34:15.000000000 -0400 ++++ gamess-new/ddi/compddi 2006-12-13 09:14:23.000000000 -0500 +@@ -14,7 +14,7 @@ + # fuji-pp32,fuji-pp64,hpux32,hpux64,ibm32,ibm64,ibm64-sp,ibm-bg, + # linux-ia64,linux-pc,mac32,macG5,necsx,sgi32,sgi64,sun32,sun64 + # +- set TARGET = ibm64 ++ set TARGET = linux-pc + + # 2. Choose DDI communication layer, the only legal values are + # sockets,mixed,mpi,shmem,lapi +@@ -488,9 +488,9 @@ + # + if($TARGET == linux-pc) then + +- set FORTRAN=g77 # choose from g77, gfortran, ifort, pgf77, f2c ++ set FORTRAN=gentoo-g77 # choose from g77, gfortran, ifort, pgf77, f2c + +- set CC = 'gcc' ++ set gentoo-CC = 'gcc' + set CFLAGS = "-DLINUX -O3 -fstrict-aliasing -I./include" + + switch ($FORTRAN) +diff -Naur gamess/ddi/tools/ddikick/ddikick.c gamess-new/ddi/tools/ddikick/ddikick.c +--- gamess/ddi/tools/ddikick/ddikick.c 2006-06-05 03:15:09.000000000 -0400 ++++ gamess-new/ddi/tools/ddikick/ddikick.c 2006-12-13 09:13:42.000000000 -0500 +@@ -105,7 +105,7 @@ + remoteshell = argv[++i]; + } else { + if((remoteshell = getenv("DDI_RSH")) == NULL) { +- remoteshell = (char *) strdup("rsh"); ++ remoteshell = (char *) strdup("ssh"); + } + } + +diff -Naur gamess/lked gamess-new/lked +--- gamess/lked 2006-11-19 18:02:58.000000000 -0500 ++++ gamess-new/lked 2006-12-13 09:13:42.000000000 -0500 +@@ -14,8 +14,8 @@ + # linux-ia64,linux-pc,mac32,macG5,necsx,sgi32,sgi64,sun32,sun64 + # 2. Choose your GAMESS directory tree. + # +-set TARGET=ibm64 +-chdir /u1/mike/gamess ++set TARGET=linux-pc ++#chdir /u1/mike/gamess + # + # ---- and now the script begins... + # +@@ -330,22 +330,22 @@ + # + if ($TARGET == linux-pc) then + # +- set FORTRAN=g77 # choose from g77, gfortran, ifort, pgf77, f2c ++ set FORTRAN=gentoo-g77 # choose from g77, gfortran, ifort, pgf77, f2c + # + switch ($FORTRAN) + case g77: + set LDR='g77' +- set LDOPTS=' ' # add '-Wl,-M' to see load map ++ set gentoo-LDOPTS=' ' # add '-Wl,-M' to see load map + set LIBRARIES=' ' + breaksw + case gfortran: + set LDR='gfortran' +- set LDOPTS=' ' ++ set gentoo-LDOPTS=' ' + set LIBRARIES=' ' + breaksw + case ifort: + set LDR='ifort' +- set LDOPTS=' ' # add '-Wl,-M' to see load map ++ set gentoo-LDOPTS=' ' # add '-Wl,-M' to see load map + set LIBRARIES='-Vaxlib' + breaksw + case pgf77: +diff -Naur gamess/runall gamess-new/runall +--- gamess/runall 2006-11-06 10:04:51.000000000 -0500 ++++ gamess-new/runall 2006-12-13 09:13:42.000000000 -0500 +@@ -10,7 +10,7 @@ + # Edit this file to set the base path to GAMESS, and execute it to be + # sure all the jobs TERMINATED NORMALLY, and got correct numbers too. + # +-chdir /u1/mike/gamess ++#chdir /u1/mike/gamess + set VERNO=00 + # + foreach NUM ( 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 \ +diff -Naur gamess/rungms gamess-new/rungms +--- gamess/rungms 2006-11-19 18:09:11.000000000 -0500 ++++ gamess-new/rungms 2006-12-13 09:13:42.000000000 -0500 +@@ -54,7 +54,7 @@ + # of using LoadLeveler via a "llgms" front end in ~/gamess/misc. + # + set TARGET=sockets +-set SCR=/scr/$USER ++set SCR=`pwd` + # + set JOB=$1 # name of the input file xxx.inp, give only the xxx part + set VERNO=$2 # revision number of the executable created by 'lked' step +@@ -114,14 +114,14 @@ + # + set echo + # ASCII input files (see explanation above) +-setenv ERICFMT ~mike/gamess/ericfmt.dat +-setenv MCPPATH ~mike/gamess/mcpdata ++setenv ERICFMT /usr/share/gamess/ericfmt/ericfmt.dat ++setenv MCPPATH /usr/share/gamess/mcpdata + setenv EXTBAS /dev/null + setenv NUCBAS /dev/null + # +-setenv IRCDATA ~$USER/scr/$JOB.irc ++setenv IRCDATA $SCR/$JOB.irc + setenv INPUT $SCR/$JOB.F05 +-setenv PUNCH ~$USER/scr/$JOB.dat ++setenv PUNCH $SCR/$JOB.dat + setenv AOINTS $SCR/$JOB.F08 + setenv MOINTS $SCR/$JOB.F09 + setenv DICTNRY $SCR/$JOB.F10 +@@ -151,8 +151,8 @@ + setenv SOINTY $SCR/$JOB.F32 + setenv SOINTZ $SCR/$JOB.F33 + setenv SORESC $SCR/$JOB.F34 +-setenv SIMEN ~$USER/scr/$JOB.simen +-setenv SIMCOR ~$USER/scr/$JOB.simcor ++setenv SIMEN $SCR/$JOB.simen ++setenv SIMCOR $SCR/$JOB.simcor + setenv GCILIST $SCR/$JOB.F37 + setenv HESSIAN $SCR/$JOB.F38 + setenv SOCCDAT $SCR/$JOB.F40 +@@ -332,7 +332,7 @@ + if ($os == HP-UX) set GMSPATH=/zr/mike/gamess + if ($os == IRIX) set GMSPATH=/home/hbar4/people/schmidt/gamess + if ($os == IRIX64) set GMSPATH=/home/hbar4/people/schmidt/gamess +- if ($os == Linux) set GMSPATH=/cu/mike/gamess ++ if ($os == Linux) set GMSPATH=/usr/bin + if ($os == OSF1) set GMSPATH=/au/mike/gamess + if ($os == SunOS) set GMSPATH=/hf/mike/gamess + # special compilation for my old Sun (uname also replies SunOS) diff --git a/sci-chemistry/gamess/gamess-20060907.4.ebuild b/sci-chemistry/gamess/gamess-20060907.4.ebuild new file mode 100644 index 000000000000..b9302483f147 --- /dev/null +++ b/sci-chemistry/gamess/gamess-20060907.4.ebuild @@ -0,0 +1,217 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/gamess-20060907.4.ebuild,v 1.1 2006/12/14 14:52:07 markusle Exp $ + +inherit eutils toolchain-funcs fortran flag-o-matic + +DESCRIPTION="A powerful quantum chemistry package" +LICENSE="gamess" +HOMEPAGE="http://www.msg.ameslab.gov/GAMESS/GAMESS.html" +SRC_URI="${P}.tar.gz" + +SLOT="0" +KEYWORDS="~ppc ~x86" +IUSE="hardened blas" + +RESTRICT="fetch" + +DEPEND="app-shells/tcsh + hardened? ( sys-apps/paxctl ) + blas? ( virtual/blas )" + +RDEPEND="app-shells/tcsh + net-misc/openssh" + +S="${WORKDIR}/${PN}" + +GAMESS_DOWNLOAD="http://www.msg.ameslab.gov/GAMESS/License_Agreement.html" +GAMESS_VERSION="7 SEP 2006 (R4)" +FORTRAN="ifc g77 gfortran" + +pkg_nofetch() { + echo + einfo "Please download ${PN}-current.tar.gz from" + einfo "${GAMESS_DOWNLOAD}." + einfo "Be sure to select the version ${GAMESS_VERSION} tarball!!" + einfo "Then move the tarball to" + einfo "${DISTDIR}/${P}.tar.gz" + echo +} + +pkg_setup() { + fortran_pkg_setup + + # blas and ifc don't go together + if use blas && [[ "${FORTRANC}" = "ifc" ]]; then + echo + ewarn "${PN} can not be compiled with USE=blas and ifc." + ewarn "Linking against GAMESS' internal blas instead." + echo + fi +} + +src_unpack() { + unpack ${A} + + # apply LINUX-arch patches to gamess makesfiles + epatch "${FILESDIR}"/${P}.gentoo.patch + + # for hardened-gcc let't turn off ssp, since it breakes + # a few routines + cd "${S}" + if use hardened && [[ "${FORTRANC}" = "g77" ]]; then + FFLAGS="${FFLAGS} -fno-stack-protector-all" + fi + + # enable NEO + sed -e "s:NEO=false:NEO=true:" -i compall lked || \ + die "Failed to enable NEO code" + + # 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 + + # use proper blas + if ! use blas || [[ "${FORTRANC}" = "ifc" ]]; then + sed -e "s|/usr/lib/libblas.a|/usr/lib/dontuselibblas.a|" \ + -i lked || die "Failed to adjust blas in lked" + 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() { + cd "${S}" + + # the executables + dobin ${PN}.00.x ddi/ddikick.x rungms \ + || die "Failed installing binaries" + + # 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 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 +} -- 2.26.2