Magellan Linux

Contents of /smage/trunk/core/udev/udev-119-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6 - (show annotations) (download)
Sun Jan 11 01:07:49 2009 UTC (15 years, 3 months ago) by niro
File size: 10620 byte(s)
-fixed old cvs headers
1 # $Id$
2
3 PNAME="udev"
4 PVER="119"
5 PBUILD="r1"
6
7 PCATEGORIE="sys-fs"
8 STATE="unstable"
9
10 DESCRIPTION="A Userspace Implementation for dynamic /dev nodes."
11 HOMEPAGE="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html"
12
13 DEPEND=">= virtual/glibc
14 >= virtual/initscripts
15 >= sys-apps/hotplug-20040401"
16
17 SDEPEND=">= virtual/kernel-sources"
18
19 SRCFILE="${PNAME}-${PVER}.tar.bz2"
20 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
21
22 # global var: ${LINUX_SOURCES}
23 # location where they are
24 [[ -z ${LINUX_SOURCES} ]] && LINUX_SOURCES="/usr/src/linux"
25
26 sminclude mtools alx
27
28 SRC_URI=(
29 http://www.kernel.org/pub/linux/utils/kernel/hotplug/${SRCFILE}
30 mirror://${PNAME}/${SRCFILE}
31 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev.conf
32 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-alsa.rules.magellan
33 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-arch-ia64.rules.magellan
34 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-arch-ppc.rules.magellan
35 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-arch-s390.rules.magellan
36 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-cd-aliases-generator.rules.magellan
37 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-cdrom_id.rules.magellan
38 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-device-mapper.rules.magellan
39 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-drivers.rules.magellan
40 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-early.rules.magellan
41 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-kernel-compat.rules.magellan
42 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-late.rules.magellan
43 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-magellan.rules.magellan
44 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-md-raid.rules.magellan
45 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-permissions.rules.magellan
46 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-persistent-input.rules.magellan
47 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-persistent-net-generator.rules.magellan
48 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-persistent-storage-edd.rules.magellan
49 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-persistent-storage.rules.magellan
50 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-persistent-storage-tape.rules.magellan
51 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-pilot-links.rules.magellan
52 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev.rules.magellan
53 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-video.rules.magellan
54 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/udev-zaptel.rules.magellan
55 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/modprobe.sh
56 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/write_root_link_rule.sh
57 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/blacklist
58 mirror://${PNAME}/config-${PNAME}-${PVER}-${PBUILD}/pnp-aliases
59 )
60
61 src_prepare()
62 {
63 munpack ${SRCFILE} || die
64 cd ${SRCDIR}
65
66 # no need to clutter the logs ...
67 sed -i '/^DEBUG/ c\DEBUG = false' Makefile || die
68 # do not use optimization flags from the package
69
70 sed -i 's|$(OPTIMIZATION)||g' Makefile || die
71
72 # enable udev extras
73 export extras="extras/ata_id \
74 extras/cdrom_id \
75 extras/collect \
76 extras/edd_id \
77 extras/firmware \
78 extras/floppy \
79 extras/path_id \
80 extras/rule_generator \
81 extras/scsi_id \
82 extras/usb_id \
83 extras/volume_id"
84 }
85
86 src_compile()
87 {
88 cd ${SRCDIR}
89 mmake EXTRAS="${extras}" udevdir="/dev/" DEBUG=false || die
90 }
91
92 src_install()
93 {
94 cd ${SRCDIR}
95 mmake DESTDIR=${BINDIR} EXTRAS="${extras}" udevdir="/dev/" DEBUG=false install || die
96
97 # needed directories
98 minstalldir /etc/modprobe.d || die
99
100 # install vol id library
101 rm ${BINDIR}/$(mlibdir)/libvolume_id.* || die
102 rm ${BINDIR}/usr/$(mlibdir)/libvolume_id.* || die
103 rm ${BINDIR}/usr/$(mlibdir)/pkgconfig/*.pc || die
104 minstallexec extras/volume_id/lib/\*.a /usr/$(mlibdir) || die
105 # don't use install here, link references will be installed, not the symlinks itself
106 cp -a extras/volume_id/lib/*.so* ${BINDIR}/$(mlibdir) || die
107 # fix pkgconfig pathes on multilib systems
108 sed -i "s:/usr/lib:/usr/$(mlibdir):g" extras/volume_id/lib/*.pc || die
109 # pkgconfig
110 minstallfile extras/volume_id/lib/\*.pc /usr/$(mlibdir)/pkgconfig || die
111 # includes
112 minstallfile extras/volume_id/lib/libvolume_id.h /usr/include || die
113
114 # generic udev helper scripts
115 minstallexec -s modprobe.sh /lib/udev || die
116 minstallexec -s write_root_link_rule.sh /lib/udev/write_root_link_rule || die
117
118 # create symlinks for these utilities to /sbin
119 # where multipath-tools expect them to be
120 mlink ../lib/udev/vol_id /sbin/ || die
121 mlink ../lib/udev/scsi_id /sbin/ || die
122
123 # our config file
124 minstalletc udev.conf udev/udev.conf || die
125
126 # install our udev rules
127 minstalletc udev-early.rules.magellan udev/rules.d/05-udev-early.rules || die
128 minstalletc udev-kernel-compat.rules.magellan udev/rules.d/30-kernel-compat.rules || die
129 minstalletc udev-alsa.rules.magellan udev/rules.d/40-alsa.rules || die
130 minstalletc udev-arch-ia64.rules.magellan udev/rules.d/40-arch-ia64.rules || die
131 minstalletc udev-arch-ppc.rules.magellan udev/rules.d/40-arch-ppc.rules || die
132 minstalletc udev-arch-s390.rules.magellan udev/rules.d/40-arch-s390.rules || die
133 minstalletc udev-magellan.rules.magellan udev/rules.d/40-magellan.rules || die
134 minstalletc udev-pilot-links.rules.magellan udev/rules.d/40-pilot-links.rules || die
135 minstalletc udev-video.rules.magellan udev/rules.d/40-video.rules || die
136 minstalletc udev-zaptel.rules.magellan udev/rules.d/40-zaptel.rules || die
137 minstalletc udev.rules.magellan udev/rules.d/50-udev-default.rules || die
138 minstalletc udev-cdrom_id.rules.magellan udev/rules.d/60-cdrom_id.rules || die
139 minstalletc udev-persistent-input.rules.magellan udev/rules.d/60-persistent-input.rules || die
140 minstalletc udev-persistent-storage.rules.magellan udev/rules.d/60-persistent-storage.rules || die
141 minstalletc udev-persistent-storage-tape.rules.magellan udev/rules.d/60-persistent-storage-tape.rules || die
142 minstalletc udev-persistent-storage-edd.rules.magellan udev/rules.d/61-persistent-storage-edd.rules || die
143 minstalletc udev-device-mapper.rules.magellan udev/rules.d/64-device-mapper.rules || die
144 minstalletc udev-md-raid.rules.magellan udev/rules.d/64-md-raid.rules || die
145 minstalletc udev-permissions.rules.magellan udev/rules.d/65-permissions.rules || die
146 minstalletc udev-cd-aliases-generator.rules.magellan udev/rules.d/75-cd-aliases-generator.rules || die
147 minstalletc udev-persistent-net-generator.rules.magellan udev/rules.d/75-persistent-net-generator.rules || die
148 minstalletc udev-drivers.rules.magellan udev/rules.d/80-drivers.rules || die
149 minstalletc udev-late.rules.magellan udev/rules.d/95-udev-late.rules || die
150
151 # install our blacklist
152 minstalletc blacklist udev/blacklist || die
153
154 # install our pnpaliases; now excluded from 50-udev.rules
155 minstalletc pnp-aliases modprobe.d/pnp-aliases || die
156
157 # mark state dir undeletable
158 mkeepdir /lib/udev/state || die
159 mkeepdir /lib/udev/devices || die
160
161 # CONFIG_PROTECT_MASK for /etc/udev/rules.d
162 minstalldir /etc/env.d || die
163 echo "CONFIG_PROTECT_MASK=\"/etc/udev/rules.d\"" > ${BINDIR}/etc/env.d/02udev || die
164
165 # create some nodes that we know we need
166 mknod ${BINDIR}/lib/udev/devices/null c 1 3 || die
167 chmod 666 ${BINDIR}/lib/udev/devices/null || die
168 # hey, that's my birthday :)
169 touch -t 198002220222 ${BINDIR}/lib/udev/devices/null || die
170
171 mknod ${BINDIR}/lib/udev/devices/zero c 1 5 || die
172 chmod 666 ${BINDIR}/lib/udev/devices/zero || die
173 touch -t 198002220222 ${BINDIR}/lib/udev/devices/zero || die
174
175 mknod ${BINDIR}/lib/udev/devices/console c 5 1 || die
176 chmod 600 ${BINDIR}/lib/udev/devices/console || die
177 chown root:tty ${BINDIR}/lib/udev/devices/console || die
178 touch -t 198002220222 ${BINDIR}/lib/udev/devices/console || die
179
180 mknod ${BINDIR}/lib/udev/devices/urandom c 1 9 || die
181 chmod 666 ${BINDIR}/lib/udev/devices/urandom || die
182 touch -t 198002220222 ${BINDIR}/lib/udev/devices/urandom || die
183
184 cd ${SRCDIR}
185 minstalldocs COPYING ChangeLog FAQ RELEASE-NOTES README TODO \
186 docs/{overview,udev_vs_devfs,README-gcov_for_udev} \
187 docs/writing_udev_rules/* \
188 || die
189 }
190
191 preinstall()
192 {
193 if [[ -d ${MROOT}/lib/udev-state ]]
194 then
195 mv -f ${MROOT}/lib/udev-state/* /lib/udev/state/
196 rm -r ${MROOT}/lib/udev-state
197 fi
198
199 if [[ -f ${MROOT}/etc/udev/udev.config ]] &&
200 [[ ! -f ${MROOT}/etc/udev/udev.rules ]]
201 then
202 mv -f ${MROOT}/etc/udev/udev.config ${MROOT}/etc/udev/udev.rules
203 fi
204
205 # delete the old udev.hotplug symlink if it is present
206 if [[ -h ${MROOT}/etc/hotplug.d/default/udev.hotplug ]]
207 then
208 rm -f ${MROOT}/etc/hotplug.d/default/udev.hotplug
209 fi
210
211 # delete the old wait_for_sysfs.hotplug symlink if it is present
212 if [[ -h ${MROOT}/etc/hotplug.d/default/05-wait_for_sysfs.hotplug ]]
213 then
214 rm -f ${MROOT}/etc/hotplug.d/default/05-wait_for_sysfs.hotplug
215 fi
216
217 # delete the old 10-udev.hotplug symlink if it is present
218 if [[ -h ${MROOT}/etc/hotplug.d/default/10-udev.hotplug ]]
219 then
220 rm -f ${MROOT}/etc/hotplug.d/default/10-udev.hotplug
221 fi
222
223 # delete the deprectated udev-late rc-script
224 [[ -x ${MROOT}/sbin/rc-config ]] && ${MROOT}/sbin/rc-config del udev-late
225
226 # delete obsolete hotplug.dev script
227 if [[ -f ${MROOT}/etc/dev.d/net/hotplug.dev ]]
228 then
229 rm -f ${MROOT}/etc/dev.d/net/hotplug.dev
230 fi
231 }
232
233 postinstall()
234 {
235 # create some nodes that we need if they not exist
236 [[ ! -e ${MROOT}/lib/udev/devices/null ]] &&
237 mknod ${MROOT}/lib/udev/devices/null c 1 3
238 chmod 666 ${MROOT}/lib/udev/devices/null
239 touch -t 198002220222 ${MROOT}/lib/udev/devices/null
240
241 [[ ! -e ${MROOT}/lib/udev/devices/zero ]] &&
242 mknod ${MROOT}/lib/udev/devices/zero c 1 5
243 chmod 666 ${MROOT}/lib/udev/devices/zero
244 touch -t 198002220222 ${MROOT}/lib/udev/devices/zero
245
246 [[ ! -e ${MROOT}/lib/udev/devices/console ]] &&
247 mknod ${MROOT}/lib/udev/devices/console c 5 1
248 chmod 600 ${MROOT}/lib/udev/devices/console
249 chown root:tty ${MROOT}/lib/udev/devices/console
250 touch -t 198002220222 ${MROOT}/lib/udev/devices/console
251
252 [[ ! -e ${MROOT}/lib/udev/devices/urandom ]] &&
253 mknod ${MROOT}/lib/udev/devices/urandom c 1 9
254 chmod 666 ${MROOT}/lib/udev/devices/urandom
255 touch -t 198002220222 ${MROOT}/lib/udev/devices/urandom
256
257 # after install/uprade, udev *must* be reloaded if already running
258 if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] &&
259 [[ -n $(pidof udevd) ]] && [[ ${MAGE_BOOTSTRAP} != true ]]
260 then
261 echo "MROOT=/; restarting udev daemon ..."
262 killall -15 udevd &> /dev/null
263 sleep 1
264 killall -9 udevd &> /dev/null
265 /sbin/udevd --daemon
266 fi
267 }

Properties

Name Value
svn:keywords Id