]> git.pld-linux.org Git - packages/file.git/blobdiff - file.spec
- updated to 5.19
[packages/file.git] / file.spec
index 38318b5facd73978928ea62d8c23f2d0f8f38c87..069c54e55e4ba7569f1ba1f4629464631f34a3f9 100644 (file)
--- a/file.spec
+++ b/file.spec
@@ -1,8 +1,10 @@
 #
 # Conditional build:
-%bcond_without python          # don't build python-magic module
+%bcond_without python2         # don't build python-magic module for Python 2.x
+%bcond_without python3         # don't build python-magic module for Python 3.x
 %bcond_without static_libs     # don't build static libraries
-#
+%bcond_without tests           # don't perform "make check"
+
 Summary:       A utility for determining file types
 Summary(cs.UTF-8):     Program pro zjišťování typu souborů
 Summary(da.UTF-8):     Et værktøj til bestemmelse af filtyper
@@ -27,33 +29,37 @@ Summary(uk.UTF-8):  Утиліта для визначення типів фай
 Summary(zh_CN.UTF-8):  判定文件类型的工具。
 Summary(zh_TW.UTF-8):  用於決定檔案類型的一個工具程式。
 Name:          file
-Version:       4.20
-Release:       3
+Version:       5.19
+Release:       1
 License:       distributable
 Group:         Applications/File
 Source0:       ftp://ftp.astron.com/pub/file/%{name}-%{version}.tar.gz
-# Source0-md5: 402bdb26356791bd5d277099adacc006
-Source1:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
-# Source1-md5: c157a183b64156f8baafaefd9cbf04c1
+# Source0-md5: e3526f59023f3f7d1ffa4d541335edab
+Source1:       http://ftp1.pld-linux.org/people/glen/%{name}-non-english-man-pages.tar.bz2
+# Source1-md5: 6a45bcaefd19b94db36a1b2b7c5b806b
 Source2:       %{name}-zisofs.magic
 Source3:       %{name}-mscompress.magic
-Patch0:                %{name}-debian.patch
-Patch1:                %{name}-sparc.patch
-Patch2:                %{name}-lmagic.patch
-Patch3:                %{name}-greedy-dump.patch
-Patch4:                %{name}-magic.patch
-Patch5:                %{name}-selinux.patch
-Patch6:                %{name}-msdos.patch
-Patch7:                %{name}-DoS.patch
-Patch8:                ftp://ftp.astron.com/pub/file/patch-4.20-REG_STARTEND
-BuildRequires: autoconf
+Source4:       %{name}-magic.mime-gen.awk
+Patch0:                %{name}-selinux.patch
+Patch1:                searchpath.patch
+Patch2:                automake.patch
+URL:           http://www.darwinsys.com/file/
+BuildRequires: autoconf >= 2.50
 BuildRequires: automake
-BuildRequires: libtool
-%if %{with python}
-BuildRequires: python-devel >= 1:2.5
-BuildRequires: python-modules >= 1:2.5
+BuildRequires: libtool >= 2:2.0
+BuildRequires: rpmbuild(macros) >= 1.453
+%if %{with python2}
+BuildRequires: python-devel
+BuildRequires: python-modules
+BuildRequires: rpm-pythonprov
+%endif
+%if %{with python3}
+BuildRequires: python3-devel
+BuildRequires: python3-modules
 BuildRequires: rpm-pythonprov
 %endif
+BuildRequires: zlib-devel
+Requires(pretrans):    coreutils
 Requires:      libmagic = %{version}-%{release}
 Conflicts:     rpm-build < 4.4.1-9
 Conflicts:     xdelta < 1.0.0
@@ -201,6 +207,7 @@ Summary:    Header files for libmagic library
 Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki libmagic
 Group:         Development/Libraries
 Requires:      libmagic = %{version}-%{release}
+Requires:      zlib-devel
 
 %description -n libmagic-devel
 Library of functions which operate on magic database file.
@@ -231,30 +238,49 @@ Biblioteka funkcji operujących na pliku bazy danych magic.
 Ten pakiet zawiera statyczną wersję biblioteki.
 
 %package -n python-magic
-Summary:       Python bindings for libmagic
-Summary(pl.UTF-8):     Wiązania Pythona dla libmagic
+Summary:       Python bindings for libmagic
+Summary(pl.UTF-8):     Wiązania Pythona 2 do biblioteki libmagic
 Group:         Libraries/Python
 Requires:      libmagic = %{version}-%{release}
-%pyrequires_eq python-libs
+Requires:      python-libs
 
 %description -n python-magic
-Python bindings for libmagic.
+Python bindings for libmagic.
 
 %description -n python-magic -l pl.UTF-8
-Wiązania Pythona dla libmagic.
+Wiązania Pythona 2 do biblioteki libmagic.
+
+%package -n python3-magic
+Summary:       Python 3 bindings for libmagic
+Summary(pl.UTF-8):     Wiązania Pythona 3 do biblioteki libmagic
+Group:         Libraries/Python
+Requires:      libmagic = %{version}-%{release}
+Requires:      python-libs
+
+%description -n python3-magic
+Python 3 bindings for libmagic.
+
+%description -n python3-magic -l pl.UTF-8
+Wiązania Pythona 3 do biblioteki libmagic.
 
 %prep
 %setup -q
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p0
-cd src
-%patch8 -p0
+
+%if "%{cc_version}" < "3.4"
+%{__sed} -i -e 's,-Wextra,,' configure.ac
+%endif
+
+cp -p %{SOURCE3} magic/Magdir/mscompress
+cp -p %{SOURCE2} magic/Magdir/zisofs
+
+rm -f magic/Magdir/{*.orig,*~}
+
+%if %{with python3}
+cp -a python py3
+%endif
 
 %build
 %{__libtoolize}
@@ -263,16 +289,26 @@ cd src
 %{__autoconf}
 %{__automake}
 %configure \
+       --disable-silent-rules \
        --enable-fsect-man5 \
-       %{!?with_static_libs:--enable-static=no}
+       %{?with_static_libs:--enable-static}
 
 %{__make}
 
-%if %{with python}
+%if %{with python2}
 cd python
-python setup.py build
+%{__python} setup.py build
 cd ..
 %endif
+%if %{with python3}
+cd py3
+%{__python3} setup.py build
+cd ..
+%endif
+
+%if %{with tests}
+%{__make} check
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -281,34 +317,34 @@ install -d $RPM_BUILD_ROOT/%{_lib}
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-mv $RPM_BUILD_ROOT%{_libdir}/libmagic.so.*.* $RPM_BUILD_ROOT/%{_lib}
-ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib} ; echo libmagic.so.*.*) \
+mv $RPM_BUILD_ROOT%{_libdir}/libmagic.so.* $RPM_BUILD_ROOT/%{_lib}
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libmagic.so.*.*.*) \
         $RPM_BUILD_ROOT%{_libdir}/libmagic.so
 
-%if %{with python}
+%if %{with python2}
 cd python
-python setup.py install \
-       --root=$RPM_BUILD_ROOT \
-       --optimize=2
+%{__python} setup.py install \
+       --optimize=2 \
+       --root=$RPM_BUILD_ROOT
 cd ..
+%py_postclean
 %endif
 
-install -D magic/magic.local $RPM_BUILD_ROOT%{_sysconfdir}/magic
+%if %{with python3}
+cd py3
+%{__python3} setup.py install \
+       --optimize=2 \
+       --skip-build \
+       --root=$RPM_BUILD_ROOT
+cd ..
+%endif
 
-cat %{SOURCE2} %{SOURCE3} >>$RPM_BUILD_ROOT%{_datadir}/file/magic
+awk -f %{SOURCE4} < $RPM_BUILD_ROOT%{_datadir}/misc/magic > $RPM_BUILD_ROOT%{_datadir}/misc/magic.mime
+ln -s misc $RPM_BUILD_ROOT%{_datadir}/file
 
 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-
-# somebody forgot about patching in tarball
-mv -f $RPM_BUILD_ROOT%{_mandir}/pt_BR/man{4,5}
-sed -e 's/MAGIC 4/MAGIC 5/' $RPM_BUILD_ROOT%{_mandir}/pt_BR/man5/magic.4 \
-       > $RPM_BUILD_ROOT%{_mandir}/pt_BR/man5/magic.5
-rm -f $RPM_BUILD_ROOT%{_mandir}/pt_BR/man5/magic.4
-
-./src/file -m $RPM_BUILD_ROOT%{_datadir}/file/magic -c -C
-
-rm -f $RPM_BUILD_ROOT%{_mandir}/README.file-non-english-man-pages
-rm -f $RPM_BUILD_ROOT%{_mandir}/file-magic4.diff
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.file-non-english-man-pages
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/file-magic4.diff
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -316,13 +352,27 @@ rm -rf $RPM_BUILD_ROOT
 %post  -n libmagic -p /sbin/ldconfig
 %postun        -n libmagic -p /sbin/ldconfig
 
+%pretrans
+# it used to be directory
+if [ -d %{_datadir}/file -a ! -L %{_datadir}/file ]; then
+       mv -b %{_datadir}/file{,.dir}
+       ln -sn misc %{_datadir}/file
+%banner -e %{name} <<EOF
+Check %{_datadir}/file.dir for your own files and remove it when done.
+EOF
+fi
+
 %files
 %defattr(644,root,root,755)
-%doc ChangeLog LEGAL.NOTICE README
+%doc ChangeLog COPYING README
 %attr(755,root,root) %{_bindir}/file
 %{_datadir}/file
+%{_datadir}/misc/magic
+%{_datadir}/misc/magic.mgc
+%{_datadir}/misc/magic.mime
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/magic
-%{_mandir}/man[15]/*
+%{_mandir}/man1/file.1*
+%{_mandir}/man5/magic.5*
 %lang(de) %{_mandir}/de/man[15]/*
 %lang(es) %{_mandir}/es/man[15]/*
 %lang(fr) %{_mandir}/fr/man[15]/*
@@ -336,13 +386,14 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libmagic
 %defattr(644,root,root,755)
 %attr(755,root,root) /%{_lib}/libmagic.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/libmagic.so.1
 
 %files -n libmagic-devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libmagic.so
 %{_libdir}/libmagic.la
 %{_includedir}/magic.h
-%{_mandir}/man3/*
+%{_mandir}/man3/libmagic.3*
 
 %if %{with static_libs}
 %files -n libmagic-static
@@ -350,9 +401,21 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libmagic.a
 %endif
 
-%if %{with python}
+%if %{with python3}
 %files -n python-magic
 %defattr(644,root,root,755)
-%attr(755,root,root) %{py_sitedir}/*.so
-%{py_sitedir}/Magic_file_extensions-*.egg-info
+%doc python/README python/example.py
+%if "%{py_ver}" > "2.4"
+%{py_sitescriptdir}/Magic_file_extensions-*.egg-info
+%endif
+%{py_sitescriptdir}/magic.py[co]
+%endif
+
+%if %{with_python3}
+%files -n python3-magic
+%defattr(644,root,root,755)
+%doc python/README python/example.py
+%{py3_sitescriptdir}/magic.py
+%{py3_sitescriptdir}/__pycache__/magic.*.py[co]
+%{py3_sitescriptdir}/Magic_file_extensions-*.egg-info
 %endif
This page took 0.223647 seconds and 4 git commands to generate.