Gentoo Archives: gentoo-commits

From: "Justin Lecher (jlec)" <jlec@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sci-libs/ccp4-libs: ChangeLog ccp4-libs-6.1.3-r5.ebuild
Date: Fri, 31 Dec 2010 12:24:57
Message-Id: 20101231122448.E410120054@flycatcher.gentoo.org
1 jlec 10/12/31 12:24:48
2
3 Modified: ChangeLog
4 Added: ccp4-libs-6.1.3-r5.ebuild
5 Log:
6 Install missing file like enviro.def
7
8 (Portage version: 2.2.0_alpha10/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.18 sci-libs/ccp4-libs/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/ccp4-libs/ChangeLog?rev=1.18&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/ccp4-libs/ChangeLog?rev=1.18&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/ccp4-libs/ChangeLog?r1=1.17&r2=1.18
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/sci-libs/ccp4-libs/ChangeLog,v
20 retrieving revision 1.17
21 retrieving revision 1.18
22 diff -u -r1.17 -r1.18
23 --- ChangeLog 20 Dec 2010 12:28:01 -0000 1.17
24 +++ ChangeLog 31 Dec 2010 12:24:48 -0000 1.18
25 @@ -1,6 +1,11 @@
26 # ChangeLog for sci-libs/ccp4-libs
27 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/ccp4-libs/ChangeLog,v 1.17 2010/12/20 12:28:01 hwoarang Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/ccp4-libs/ChangeLog,v 1.18 2010/12/31 12:24:48 jlec Exp $
30 +
31 +*ccp4-libs-6.1.3-r5 (31 Dec 2010)
32 +
33 + 31 Dec 2010; <justin@g.o> +ccp4-libs-6.1.3-r5.ebuild:
34 + Install missing file like enviro.def
35
36 20 Dec 2010; Markos Chandras <hwoarang@g.o> ccp4-libs-6.1.3-r4.ebuild:
37 Stable on amd64 wrt bug #348872
38
39
40
41 1.1 sci-libs/ccp4-libs/ccp4-libs-6.1.3-r5.ebuild
42
43 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/ccp4-libs/ccp4-libs-6.1.3-r5.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/ccp4-libs/ccp4-libs-6.1.3-r5.ebuild?rev=1.1&content-type=text/plain
45
46 Index: ccp4-libs-6.1.3-r5.ebuild
47 ===================================================================
48 # Copyright 1999-2010 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/sci-libs/ccp4-libs/ccp4-libs-6.1.3-r5.ebuild,v 1.1 2010/12/31 12:24:48 jlec Exp $
51
52 EAPI="3"
53
54 inherit eutils gnuconfig multilib toolchain-funcs
55
56 SRC="ftp://ftp.ccp4.ac.uk/ccp4"
57
58 #UPDATE="04_03_09"
59 #PATCHDATE="090511"
60
61 MY_P="${P/-libs}"
62
63 PATCH_TOT="0"
64 # Here's a little scriptlet to generate this list from the provided
65 # index.patches file
66 #
67 # i=1; while read -a line; do [[ ${line//#} != ${line} ]] && continue;
68 # echo "PATCH${i}=( ${line[1]}"; echo "${line[0]} )"; (( i++ )); done <
69 # index.patches
70 #PATCH1=( src/topp_
71 #topp.f-r1.16.2.5-r1.16.2.6.diff )
72 #PATCH2=( .
73 #configure-r1.372.2.18-r1.372.2.19.diff )
74
75 DESCRIPTION="Protein X-ray crystallography toolkit"
76 HOMEPAGE="http://www.ccp4.ac.uk/"
77 SRC_URI="${SRC}/${PV}/${MY_P}-core-src.tar.gz"
78 # patch tarball from upstream
79 [[ -n ${UPDATE} ]] && SRC_URI="${SRC_URI} ${SRC}/${PV}/updates/${P}-src-patch-${UPDATE}.tar.gz"
80 # patches created by us
81 [[ -n ${PATCHDATE} ]] && SRC_URI="${SRC_URI} http://dev.gentooexperimental.org/~jlec/science-dist/${PV}-${PATCHDATE}-updates.patch.bz2"
82
83 for i in $(seq $PATCH_TOT); do
84 NAME="PATCH${i}[1]"
85 SRC_URI="${SRC_URI}
86 ${SRC}/${PV}/patches/${!NAME}"
87 done
88
89 LICENSE="ccp4"
90 SLOT="0"
91 KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
92 IUSE=""
93
94 RDEPEND="
95 virtual/jpeg
96 app-shells/tcsh
97 !<sci-chemistry/ccp4-6.1.3
98 !<sci-chemistry/ccp4-apps-6.1.3-r6
99 sci-libs/cbflib
100 =sci-libs/fftw-2*
101 sci-libs/mmdb
102 sci-libs/monomer-db
103 virtual/lapack
104 virtual/blas"
105 DEPEND="${RDEPEND}"
106
107 S="${WORKDIR}/${MY_P}"
108
109 src_prepare() {
110 einfo "Applying upstream patches ..."
111 for patch in $(seq $PATCH_TOT); do
112 base="PATCH${patch}"
113 dir=$(eval echo \${${base}[0]})
114 p=$(eval echo \${${base}[1]})
115 pushd "${dir}" >& /dev/null
116 ccp_patch "${DISTDIR}/${p}"
117 popd >& /dev/null
118 done
119 einfo "Done."
120 echo
121
122 [[ -n ${PATCHDATE} ]] && epatch "${WORKDIR}"/${PV}-${PATCHDATE}-updates.patch
123
124 einfo "Applying Gentoo patches ..."
125 # fix buffer overflows wrt bug 339706
126 ccp_patch "${FILESDIR}"/${PV}-overflows.patch
127
128 # it tries to create libdir, bindir etc on live system in configure
129 ccp_patch "${FILESDIR}"/${PV}-dont-make-dirs-in-configure.patch
130
131 # gerror_ gets defined twice on ppc if you're using gfortran/g95
132 ccp_patch "${FILESDIR}"/6.0.2-ppc-double-define-gerror.patch
133
134 # make creation of libccif.so smooth
135 ccp_patch "${FILESDIR}"/${PV}-ccif-shared.patch
136
137 # lets try to build libmmdb seperatly
138 ccp_patch "${FILESDIR}"/${PV}-dont-build-mmdb.patch
139
140 # unbundle libjpeg and cbflib
141 ccp_patch "${FILESDIR}"/${PV}-unbundle-libs.patch
142
143 # Fix missing DESTIDR
144 # not installing during build
145 ccp_patch "${FILESDIR}"/${PV}-noinstall.patch
146 sed \
147 -e '/SHARE_INST/s:$(libdir):$(DESTDIR)/$(libdir):g' \
148 -i configure || die
149
150 einfo "Done." # done applying Gentoo patches
151 echo
152
153 sed \
154 -e "s:/usr:${EPREFIX}/usr:g" \
155 -e 's:-Wl,-rpath,$CLIB::g' \
156 -e 's: -rpath $CLIB::g' \
157 -e 's: -I${srcdir}/include/cpp_c_headers::g' \
158 -i configure || die
159
160 gnuconfig_update
161 }
162
163 src_configure() {
164
165 rm -rf lib/DiffractionImage/{jpg,CBFlib} || die
166
167 # Build system is broken if we set LDFLAGS
168 userldflags="${LDFLAGS}"
169 export SHARED_LIB_FLAGS="${LDFLAGS}"
170 unset LDFLAGS
171
172 # GENTOO_OSNAME can be one of:
173 # irix irix64 sunos sunos64 aix hpux osf1 linux freebsd
174 # linux_compaq_compilers linux_intel_compilers generic Darwin
175 # ia64_linux_intel Darwin_ibm_compilers linux_ibm_compilers
176 if [[ "$(tc-getFC)" = "ifort" ]]; then
177 if use ia64; then
178 GENTOO_OSNAME="ia64_linux_intel"
179 else
180 # Should be valid for x86, maybe amd64
181 GENTOO_OSNAME="linux_intel_compilers"
182 fi
183 else
184 # Should be valid for x86 and amd64, at least
185 GENTOO_OSNAME="linux"
186 fi
187
188 # Sets up env
189 ln -s \
190 ccp4.setup-bash \
191 "${S}"/include/ccp4.setup
192
193 # We agree to the license by emerging this, set in LICENSE
194 sed -i \
195 -e "s~^\(^agreed=\).*~\1yes~g" \
196 "${S}"/configure
197
198 # Fix up variables -- need to reset CCP4_MASTER at install-time
199 sed -i \
200 -e "s~^\(setenv CCP4_MASTER.*\)/.*~\1"${WORKDIR}"~g" \
201 -e "s~^\(setenv CCP4I_TCLTK.*\)/usr/local/bin~\1${EPREFIX}/usr/bin~g" \
202 "${S}"/include/ccp4.setup*
203
204 # Set up variables for build
205 source "${S}"/include/ccp4.setup
206
207 export CC=$(tc-getCC)
208 export CXX=$(tc-getCXX)
209 export COPTIM=${CFLAGS}
210 export CXXOPTIM=${CXXFLAGS}
211 # Default to -O2 if FFLAGS is unset
212 export FC=$(tc-getFC)
213 export FOPTIM=${FFLAGS:- -O2}
214 # export CCP4_SCR="${T}"
215
216 # Fix linking
217 # $(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++ && \
218 export SHARE_LIB="\
219 $(tc-getCC) ${userldflags} -shared -Wl,-soname,libccp4c.so -o libccp4c.so \${CORELIBOBJS} \${CGENERALOBJS} \${CUCOBJS} \${CMTZOBJS} \${CMAPOBJS} \${CSYMOBJS} -L../ccif/ -lccif $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lm && \
220 $(tc-getFC) ${userldflags} -shared -Wl,-soname,libccp4f.so -o libccp4f.so \${FORTRANLOBJS} \${FINTERFACEOBJS} -L../ccif/ -lccif -L. -lccp4c -lmmdb $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lstdc++ -lgfortran -lm"
221
222 # Can't use econf, configure rejects unknown options like --prefix
223 ./configure \
224 --onlylibs \
225 --with-shared-libs \
226 --with-fftw="${EPREFIX}"/usr \
227 --with-warnings \
228 --disable-cctbx \
229 --disable-clipper \
230 --tmpdir="${TMPDIR}" \
231 --bindir="${EPREFIX}"/usr/libexec/ccp4/bin/ \
232 --libdir="${EPREFIX}"/usr/$(get_libdir) \
233 ${GENTOO_OSNAME} || die "econf failed"
234 }
235
236 src_compile() {
237 emake -j1 \
238 DESTDIR="${D}" onlylib || die "emake failed"
239 }
240
241 src_install() {
242 # Set up variables for build
243 source "${S}"/include/ccp4.setup
244
245 emake -j1 \
246 DESTDIR="${D}" \
247 includedir="${EPREFIX}"/usr/include \
248 library_includedir="${EPREFIX}"/usr/include \
249 install || die
250
251 # Libs
252 for file in "${S}"/lib/*; do
253 if [[ -d ${file} ]]; then
254 continue
255 elif [[ -x ${file} ]]; then
256 dolib.so ${file} || die
257 else
258 insinto /usr/$(get_libdir)
259 doins ${file} || die
260 fi
261 done
262
263 # Fix libdir in all *.la files
264 sed -i \
265 -e "s:^\(libdir=\).*:\1\'${EPREFIX}/usr/$(get_libdir)\':g" \
266 "${ED}"/usr/$(get_libdir)/*.la || die
267
268 # Data
269 insinto /usr/share/ccp4/data/
270 doins -r "${S}"/lib/data/{*.PARM,*.prt,*.lib,*.dic,*.idl,*.cif,*.resource,*.york,*.hist,fraglib,reference_structures} || die
271
272 # Environment files, setup scripts, etc.
273 rm -rf "${S}"/include/{ccp4.setup*,COPYING,cpp_c_headers} || die
274 insinto /usr/share/ccp4/
275 doins -r "${S}"/include || die
276
277 dodoc "${S}"/lib/data/*.doc || die
278 newdoc "${S}"/lib/data/README DATA-README || die
279 }
280
281 # Epatch wrapper for bulk patching
282 ccp_patch() {
283 EPATCH_SINGLE_MSG=" ${1##*/} ..." epatch ${1}
284 }