file-vl.spec 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435
  1. %define __libtoolize :
  2. Summary: A utility for determining file types.
  3. Summary(ja): ファイルの種類を判別するユーティリティー
  4. Name: file
  5. Version: 5.45
  6. Release: 1%{?_dist_release}
  7. Group: system
  8. Vendor: Project Vine
  9. Distribution: Vine Linux
  10. Packager: daisuke
  11. License: BSD
  12. URL: https://www.darwinsys.com/file/
  13. # master site is toooooooooooooooooo slow
  14. Source0: http://ftp.astron.com/pub/file/%{name}-%{version}.tar.gz
  15. # Addtional magic file for Vine
  16. Source10: magic.printer-j
  17. # Upstream says it's up to distributions to add a way to support local-magic.
  18. Patch0: file-localmagic.patch
  19. # not yet upstream
  20. Patch1: file-4.17-rpm-name.patch
  21. Patch2: file-5.04-volume_key.patch
  22. # revert upstream commits (rhbz#2167964)
  23. # 1. https://github.com/file/file/commit/e1233247bbe4d2d66b891224336a23384a93cce1
  24. # 2. https://github.com/file/file/commit/f7a65dbf1739a8f8671621e41c5648d1f7e9f6ae
  25. Patch3: file-5.45-readelf-limit-revert.patch
  26. # upstream commit: https://github.com/file/file/commit/218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1
  27. Patch4: file-5.45-time-t.patch
  28. # Vine
  29. Patch1000: file-5.14-magicbuild-fix.patch
  30. Buildroot: %{_tmppath}/%{name}-%{version}-root
  31. #BuildRequires: automake
  32. #BuildRequires: autoconf
  33. BuildRequires: pkgconfig(zlib)
  34. Obsoletes: file-static
  35. %description
  36. The file command is used to identify a particular file according to the
  37. type of data contained by the file. File can identify many different
  38. file types, including ELF binaries, system libraries, RPM packages, and
  39. different graphics formats.
  40. You should install the file package, since the file command is such a
  41. useful utility.
  42. %description -l ja
  43. file コマンドは、ファイルに含まれるデータの種類によって各ファイルが
  44. どのようなファイルかを判定するために使います。file は ELF バイナリ、シ
  45. ステムライブラリ、RPM パッケージ、そして様々なグラフィックフォーマット
  46. を含む、多くの異なるファイルの種類を見分けることができます。
  47. %package devel
  48. Summary: Libraries and header files for file development
  49. Summary(ja): libmagic の開発用ファイル
  50. Group: programming
  51. Requires: %{name} = %{version}-%{release}
  52. %description devel
  53. The file-devel package contains the header files and libmagic library
  54. necessary for developing programs using libmagic.
  55. %package -n python-magic
  56. Summary: Python bindings for the libmagic API
  57. Group: programming
  58. BuildRequires: python-devel
  59. BuildRequires: python-setuptools
  60. BuildRequires: python-rpm-macros
  61. Requires: %{name} = %{version}-%{release}
  62. %description -n python-magic
  63. This package contains the Python bindings to allow access to the
  64. libmagic API. The libmagic library is also used by the familiar
  65. file(1) command.
  66. %package -n python3-magic
  67. Summary: Python bindings for the libmagic API
  68. Group: programming
  69. BuildRequires: python3-devel
  70. BuildRequires: python3-setuptools
  71. BuildRequires: python3-rpm-macros
  72. Requires: %{name} = %{version}-%{release}
  73. %description -n python3-magic
  74. This package contains the Python bindings to allow access to the
  75. libmagic API. The libmagic library is also used by the familiar
  76. file(1) command.
  77. %debug_package
  78. %prep
  79. %setup -q
  80. %autopatch -p1
  81. cat %{SOURCE10} >> ./magic/Localstuff
  82. iconv -f iso-8859-1 -t utf-8 < doc/libmagic.man > doc/libmagic.man_
  83. touch -r doc/libmagic.man doc/libmagic.man_
  84. mv doc/libmagic.man_ doc/libmagic.man
  85. %build
  86. autoreconf -fiv
  87. CFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" \
  88. %configure --enable-fsect-man5 --disable-rpath
  89. # remove hardcoded library paths from local libtool
  90. sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
  91. sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
  92. export LD_LIBRARY_PATH=$RPM_BUILD_ROOT/%{name}-%{version}/src/.libs
  93. %make_build
  94. cd python
  95. %py_build
  96. %py3_build
  97. %install
  98. rm -rf $RPM_BUILD_ROOT
  99. mkdir -p $RPM_BUILD_ROOT%{_bindir}
  100. mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
  101. mkdir -p $RPM_BUILD_ROOT%{_mandir}/man3
  102. mkdir -p $RPM_BUILD_ROOT%{_mandir}/man5
  103. mkdir -p $RPM_BUILD_ROOT%{_datadir}/misc
  104. mkdir -p $RPM_BUILD_ROOT%{_datadir}/file
  105. %make_install
  106. rm -f ${RPM_BUILD_ROOT}%{_libdir}/*.la
  107. # local magic in /etc/magic
  108. mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}
  109. cp -a ./magic/magic.local ${RPM_BUILD_ROOT}%{_sysconfdir}/magic
  110. cat magic/Magdir/* > ${RPM_BUILD_ROOT}%{_datadir}/misc/magic
  111. ln -s misc/magic ${RPM_BUILD_ROOT}%{_datadir}/magic
  112. ln -s ../magic ${RPM_BUILD_ROOT}%{_datadir}/file/magic
  113. cd python
  114. %py_install
  115. %py3_install
  116. %{__install} -d ${RPM_BUILD_ROOT}%{_datadir}/%{name}
  117. %ifarch x86_64
  118. %check
  119. export LD_LIBRARY_PATH=$PWD/src/.libs
  120. make -C tests check
  121. %endif
  122. %files
  123. %license COPYING
  124. %doc ChangeLog README
  125. %config(noreplace) %{_sysconfdir}/magic
  126. %{_bindir}/*
  127. %{_libdir}/libmagic.so.*
  128. %{_datadir}/file/*
  129. %{_datadir}/magic*
  130. %{_datadir}/misc/*
  131. %{_mandir}/man[15]/*
  132. %files devel
  133. %{_libdir}/*.so
  134. %{_libdir}/pkgconfig/*
  135. %{_includedir}/magic.h
  136. %{_mandir}/man3/*
  137. %files -n python-magic
  138. %license python/LICENSE
  139. %doc python/README* python/example.py
  140. %{python_sitelib}/magic.py
  141. %{python_sitelib}/magic.pyc
  142. %{python_sitelib}/magic.pyo
  143. %{python_sitelib}/*egg-info
  144. %files -n python3-magic
  145. %license python/LICENSE
  146. %doc python/README* python/example.py
  147. %{python3_sitelib}/*
  148. %changelog
  149. * Fri Jul 12 2024 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.45-1
  150. - new upstream release.
  151. * Sun Oct 02 2022 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.43-1
  152. - new upstream release.
  153. * Thu Aug 12 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.40-2
  154. - renumbered patches.
  155. - imported Patch3-5 from upstream.
  156. * Wed Apr 21 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.40-1
  157. - new upstream release.
  158. - dropped ldconfig scriptlets.
  159. * Wed Feb 17 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.39-1
  160. - new upstream release.
  161. - dropped Patch14 and 9000: fixed in upstream.
  162. * Sun Oct 27 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.37-2
  163. - added Patch9000.
  164. * Sat Oct 19 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.37-1
  165. - new upstream release.
  166. - added python3 support.
  167. - updated Patch0.
  168. - dropped Patch1, 5-17 and 100: fixed in upstream.
  169. - imported Patch14 from rawhide.
  170. * Thu Jul 28 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.28-1
  171. - new upstream release.
  172. - dropped Patch200: fixed in upstream.
  173. - updated patches.
  174. - imported Patch15,17 and 100.
  175. * Sat Nov 15 2014 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.20-1
  176. - new upstream release
  177. - update/drop patches based on fc22
  178. * Fri Oct 24 2014 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 5.14-7
  179. - reflected 6.0 updates and bumped release
  180. * Thu Sep 11 2014 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.14-6
  181. - drop patch230 (moved to patch320)
  182. - add Patch240 for fix CVE-2014-0207
  183. - add Patch250 for fix CVE-2014-0237
  184. - add Patch260 for fix CVE-2014-0238
  185. - add Patch270 for fix CVE-2014-3478
  186. - add Patch280 for fix CVE-2014-3479
  187. - add Patch290 for fix CVE-2014-3480
  188. - add Patch300 for fix CVE-2014-3487
  189. - add Patch310 for fix CVE-2014-3538
  190. - add Patch320 for fix CVE-2014-3587
  191. These patches are from debian/ubuntu, thanks.
  192. * Thu Aug 28 2014 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.14-5
  193. - add patch230 for fix CVE-2014-3587 (cdf_read_property_info)
  194. * Thu Mar 27 2014 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.14-4
  195. - add patch110,220 for fix regression of CVE-2014-2270
  196. * Wed Mar 12 2014 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.14-3
  197. - add patch210 for fix CVE-2014-2270
  198. * Thu Feb 20 2014 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.14-2
  199. - add patch200 for fix CVE-2014-1943
  200. * Sun Jul 20 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 5.14-2
  201. - rebuild with VineSeed environment
  202. * Sun Sep 22 2013 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 5.14-1
  203. - new upstream reelase
  204. - add patch100 to fix build error
  205. - remove -static subpackage and add Obs: file-static
  206. - fix old changelog date...
  207. * Thu Nov 29 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 5.11-1
  208. - new upstream reelase
  209. - drop all local patches
  210. - import fedora patches
  211. * Wed Feb 15 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 5.05-3
  212. - rebuild with python-2.7.2
  213. * Sun Feb 20 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 5.05-2
  214. - rebuild package
  215. - fix Patch100
  216. * Sat Feb 12 2011 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 5.05-1
  217. - new upstream release
  218. - updated Vine patches (but Patch100 has not been ported yet...)
  219. - split to devel and static subpackcages
  220. * Mon Sep 27 2010 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.21-3
  221. - rebuilt with rpm-4.8.1
  222. - add environment variable LIBTOOL for make command
  223. * Fri Sep 26 2008 Shu KONNO <owa@bg.wakwak.com> 4.21-2
  224. - spec in utf-8
  225. - removed *.la
  226. * Mon May 12 2008 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.21-1
  227. - applied new versioning policy
  228. * Tue Dec 11 2007 Daisuke SUZUKI <daisuke@linux.or.jp> 4.21-0vl1
  229. - new upstream release
  230. - import debian/fedora patches
  231. - drop obsolete vine magic.
  232. * Thu Jun 14 2007 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 4.09-0vl3
  233. - rebuild for VineSeed with new tool chain
  234. * Thu May 31 2007 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 4.09-0vl2.2
  235. - add patch110 for fix CVE-2007-2799
  236. - add zlib-devel to BuildPreReq tag
  237. * Mon Mar 26 2007 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 4.09-0vl2.1
  238. - add patch100 for fix CVE-2007-1536
  239. * Sun Sep 10 2006 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.09-0vl2
  240. - changed Group to Applications/System
  241. * Sun Apr 18 2004 Daisuke SUZUKI <daisuke@linux.or.jp> 4.09-0vl1
  242. - new upstream release
  243. - update vine patches
  244. * Wed Sep 10 2003 Tomoya TAKA <taka@vinelinux.org> 4.03-0vl2
  245. - update Patch10, use 'size_t' in src/jcode.[ch]
  246. * Tue Sep 09 2003 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.03-0vl1
  247. - update to 4.03
  248. - update Patch0, 1, 10 for 4.03
  249. - s/Copyright/License/
  250. * Mon May 12 2003 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.02-1vl1
  251. - update to 4.02
  252. - update Vine patches for 4.02
  253. * Sun Mar 9 2003 Daisuke SUZUKI <daisuke@linux.or.jp> 3.41-0vl1
  254. - new upstream release
  255. - fixed security bug (http://www.idefense.com/advisory/03.04.03.txt)
  256. - remove unneeded patches.
  257. - update Vine patches for 3.41
  258. * Mon Apr 1 2002 Jun Nishii <jun@vinelinux.org> 3.37-0vl2
  259. - added NPDL2 data [Vine:02348]
  260. * Fri Feb 08 2002 Daisuke SUZUKI <daisuke@linux.or.jp> 3.37-0vl1
  261. - update to 3.37
  262. * Sun Jul 15 2001 MATSUBAYASHI 'Shaolin' Kohji <shaolin@vinelinux.org>
  263. - 3.35-0vl3
  264. - disable some entries in elf for problems on big-endian archs
  265. * Wed Jun 6 2001 Jun Nishii <jun@vinelinux.org>
  266. - file-3.35-0vl1
  267. - ver.up
  268. - added %doc
  269. * Thu Jan 11 2001 Jun Nishii <jun@vinelinux.org>
  270. - file-3.33-1vl4
  271. - more fix and clean up jtext patch (file-3.33-vinejtext.patch)
  272. * Thu Jan 11 2001 Jun Nishii <jun@vinelinux.org>
  273. - file-3.33-1vl3
  274. - fix again jtext patch (file-3.33-vinejtext.patch)
  275. - added file-3.33-vinenames.patch to avoid miss-judgement
  276. * Wed Jan 10 2001 Jun Nishii <jun@vinelinux.org>
  277. - file-3.33-1vl2
  278. - update jtext patch (file-3.33-vinejtext.patch)
  279. * Mon Jan 8 2001 Jun Nishii <jun@vinelinux.org>
  280. - file-3.33-1vl1
  281. - modify description-ja and spec
  282. * Sun Jul 09 2000 MATSUBAYASHI 'Shaolin' Kohji <shaolin@rhythmaning.org>
  283. - file-3.28-2vl2
  284. - fixed %files section to handle compressed man pages
  285. * Tue Jun 13 2000 Lisa Sagami <czs14350@nifty.ne.jp>
  286. - marged RH 3.28-2 and Vine 3.27-3vl3
  287. * Wed Feb 16 2000 Cristian Gafton <gafton@redhat.com>
  288. - add ia64 patch from rth
  289. * Mon Feb 7 2000 Bill Nottingham <notting@redhat.com>
  290. - handle compressed manpages
  291. - update to 3.28
  292. * Mon Sep 6 1999 Norihito Ohmori <ohmori@flatout.org>
  293. - Japanese Text detection bug fix. (by Toru Hoshina <hoshina@best.com>)
  294. * Fri Aug 27 1999 Norihito Ohmori <ohmori@flatout.org>
  295. - patch dues not apply bug.
  296. * Thu Aug 26 1999 Norihito Ohmori <ohmori@flatout.org>
  297. - not need kcc (Thanks for Toru Hoshina <hoshina@best.com>)
  298. - ASCII data and Shift JIS data detected in Japanese Text Detection bug fix.
  299. * Mon Aug 23 1999 Jeff Johnson <jbj@redhat.com>
  300. - identify ELF stripped files correctly (#4665).
  301. - use SPARC (not sparc) consistently throughout (#4665).
  302. - add entries for MS Office files (#4665).
  303. * Thu Aug 12 1999 Jeff Johnson <jbj@redhat.com>
  304. - diddle magic so that *.tfm files are identified correctly.
  305. * Tue Jul 6 1999 Jeff Johnson <jbj@redhat.com>
  306. - update to 3.27.
  307. * Mon Mar 22 1999 Preston Brown <pbrown@redhat.com>
  308. - experimental support for realmedia files added
  309. * Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
  310. - auto rebuild in the new build environment (release 5)
  311. * Fri Mar 19 1999 Jeff Johnson <jbj@redhat.com>
  312. - strip binary.
  313. * Fri Nov 27 1998 Jakub Jelinek <jj@ultra.linux.cz>
  314. - add SPARC V9 magic.
  315. * Tue Nov 10 1998 Jeff Johnson <jbj@redhat.com>
  316. - update to 3.26.
  317. * Mon Aug 24 1998 Jeff Johnson <jbj@redhat.com>
  318. - update to 3.25.
  319. - detect gimp XCF versions.
  320. * Thu May 07 1998 Prospector System <bugs@redhat.com>
  321. - translations modified for de, fr, tr
  322. * Wed Apr 08 1998 Erik Troan <ewt@redhat.com>
  323. - updated to 3.24
  324. - buildrooted
  325. * Mon Jun 02 1997 Erik Troan <ewt@redhat.com>
  326. - built against glibc
  327. * Mon Mar 31 1997 Erik Troan <ewt@redhat.com>
  328. - Fixed problems caused by 64 bit time_t.
  329. * Thu Mar 06 1997 Michael K. Johnson <johnsonm@redhat.com>
  330. - Improved recognition of Linux kernel images.