]> git.pld-linux.org Git - packages/file.git/blobdiff - file.spec
- greedy-dump.patch: if a file looks like both dump file and ELF, use the latter
[packages/file.git] / file.spec
index f302c66ca24d4069cfa46278cde74974fe8360df..d656fc3e8092109c64ba32f3101a6164520988c7 100644 (file)
--- a/file.spec
+++ b/file.spec
@@ -1,38 +1,59 @@
-Summary:       file(1) command
-Summary(de):   Befehl file(1)
-Summary(es):   Comando file
-Summary(fr):   Commande file(1)
-Summary(ja): ¥Õ¥¡¥¤¥ë¤Î¼ïÎà¤òȽÊ̤¹¤ë¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡¼
-Summary(pl):   Polecenie file(1)
+#
+# Conditional build:
+%bcond_without python  # don't build python-magic module
+#
+Summary:       A utility for determining file types
+Summary(cs):   Program pro zji¹»ování typu souborù
+Summary(da):   Et værktøj til bestemmelse af filtyper
+Summary(de):   Ein Befehl zur Bestimmung von Dateitypen
+Summary(es):   Utilidad para determinar el tipo de fichero
+Summary(fr):   Utilitaire permettant d'identifier des types de fichier
+Summary(id):   Utility untuk menentukan tipe file
+Summary(is):   Tól til þess að komast að tegund skráar
+Summary(it):   Utility per determinare il tipo di file
+Summary(ja):   ¥Õ¥¡¥¤¥ë¤Î¼ïÎà¤òȽÃǤ¹¤ë¤¿¤á¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£
+Summary(ko):   ÆÄÀÏ Á¾·ù¸¦ °áÁ¤Çϴ À¯Æ¿¸®Æ¼
+Summary(nb):   Et verktøy for å bestemme filtyper
+Summary(pl):   Polecenie okre¶laj±ce rodzaj pliku
+Summary(pt):   Um utilitário para determinar o tipo dos ficheiros
 Summary(pt_BR):        Um utilitário para determinar tipos de arquivos
-Summary(tr):   Dosya tipini belirleme aracý
 Summary(ru):   õÔÉÌÉÔÁ ÄÌÑ ÏÐÒÅÄÅÌÅÎÉÑ ÔÉÐÏ× ÆÁÊÌÏ×
+Summary(sk):   Pomocný program pre urèenie typu súboru
+Summary(sl):   Pripomoèek za ugotavljanje vrste datotek
+Summary(sv):   Ett verktyg för att bestämma filtyper
+Summary(tr):   Dosya türünü öðrenmek için bir araç
 Summary(uk):   õÔÉ̦ÔÁ ÄÌÑ ×ÉÚÎÁÞÅÎÎÑ ÔÉЦנÆÁÊ̦×
+Summary(zh_CN):        Åж¨ÎļþÀàÐ͵Ť¾ß¡£
+Summary(zh_TW):        ¥Î©ó¨M©wÀÉ®×Ãþ«¬ªº¤@­Ó¤u¨ãµ{¦¡¡C
 Name:          file
-Version:       3.38
-Release:       1
+Version:       4.13
+Release:       3
 License:       distributable
 Group:         Applications/File
 Source0:       ftp://ftp.astron.com/pub/file/%{name}-%{version}.tar.gz
+# Source0-md5: 2bfc0f878ee22e50441b68df2ccbb984
 Source1:       zisofs.magic
-Source2:       magic.mime
-Source3:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
-Source4:       %{name}-magic.mscompress
-Patch0:                %{name}-sparc.patch
-Patch1:                %{name}-tfm.patch
+Source2:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
+# Source2-md5: c157a183b64156f8baafaefd9cbf04c1
+Source3:       %{name}-magic.mscompress
+Patch0:                %{name}-debian.patch
+Patch1:                %{name}-sparc.patch
 Patch2:                %{name}-ia64.patch
-Patch3:                %{name}-elf.patch
-Patch4:                %{name}-man.patch
-Patch5:                %{name}-palm.patch
-Patch6:                %{name}-mime-elf.patch
-Patch7:                %{name}-unicode.patch
-Patch8:                %{name}-mng.patch
+Patch3:                %{name}-unicode.patch
+Patch4:                %{name}-dicom.patch
+Patch5:                %{name}-lmagic.patch
+Patch6:                %{name}-python2.4.patch
+Patch7:                %{name}-greedy-dump.patch
 BuildRequires: autoconf
 BuildRequires: automake
-BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+BuildRequires: libtool
+%if %{with python}
+BuildRequires: python-devel
+BuildRequires: python-modules
+%endif
+Requires:      libmagic = %{version}-%{release}
 Conflicts:     xdelta < 1.0.0
-
-%define                _datadir        %{_prefix}/share/misc
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 This package is useful for finding out what type of file you are
@@ -42,6 +63,17 @@ safe to 'more' it or if it's a binary. It recognizes many file types,
 including ELF binaries, system libraries, RPM packages, and many
 different graphics formats.
 
+%description -l cs
+Pøíkaz file se pou¾ívá pro identifikaci zadaného souboru podle jeho
+obsahu. Je schopen identifikovat mno¾ství rùzných typù souborù vèetnì
+binárních souborù ELF, systémových knihoven, RPM balíèkù a rùzných
+grafických formátù.
+
+%description -l da
+Programmet "file" bruges til at identificere filer baseret på indhold.
+"file" kan identificere mange forskellige filtyper, inkl. ELF-filer,
+systembiblioteker, RPM-pakker og billedfiler i forskellige formater.
+
 %description -l de
 Sie können dieses Paket verwenden, um zu bestimmen, welches Format
 eine bestimmte Datei hat. Wird durch fsck eine Datei in lost+found
@@ -67,12 +99,28 @@ faire un more, ou s'il s'agit d'un binaire. Il reconna
 types de fichiers dont les binaires ELF, les bibliothèques systèmes,
 les paquetages RPM et de nombreux formats graphiques différents.
 
+%description -l it
+Il comando file è utilizzato per identificare il tipo di file in base
+ai tipi di dati che contiene. File può identificare molti tipi di
+file, tra cui i binari ELF, le librerie di sistema, i pacchetti RPM e
+vari formati grafici.
+
 %description -l ja
 ¥Õ¥¡¥¤¥ë¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤ë¥Ç¡¼¥¿¤Î¼ïÎà¤Ë¤è¤ê¸Ä¡¹¤Î¥Õ¥¡¥¤¥ë¤ò
-¸«Ê¬¤±¤ë¤¿¤á¤Ë»È¤ï¤ì¤ë¡£file ¤Ï ELF ¥Ð¥¤¥Ê¥ê¡¢¥·¥¹¥Æ¥à¥é¥¤¥Ö¥é¥ê¡¢
-RPM ¥Ñ¥Ã¥±¡¼¥¸¡¢¤½¤·¤Æ¼ï¡¹¤Î¥°¥é¥Õ¥£¥Ã¥¯¥Õ¥©¡¼¥Þ¥Ã¥È¤ò´Þ¤à¡¢Â¿¤¯¤Î°Û¤Ê¤ë
+¸«Ê¬¤±¤ë¤¿¤á¤Ë»È¤ï¤ì¤ë¡£file ¤Ï ELF ¥Ð¥¤¥Ê¥ê¡¢¥·¥¹¥Æ¥à¥é¥¤¥Ö¥é¥ê¡¢ RPM
+¥Ñ¥Ã¥±¡¼¥¸¡¢¤½¤·¤Æ¼ï¡¹¤Î¥°¥é¥Õ¥£¥Ã¥¯¥Õ¥©¡¼¥Þ¥Ã¥È¤ò´Þ¤à¡¢Â¿¤¯¤Î°Û¤Ê¤ë
 ¥Õ¥¡¥¤¥ë¤Î¼ïÎà¤ò¸«Ê¬¤±¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ë¡£
 
+%description -l ko
+ÆÄÀÏ¿¡ ÀúÀåµÈ ÀÚ·á À¯Çü¿¡ µû¶ó ÆÄÀÏÀ» ½Äº°Çϴ file ¸í·É.
+FileÀº ELF ¹ÙÀ̳ʸ®, ½Ã½ºÅÛ ¶óÀ̺귯¸®, RPM ÆÐÅ°Áö¿Í
+´Ù¸¥ ±×·¡ÇÈ À¯ÇüÀ» Æ÷ÇÔÇÑ ¿©·¯ ¸¹Àº ÆÄÀÏ À¯ÇüÀ» ½Äº° °¡´ÉÇÕ´Ï´Ù.
+
+%description -l nb
+Programmet "file" brukes for å identifisere filer basert på innhold.
+"file" kan identifisere mange ulike filtyper, inkl. ELF-filer,
+systembibliotek, RPM-pakker og bildefiler i ulike formater.
+
 %description -l pl
 Pakiet ten jest przydatny je¿eli chcesz rozpoznaæ typ plików w twoim
 systemie. Na przyk³ad je¿eli fsck zdeponuje jakie¶ pliki w katalogu
@@ -82,6 +130,12 @@ wzgl
 wiele typów plików np. binarny ELF, biblioteki systemowe, pakiety RPM
 oraz wiele ró¿nych formatów graficznych i d¼wiêkowych.
 
+%description -l pt
+O comando file é usado para identificar um ficheiro em particular de
+acordo com o tipo de dados que contém. O file pode identificar vários
+formatos de ficheiros, incluindo binários ELF, bibliotecas de sistema,
+pacotes RPM e vários formatos gráficos diferentes.
+
 %description -l pt_BR
 Este pacote é útil para descobrir que tipo de arquivo você está
 procurando em seu sistema. Por exemplo, se um fsck resulta em um
@@ -91,6 +145,18 @@ Ele reconhece v
 bibliotecas de sistema, pacotes RPM e vários formatos gráficos
 diferentes.
 
+%description -l ru
+ëÏÍÁÎÄÁ file ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÏÐÒÅÄÅÌÅÎÉÑ ÔÉÐÁ ÆÁÊÌÁ ÐÏ ÄÁÎÎÙÍ, × ÎÅÍ
+ÓÏÄÅÒÖÁÝÉÍÓÑ. ïÎÁ ÍÏÖÅÔ ÏÐÒÅÄÅÌÉÔØ ÍÎÏÖÅÓÔ×Ï ÒÁÚÎÏÏÂÒÁÚÎÙÈ ÔÉÐÏ×
+ÆÁÊÌÏ×, ×ËÌÀÞÁÑ ÂÉÎÁÒÎÙÅ ÆÁÊÌÙ ÆÏÒÍÁÔÁ ELF, ÓÉÓÔÅÍÎÙÅ ÂÉÂÌÉÏÔÅËÉ,
+ÐÁËÅÔÙ RPM, ÒÁÚÌÉÞÎÙÅ ÇÒÁÆÉÞÅÓËÉÅ ÆÏÒÍÁÔÙ É ÍÎÏÇÏ ÄÒÕÇÉÈ.
+
+%description -l sv
+Kommandot file används för att identifera en fil vad avser vilken typ
+av data filen innehåller.  File kan identifiera många olika filtyper,
+inklusive ELF-binärer, systembibliotek, RPM-paket och olika
+grafikformat.
+
 %description -l tr
 file, bir dosyayý inceleyerek ne tür bir dosya olduðu konusunda size
 bir fikir verebilir. Böylece uzantýsýndan ve adýndan ne olduðunu
@@ -99,34 +165,96 @@ da ne yapaca
 çoðu grafik formatýný, çalýþtýrýlabilir dosyalarý, sistem
 kitaplýklarýný vs. tanýyabilir.
 
-%description -l ru
-ëÏÍÁÎÄÁ file ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÏÐÒÅÄÅÌÅÎÉÑ ÔÉÐÁ ÆÁÊÌÁ ÐÏ ÄÁÎÎÙÍ, × ÎÅÍ
-ÓÏÄÅÒÖÁÝÉÍÓÑ. ïÎÁ ÍÏÖÅÔ ÏÐÒÅÄÅÌÉÔØ ÍÎÏÖÅÓÔ×Ï ÒÁÚÎÏÏÂÒÁÚÎÙÈ ÔÉÐÏ×
-ÆÁÊÌÏ×, ×ËÌÀÞÁÑ ÂÉÎÁÒÎÙÅ ÆÁÊÌÙ ÆÏÒÍÁÔÁ ELF, ÓÉÓÔÅÍÎÙÅ ÂÉÂÌÉÏÔÅËÉ,
-ÐÁËÅÔÙ RPM, ÒÁÚÌÉÞÎÙÅ ÇÒÁÆÉÞÅÓËÉÅ ÆÏÒÍÁÔÙ É ÍÎÏÇÏ ÄÒÕÇÉÈ.
-
 %description -l uk
 ëÏÍÁÎÄÁ file ×ÉËÏÒÉÓÔÏ×Õ¤ÔØÓÑ ÄÌÑ ×ÉÚÎÁÞÅÎÎÑ ÔÉÐÕ ÆÁÊÌÕ ÐÏ ÄÁÎÉÈ, Ñ˦
 ×¦Î Í¦ÓÔÉÔØ. ÷ÏÎÁ ÍÏÖÅ ×ÉÚÎÁÞÉÔÉ ×ÅÌÉËՠ˦ÌØ˦ÓÔØ Ò¦ÚÎÏÍÁΦÔÎÉÈ ÔÉЦ×
 ÆÁÊ̦×, Õ ÔÏÍÕ ÞÉÓ̦ Â¦ÎÁÒΦ ÆÁÊÌÉ ÆÏÒÍÁÔÕ ELF, ÓÉÓÔÅÍΦ Â¦Â̦ÏÔÅËÉ,
 ÐÁËÅÔÉ RPM, Ò¦ÚÎÏÍÁΦÔΦ ÇÒÁƦÞΦ ÆÏÒÍÁÔÉ ÔÁ ÂÁÇÁÔÏ ¦ÎÛÉÈ.
 
+%description -l zh_CN
+file ÃüÁîÓÃÀ´¸ù¾ÝÎļþÖаüº¬µÄÊý¾ÝÀàÐÍÀ´Ê¶±ðÎļþÀàÐÍ¡£
+file ¿ÉÒÔʶ±ðÐí¶à²»Í¬µÄÎļþÀàÐÍ£¬°üÀ¨ ELF ¶þ½øÖÆ¡¢ÏµÍ³
+¿â¡¢RPM Èí¼þ°ü¡¢ºÍ²»Í¬µÄͼÐθñʽ¡£
+
+%description -l zh_TW
+file «ü¥O¬O®Ú¾ÚÀÉ®×¥]§tªº¸ê®ÆÃþ«¬¨Ó¿ë»{ÀɮסC
+File ¥i¥H¿ë»{³\¦h¤£¦PªºÀÉ®×Ãþ«¬¡A
+¥]§t ELF binaries¡A¨t²Î¨ç¦¡®w¡ARPM ®M¥ó¡A¥H¤Î¤£¦Pªº
+¹Ï¹³®æ¦¡¡C
+
+%package -n libmagic
+Summary:       libmagic library
+Summary(pl):   Biblioteka libmagic
+Group:         Libraries
+
+%description -n libmagic
+Library of functions which operate on magic database file.
+
+%description -n libmagic -l pl
+Biblioteka funkcji operuj±cych na pliku bazy danych magic.
+
+%package -n libmagic-devel
+Summary:       Header files for libmagic library
+Summary(pl):   Pliki nag³ówkowe biblioteki libmagic
+Group:         Development/Libraries
+Requires:      libmagic = %{version}-%{release}
+
+%description -n libmagic-devel
+Library of functions which operate on magic database file.
+
+This package contains the header files needed to develop programs that
+use these libmagic.
+
+%description -n libmagic-devel -l pl
+Biblioteka funkcji operuj±cych na pliku bazy danych magic.
+
+Ten pakiet zawiera pliki nag³ówkowe potrzebne do tworzenia programów
+u¿ywaj±cych libmagic.
+
+%package -n libmagic-static
+Summary:       Static libmagic library
+Summary(pl):   Statyczna biblioteka libmagic
+Group:         Development/Libraries
+Requires:      libmagic-devel = %{version}-%{release}
+
+%description -n libmagic-static
+Library of functions which operate on magic database file.
+
+This package contains the static libmagic.
+
+%description -n libmagic-static -l pl
+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):   Wi±zania Pythona dla libmagic
+Group:         Libraries/Python
+Requires:      libmagic = %{version}-%{release}
+%pyrequires_eq python-libs
+
+%description -n python-magic
+Python bindings for libmagic.
+
+%description -n python-magic -l pl
+Wi±zania Pythona dla libmagic.
+
 %prep
-%setup  -q
+%setup -q
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -p0
+%patch4 -p1
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
-%patch8 -p1
 
 %build
-rm -f install-sh missing mkinstalldirs
-aclocal
-autoheader
+%{__libtoolize}
+%{__aclocal}
+%{__autoheader}
 %{__autoconf}
 %{__automake}
 %configure \
@@ -134,25 +262,52 @@ autoheader
 
 %{__make}
 
+%if %{with python}
+cd python
+python setup.py build
+cd ..
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
+
+%if %{with python}
+cd python
+python setup.py install \
+       --root=$RPM_BUILD_ROOT \
+       --optimize=2
+cd ..  
+%endif
+
+install -D magic/magic.local $RPM_BUILD_ROOT%{_sysconfdir}/magic
+
+cat %{SOURCE1} %{SOURCE3} >>$RPM_BUILD_ROOT%{_datadir}/file/magic
 
-cat %{SOURCE1} %{SOURCE4} >>$RPM_BUILD_ROOT%{_datadir}/magic
-# install %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}
+bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
 
-bzip2 -dc %{SOURCE3} | 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
 
-./file -m $RPM_BUILD_ROOT%{_datadir}/magic -c -C
+./src/file -m $RPM_BUILD_ROOT%{_datadir}/file/magic -c -C
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%post  -n libmagic -p /sbin/ldconfig
+%postun        -n libmagic -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
+%doc ChangeLog LEGAL.NOTICE README
 %attr(755,root,root) %{_bindir}/*
-%{_datadir}/*
+%{_datadir}/file
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/magic
 %{_mandir}/man[15]/*
 %lang(de) %{_mandir}/de/man[15]/*
 %lang(es) %{_mandir}/es/man[15]/*
@@ -162,3 +317,25 @@ rm -rf $RPM_BUILD_ROOT
 %lang(ja) %{_mandir}/ja/man[15]/*
 %lang(nl) %{_mandir}/nl/man[15]/*
 %lang(pl) %{_mandir}/pl/man[15]/*
+%lang(pt_BR) %{_mandir}/pt_BR/man[15]/*
+
+%files -n libmagic
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so.*.*
+
+%files -n libmagic-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so
+%{_libdir}/lib*.la
+%{_includedir}/magic.h
+%{_mandir}/man3/*
+
+%files -n libmagic-static
+%defattr(644,root,root,755)
+%{_libdir}/lib*.a
+
+%if %{with python}
+%files -n python-magic
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py_sitedir}/*.so
+%endif
This page took 0.051179 seconds and 4 git commands to generate.