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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 157461 - (hide annotations) (download)
Sat Oct 22 23:03:50 2011 UTC (12 years, 5 months ago) by dmorgan
File size: 13472 byte(s)
Fix logic
1 pterjan 5364 %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 dmorgan 124717 %define _with_systemd 1
27 pterjan 5364
28     Name: udev
29 tv 135196 Version: 173
30 colin 136056 Release: %mkrel 3
31 pterjan 5364 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 dmorgan 42113 # allow to boot from live cd in virtualbox
57     Patch81: udev-162-VirtualBox-boot-fix.patch
58 pterjan 5364 # from upstream git
59 tv 135196 Patch0: udev-173-dev-sg-ACL.patch
60 pterjan 5364
61 blino 6221 # from Mageia
62 pterjan 5364 # 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 colin 136056 # (cg) https://bugs.mageia.org/show_bug.cgi?id=2563
73     Patch82: udev-173-bluetooth-hid.patch
74 pterjan 5364
75     Requires: coreutils
76     Requires: setup >= 2.7.16
77     Requires: util-linux-ng >= 2.15
78     %if %use_dietlibc
79     BuildRequires: dietlibc
80     %endif
81     BuildRequires: glibc-static-devel
82     BuildRequires: libblkid-devel
83 dmorgan 42113 %if %{_with_systemd}
84     BuildRequires: systemd-units
85     %endif
86 pterjan 5364 %if !%{bootstrap}
87     BuildRequires: libacl-devel
88     BuildRequires: glib2-devel
89     BuildRequires: libusb-devel
90     BuildRequires: gperf
91     BuildRequires: gobject-introspection-devel >= 0.6.2
92     BuildRequires: libtool
93     BuildRequires: usbutils
94 dmorgan 77994 BuildRequires: kernel-source
95 pterjan 5364 BuildRequires: ldetect-lst >= 0.1.283
96     Requires: ldetect-lst >= 0.1.283
97     %endif
98     Obsoletes: speedtouch eagle-usb
99     Obsoletes: %{name}-tools < 125
100     Provides: %{name}-tools = %{version}-%{release}
101    
102     %description
103     Udev is an implementation of devfs/devfsd in userspace using sysfs and
104     /sbin/hotplug. It requires a 2.6 kernel to run properly.
105    
106     Like devfs, udev dynamically creates and removes device nodes from /dev/.
107     It responds to /sbin/hotplug device events.
108    
109     %package doc
110     Summary: Udev documentation
111     Group: Books/Computer books
112     %description doc
113     This package contains documentation of udev.
114    
115     %package -n %{libname}
116     Group: System/Libraries
117     Summary: Library for %{name}
118     License: LGPLv2+
119     %description -n %{libname}
120     Library for %{name}.
121    
122     %package -n %{libname}-devel
123     Group: Development/C
124     Summary: Devel library for %{name}
125     License: LGPLv2+
126     Provides: %{name}-devel = %{version}-%{release}
127     Provides: lib%{name}-devel = %{version}-%{release}
128     Requires: %{libname} = %{version}
129     %description -n %{libname}-devel
130 misc 135235 Devel library for udev.
131 pterjan 5364
132     %package -n %{gudev_libname}
133     Summary: Libraries for adding libudev support to applications that use glib
134     Group: System/Libraries
135     License: LGPLv2+
136     Requires: %{libname} >= 142
137     Provides: libgudev = %{version}-%{release}
138    
139     %description -n %{gudev_libname}
140     This package contains the libraries that make it easier to use libudev
141     functionality from applications that use glib.
142    
143     %package -n %{gudev_libname_devel}
144     Summary: Header files for adding libudev support to applications that use glib
145     Group: Development/C
146     License: LGPLv2+
147     Requires: %{libname}-devel >= 142
148     Requires: %{gudev_libname} = %{version}-%{release}
149     Provides: libgudev-devel = %{version}-%{release}
150    
151     %description -n %{gudev_libname_devel}
152     This package contains the header and pkg-config files for developing
153     glib-based applications using libudev functionality.
154    
155     %prep
156     %setup -q
157 anssi 125071 %patch20 -p1 -b .coldplug
158 pterjan 5364 cp -a %{SOURCE7} .
159     cp -a %{SOURCE6} .
160     %patch73 -p1 -b .speedboot
161     %patch78 -p1 -b .STARTUP
162     %patch79 -p1 -b .action_add
163     %patch80 -p1 -b .messagebus
164 dmorgan 42113 %patch81 -p1 -b .virtualbox_boot
165 dmorgan 72263 %patch0 -p1 -b .dev_sg_ACL
166 colin 136056 %patch82 -p1 -b .bluetooth_hid
167 pterjan 5364
168     %build
169     %serverbuild
170     %configure2_5x \
171     --prefix=%{_prefix} \
172     --sysconfdir=%{_sysconfdir} \
173     --sbindir="/sbin" \
174     --libexecdir="%{lib_udev_dir}" \
175     --with-rootlibdir=/%{_lib} \
176 dmorgan 124080 --enable-floppy \
177 dmorgan 157460 %if !%{_with_systemd}
178 colin 135331 --enable-udev-acl \
179 dmorgan 42113 --without-systemdsystemunitdir \
180     %endif
181 pterjan 5364 %if %{bootstrap}
182 ahmad 127281 --disable-introspection
183 pterjan 5364 %else
184 dmorgan 124082 --enable-introspection
185 pterjan 5364 %endif
186    
187     %make
188    
189     %install
190     %makeinstall_std
191    
192     %if %use_dietlibc
193     install -d %{buildroot}%{_prefix}/lib/dietlibc/lib-%{_arch}
194     %endif
195    
196     install -m 755 start_udev %{buildroot}/sbin/
197    
198     install -m 644 %SOURCE2 %{buildroot}%{system_rules_dir}/
199     install -m 644 %SOURCE3 %{buildroot}%{system_rules_dir}/
200    
201     install -d %{buildroot}%{_sysconfdir}/sysconfig
202     install -m 0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/sysconfig/udev
203    
204     # net rules
205     install -m 0644 %SOURCE60 %{buildroot}%{system_rules_dir}/
206     install -m 0755 %SOURCE62 %{buildroot}%{lib_udev_dir}/net_create_ifcfg
207     install -m 0755 %SOURCE63 %{buildroot}%{lib_udev_dir}/net_action
208     install -m 0644 %SOURCE64 %{buildroot}/etc/sysconfig/udev_net
209    
210     mkdir -p %{buildroot}%{_sbindir}
211     install -m 0755 %SOURCE34 %{buildroot}%{_sbindir}
212     mkdir -p %{buildroot}%{_sysconfdir}/%{name}/agents.d/usb
213    
214     touch $RPM_BUILD_ROOT%{_sysconfdir}/scsi_id.config
215    
216     %{buildroot}%{_sbindir}/udev_import_usermap --no-driver-agent usb %{SOURCE40} %{SOURCE41} > %{buildroot}%{system_rules_dir}/70-hotplug_map.rules
217    
218     mkdir -p %{buildroot}%{_initrddir}
219     install -m 0755 udev-post.init %{buildroot}%{_initrddir}/udev-post
220    
221 dmorgan 44750 %if %{_with_systemd}
222     # (bor) screen initscript from systemd
223     ln -s udev-settle.service %{buildroot}/lib/systemd/system/udev-post.service
224     %endif
225    
226 pterjan 5364 # (blino) usb_id are used by drakx
227     ln -s ..%{lib_udev_dir}/usb_id %{buildroot}/sbin/
228    
229     # udev rules for zte 3g modems and drakx-net
230     install -m 0644 %SOURCE66 %{buildroot}%{system_rules_dir}/
231    
232     mkdir -p %{buildroot}/lib/firmware
233    
234     rm -rf $RPM_BUILD_ROOT%{_docdir}/udev
235     rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la
236    
237     # default /dev content, from Fedora RPM
238     mkdir -p %{buildroot}%{lib_udev_dir}/devices/{net,hugepages,pts,shm}
239    
240     # From previous Mandriva /etc/udev/devices.d
241     mkdir -p %{buildroot}%{lib_udev_dir}/devices/cpu/0
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 eugeni 124079 %attr(0755,root,root) %{lib_udev_dir}/accelerometer
277 pterjan 5364 %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 dmorgan 124081 %attr(0755,root,root) %{lib_udev_dir}/create_floppy_devices
285 pterjan 5364 %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 dmorgan 157460 %if ! %{_with_systemd}
339 colin 135331 %attr(0755,root,root) %{lib_udev_dir}/udev-acl
340 dmorgan 157460 %endif # _with_systemd
341 pterjan 5364 %attr(0755,root,root) %{lib_udev_dir}/findkeyboards
342     %attr(0755,root,root) %{lib_udev_dir}/keyboard-force-release.sh
343     %dir %attr(0755,root,root) %{lib_udev_dir}/keymaps
344     %attr(0755,root,root) %{lib_udev_dir}/keymaps/*
345 dmorgan 157461 %if ! %{_with_systemd}
346 colin 135331 %attr(0644,root,root) %{_prefix}/lib/ConsoleKit/run-seat.d/udev-acl.ck
347 dmorgan 157460 %endif # _with_systemd
348     %endif # bootstrap
349 dmorgan 42113 %if %{_with_systemd}
350 dmorgan 124722 /lib/systemd/system/basic.target.wants/udev-trigger.service
351     /lib/systemd/system/basic.target.wants/udev.service
352     /lib/systemd/system/sockets.target.wants/udev-control.socket
353     /lib/systemd/system/sockets.target.wants/udev-kernel.socket
354     /lib/systemd/system/udev-control.socket
355     /lib/systemd/system/udev-kernel.socket
356 dmorgan 44750 /lib/systemd/system/udev-post.service
357 dmorgan 42113 /lib/systemd/system/udev-settle.service
358 dmorgan 124722 /lib/systemd/system/udev-trigger.service
359 dmorgan 42113 /lib/systemd/system/udev.service
360     %endif
361 pterjan 5364
362     %files doc
363     %defattr(0644,root,root,0755)
364 ahmad 127281 %doc COPYING README TODO ChangeLog NEWS extras/keymap/README.keymap.txt
365 pterjan 5364
366     %files -n %{libname}
367     %defattr(0644,root,root,0755)
368     /%{_lib}/lib%{name}.so.%{main_major}*
369    
370     %files -n %{libname}-devel
371     %defattr(0644,root,root,0755)
372     %doc %{_datadir}/gtk-doc/html/libudev
373     %{_libdir}/lib%{name}.*
374     %if %use_dietlibc
375     %{_prefix}/lib/dietlibc/lib-%{_arch}/lib%{name}.a
376     %endif
377     %{_libdir}/pkgconfig/lib%{name}.pc
378     %{_datadir}/pkgconfig/udev.pc
379     %{_includedir}/lib%{name}.h
380    
381     %if !%{bootstrap}
382     %files -n %{gudev_libname}
383     %defattr(0644,root,root,0755)
384     /%{_lib}/libgudev-%{gudev_api}.so.%{gudev_major}*
385     %{_libdir}/girepository-1.0/GUdev-%{gudev_api}.typelib
386    
387     %files -n %{gudev_libname_devel}
388     %defattr(0644,root,root,0755)
389     %doc %{_datadir}/gtk-doc/html/gudev
390     %{_libdir}/libgudev-%{gudev_api}.so
391     %{_includedir}/gudev-%{gudev_api}
392     %{_datadir}/gir-1.0/GUdev-%{gudev_api}.gir
393     %{_libdir}/pkgconfig/gudev-%{gudev_api}.pc
394     %endif

  ViewVC Help
Powered by ViewVC 1.1.30