Gentoo Archives: gentoo-commits

From: "Robin H. Johnson (robbat2)" <robbat2@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-fs/lvm2: ChangeLog lvm2-2.02.64.ebuild
Date: Sat, 01 May 2010 21:21:07
Message-Id: 20100501212104.A65242C156@corvid.gentoo.org
1 robbat2 10/05/01 21:21:04
2
3 Modified: ChangeLog
4 Added: lvm2-2.02.64.ebuild
5 Log:
6 Bug #318037: version bump.
7 (Portage version: 2.2_rc67/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.206 sys-fs/lvm2/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/lvm2/ChangeLog?rev=1.206&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/lvm2/ChangeLog?rev=1.206&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/lvm2/ChangeLog?r1=1.205&r2=1.206
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sys-fs/lvm2/ChangeLog,v
19 retrieving revision 1.205
20 retrieving revision 1.206
21 diff -p -w -b -B -u -u -r1.205 -r1.206
22 --- ChangeLog 22 Apr 2010 19:33:26 -0000 1.205
23 +++ ChangeLog 1 May 2010 21:21:04 -0000 1.206
24 @@ -1,6 +1,11 @@
25 # ChangeLog for sys-fs/lvm2
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/ChangeLog,v 1.205 2010/04/22 19:33:26 robbat2 Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/ChangeLog,v 1.206 2010/05/01 21:21:04 robbat2 Exp $
29 +
30 +*lvm2-2.02.64 (01 May 2010)
31 +
32 + 01 May 2010; Robin H. Johnson <robbat2@g.o> +lvm2-2.02.64.ebuild:
33 + Bug #318037: version bump.
34
35 *lvm2-2.02.63-r2 (22 Apr 2010)
36
37
38
39
40 1.1 sys-fs/lvm2/lvm2-2.02.64.ebuild
41
42 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/lvm2/lvm2-2.02.64.ebuild?rev=1.1&view=markup
43 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/lvm2/lvm2-2.02.64.ebuild?rev=1.1&content-type=text/plain
44
45 Index: lvm2-2.02.64.ebuild
46 ===================================================================
47 # Copyright 1999-2010 Gentoo Foundation
48 # Distributed under the terms of the GNU General Public License v2
49 # $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.64.ebuild,v 1.1 2010/05/01 21:21:04 robbat2 Exp $
50
51 EAPI=2
52 inherit eutils multilib toolchain-funcs autotools
53
54 DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
55 HOMEPAGE="http://sources.redhat.com/lvm2/"
56 SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
57 ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
58
59 LICENSE="GPL-2"
60 SLOT="0"
61 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
62
63 IUSE="readline +static clvm cman +lvm1 selinux"
64
65 DEPEND_COMMON="!!sys-fs/device-mapper
66 clvm? ( =sys-cluster/dlm-2*
67 cman? ( =sys-cluster/cman-2* ) )
68 || ( =sys-fs/udev-146-r3 >=sys-fs/udev-151-r2 )"
69
70 RDEPEND="${DEPEND_COMMON}
71 !<sys-apps/openrc-0.4
72 !!sys-fs/lvm-user
73 !!sys-fs/clvm
74 >=sys-apps/util-linux-2.16"
75
76 DEPEND="${DEPEND_COMMON}
77 dev-util/pkgconfig"
78
79 S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
80
81 pkg_setup() {
82 # 1. Genkernel no longer copies /sbin/lvm blindly.
83 # 2. There are no longer any linking deps in /usr.
84 if use static; then
85 elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
86 elog "their static versions. If you need the static binaries,"
87 elog "you must append .static the filename!"
88 fi
89 }
90
91 src_unpack() {
92 unpack ${A}
93 }
94
95 src_prepare() {
96 epatch "${FILESDIR}"/lvm.conf-2.02.56.patch
97
98 # Should not be needed due to upstream re-arrangement of build
99 #epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
100 # Should not be need with new upstream udev rules
101 #epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
102
103 # Merged upstream:
104 #epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
105 # Merged upstream:
106 #epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
107 # Merged upstream:
108 #epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
109 # Fixed differently upstream:
110 #epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
111
112 epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
113 epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
114
115 eautoreconf
116 }
117
118 src_configure() {
119 local myconf
120 local buildmode
121
122 myconf="${myconf} --enable-dmeventd"
123 myconf="${myconf} --enable-cmdlib"
124 myconf="${myconf} --enable-applib"
125 myconf="${myconf} --enable-fsadm"
126
127 # Most of this package does weird stuff.
128 # The build options are tristate, and --without is NOT supported
129 # options: 'none', 'internal', 'shared'
130 if use static ; then
131 einfo "Building static LVM, for usage inside genkernel"
132 buildmode="internal"
133 # This only causes the .static versions to become available
134 # For recent systems, there are no linkages against anything in /usr anyway.
135 # We explicitly provide the .static versions so that they can be included in
136 # initramfs environments.
137 myconf="${myconf} --enable-static_link"
138 else
139 ewarn "Building shared LVM, it will not work inside genkernel!"
140 buildmode="shared"
141 fi
142
143 # dmeventd requires mirrors to be internal, and snapshot available
144 # so we cannot disable them
145 myconf="${myconf} --with-mirrors=internal"
146 myconf="${myconf} --with-snapshots=internal"
147
148 if use lvm1 ; then
149 myconf="${myconf} --with-lvm1=${buildmode}"
150 else
151 myconf="${myconf} --with-lvm1=none"
152 fi
153
154 # disable O_DIRECT support on hppa, breaks pv detection (#99532)
155 use hppa && myconf="${myconf} --disable-o_direct"
156
157 if use clvm; then
158 myconf="${myconf} --with-cluster=${buildmode}"
159 # 4-state! Make sure we get it right, per bug 210879
160 # Valid options are: none, cman, gulm, all
161 #
162 # 2009/02:
163 # gulm is removed now, now dual-state:
164 # cman, none
165 # all still exists, but is not needed
166 #
167 # 2009/07:
168 # TODO: add corosync and re-enable ALL
169 local clvmd=""
170 use cman && clvmd="cman"
171 #clvmd="${clvmd/cmangulm/all}"
172 [ -z "${clvmd}" ] && clvmd="none"
173 myconf="${myconf} --with-clvmd=${clvmd}"
174 myconf="${myconf} --with-pool=${buildmode}"
175 else
176 myconf="${myconf} --with-clvmd=none --with-cluster=none"
177 fi
178
179 myconf="${myconf} --sbindir=/sbin --with-staticdir=/sbin"
180 econf $(use_enable readline) \
181 $(use_enable selinux) \
182 --enable-pkgconfig \
183 --libdir=/$(get_libdir) \
184 --with-usrlibdir=/usr/$(get_libdir) \
185 --enable-udev_rules \
186 --enable-udev_sync \
187 --with-udevdir=/$(get_libdir)/udev/rules.d/ \
188 ${myconf} \
189 CLDFLAGS="${LDFLAGS}" || die
190 }
191
192 src_compile() {
193 einfo "Doing symlinks"
194 pushd include
195 emake || die "Failed to prepare symlinks"
196 popd
197
198 einfo "Starting main build"
199 emake || die "compile fail"
200 }
201
202 src_install() {
203 emake DESTDIR="${D}" install
204
205 # All of this was change by upstream, and if we don't get any problems, we
206 # can probably drop it in .65
207 #X## Revamp all of our library handling for bug #316571
208 #X## Upstream build script puts a lot of this stuff into /usr/lib regardless of
209 #X## libdir variable.
210 #X#dodir /$(get_libdir)
211 #X## .so -> /$(get_libdir)
212 #X#mv -f "${D}"/usr/lib/lib*.so* "${D}"/$(get_libdir)
213 #X#[[ "$(get_libdir)" != "lib" ]] && \
214 #X# mv "${D}"/usr/$(get_libdir)/lib*.so* "${D}"/$(get_libdir)
215 #X## .a -> /usr/$(get_libdir)
216 #X#[[ "$(get_libdir)" != "lib" ]] && \
217 #X# mv -f "${D}"/usr/lib/lib*.a "${D}"/usr/$(get_libdir)
218 #X## The upstream symlinks are borked. lets rebuild them instead.
219 #X#find "${D}"/{usr,}/{lib,$(get_libdir)} -type l \
220 #X# | xargs rm -f 2>/dev/null
221 #X#for i in "${D}"/$(get_libdir)/*.so.* ; do
222 #X# b="${i//*\/}" o="${b/.so.*/.so}"
223 #X# ln -s "${b}" "${D}/$(get_libdir)/${o}"
224 #X#done
225 #X## Now enable building properly
226 #X#for i in \
227 #X# libdevmapper-event{,-lvm2{,mirror,snapshot}} \
228 #X# libdevmapper \
229 #X# liblvm2{format1,snapshot,cmd,app} \
230 #X# ; do
231 #X# gen_usr_ldscript ${i}.so || die
232 #X#done
233
234 dodoc README VERSION WHATS_NEW doc/*.{conf,c,txt}
235 insinto /$(get_libdir)/rcscripts/addons
236 newins "${FILESDIR}"/lvm2-start.sh-2.02.49-r3 lvm-start.sh || die
237 newins "${FILESDIR}"/lvm2-stop.sh-2.02.49-r3 lvm-stop.sh || die
238 newinitd "${FILESDIR}"/lvm.rc-2.02.51-r2 lvm || die
239 newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm || die
240 if use clvm; then
241 newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd || die
242 newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd || die
243 fi
244
245 # move shared libs to /lib(64)
246 dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
247 #gen_usr_ldscript libdevmapper.so
248
249 dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
250 doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
251 newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
252
253 insinto /etc
254 doins "${FILESDIR}"/dmtab
255 insinto /$(get_libdir)/rcscripts/addons
256 doins "${FILESDIR}"/dm-start.sh
257
258 # Device mapper stuff
259 newinitd "${FILESDIR}"/device-mapper.rc-1.02.51-r2 device-mapper || die
260 newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper || die
261
262 newinitd "${FILESDIR}"/1.02.22-dmeventd.initd dmeventd || die
263 dolib.a daemons/dmeventd/libdevmapper-event.a \
264 || die "dolib.a libdevmapper-event.a"
265 #gen_usr_ldscript libdevmapper-event.so
266
267 #insinto /etc/udev/rules.d/
268 #newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules || die
269
270 # do not rely on /lib -> /libXX link
271 sed -e "s-/lib/rcscripts/-/$(get_libdir)/rcscripts/-" -i "${D}"/etc/init.d/*
272
273 elog "USE flag nocman is deprecated and replaced"
274 elog "with the cman USE flag."
275 elog ""
276 elog "USE flags clvm and cman are masked"
277 elog "by default and need to be unmasked to use them"
278 elog ""
279 elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
280 }
281
282 pkg_postinst() {
283 elog "lvm volumes are no longer automatically created for"
284 elog "baselayout-2 users. If you are using baselayout-2, be sure to"
285 elog "run: # rc-update add lvm boot"
286 elog "Do NOT add it if you are using baselayout-1 still."
287 }
288
289 src_test() {
290 einfo "Testcases disabled because of device-node mucking"
291 einfo "If you want them, compile the package and see ${S}/tests"
292 }