/[packages]/cauldron/udev/current/SPECS/udev.spec
ViewVC logotype

Contents of /cauldron/udev/current/SPECS/udev.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 135196 - (show annotations) (download)
Wed Aug 24 20:22:33 2011 UTC (12 years, 7 months ago) by tv
File size: 13276 byte(s)
- new release
- rediff patch 0
1 %define url ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug
2 %define tarname %{name}-%{version}
3 %define kernel_dir /usr/src/linux
4 %define use_dietlibc 0
5 %define bootstrap 0
6
7 %define main_major 0
8 %define gudev_api 1.0
9 %define gudev_major 0
10
11 %define libname %mklibname %{name} %{main_major}
12 %define gudev_libname %mklibname gudev %{gudev_api} %{main_major}
13 %define gudev_libname_devel %mklibname gudev %{gudev_api} -d
14
15 %define lib_udev_dir /lib/%{name}
16 %define system_rules_dir %{lib_udev_dir}/rules.d
17 %define user_rules_dir %{_sysconfdir}/%{name}/rules.d
18
19 %{?_without_dietlibc: %{expand: %%global use_dietlibc 0}}
20 %{?_with_dietlibc: %{expand: %%global use_dietlibc 1}}
21
22 %{?_with_bootstrap: %{expand: %%global bootstrap 1}}
23 %{?_without_bootstrap: %{expand: %%global bootstrap 0}}
24
25 %define git_url git://git.kernel.org/pub/scm/linux/hotplug/udev.git
26 %define _with_systemd 1
27
28 Name: udev
29 Version: 173
30 Release: %mkrel 1
31 License: GPLv2
32 Summary: A userspace implementation of devfs
33 Group: System/Configuration/Hardware
34 URL: %{url}
35 Source0: %{url}/%{tarname}.tar.bz2
36 Source1: %{url}/%{tarname}.tar.bz2.sign
37 Source2: 50-udev-mandriva.rules
38 Source3: 69-printeracl.rules
39 Source5: udev.sysconfig
40
41 # from Fedora (keep unmodified)
42 Source6: udev-post.init
43 Source7: start_udev
44
45 Source34: udev_import_usermap
46 # from hotplug-2004_09_23
47 Source40: hotplug-usb.distmap
48 Source41: hotplug-usb.handmap
49 # (blino) net rules and helpers
50 Source60: 76-net.rules
51 Source62: udev_net_create_ifcfg
52 Source63: udev_net_action
53 Source64: udev_net.sysconfig
54 # (hk) udev rules for zte 3g modems with drakx-net
55 Source66: 61-mobile-zte-drakx-net.rules
56 # allow to boot from live cd in virtualbox
57 Patch81: udev-162-VirtualBox-boot-fix.patch
58 # from upstream git
59 Patch0: udev-173-dev-sg-ACL.patch
60
61 # from Mageia
62 # disable coldplug for storage and device pci
63 Patch20: udev-152-coldplug.patch
64 # patches from Mandriva on Fedora's start_udev
65 Patch73: udev-137-speedboot.patch
66 # (bor) TODO to be removed when last STARTUP rule is fixed
67 Patch78: udev-161-env_STARTUP.patch
68 # (bor) use action "add" instead of "change" when retrying failed events
69 Patch79: udev-161-use-add-for-retry.patch
70 # (bor) udev-post should start after D-Bus
71 Patch80: udev-162-udev-post_needs_dbus.patch
72
73 Requires: coreutils
74 Requires: setup >= 2.7.16
75 Requires: util-linux-ng >= 2.15
76 %if %use_dietlibc
77 BuildRequires: dietlibc
78 %endif
79 BuildRequires: glibc-static-devel
80 BuildRequires: libblkid-devel
81 %if %{_with_systemd}
82 BuildRequires: systemd-units
83 %endif
84 %if !%{bootstrap}
85 BuildRequires: libacl-devel
86 BuildRequires: glib2-devel
87 BuildRequires: libusb-devel
88 BuildRequires: gperf
89 BuildRequires: gobject-introspection-devel >= 0.6.2
90 BuildRequires: libtool
91 BuildRequires: usbutils
92 BuildRequires: kernel-source
93 BuildRequires: ldetect-lst >= 0.1.283
94 Requires: ldetect-lst >= 0.1.283
95 %endif
96 Obsoletes: speedtouch eagle-usb
97 Obsoletes: %{name}-tools < 125
98 Provides: %{name}-tools = %{version}-%{release}
99
100 %description
101 Udev is an implementation of devfs/devfsd in userspace using sysfs and
102 /sbin/hotplug. It requires a 2.6 kernel to run properly.
103
104 Like devfs, udev dynamically creates and removes device nodes from /dev/.
105 It responds to /sbin/hotplug device events.
106
107 %package doc
108 Summary: Udev documentation
109 Group: Books/Computer books
110 %description doc
111 This package contains documentation of udev.
112
113 %package -n %{libname}
114 Group: System/Libraries
115 Summary: Library for %{name}
116 License: LGPLv2+
117 %description -n %{libname}
118 Library for %{name}.
119
120 %package -n %{libname}-devel
121 Group: Development/C
122 Summary: Devel library for %{name}
123 License: LGPLv2+
124 Provides: %{name}-devel = %{version}-%{release}
125 Provides: lib%{name}-devel = %{version}-%{release}
126 Requires: %{libname} = %{version}
127 %description -n %{libname}-devel
128 Devel library for %{udev}.
129
130 %package -n %{gudev_libname}
131 Summary: Libraries for adding libudev support to applications that use glib
132 Group: System/Libraries
133 License: LGPLv2+
134 Requires: %{libname} >= 142
135 Provides: libgudev = %{version}-%{release}
136
137 %description -n %{gudev_libname}
138 This package contains the libraries that make it easier to use libudev
139 functionality from applications that use glib.
140
141 %package -n %{gudev_libname_devel}
142 Summary: Header files for adding libudev support to applications that use glib
143 Group: Development/C
144 License: LGPLv2+
145 Requires: %{libname}-devel >= 142
146 Requires: %{gudev_libname} = %{version}-%{release}
147 Provides: libgudev-devel = %{version}-%{release}
148
149 %description -n %{gudev_libname_devel}
150 This package contains the header and pkg-config files for developing
151 glib-based applications using libudev functionality.
152
153 %prep
154 %setup -q
155 %patch20 -p1 -b .coldplug
156 cp -a %{SOURCE7} .
157 cp -a %{SOURCE6} .
158 %patch73 -p1 -b .speedboot
159 %patch78 -p1 -b .STARTUP
160 %patch79 -p1 -b .action_add
161 %patch80 -p1 -b .messagebus
162 %patch81 -p1 -b .virtualbox_boot
163 %patch0 -p1 -b .dev_sg_ACL
164
165 %build
166 %serverbuild
167 %configure2_5x \
168 --prefix=%{_prefix} \
169 --sysconfdir=%{_sysconfdir} \
170 --sbindir="/sbin" \
171 --libexecdir="%{lib_udev_dir}" \
172 --with-rootlibdir=/%{_lib} \
173 --enable-floppy \
174 %if !%{_with_systemd}
175 --without-systemdsystemunitdir \
176 %endif
177 %if %{bootstrap}
178 --disable-introspection
179 %else
180 --enable-introspection
181 %endif
182
183 %make
184
185 %install
186 rm -rf %{buildroot}
187 %makeinstall_std
188
189 %if %use_dietlibc
190 install -d %{buildroot}%{_prefix}/lib/dietlibc/lib-%{_arch}
191 %endif
192
193 install -m 755 start_udev %{buildroot}/sbin/
194
195 install -m 644 %SOURCE2 %{buildroot}%{system_rules_dir}/
196 install -m 644 %SOURCE3 %{buildroot}%{system_rules_dir}/
197
198 install -d %{buildroot}%{_sysconfdir}/sysconfig
199 install -m 0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/sysconfig/udev
200
201 # net rules
202 install -m 0644 %SOURCE60 %{buildroot}%{system_rules_dir}/
203 install -m 0755 %SOURCE62 %{buildroot}%{lib_udev_dir}/net_create_ifcfg
204 install -m 0755 %SOURCE63 %{buildroot}%{lib_udev_dir}/net_action
205 install -m 0644 %SOURCE64 %{buildroot}/etc/sysconfig/udev_net
206
207 mkdir -p %{buildroot}%{_sbindir}
208 install -m 0755 %SOURCE34 %{buildroot}%{_sbindir}
209 mkdir -p %{buildroot}%{_sysconfdir}/%{name}/agents.d/usb
210
211 touch $RPM_BUILD_ROOT%{_sysconfdir}/scsi_id.config
212
213 %{buildroot}%{_sbindir}/udev_import_usermap --no-driver-agent usb %{SOURCE40} %{SOURCE41} > %{buildroot}%{system_rules_dir}/70-hotplug_map.rules
214
215 mkdir -p %{buildroot}%{_initrddir}
216 install -m 0755 udev-post.init %{buildroot}%{_initrddir}/udev-post
217
218 %if %{_with_systemd}
219 # (bor) screen initscript from systemd
220 ln -s udev-settle.service %{buildroot}/lib/systemd/system/udev-post.service
221 %endif
222
223 # (blino) usb_id are used by drakx
224 ln -s ..%{lib_udev_dir}/usb_id %{buildroot}/sbin/
225
226 # udev rules for zte 3g modems and drakx-net
227 install -m 0644 %SOURCE66 %{buildroot}%{system_rules_dir}/
228
229 mkdir -p %{buildroot}/lib/firmware
230
231 rm -rf $RPM_BUILD_ROOT%{_docdir}/udev
232 rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la
233
234 # default /dev content, from Fedora RPM
235 mkdir -p %{buildroot}%{lib_udev_dir}/devices/{net,hugepages,pts,shm}
236
237 # From previous Mandriva /etc/udev/devices.d
238 mkdir -p %{buildroot}%{lib_udev_dir}/devices/cpu/0
239
240 %clean
241 rm -rf %{buildroot}
242
243 %post
244 %_post_service udev-post
245
246 %preun
247 %_preun_service udev-post
248
249 %triggerun -- udev <= 164-1mnb2
250 # migrate from create_static_dev_nodes
251 for i in /etc/udev/devices.d/*.nodes; do
252 [ -e "$i" ] && /sbin/create_static_dev_nodes /lib/udev/devices "$i" || :
253 done
254
255 %files
256 %defattr(0644,root,root,0755)
257 %attr(0755,root,root) /sbin/udevadm
258 %attr(0755,root,root) /sbin/udevd
259 %attr(0755,root,root) /sbin/start_udev
260 %attr(0755,root,root) %{_sbindir}/udev_import_usermap
261 %attr(0755,root,root) %{_initrddir}/udev-post
262 %dir %{_sysconfdir}/%{name}/agents.d
263 %dir %{_sysconfdir}/%{name}/agents.d/usb
264 %config(noreplace) %{_sysconfdir}/sysconfig/udev
265 %config(noreplace) %{_sysconfdir}/sysconfig/udev_net
266 %config(noreplace) %{_sysconfdir}/%{name}/*.conf
267 %ghost %config(noreplace,missingok) %attr(0644,root,root) %{_sysconfdir}/scsi_id.config
268 %dir %{system_rules_dir}
269 %{system_rules_dir}/*
270 %dir %{_sysconfdir}/%{name}
271 %dir %{user_rules_dir}
272 %{_mandir}/man7/*
273 %{_mandir}/man8/*
274 %dir /lib/firmware
275 %dir %{lib_udev_dir}
276 %attr(0755,root,root) %{lib_udev_dir}/accelerometer
277 %attr(0755,root,root) %{lib_udev_dir}/ata_id
278 %attr(0755,root,root) %{lib_udev_dir}/cdrom_id
279 %attr(0755,root,root) %{lib_udev_dir}/input_id
280 %attr(0755,root,root) %{lib_udev_dir}/path_id
281 %attr(0755,root,root) %{lib_udev_dir}/scsi_id
282 %attr(0755,root,root) %{lib_udev_dir}/usb_id
283 %attr(0755,root,root) %{lib_udev_dir}/collect
284 %attr(0755,root,root) %{lib_udev_dir}/create_floppy_devices
285 %attr(0755,root,root) %{lib_udev_dir}/firmware
286 %attr(0755,root,root) %{lib_udev_dir}/rule_generator.functions
287 %attr(0755,root,root) %{lib_udev_dir}/write_cd_rules
288 %attr(0755,root,root) %{lib_udev_dir}/write_net_rules
289 %attr(0755,root,root) %{lib_udev_dir}/net_create_ifcfg
290 %attr(0755,root,root) %{lib_udev_dir}/net_action
291 %attr(0755,root,root) %{lib_udev_dir}/v4l_id
292 %attr(0755,root,root) %{lib_udev_dir}/mtd_probe
293 %attr(0755,root,root) /sbin/usb_id
294 # Default static nodes to copy to /dev on udevd start
295 %dir %{lib_udev_dir}/devices
296 # From Fedora RPM
297 %attr(0755,root,root) %dir %{lib_udev_dir}/devices/net
298 %attr(0755,root,root) %dir %{lib_udev_dir}/devices/hugepages
299 %attr(0755,root,root) %dir %{lib_udev_dir}/devices/pts
300 %attr(0755,root,root) %dir %{lib_udev_dir}/devices/shm
301 %attr(666,root,root) %dev(c,10,200) %{lib_udev_dir}/devices/net/tun
302 %attr(600,root,root) %dev(c,108,0) %{lib_udev_dir}/devices/ppp
303 %attr(666,root,root) %dev(c,10,229) %{lib_udev_dir}/devices/fuse
304 %attr(660,root,lp) %dev(c,6,0) %{lib_udev_dir}/devices/lp0
305 %attr(660,root,lp) %dev(c,6,1) %{lib_udev_dir}/devices/lp1
306 %attr(660,root,lp) %dev(c,6,2) %{lib_udev_dir}/devices/lp2
307 %attr(660,root,lp) %dev(c,6,3) %{lib_udev_dir}/devices/lp3
308 %attr(640,root,disk) %dev(b,7,0) %{lib_udev_dir}/devices/loop0
309 %attr(640,root,disk) %dev(b,7,1) %{lib_udev_dir}/devices/loop1
310 %attr(640,root,disk) %dev(b,7,2) %{lib_udev_dir}/devices/loop2
311 %attr(640,root,disk) %dev(b,7,3) %{lib_udev_dir}/devices/loop3
312 %attr(640,root,disk) %dev(b,7,4) %{lib_udev_dir}/devices/loop4
313 %attr(640,root,disk) %dev(b,7,5) %{lib_udev_dir}/devices/loop5
314 %attr(640,root,disk) %dev(b,7,6) %{lib_udev_dir}/devices/loop6
315 %attr(640,root,disk) %dev(b,7,7) %{lib_udev_dir}/devices/loop7
316
317 # From previous Mandriva /etc/udev/devices.d and patches
318 %attr(0666,root,root) %dev(c,1,3) %{lib_udev_dir}/devices/null
319 %attr(0600,root,root) %dev(b,2,0) %{lib_udev_dir}/devices/fd0
320 %attr(0600,root,root) %dev(b,2,1) %{lib_udev_dir}/devices/fd1
321 %attr(0600,root,root) %dev(c,21,0) %{lib_udev_dir}/devices/sg0
322 %attr(0600,root,root) %dev(c,21,1) %{lib_udev_dir}/devices/sg1
323 %attr(0600,root,root) %dev(c,9,0) %{lib_udev_dir}/devices/st0
324 %attr(0600,root,root) %dev(c,9,1) %{lib_udev_dir}/devices/st1
325 %attr(0600,root,root) %dev(c,99,0) %{lib_udev_dir}/devices/parport0
326 %dir %{lib_udev_dir}/devices/cpu
327 %dir %{lib_udev_dir}/devices/cpu/0
328 %attr(0600,root,root) %dev(c,203,0) %{lib_udev_dir}/devices/cpu/0/cpuid
329 %attr(0600,root,root) %dev(c,10,184) %{lib_udev_dir}/devices/cpu/0/microcode
330 %attr(0600,root,root) %dev(c,202,0) %{lib_udev_dir}/devices/cpu/0/msr
331 %attr(0600,root,root) %dev(c,162,0) %{lib_udev_dir}/devices/rawctl
332 %attr(0600,root,root) %dev(c,195,0) %{lib_udev_dir}/devices/nvidia0
333 %attr(0600,root,root) %dev(c,195,255) %{lib_udev_dir}/devices/nvidiactl
334 %if !%{bootstrap}
335 %attr(0755,root,root) %{lib_udev_dir}/pci-db
336 %attr(0755,root,root) %{lib_udev_dir}/usb-db
337 %attr(0755,root,root) %{lib_udev_dir}/keymap
338 %attr(0755,root,root) %{lib_udev_dir}/udev-acl
339 %attr(0755,root,root) %{lib_udev_dir}/findkeyboards
340 %attr(0755,root,root) %{lib_udev_dir}/keyboard-force-release.sh
341 %dir %attr(0755,root,root) %{lib_udev_dir}/keymaps
342 %attr(0755,root,root) %{lib_udev_dir}/keymaps/*
343 %attr(0644,root,root) %{_prefix}/lib/ConsoleKit/run-seat.d/udev-acl.ck
344 %endif
345 %if %{_with_systemd}
346 /lib/systemd/system/basic.target.wants/udev-trigger.service
347 /lib/systemd/system/basic.target.wants/udev.service
348 /lib/systemd/system/sockets.target.wants/udev-control.socket
349 /lib/systemd/system/sockets.target.wants/udev-kernel.socket
350 /lib/systemd/system/udev-control.socket
351 /lib/systemd/system/udev-kernel.socket
352 /lib/systemd/system/udev-post.service
353 /lib/systemd/system/udev-settle.service
354 /lib/systemd/system/udev-trigger.service
355 /lib/systemd/system/udev.service
356 %endif
357
358 %files doc
359 %defattr(0644,root,root,0755)
360 %doc COPYING README TODO ChangeLog NEWS extras/keymap/README.keymap.txt
361
362 %files -n %{libname}
363 %defattr(0644,root,root,0755)
364 /%{_lib}/lib%{name}.so.%{main_major}*
365
366 %files -n %{libname}-devel
367 %defattr(0644,root,root,0755)
368 %doc %{_datadir}/gtk-doc/html/libudev
369 %{_libdir}/lib%{name}.*
370 %if %use_dietlibc
371 %{_prefix}/lib/dietlibc/lib-%{_arch}/lib%{name}.a
372 %endif
373 %{_libdir}/pkgconfig/lib%{name}.pc
374 %{_datadir}/pkgconfig/udev.pc
375 %{_includedir}/lib%{name}.h
376
377 %if !%{bootstrap}
378 %files -n %{gudev_libname}
379 %defattr(0644,root,root,0755)
380 /%{_lib}/libgudev-%{gudev_api}.so.%{gudev_major}*
381 %{_libdir}/girepository-1.0/GUdev-%{gudev_api}.typelib
382
383 %files -n %{gudev_libname_devel}
384 %defattr(0644,root,root,0755)
385 %doc %{_datadir}/gtk-doc/html/gudev
386 %{_libdir}/libgudev-%{gudev_api}.so
387 %{_includedir}/gudev-%{gudev_api}
388 %{_datadir}/gir-1.0/GUdev-%{gudev_api}.gir
389 %{_libdir}/pkgconfig/gudev-%{gudev_api}.pc
390 %endif

  ViewVC Help
Powered by ViewVC 1.1.30