eudev-vl.spec 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505
  1. %define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
  2. %define debug false
  3. %define udev_scriptdir /lib/udev
  4. %define firmwaredir /lib/firmware
  5. Summary: A userspace implementation of devfs
  6. Summary(ja): ユーザスペース実装のデバイスファイルシステム
  7. Name: eudev
  8. Version: 3.1.2
  9. Release: 2%{?_dist_release}
  10. License: GPL
  11. Group: System Environment/Base
  12. URL: https://github.com/gentoo/eudev
  13. Source: http://dev.gentoo.org/~blueness/%{name}/%{name}-%{version}.tar.gz
  14. Source1: start_udev
  15. Source3: udev-post.init
  16. Source4: fw_unit_symlinks.sh
  17. Source5: udev.sysconfig
  18. # vine patch
  19. Patch1001: eudev-1.7-gudev-vine.patch
  20. Patch1002: eudev-3.0-blkid.patch
  21. Patch1003: eudev-3.1.1-rules-vine.patch
  22. ExclusiveOS: Linux
  23. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
  24. BuildRequires: sed, flex
  25. BuildRequires: pam-devel, glib2-devel, bison
  26. BuildRequires: findutils
  27. BuildRequires: hwdata
  28. BuildRequires: gobject-introspection-devel >= 0.6.2
  29. BuildRequires: gtk-doc
  30. BuildRequires: usbutils >= 0.82
  31. BuildRequires: gperf
  32. BuildRequires: libacl-devel
  33. BuildRequires: libusb-devel
  34. BuildRequires: kmod-devel
  35. BuildRequires: libblkid-devel
  36. Requires(pre): /bin/sh fileutils
  37. Requires(pre): MAKEDEV >= 3.21
  38. Requires: %{name}-libudev = %{version}-%{release}
  39. Requires: MAKEDEV >= 3.21
  40. Requires: util-linux-ng >= 2.16
  41. Obsoletes: udev < 220
  42. Provides: udev = 220
  43. Obsoletes: dev < 3.22
  44. Conflicts: dev < 3.22
  45. Provides: dev = 3.22
  46. Obsoletes: murasaki, usbmgr, hotplug, hal, hal-info
  47. Requires: pam
  48. Vendor: Project Vine
  49. Distribution: Vine Linux
  50. Packager: daisuke, Takemikaduchi
  51. %description
  52. The udev package contains an implementation of devfs in
  53. userspace using sysfs and netlink.
  54. %package libudev
  55. Summary: Dynamic library to access udev device information
  56. Summary(ja): Udev デバイス情報にアクセスするための動的ライブラリ
  57. Group: System Environment/Libraries
  58. %description libudev
  59. This package contains the dynamic library libudev, which provides access
  60. to udev device information, and an interface to search devices in sysfs.
  61. %package libudev-devel
  62. Summary: Development files for libudev
  63. Summary(ja): Libudev の開発用ファイル
  64. Group: Development/Libraries
  65. Requires: %{name} = %{version}-%{release}
  66. Requires: %{name}-libudev = %{version}-%{release}
  67. Obsoletes: libudev-devel < 213
  68. Provides: libudev-devel = 213
  69. %description libudev-devel
  70. This package contains the development files for the library libudev, a
  71. dynamic library, which provides access to udev device information.
  72. %package libudev-static
  73. Summary: Static libraries for libudev
  74. Summary(ja): Libudev の静的ライブラリ
  75. Group: Development/Libraries
  76. Requires: %{name}-libudev-devel = %{version}-%{release}
  77. Obsoletes: libudev-static < 213
  78. Provides: libudev-static = 213
  79. %description libudev-static
  80. This package contains the static library libudev, which provides
  81. access to udev device information.
  82. %package libgudev1
  83. Summary: Libraries for adding libudev support to applications that use glib
  84. Summary(ja): Glib を使用するアプリケーションに libudev サポートを追加するためのライブラリ
  85. Group: System Environment/Libraries
  86. Requires: %{name}-libudev = %{version}-%{release}
  87. # remove the following lines for libgudev so major 1
  88. Obsoletes: libgudev <= 20090517
  89. Provides: libgudev = 20090518
  90. Obsoletes: libgudev1 < 213
  91. Provides: libgudev1 = 213
  92. %description libgudev1
  93. This package contains the libraries that make it easier to use libudev
  94. functionality from applications that use glib.
  95. %package libgudev1-devel
  96. Summary: Header files for adding libudev support to applications that use glib
  97. Summary(ja): Glib を使用するアプリケーションに libudev サポートを追加するための開発用ファイル
  98. Group: Development/Libraries
  99. Requires: %{name}-libgudev1 = %{version}-%{release}
  100. Requires: %{name}-libudev-devel = %{version}-%{release}
  101. Obsoletes: libgudev-devel <= 20090517
  102. Provides: libgudev-devel = 20090518
  103. Obsoletes: libgudev1-devel < 213
  104. Provides: libgudev1-devel = 213
  105. %description libgudev1-devel
  106. This package contains the header and pkg-config files for developing
  107. glib-based applications using libudev functionality.
  108. # compat32
  109. %package -n compat32-%{name}-libudev
  110. Summary: Dynamic library to access udev device information
  111. Summary(ja): Udev デバイス情報にアクセスするための動的ライブラリ
  112. Group: System Environment/Libraries
  113. Requires: %{name}-libudev = %{version}-%{release}
  114. %description -n compat32-%{name}-libudev
  115. This package contains the dynamic library libudev, which provides access
  116. to udev device information, and an interface to search devices in sysfs.
  117. %package -n compat32-%{name}-libudev-devel
  118. Summary: Development files for libudev
  119. Summary(ja): Libudev の開発用ファイル
  120. Group: Development/Libraries
  121. Requires: compat32-%{name}-libudev = %{version}-%{release}
  122. Obsoletes: compat32-libudev-devel < 213
  123. Provides: compat32-libudev-devel = 213
  124. %description -n compat32-%{name}-libudev-devel
  125. This package contains the development files for the library libudev, a
  126. dynamic library, which provides access to udev device information.
  127. %package -n compat32-%{name}-libgudev1
  128. Summary: Libraries for adding libudev support to applications that use glib
  129. Summary(ja): Glib を使用するアプリケーションに libudev サポートを追加するためのライブラリ
  130. Group: System Environment/Libraries
  131. Requires: compat32-%{name}-libudev = %{version}-%{release}
  132. Obsoletes: compat32-libgudev1 < 213
  133. Provides: compat32-libgudev1 = 213
  134. %description -n compat32-%{name}-libgudev1
  135. This package contains the libraries that make it easier to use libudev
  136. %package -n compat32-%{name}-libgudev1-devel
  137. Summary: Header files for adding libudev support to applications that use glib
  138. Summary(ja): Glib を使用するアプリケーションに libudev サポートを追加するための開発用ファイル
  139. Group: Development/Libraries
  140. Requires: compat32-%{name}-libudev-devel
  141. Requires: compat32-%{name}-libgudev1 = %{version}-%{release}
  142. Obsoletes: compat32-libgudev1-devel < 213
  143. Provides: compat32-libgudev1-devel = 213
  144. %description -n compat32-%{name}-libgudev1-devel
  145. This package contains the header and pkg-config files for developing
  146. glib-based applications using libudev functionality.
  147. %prep
  148. %setup -q
  149. %patch1001 -p1 -b .vine
  150. %patch1002 -p1 -b .vine
  151. %patch1003 -p1 -b .vine
  152. %build
  153. NOCONFIGURE=1 ./autogen.sh
  154. %configure \
  155. --disable-selinux \
  156. --prefix=%{_prefix} \
  157. --with-rootprefix= \
  158. --sysconfdir=%{_sysconfdir} \
  159. --exec-prefix="" \
  160. --bindir="/sbin" \
  161. --sbindir="/sbin" \
  162. --libexecdir=/lib \
  163. --with-rootlibdir=/%{_lib} \
  164. --with-rootlibexecdir=/lib/udev \
  165. --enable-introspection \
  166. --enable-manpages \
  167. --enable-static
  168. make %{?_smp_mflags}
  169. %install
  170. rm -rf $RPM_BUILD_ROOT
  171. mkdir -p $RPM_BUILD_ROOT%{_sbindir}
  172. make DESTDIR=$RPM_BUILD_ROOT install
  173. rm -fr $RPM_BUILD_ROOT%{_docdir}/udev
  174. rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la
  175. rm -f $RPM_BUILD_ROOT/%{_libdir}/libgudev*.a
  176. rm -f $RPM_BUILD_ROOT%{_sysconfdir}/udev/udev.rules
  177. rm -f $RPM_BUILD_ROOT%{_sysconfdir}/init.d/udev
  178. rm -f $RPM_BUILD_ROOT%{_sysconfdir}/hotplug.d/default/10-udev.hotplug
  179. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/udev/{rules.d,makedev.d,scripts,devices}
  180. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/dev.d
  181. mkdir -p $RPM_BUILD_ROOT%{_bindir}
  182. touch $RPM_BUILD_ROOT%{_sysconfdir}/scsi_id.config
  183. # force relative symlinks
  184. ln -sf ..%{udev_scriptdir}/scsi_id $RPM_BUILD_ROOT/sbin/scsi_id
  185. ln -sf ../../sbin/udevadm $RPM_BUILD_ROOT%{_bindir}/udevinfo
  186. ln -sf ../../sbin/udevadm $RPM_BUILD_ROOT%{_bindir}/udevtest
  187. ln -sf ../../sbin/udevadm $RPM_BUILD_ROOT%{_sbindir}/udevmonitor
  188. ln -sf udevadm $RPM_BUILD_ROOT/sbin/udevtrigger
  189. ln -sf udevadm $RPM_BUILD_ROOT/sbin/udevsettle
  190. ln -sf udevadm $RPM_BUILD_ROOT/sbin/udevcontrol
  191. mkdir -p $RPM_BUILD_ROOT%{udev_scriptdir}/{,devices}
  192. for i in \
  193. %ifarch ppc ppc64
  194. rules/arch/40-ppc.rules \
  195. %endif
  196. ; do
  197. install -m 0644 "$i" "$RPM_BUILD_ROOT%{udev_scriptdir}/rules.d/${i##*/}"
  198. done
  199. mkdir -p $RPM_BUILD_ROOT%{udev_scriptdir}/{,devices}
  200. install -m 0755 %{SOURCE4} $RPM_BUILD_ROOT%{udev_scriptdir}/fw_unit_symlinks.sh
  201. mkdir -p $RPM_BUILD_ROOT%{_datadir}/udev
  202. install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT/sbin/start_udev
  203. mkdir -p -m 0755 $RPM_BUILD_ROOT%{firmwaredir}
  204. mkdir -p -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d
  205. cat > $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/floppy-pnp.conf <<EOF
  206. alias pnp:dPNP0700 floppy
  207. alias acpi:PNP0700: floppy
  208. EOF
  209. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d
  210. install -m 0755 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/udev-post
  211. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
  212. install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/udev
  213. mkdir -p $RPM_BUILD_ROOT/var/lib/udev/makedev.d
  214. %pre
  215. getent group video >/dev/null || /usr/sbin/groupadd -g 39 video || :
  216. getent group audio >/dev/null || /usr/sbin/groupadd -g 63 audio || :
  217. getent group cdrom >/dev/null || /usr/sbin/groupadd -g 11 cdrom || :
  218. getent group tape >/dev/null || /usr/sbin/groupadd -g 33 tape || :
  219. getent group dialout >/dev/null || /usr/sbin/groupadd -g 18 dialout || :
  220. %preun
  221. if [ $1 = 0 -a -f %{_initrddir}/udev ]; then
  222. if [ -x /sbin/pidof ]; then
  223. pid=$(/sbin/pidof udevd)
  224. if [ -n "$pid" ]; then
  225. kill $pid
  226. fi
  227. fi
  228. /sbin/chkconfig --del udev
  229. fi
  230. if [ "$1" = 0 ]; then
  231. /sbin/chkconfig --del udev-post
  232. fi
  233. exit 0
  234. %post
  235. if [ "$1" -ge "1" -a -x /sbin/pidof ]; then
  236. pid=$(/sbin/pidof udevd)
  237. if [ -n "$pid" ]; then
  238. kill $pid
  239. /sbin/udevd -d
  240. fi
  241. fi
  242. exit 0
  243. %posttrans
  244. udevadm hwdb --update > /dev/null 2>&1 || :
  245. /sbin/chkconfig --add udev-post
  246. %triggerpostun -- dev <= 0:3.21-1vl1
  247. if [ $2 = 0 ]; then
  248. if [ -x /sbin/MAKEDEV ]; then
  249. /sbin/MAKEDEV null
  250. /sbin/MAKEDEV console
  251. else
  252. /bin/mknod /dev/null c 1 3
  253. /bin/mknod /dev/console c 5 1
  254. fi
  255. if [ "$(/sbin/kernelversion)" == "2.6" ] &&
  256. [ $(($(uname -r |cut -f1 -d-|cut -f3 -d.))) -gt 15 ]
  257. then
  258. /sbin/start_udev >/dev/null 2>&1
  259. if [ -e /dev/mapper/control -a -x /sbin/lvm ]; then
  260. /sbin/lvm vgmknodes >/dev/null 2>&1
  261. fi
  262. fi
  263. fi
  264. exit 0
  265. %post libudev -p /sbin/ldconfig
  266. %postun libudev -p /sbin/ldconfig
  267. %post libgudev1 -p /sbin/ldconfig
  268. %postun libgudev1 -p /sbin/ldconfig
  269. %if %{build_compat32}
  270. %post -n compat32-%{name}-libudev -p /sbin/ldconfig
  271. %postun -n compat32-%{name}-libudev -p /sbin/ldconfig
  272. %post -n compat32-%{name}-libgudev1 -p /sbin/ldconfig
  273. %postun -n compat32-%{name}-libgudev1 -p /sbin/ldconfig
  274. %endif
  275. %clean
  276. rm -rf $RPM_BUILD_ROOT
  277. %files
  278. %defattr(-,root,root)
  279. %doc COPYING README
  280. %attr(0755,root,root) /sbin/udevadm
  281. %attr(0755,root,root) /sbin/udevd
  282. %attr(0755,root,root) /sbin/start_udev
  283. /sbin/udevcontrol
  284. /sbin/udevtrigger
  285. /sbin/udevsettle
  286. /sbin/scsi_id
  287. %attr(0755,root,root) %{udev_scriptdir}/ata_id
  288. %attr(0755,root,root) %{udev_scriptdir}/cdrom_id
  289. %attr(0755,root,root) %{udev_scriptdir}/fw_unit_symlinks.sh
  290. %attr(0755,root,root) %{udev_scriptdir}/collect
  291. %attr(0755,root,root) %{udev_scriptdir}/mtd_probe
  292. %attr(0755,root,root) %{udev_scriptdir}/accelerometer
  293. %attr(0755,root,root) %{_sysconfdir}/rc.d/init.d/udev-post
  294. %{_bindir}/udevtest
  295. %{_bindir}/udevinfo
  296. %{_sbindir}/udevmonitor
  297. %attr(0755,root,root) %dir %{_sysconfdir}/udev/
  298. %attr(0755,root,root) %dir %{_sysconfdir}/udev/rules.d/
  299. %attr(0755,root,root) %dir %{udev_scriptdir}/
  300. %attr(0755,root,root) %dir %{udev_scriptdir}/rules.d/
  301. %attr(0755,root,root) %dir %{udev_scriptdir}/devices/
  302. %attr(0755,root,root) %dir %{_sysconfdir}/udev/makedev.d/
  303. %dir %{_sysconfdir}/udev/hwdb.d
  304. %{_sysconfdir}/udev/hwdb.d/20-OUI.hwdb
  305. %{_sysconfdir}/udev/hwdb.d/20-acpi-vendor.hwdb
  306. %{_sysconfdir}/udev/hwdb.d/20-bluetooth-vendor-product.hwdb
  307. %{_sysconfdir}/udev/hwdb.d/20-pci-classes.hwdb
  308. %{_sysconfdir}/udev/hwdb.d/20-pci-vendor-model.hwdb
  309. %{_sysconfdir}/udev/hwdb.d/20-sdio-classes.hwdb
  310. %{_sysconfdir}/udev/hwdb.d/20-sdio-vendor-model.hwdb
  311. %{_sysconfdir}/udev/hwdb.d/20-usb-classes.hwdb
  312. %{_sysconfdir}/udev/hwdb.d/20-usb-vendor-model.hwdb
  313. %{_sysconfdir}/udev/hwdb.d/60-evdev.hwdb
  314. %{_sysconfdir}/udev/hwdb.d/60-keyboard.hwdb
  315. %{_sysconfdir}/udev/hwdb.d/70-mouse.hwdb
  316. %{_sysconfdir}/udev/hwdb.d/70-touchpad.hwdb
  317. %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/sysconfig/udev
  318. %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/udev/udev.conf
  319. %attr(0644,root,root) %{udev_scriptdir}/rules.d/*.rules
  320. %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/scsi_id.config
  321. %config %attr(0644,root,root) %{_sysconfdir}/modprobe.d/floppy-pnp.conf
  322. %dir %attr(0755,root,root) %{firmwaredir}
  323. %{_mandir}/man8/udev*.8*
  324. %{_mandir}/man7/udev*.7*
  325. %{_mandir}/man5/udev*.5*
  326. %dir %attr(0755,root,root) /var/lib/udev
  327. %dir %attr(0755,root,root) /var/lib/udev/makedev.d
  328. # Deprecated, but keep the ownership
  329. %ghost %dir %{_sysconfdir}/udev/scripts/
  330. %ghost %dir %{_sysconfdir}/udev/devices/
  331. %ghost %dir %{_sysconfdir}/dev.d/
  332. %attr(0755,root,root) %{udev_scriptdir}/scsi_id
  333. %attr(0755,root,root) %{udev_scriptdir}/v4l_id
  334. %files libudev
  335. %defattr(-,root,root,-)
  336. /%{_lib}/libudev.so.*
  337. %files libudev-devel
  338. %defattr(-,root,root,-)
  339. %doc COPYING
  340. %{_includedir}/libudev.h
  341. %{_includedir}/udev.h
  342. %{_libdir}/libudev.so
  343. %{_libdir}/pkgconfig/libudev.pc
  344. %{_datadir}/pkgconfig/udev.pc
  345. %files libudev-static
  346. %defattr(-,root,root,-)
  347. %{_libdir}/libudev.a
  348. %files libgudev1
  349. %defattr(-,root,root,-)
  350. %doc COPYING
  351. /%{_lib}/libgudev-1.0.so.*
  352. %{_libdir}/girepository-1.0/GUdev-1.0.typelib
  353. %files libgudev1-devel
  354. %defattr(-,root,root,-)
  355. %doc COPYING
  356. %{_libdir}/libgudev-1.0.so
  357. %{_includedir}/gudev-1.0/gudev/*.h
  358. %{_datadir}/gir-1.0/GUdev-1.0.gir
  359. %{_libdir}/pkgconfig/gudev-1.0*
  360. %if %{build_compat32}
  361. %files -n compat32-%{name}-libudev
  362. %defattr(-,root,root,-)
  363. /%{_lib}/libudev.so.*
  364. %files -n compat32-%{name}-libudev-devel
  365. %defattr(-,root,root,-)
  366. %{_libdir}/libudev.so
  367. %files -n compat32-%{name}-libgudev1
  368. %defattr(-,root,root,-)
  369. /%{_lib}/libgudev-1.0.so.*
  370. %files -n compat32-%{name}-libgudev1-devel
  371. %defattr(-,root,root,-)
  372. %doc COPYING
  373. %{_libdir}/libgudev-1.0.so
  374. %endif
  375. %changelog
  376. * Thu Nov 12 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.2-2
  377. - fix spec file
  378. * Sun Jun 28 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.2-1
  379. - new upstream release
  380. * Wed Jun 10 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.1-1
  381. - new upstream release
  382. - update Patch1003 (eudev-3.1.1-rules-vine.patch)
  383. * Sun May 24 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0-2
  384. - add Patch1003 (eudev-3.0-rules-vine.patch)
  385. * Sun May 24 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0-1
  386. - new upstream release
  387. - add Patch1002 (eudev-3.0-blkid.patch)
  388. * Sun Feb 01 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.1.1-2
  389. - fix SOURCE1 (remove udevadm trigger --type=failed)
  390. * Tue Nov 04 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.1.1-1
  391. - new upstream release
  392. * Tue Oct 14 2014 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 1.10-2
  393. - added Japanese summary
  394. - added %%post and %%postun section to library subpackages
  395. - changed Group of libgudev1, compat32-eudev-libudev and compat32-eudev-libgudev1
  396. * Sun Aug 31 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.10-1
  397. - new upstream release
  398. * Fri Jun 27 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.8-1
  399. - new upstream release
  400. * Wed Jun 25 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.7-1
  401. - initial build for Vine Linux based on udev package