Gentoo Archives: gentoo-commits

From: "Markus Dittrich (markusle)" <markusle@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sci-chemistry/gamess: ChangeLog gamess-20070324.3.ebuild
Date: Sat, 27 Oct 2007 17:00:52
Message-Id: E1Ilp1e-0007yn-72@stork.gentoo.org
1 markusle 07/10/27 17:00:42
2
3 Modified: ChangeLog
4 Added: gamess-20070324.3.ebuild
5 Log:
6 Version bump and keyworded gamess for amd64. An external blas library is now mandatory.
7 (Portage version: 2.1.3.15)
8
9 Revision Changes Path
10 1.23 sci-chemistry/gamess/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-chemistry/gamess/ChangeLog?rev=1.23&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-chemistry/gamess/ChangeLog?rev=1.23&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-chemistry/gamess/ChangeLog?r1=1.22&r2=1.23
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v
19 retrieving revision 1.22
20 retrieving revision 1.23
21 diff -u -r1.22 -r1.23
22 --- ChangeLog 19 Aug 2007 01:01:30 -0000 1.22
23 +++ ChangeLog 27 Oct 2007 17:00:41 -0000 1.23
24 @@ -1,6 +1,13 @@
25 # ChangeLog for sci-chemistry/gamess
26 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v 1.22 2007/08/19 01:01:30 markusle Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/ChangeLog,v 1.23 2007/10/27 17:00:41 markusle Exp $
29 +
30 +*gamess-20070324.3 (27 Oct 2007)
31 +
32 + 27 Oct 2007; Markus Dittrich <markusle@g.o>
33 + +files/gamess-20070324.3.gentoo.patch, +gamess-20070324.3.ebuild:
34 + Version bump and keyworded gamess for amd64.
35 + An external blas library is now mandatory.
36
37 19 Aug 2007; Markus Dittrich <markusle@g.o>
38 gamess-20070324.1.ebuild:
39
40
41
42 1.1 sci-chemistry/gamess/gamess-20070324.3.ebuild
43
44 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-chemistry/gamess/gamess-20070324.3.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-chemistry/gamess/gamess-20070324.3.ebuild?rev=1.1&content-type=text/plain
46
47 Index: gamess-20070324.3.ebuild
48 ===================================================================
49 # Copyright 1999-2007 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/sci-chemistry/gamess/gamess-20070324.3.ebuild,v 1.1 2007/10/27 17:00:41 markusle Exp $
52
53 inherit eutils toolchain-funcs fortran flag-o-matic
54
55 DESCRIPTION="A powerful quantum chemistry package"
56 LICENSE="gamess"
57 HOMEPAGE="http://www.msg.ameslab.gov/GAMESS/GAMESS.html"
58 SRC_URI="${P}.tar.gz"
59
60 SLOT="0"
61 KEYWORDS="~ppc ~x86 ~amd64"
62 IUSE="hardened"
63
64 RESTRICT="fetch"
65
66 DEPEND="app-shells/tcsh
67 hardened? ( sys-apps/paxctl )
68 virtual/blas"
69
70 RDEPEND="${DEPEND}
71 net-misc/openssh"
72
73 S="${WORKDIR}/${PN}"
74
75 GAMESS_DOWNLOAD="http://www.msg.ameslab.gov/GAMESS/License_Agreement.html"
76 GAMESS_VERSION="24 MAR 2007 (R3)"
77 FORTRAN="ifc g77 gfortran"
78
79 pkg_nofetch() {
80 echo
81 einfo "Please download ${PN}-current.tar.gz from"
82 einfo "${GAMESS_DOWNLOAD}."
83 einfo "Be sure to select the version ${GAMESS_VERSION} tarball!!"
84 einfo "Then move the tarball to"
85 einfo "${DISTDIR}/${P}.tar.gz"
86 echo
87 }
88
89 pkg_setup() {
90 fortran_pkg_setup
91
92 # currently amd64 is only supported with gfortran
93 if [[ "${ARCH}" == "amd64" ]] && [[ "${FORTRANC}" != "gfortran" ]];
94 then die "You will need gfortran to compile gamess on amd64"
95 fi
96 }
97
98 src_unpack() {
99 unpack ${A}
100
101 # apply LINUX-arch patches to gamess makesfiles
102 epatch "${FILESDIR}"/${P}.gentoo.patch
103
104 # select arch
105 # NOTE: please leave lked alone; it should be good as is!!
106 cd "${S}"
107 local active_arch;
108 if [[ "${ARCH}" == "amd64" ]]; then
109 active_arch="linux64";
110 else
111 active_arch="linux32";
112 fi
113 sed -e "s:gentoo-target:${active_arch}:" \
114 -i comp compall ddi/compddi \
115 || die "Failed to select proper architecure"
116
117 # for hardened-gcc let't turn off ssp, since it breakes
118 # a few routines
119 if use hardened && [[ "${FORTRANC}" = "g77" ]]; then
120 FFLAGS="${FFLAGS} -fno-stack-protector-all"
121 fi
122
123 # enable NEO
124 sed -e "s:NEO=false:NEO=true:" -i compall lked || \
125 die "Failed to enable NEO code"
126
127 # greate proper activate sourcefile
128 cp "./tools/actvte.code" "./tools/actvte.f" || \
129 die || "Failed to create actvte.f"
130 sed -e "s/^\*UNX/ /" -i "./tools/actvte.f" || \
131 die || "Failed to perform UNX substitutions in actvte.f"
132
133 # fix GAMESS' compall script to use proper CC
134 sed -e "s|\$CCOMP -c \$extraflags source/zunix.c|$(tc-getCC) -c \$extraflags source/zunix.c|" \
135 -i compall || die "Failed setting up compall script"
136
137 # insert proper FFLAGS into GAMESS' comp makefile
138 # in case we're using ifc let's strip all the gcc
139 # specific stuff
140 if [[ "${FORTRANC}" == "ifc" ]]; then
141 sed -e "s/gentoo-OPT = '-O2'/OPT = '${FFLAGS} -quiet'/" \
142 -e "s/gentoo-g77/${FORTRANC}/" \
143 -i comp || die "Failed setting up comp script"
144 elif ! use x86; then
145 sed -e "s/-malign-double //" \
146 -e "s/gentoo-OPT = '-O2'/OPT = '${FFLAGS}'/" \
147 -e "s/gentoo-g77/${FORTRANC}/" \
148 -i comp || die "Failed setting up comp script"
149 else
150 sed -e "s/gentoo-OPT = '-O2'/OPT = '${FFLAGS}'/" \
151 -e "s/gentoo-g77/${FORTRANC}/" \
152 -i comp || die "Failed setting up comp script"
153 fi
154
155 # fix up GAMESS' linker script;
156 sed -e "s/gentoo-g77/${FORTRANC}/" \
157 -e "s/gentoo-LDOPTS=' '/LDOPTS='${LDFLAGS}'/" \
158 -i lked || die "Failed setting up lked script"
159
160 # fix up GAMESS' ddi TCP/IP socket build
161 sed -e "s/gentoo-CC = 'gcc'/CC = '$(tc-getCC)'/" \
162 -e "s/gentoo-g77/${FORTRANC}/" \
163 -i ddi/compddi || die "Failed setting up compddi script"
164
165 # fix up the checker scripts for gamess tests
166 sed -e "s:set GMSPATH:#set GMSPATH:g" \
167 -e "s:\$GMSPATH/tools/checktst:.:g" \
168 -i tools/checktst/checktst
169 }
170
171 src_compile() {
172 # build actvte
173 cd "${S}"/tools
174 "${FORTRANC}" -o actvte.x actvte.f || \
175 die "Failed to compile actvte.x"
176
177 # for hardened (PAX) users and ifc we need to turn
178 # MPROTECT off
179 if [[ "${FORTRANC}" == "ifc" ]] && use hardened; then
180 /sbin/paxctl -PemRxS actvte.x 2> /dev/null || \
181 die "paxctl failed on actvte.x"
182 fi
183
184 # build gamess
185 cd "${S}"
186 ./compall || die "compall failed"
187
188 # build the ddi TCP/IP socket stuff
189 cd ${S}/"ddi"
190 ./compddi || die "compddi failed"
191
192 # finally, link it all together
193 cd "${S}"
194 ./lked || die "lked failed"
195
196 # for hardened (PAX) users and ifc we need to turn
197 # MPROTECT off
198 if [[ "${FORTRANC}" == "ifc" ]] && use hardened; then
199 /sbin/paxctl -PemRxS ${PN}.00.x 2> /dev/null || \
200 die "paxctl failed on actvte.x"
201 fi
202 }
203
204 src_install() {
205 cd "${S}"
206
207 # the executables
208 dobin ${PN}.00.x ddi/ddikick.x rungms \
209 || die "Failed installing binaries"
210
211 # the docs
212 dodoc *.DOC qmnuc/*.DOC || die "Failed installing docs"
213
214 # install ericftm
215 insinto /usr/share/${PN}/ericfmt
216 doins ericfmt.dat || die "Failed installing ericfmt.dat"
217
218 # install mcpdata
219 insinto /usr/share/${PN}/mcpdata
220 doins mcpdata/* || die "Failed installing mcpdata"
221
222 # install the tests the user should run, and
223 # fix up the runscript; also grab a copy of rungms
224 # so the user is ready to run the tests
225 insinto /usr/share/${PN}/tests
226 insopts -m0644
227 doins tests/* || die "Failed installing tests"
228 insopts -m0744
229 doins runall || die "Failed installing tests"
230 doins tools/checktst/checktst tools/checktst/chkabs || \
231 die "Failed to install main test checker"
232 doins tools/checktst/exam* || \
233 die "Failed to install individual test files"
234
235 insinto /usr/share/${PN}/neotests
236 insopts -m0644
237 doins -r qmnuc/neotests/* || die "Failed to install NEO tests"
238 }
239
240 pkg_postinst() {
241 echo
242 einfo "Before you use GAMESS for any serious work you HAVE"
243 einfo "to run the supplied test files located in"
244 einfo "/usr/share/gamess/tests and check them thoroughly."
245 einfo "Otherwise all scientific publications resulting from"
246 einfo "your GAMESS runs should be immediately rejected :)"
247 einfo "To do so copy the content of /usr/share/gamess/tests"
248 einfo "to some temporary location and execute './runall'. "
249 einfo "Then run the checktst script in the same directory to"
250 einfo "validate the tests."
251 einfo "Please consult TEST.DOC and the other docs!"
252
253 if [[ "${FORTRANC}" == "ifc" ]]; then
254 echo
255 ewarn "IMPORTANT NOTE: We STRONGLY recommend to stay away"
256 ewarn "from ifc-9.0 for now and use the ifc-8.1 series of"
257 ewarn "compilers UNLESS you can run through ALL of the "
258 ewarn "test cases (see above) successfully."
259 fi
260
261 echo
262 einfo "If you want to run on more than a single CPU"
263 einfo "you will have to acquaint yourself with the way GAMESS"
264 einfo "does multiprocessor runs and adjust rungms according to"
265 einfo "your target network architecture."
266 echo
267 }
268
269
270
271 --
272 gentoo-commits@g.o mailing list