Gentoo Archives: gentoo-commits

From: "Steve Arnold (nerdboy)" <nerdboy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-cluster/pvfs2: ChangeLog pvfs2-2.7.0.ebuild
Date: Mon, 03 Dec 2007 00:00:52
Message-Id: E1Iyyju-0001WN-Gw@stork.gentoo.org
1 nerdboy 07/12/03 00:00:46
2
3 Modified: ChangeLog
4 Added: pvfs2-2.7.0.ebuild
5 Log:
6 Added latest upstream release to address shared library and API issues
7 (Portage version: 2.1.4_rc1)
8
9 Revision Changes Path
10 1.9 sys-cluster/pvfs2/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/pvfs2/ChangeLog?rev=1.9&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/pvfs2/ChangeLog?rev=1.9&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/pvfs2/ChangeLog?r1=1.8&r2=1.9
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sys-cluster/pvfs2/ChangeLog,v
19 retrieving revision 1.8
20 retrieving revision 1.9
21 diff -u -r1.8 -r1.9
22 --- ChangeLog 17 Oct 2007 02:40:58 -0000 1.8
23 +++ ChangeLog 3 Dec 2007 00:00:45 -0000 1.9
24 @@ -1,6 +1,16 @@
25 # ChangeLog for sys-cluster/pvfs2
26 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/pvfs2/ChangeLog,v 1.8 2007/10/17 02:40:58 nerdboy Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/pvfs2/ChangeLog,v 1.9 2007/12/03 00:00:45 nerdboy Exp $
29 +
30 +*pvfs2-2.7.0 (02 Dec 2007)
31 +
32 + 02 Dec 2007; Steve Arnold <nerdboy@g.o> +pvfs2-2.7.0.ebuild,
33 + +files/2.7.0-lib-install.patch, +files/2.7.0-soname.patch:
34 + Added latest upstream release to address shared library issues and
35 + dependent packages (eg, mpich2, hdf5-parallel, etc). Also enabled
36 + the shared version of libpvfs2-threaded. This is definitely the one
37 + you want if you need the latest cluster/MPI support (although the
38 + threaded lib needs testing).
39
40 17 Oct 2007; Steve Arnold <nerdboy@g.o> pvfs2-2.6.3-r1.ebuild,
41 pvfs2-2.6.3.ebuild, pvfs2-1.5.1.ebuild:
42
43
44
45 1.1 sys-cluster/pvfs2/pvfs2-2.7.0.ebuild
46
47 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/pvfs2/pvfs2-2.7.0.ebuild?rev=1.1&view=markup
48 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-cluster/pvfs2/pvfs2-2.7.0.ebuild?rev=1.1&content-type=text/plain
49
50 Index: pvfs2-2.7.0.ebuild
51 ===================================================================
52 # Copyright 1999-2007 Gentoo Foundation
53 # Distributed under the terms of the GNU General Public License v2
54 # $Header: /var/cvsroot/gentoo-x86/sys-cluster/pvfs2/pvfs2-2.7.0.ebuild,v 1.1 2007/12/03 00:00:45 nerdboy Exp $
55
56 inherit linux-mod autotools toolchain-funcs
57
58 MY_PN="${PN%[0-9]*}"
59 MY_P="${MY_PN}-${PV}"
60 S="${WORKDIR}/${MY_P}"
61
62 DESCRIPTION="Parallel Virtual File System version 2"
63 HOMEPAGE="http://www.pvfs.org/"
64 SRC_URI="ftp://ftp.parl.clemson.edu/pub/pvfs2/${MY_P}.tar.gz"
65
66 RDEPEND="gtk? ( >=x11-libs/gtk+-2 )
67 sys-libs/db
68 dev-libs/openssl
69 apidocs? ( app-doc/doxygen )
70 doc? ( dev-tex/latex2html
71 virtual/tetex )"
72
73 DEPEND="${RDEPEND}
74 virtual/linux-sources
75 examples? ( dev-lang/perl )"
76
77 SLOT="0"
78 LICENSE="GPL-2"
79 KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
80 IUSE="apidocs doc examples gtk server static"
81
82 pkg_setup() {
83 linux-mod_pkg_setup
84
85 if kernel_is 2 4; then
86 BUILD_TARGETS="just_kmod24"
87 ECONF_PARAMS="--with-kernel24=${KV_DIR}"
88 MODULE_NAMES="pvfs2(fs::src/kernel/linux-2.4)"
89 else
90 BUILD_TARGETS="just_kmod"
91 ECONF_PARAMS="--with-kernel=${KV_DIR} --enable-verbose-build"
92 MODULE_NAMES="pvfs2(fs::src/kernel/linux-2.6)"
93 fi
94
95 # Notice I don't include --disable-static because it makes the linker
96 # fail due to a missing library needed by LIBS_THREADED += -lpvfs2-threaded.
97 # However that library is only compiled if static is enabled. Anyway
98 # it is used to build pvfs2-client-core-threaded, which is not installed
99 # by make kmod_install (unstable perhaps?)
100
101 # As of version 2.7.0 both static and shared versions of lpvfs2-threaded
102 # are built and installed (via the soname patch). Feel free to test ...
103 ECONF_PARAMS="${ECONF_PARAMS} $(use_enable !static shared)"
104 ECONF_PARAMS="${ECONF_PARAMS} $(use_enable gtk karma)"
105 ECONF_PARAMS="${ECONF_PARAMS} $(use_enable server)"
106 ECONF_PARAMS="${ECONF_PARAMS} --libdir=/usr/$(get_libdir)"
107 ECONF_PARAMS="${ECONF_PARAMS} --enable-mmap-racache"
108 ECONF_PARAMS="${ECONF_PARAMS} --with-openssl=/usr"
109 }
110
111 src_unpack() {
112 unpack ${A}
113 cd "${S}"
114 find "${S}" -name '*\.d' | xargs rm -rf
115
116 AT_M4DIR="maint/config" eautoreconf
117
118 epatch "${FILESDIR}"/2.6.3-as-needed.patch || die "as-needed patch failed"
119 epatch "${FILESDIR}/${PV}"-lib-install.patch || die "install patch failed"
120 epatch "${FILESDIR}/${PV}"-soname.patch || die "soname patch failed"
121
122 # Fix so we can install kernapps separate from kmod_install
123 sed -i '/^kmod_install: kmod/{
124 s/\(kmod_install:.*kernapps\)\(.*\)/\1_install\2\n.PHONY: kernapps_install\nkernapps_install: kernapps/}' Makefile.in
125 sed -i '/^kmod24_install: kmod/{
126 s/\(kmod24_install:.*kernapps\)\(.*\)/\1_install\2\n.PHONY: kernapps_install\nkernapps_install: kernapps/}' Makefile.in
127
128 #This is needed when gcc doesn't support -Wno-pointer-sign. Now it will give us some warnings so it also removes -Werror.
129 #It's unsafe, not recommended
130 if [ "$(gcc-major-version)" -lt "4" ]; then
131 ewarn "It's recommended to use gcc >= 4.0 to avoid the following patch"
132 epatch "${FILESDIR}"/2.6.3-no-pointer-sign.patch
133 fi
134 }
135
136 src_compile() {
137 # since ${ECONF_PARAMS} is set, linux-mod_src_compile will invoke
138 # its own configure, so running econf just makes it go twice...
139
140 linux-mod_src_compile || die "Unable to linux-mod_src_compile"
141 make kernapps || die "Unable to make kernapps."
142 make all || die "Unable to make all."
143
144 if use doc ; then
145 make docs || die "Unable to make docs."
146 if use apidocs ; then
147 cd "${S}"/doc
148 doxygen doxygen/pvfs2-doxygen.conf || die "doxygen failed"
149 fi
150 fi
151 }
152
153 src_install() {
154 linux-mod_src_install || die "linux-mod_src_install failed"
155 emake DESTDIR="${D}" kernapps_install || die "kernapps_install failed"
156 emake DESTDIR="${D}" install || die "install failed"
157
158 cd "${D}"usr/$(get_libdir)
159 dosym libpvfs2.so.2.0 /usr/$(get_libdir)/libpvfs2.so.2
160 dosym libpvfs2.so.2 /usr/$(get_libdir)/libpvfs2.so
161 dosym libpvfs2-threaded.so.2.0 /usr/$(get_libdir)/libpvfs2-threaded.so.2
162 dosym libpvfs2-threaded.so.2 /usr/$(get_libdir)/libpvfs2-threaded.so
163 cd "${S}"
164
165 if use server; then
166 newinitd "${FILESDIR}"/pvfs2-server.rc pvfs2-server
167 newconfd "${FILESDIR}"/pvfs2-server.conf pvfs2-server
168 fi
169
170 newinitd "${FILESDIR}"/pvfs2-client-init.d pvfs2-client
171 newconfd "${FILESDIR}"/pvfs2-client.conf pvfs2-client
172
173 # this is LARGE (~5mb)
174 if use doc; then
175 dodoc doc/multi-fs-doc.txt doc/add-server-req \
176 doc/add-client-syscall doc/coding/valgrind \
177 doc/coding/backtrace_analysis.txt
178 insinto /usr/share/doc/"${PF}"/
179 doins doc/*.pdf doc/coding/developer-guidelines.pdf \
180 doc/design/*.pdf doc/random/SystemInterfaceTesting.pdf
181 if use apidocs ; then
182 dohtml -A map -A md5 doc/doxygen/html/*
183 fi
184 fi
185
186 dodoc AUTHORS CREDITS ChangeLog INSTALL README
187 docinto examples
188 dodoc examples/{fs.conf,pvfs2-server.rc}
189 if use examples ; then
190 insinto /usr/share/doc/"${PF}"/examples/heartbeat
191 doins examples/heartbeat/*
192 fi
193 }
194
195 pkg_config () {
196 elog "Creating new unified configuration file; if you have been"
197 elog "running a previous version, you should run the conversion"
198 elog "script instead. See pvfs2-config-convert --help for more"
199 elog "info."
200 elog
201
202 einfo ">>> Creating new unified config file - you may accept the"
203 einfo ">>> defaults or adjust to suite your desired setup..."
204
205 "${ROOT}"/usr/bin/pvfs2-genconfig "${ROOT}"/etc/pvfs2-fs.conf
206
207 einfo
208 einfo ">>> If this is the first time running the server, you must"
209 einfo ">>> create the storage location first, which is part of the"
210 einfo ">>> config you just specified above. To do this, run the"
211 einfo ">>> following command once as root, then start the server"
212 einfo ">>> using the init script:"
213 einfo " /usr/sbin/pvfs2-server /etc/pvfs2-fs.conf -f"
214 einfo
215 }
216
217 pkg_preinst() {
218 linux-mod_pkg_preinst
219 }
220
221 pkg_postinst() {
222 linux-mod_pkg_postinst
223 ewarn
224 ewarn "You must convert your old config files or create a new one, so"
225 ewarn "either emerge --config =${CATEGORY}/${PF} or run the supplied"
226 ewarn "conversion script to complete the installation."
227 ewarn
228 ewarn "Note that libpvfs2-threaded.so is new and needs testing..."
229 ewarn
230
231 elog "To enable PVFS2 Server on boot you will have to add it to the"
232 elog "default profile, issue the following command as root to do so."
233 elog
234 elog "rc-update add pvfs2-server default"
235 }
236
237 pkg_postrm() {
238 linux-mod_pkg_postrm
239 elog
240 elog "If you're removing this package completely and the file"
241 elog "/lib/modules/${KV_FULL}/fs/pvfs2.ko is still"
242 elog "there, you'll have to remove it yourself."
243 }
244
245
246
247 --
248 gentoo-commits@g.o mailing list