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