Gentoo Archives: gentoo-commits

From: "Matthias Schwarzott (zzam)" <zzam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-fs/udev: ChangeLog udev-129.ebuild
Date: Thu, 02 Oct 2008 22:10:47
Message-Id: E1KlWNf-0004fA-0Y@stork.gentoo.org
1 zzam 08/10/02 22:10:43
2
3 Modified: ChangeLog
4 Added: udev-129.ebuild
5 Log:
6 Version bumped. Needed a patch for compiling with --without-logging. This version should fix issues with detecting raid-partitions, related to missing large-file-support.
7 (Portage version: 2.2_rc11/cvs/Linux 2.6.25-tuxonice-r6 i686)
8
9 Revision Changes Path
10 1.410 sys-fs/udev/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/udev/ChangeLog?rev=1.410&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/udev/ChangeLog?rev=1.410&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/udev/ChangeLog?r1=1.409&r2=1.410
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sys-fs/udev/ChangeLog,v
19 retrieving revision 1.409
20 retrieving revision 1.410
21 diff -u -r1.409 -r1.410
22 --- ChangeLog 13 Sep 2008 12:54:29 -0000 1.409
23 +++ ChangeLog 2 Oct 2008 22:10:42 -0000 1.410
24 @@ -1,6 +1,14 @@
25 # ChangeLog for sys-fs/udev
26 # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/ChangeLog,v 1.409 2008/09/13 12:54:29 zzam Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/ChangeLog,v 1.410 2008/10/02 22:10:42 zzam Exp $
29 +
30 +*udev-129 (02 Oct 2008)
31 +
32 + 02 Oct 2008; Matthias Schwarzott <zzam@g.o>
33 + +files/udev-129-fix-without-logging.diff, +udev-129.ebuild:
34 + Version bumped. Needed a patch for compiling with --without-logging. This
35 + version should fix issues with detecting raid-partitions, related to
36 + missing large-file-support.
37
38 *udev-128 (13 Sep 2008)
39
40
41
42
43 1.1 sys-fs/udev/udev-129.ebuild
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/udev/udev-129.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-fs/udev/udev-129.ebuild?rev=1.1&content-type=text/plain
47
48 Index: udev-129.ebuild
49 ===================================================================
50 # Copyright 1999-2008 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/udev-129.ebuild,v 1.1 2008/10/02 22:10:42 zzam Exp $
53
54 inherit eutils flag-o-matic multilib toolchain-funcs versionator autotools
55
56 DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
57 HOMEPAGE="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html"
58 SRC_URI="mirror://kernel/linux/utils/kernel/hotplug/${P}.tar.bz2"
59
60 LICENSE="GPL-2"
61 SLOT="0"
62 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
63 IUSE="selinux"
64
65 DEPEND="selinux? ( sys-libs/libselinux )"
66 RDEPEND="!sys-apps/coldplug
67 !<sys-fs/device-mapper-1.02.19-r1"
68 RDEPEND="${DEPEND} ${RDEPEND}
69 >=sys-apps/baselayout-1.12.5"
70 # We need the lib/rcscripts/addon support
71 PROVIDE="virtual/dev-manager"
72
73 pkg_setup() {
74 udev_helper_dir="/$(get_libdir)/udev"
75
76 # comparing kernel version without linux-info.eclass to not pull
77 # virtual/linux-sources
78
79 local KV=$(uname -r)
80 local KV_MAJOR=$(get_major_version ${KV})
81 local KV_MINOR=$(get_version_component_range 2 ${KV})
82 local KV_MICRO=$(get_version_component_range 3 ${KV})
83
84 local ok=0
85 if [[ ${KV_MAJOR} == 2 && ${KV_MINOR} == 6 && ${KV_MICRO} -ge 18 ]]
86 then
87 ok=1
88 fi
89
90 if [[ ${ok} == 0 ]]
91 then
92 ewarn
93 ewarn "${P} does not support Linux kernel before version 2.6.15!"
94 ewarn "If you want to use udev reliable you should update"
95 ewarn "to at least kernel version 2.6.18!"
96 ewarn
97 ebeep
98 fi
99 }
100
101 sed_helper_dir() {
102 sed -e "s#/lib/udev#${udev_helper_dir}#" -i "$@"
103 }
104
105 src_unpack() {
106 unpack ${A}
107
108 cd "${S}"
109
110 # patches go here...
111 epatch "${FILESDIR}/${P}-fix-without-logging.diff"
112
113 # Make sure there is no sudden changes to upstream rules file
114 # (more for my own needs than anything else ...)
115 MD5=$(md5sum < "${S}/rules/rules.d/50-udev-default.rules")
116 MD5=${MD5/ -/}
117 if [[ ${MD5} != 54f1df55e8c531cc8926db44a3b4b979 ]]
118 then
119 echo
120 eerror "50-udev-default.rules has been updated, please validate!"
121 die "50-udev-default.rules has been updated, please validate!"
122 fi
123
124 sed_helper_dir \
125 rules/rules.d/50-udev-default.rules \
126 extras/rule_generator/write_*_rules \
127 udev/udev_rules_parse.c \
128 udev/udev_rules.c \
129 $(find -name "Makefile.*")
130
131 # fix version of volume_id lib
132 sed -e 's/-version-info/-version-number/' -i extras/volume_id/lib/Makefile.am
133
134 eautoreconf
135 }
136
137 src_compile() {
138 filter-flags -fprefetch-loop-arrays
139
140 econf \
141 --prefix=/usr \
142 --sysconfdir=/etc \
143 --exec-prefix= \
144 --with-libdir-name=$(get_libdir) \
145 --disable-debug \
146 --disable-logging \
147 $(use_with selinux)
148
149 emake || die "compiling udev failed"
150 }
151
152 src_install() {
153 into /
154 emake DESTDIR="${D}" install || die "make install failed"
155
156 exeinto "${udev_helper_dir}"
157 newexe "${FILESDIR}"/net-118-r1.sh net.sh || die "net.sh not installed properly"
158 newexe "${FILESDIR}"/move_tmp_persistent_rules-112-r1.sh move_tmp_persistent_rules.sh \
159 || die "move_tmp_persistent_rules.sh not installed properly"
160 newexe "${FILESDIR}"/write_root_link_rule-125 write_root_link_rule \
161 || die "write_root_link_rule not installed properly"
162 newexe "${FILESDIR}"/shell-compat-118-r3.sh shell-compat.sh \
163 || die "shell-compat.sh not installed properly"
164
165 keepdir "${udev_helper_dir}"/state
166 keepdir "${udev_helper_dir}"/devices
167
168 # create symlinks for these utilities to /sbin
169 # where multipath-tools expect them to be (Bug #168588)
170 dosym "..${udev_helper_dir}/vol_id" /sbin/vol_id
171 dosym "..${udev_helper_dir}/scsi_id" /sbin/scsi_id
172
173 # Add gentoo stuff to udev.conf
174 echo "# If you need to change mount-options, do it in /etc/fstab" \
175 >> "${D}"/etc/udev/udev.conf
176
177 # let the dir exist at least
178 keepdir /etc/udev/rules.d
179
180 # Now installing rules
181 cd "${S}"/rules
182 insinto "${udev_helper_dir}"/rules.d/
183
184 # Our rules files
185 doins gentoo/??-*.rules
186 doins packages/40-alsa.rules
187
188 # Adding arch specific rules
189 if [[ -f packages/40-${ARCH}.rules ]]
190 then
191 doins "packages/40-${ARCH}.rules"
192 fi
193 cd "${S}"
194
195 # our udev hooks into the rc system
196 insinto /$(get_libdir)/rcscripts/addons
197 newins "${FILESDIR}"/udev-start-126.sh udev-start.sh
198 newins "${FILESDIR}"/udev-stop-126.sh udev-stop.sh
199
200 # The udev-post init-script
201 newinitd "${FILESDIR}"/udev-postmount-initd-111-r2 udev-postmount
202
203 insinto /etc/modprobe.d
204 newins "${FILESDIR}"/blacklist-110 blacklist
205 doins "${FILESDIR}"/pnp-aliases
206
207 # convert /lib/udev to real used dir
208 sed_helper_dir \
209 "${D}/$(get_libdir)"/rcscripts/addons/*.sh \
210 "${D}"/etc/init.d/udev* \
211 "${D}"/etc/modprobe.d/*
212
213 # documentation
214 dodoc ChangeLog README TODO || die "failed installing docs"
215
216 cd docs/writing_udev_rules
217 mv index.html writing_udev_rules.html
218 dohtml *.html
219
220 cd "${S}"
221
222 newdoc extras/volume_id/README README_volume_id
223
224 echo "CONFIG_PROTECT_MASK=\"/etc/udev/rules.d\"" > 20udev
225 doenvd 20udev
226 }
227
228 pkg_preinst() {
229 if [[ -d ${ROOT}/lib/udev-state ]]
230 then
231 mv -f "${ROOT}"/lib/udev-state/* "${D}"/lib/udev/state/
232 rm -r "${ROOT}"/lib/udev-state
233 fi
234
235 if [[ -f ${ROOT}/etc/udev/udev.config &&
236 ! -f ${ROOT}/etc/udev/udev.rules ]]
237 then
238 mv -f "${ROOT}"/etc/udev/udev.config "${ROOT}"/etc/udev/udev.rules
239 fi
240
241 # delete the old udev.hotplug symlink if it is present
242 if [[ -h ${ROOT}/etc/hotplug.d/default/udev.hotplug ]]
243 then
244 rm -f "${ROOT}"/etc/hotplug.d/default/udev.hotplug
245 fi
246
247 # delete the old wait_for_sysfs.hotplug symlink if it is present
248 if [[ -h ${ROOT}/etc/hotplug.d/default/05-wait_for_sysfs.hotplug ]]
249 then
250 rm -f "${ROOT}"/etc/hotplug.d/default/05-wait_for_sysfs.hotplug
251 fi
252
253 # delete the old wait_for_sysfs.hotplug symlink if it is present
254 if [[ -h ${ROOT}/etc/hotplug.d/default/10-udev.hotplug ]]
255 then
256 rm -f "${ROOT}"/etc/hotplug.d/default/10-udev.hotplug
257 fi
258
259 # is there a stale coldplug initscript? (CONFIG_PROTECT leaves it behind)
260 coldplug_stale=""
261 if [[ -f ${ROOT}/etc/init.d/coldplug ]]
262 then
263 coldplug_stale="1"
264 fi
265
266 has_version "=${CATEGORY}/${PN}-103-r3"
267 previous_equal_to_103_r3=$?
268
269 has_version "<${CATEGORY}/${PN}-104-r5"
270 previous_less_than_104_r5=$?
271
272 has_version "<${CATEGORY}/${PN}-106-r5"
273 previous_less_than_106_r5=$?
274
275 has_version "<${CATEGORY}/${PN}-113"
276 previous_less_than_113=$?
277 }
278
279 pkg_postinst() {
280 # people want reminders, I'll give them reminders. Odds are they will
281 # just ignore them anyway...
282
283 if [[ ${coldplug_stale} == 1 ]]
284 then
285 ewarn "A stale coldplug init script found. You should run:"
286 ewarn
287 ewarn " rc-update del coldplug"
288 ewarn " rm -f /etc/init.d/coldplug"
289 ewarn
290 ewarn "udev now provides its own coldplug functionality."
291 fi
292
293 # delete 40-scsi-hotplug.rules - all integrated in 50-udev.rules
294 if [[ $previous_equal_to_103_r3 = 0 ]] &&
295 [[ -e ${ROOT}/etc/udev/rules.d/40-scsi-hotplug.rules ]]
296 then
297 ewarn "Deleting stray 40-scsi-hotplug.rules"
298 ewarn "installed by sys-fs/udev-103-r3"
299 rm -f "${ROOT}"/etc/udev/rules.d/40-scsi-hotplug.rules
300 fi
301
302 # Removing some device-nodes we thought we need some time ago
303 if [[ -d ${ROOT}/lib/udev/devices ]]
304 then
305 rm -f "${ROOT}"/lib/udev/devices/{null,zero,console,urandom}
306 fi
307
308 # Removing some old file
309 if [[ $previous_less_than_104_r5 = 0 ]]
310 then
311 rm -f "${ROOT}"/etc/dev.d/net/hotplug.dev
312 rmdir --ignore-fail-on-non-empty "${ROOT}"/etc/dev.d/net 2>/dev/null
313 fi
314
315 if [[ $previous_less_than_106_r5 = 0 ]] &&
316 [[ -e ${ROOT}/etc/udev/rules.d/95-net.rules ]]
317 then
318 rm -f "${ROOT}"/etc/udev/rules.d/95-net.rules
319 fi
320
321 # Try to remove /etc/dev.d as that is obsolete
322 if [[ -d ${ROOT}/etc/dev.d ]]
323 then
324 rmdir --ignore-fail-on-non-empty "${ROOT}"/etc/dev.d/default "${ROOT}"/etc/dev.d 2>/dev/null
325 if [[ -d ${ROOT}/etc/dev.d ]]
326 then
327 ewarn "You still have the directory /etc/dev.d on your system."
328 ewarn "This is no longer used by udev and can be removed."
329 fi
330 fi
331
332 # 64-device-mapper.rules now gets installed by sys-fs/device-mapper
333 # remove it if user don't has sys-fs/device-mapper installed
334 if [[ $previous_less_than_113 = 0 ]] &&
335 [[ -f ${ROOT}/etc/udev/rules.d/64-device-mapper.rules ]] &&
336 ! has_version sys-fs/device-mapper
337 then
338 rm -f "${ROOT}"/etc/udev/rules.d/64-device-mapper.rules
339 einfo "Removed unneeded file 64-device-mapper.rules"
340 fi
341
342 # requested in Bug #225033:
343 elog
344 elog "persistent-net does assigning fixed names to network devices."
345 elog "If you have problems with persistent-net rules,"
346 elog "just delete the rules file"
347 elog "\trm ${ROOT}etc/udev/rules.d/70-persistent-net.rules"
348 elog "and then trigger udev by either running"
349 elog "\tudevadm trigger --subsystem-match=net"
350 elog "or by rebooting."
351 elog
352 elog "This may number your devices in a different way than it is now."
353
354 if [[ ${ROOT} == / ]]
355 then
356 # check if root of init-process is identical to ours
357 if [[ -r /proc/1/root && /proc/1/root/ -ef /proc/self/root/ ]]
358 then
359 einfo "restarting udevd now."
360 if [[ -n $(pidof udevd) ]]
361 then
362 killall -15 udevd &>/dev/null
363 sleep 1
364 killall -9 udevd &>/dev/null
365 fi
366 /sbin/udevd --daemon
367 fi
368 fi
369
370 ewarn "If you build an initramfs including udev, then please"
371 ewarn "make sure that the /sbin/udevadm binary gets included,"
372 ewarn "and your scripts changed to use it,as it replaces the"
373 ewarn "old helper apps udevinfo, udevtrigger, ..."
374
375 ewarn
376 ewarn "mount options for directory /dev are no longer"
377 ewarn "set in /etc/udev/udev.conf, but in /etc/fstab"
378 ewarn "as for other directories."
379
380 elog
381 elog "For more information on udev on Gentoo, writing udev rules, and"
382 elog " fixing known issues visit:"
383 elog " http://www.gentoo.org/doc/en/udev-guide.xml"
384 }