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