]> git.pld-linux.org Git - packages/file.git/blame - file.spec
up to 5.40
[packages/file.git] / file.spec
CommitLineData
76e54b9c 1#
89a87771 2# Conditional build:
6e95c2de
JB
3%bcond_without python2 # CPython 2.x python-magic module
4%bcond_without python3 # CPython 3.x python-magic module
5%bcond_without static_libs # static library
6%bcond_without tests # unit tests
7abc2151 7
c76db868 8Summary: A utility for determining file types
17c387d7
ER
9Summary(cs.UTF-8): Program pro zjišťování typu souborů
10Summary(da.UTF-8): Et værktøj til bestemmelse af filtyper
11Summary(de.UTF-8): Ein Befehl zur Bestimmung von Dateitypen
12Summary(es.UTF-8): Utilidad para determinar el tipo de fichero
13Summary(fr.UTF-8): Utilitaire permettant d'identifier des types de fichier
14Summary(id.UTF-8): Utility untuk menentukan tipe file
15Summary(is.UTF-8): Tól til þess að komast að tegund skráar
16Summary(it.UTF-8): Utility per determinare il tipo di file
17Summary(ja.UTF-8): ファイルの種類を判断するためのユーティリティ
18Summary(ko.UTF-8): 파일 종류를 결정하는 유틸리티
19Summary(nb.UTF-8): Et verktøy for å bestemme filtyper
20Summary(pl.UTF-8): Polecenie określające rodzaj pliku
21Summary(pt.UTF-8): Um utilitário para determinar o tipo dos ficheiros
22Summary(pt_BR.UTF-8): Um utilitário para determinar tipos de arquivos
23Summary(ru.UTF-8): Утилита для определения типов файлов
24Summary(sk.UTF-8): Pomocný program pre určenie typu súboru
25Summary(sl.UTF-8): Pripomoček za ugotavljanje vrste datotek
26Summary(sv.UTF-8): Ett verktyg för att bestämma filtyper
27Summary(tr.UTF-8): Dosya türünü öğrenmek için bir araç
28Summary(uk.UTF-8): Утиліта для визначення типів файлів
29Summary(zh_CN.UTF-8): 判定文件类型的工具。
30Summary(zh_TW.UTF-8): 用於決定檔案類型的一個工具程式。
c21622ad 31Name: file
a7e5502b
JP
32Version: 5.40
33Release: 1
521d0b82 34License: distributable
a8857009 35Group: Applications/File
7fb84ed4 36Source0: ftp://ftp.astron.com/pub/file/%{name}-%{version}.tar.gz
a7e5502b 37# Source0-md5: 72540ea1cc8c6e1dee35d6100ec66589
b8b920bf 38Source1: http://ftp1.pld-linux.org/people/glen/%{name}-non-english-man-pages.tar.bz2
494623d0 39# Source1-md5: 6a45bcaefd19b94db36a1b2b7c5b806b
0c98141b
JB
40Source2: %{name}-zisofs.magic
41Source3: %{name}-mscompress.magic
411fb922 42Source4: %{name}-magic.mime-gen.awk
758a148d
JB
43Patch0: %{name}-selinux.patch
44Patch1: searchpath.patch
45Patch2: automake.patch
dc82de13 46Patch3: %{name}-gettext-no-random-translations.patch
a46ba806 47Patch4: name-use-count.patch
b94947b2 48URL: http://www.darwinsys.com/file/
148db065 49BuildRequires: autoconf >= 2.50
f8bfd976 50BuildRequires: automake
d85e161f 51BuildRequires: libseccomp-devel
49d7bd2c 52BuildRequires: libtool >= 2:2.0
6e95c2de 53BuildRequires: rpmbuild(macros) >= 1.751
779e000d 54%if %{with python2}
7abc2151
ER
55BuildRequires: python-devel
56BuildRequires: python-modules
253a10bc 57BuildRequires: python-setuptools
09b88bf5 58BuildRequires: rpm-pythonprov
76e54b9c 59%endif
779e000d
ER
60%if %{with python3}
61BuildRequires: python3-devel
62BuildRequires: python3-modules
253a10bc 63BuildRequires: python3-setuptools
779e000d
ER
64BuildRequires: rpm-pythonprov
65%endif
49d7bd2c 66BuildRequires: zlib-devel
67ffc518 67Requires(pretrans): coreutils
a272f0a4 68Requires: libmagic = %{version}-%{release}
d8acffac 69Conflicts: rpm-build < 4.4.1-9
c21622ad 70Conflicts: xdelta < 1.0.0
69564887 71BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
3db42c15 72
73%description
4055376c 74This package is useful for finding out what type of file you are
75looking at on your system. For example, if an fsck results in a file
76being stored in lost+found, you can run file on it to find out if it's
77safe to 'more' it or if it's a binary. It recognizes many file types,
78including ELF binaries, system libraries, RPM packages, and many
79different graphics formats.
3db42c15 80
87044beb
JR
81%description -l cs.UTF-8
82Příkaz file se používá pro identifikaci zadaného souboru podle jeho
83obsahu. Je schopen identifikovat množství různých typů souborů včetně
84binárních souborů ELF, systémových knihoven, RPM balíčků a různých
85grafických formátů.
c76db868 86
87044beb
JR
87%description -l da.UTF-8
88Programmet "file" bruges til at identificere filer baseret på indhold.
c76db868 89"file" kan identificere mange forskellige filtyper, inkl. ELF-filer,
90systembiblioteker, RPM-pakker og billedfiler i forskellige formater.
91
87044beb
JR
92%description -l de.UTF-8
93Sie können dieses Paket verwenden, um zu bestimmen, welches Format
4055376c 94eine bestimmte Datei hat. Wird durch fsck eine Datei in lost+found
87044beb
JR
95gespeichert, können Sie 'file' ausführen, um herauszufinden, ob Sie
96sie mit 'more' einsehen können, oder ob es sich um ein Binärprogramm
97handelt Das Programm erkennt u.a. ELF-Binärprogramme,
4055376c 98System-Libraries, RPM-Pakete und viele Grafikformate.
3db42c15 99
87044beb
JR
100%description -l es.UTF-8
101Este paquete es útil para descubrir que tipo de archivo estás buscando
9a139dfa 102en tu sistema. Por ejemplo, si fsck resulta un archivo que fue
87044beb 103almacenado en el "lost+found", tu puedes ejecutar file en él para
9a139dfa 104descubrir si es seguro leerlo con el "more" o si es un binario.
105Reconoce varios tipos de archivos, incluyendo binarios ELF,
87044beb 106bibliotecas de sistema, paquetes RPM y varios formatos gráficos
9a139dfa 107diferentes.
108
87044beb
JR
109%description -l fr.UTF-8
110Ce paquetage sert à trouver le type du fichier que vous recherchez sur
111votre système. Par exemple, si un fsck fait qu'un fichier a été stocké
4055376c 112dans lost+found, vous pouvez lancer file dessus pour savoir si on peut
87044beb
JR
113faire un more, ou s'il s'agit d'un binaire. Il reconnaît de nombreux
114types de fichiers dont les binaires ELF, les bibliothèques systèmes,
115les paquetages RPM et de nombreux formats graphiques différents.
3db42c15 116
87044beb
JR
117%description -l it.UTF-8
118Il comando file è utilizzato per identificare il tipo di file in base
119ai tipi di dati che contiene. File può identificare molti tipi di
c76db868 120file, tra cui i binari ELF, le librerie di sistema, i pacchetti RPM e
121vari formati grafici.
122
87044beb
JR
123%description -l ja.UTF-8
124ファイルコマンドはファイルに含まれるデータの種類により個々のファイルを
125見分けるために使われる。file は ELF バイナリ、システムライブラリ、 RPM
126パッケージ、そして種々のグラフィックフォーマットを含む、多くの異なる
127ファイルの種類を見分けることが可能である。
f8911847 128
87044beb
JR
129%description -l ko.UTF-8
130파일에 저장된 자료 유형에 따라 파일을 식별하는 file 명령. File은 ELF
131바이너리, 시스템 라이브러리, RPM 패키지와 다른 그래픽 유형을 포함한
132여러 많은 파일 유형을 식별 가능합니다.
c76db868 133
87044beb
JR
134%description -l nb.UTF-8
135Programmet "file" brukes for å identifisere filer basert på innhold.
c76db868 136"file" kan identifisere mange ulike filtyper, inkl. ELF-filer,
137systembibliotek, RPM-pakker og bildefiler i ulike formater.
138
87044beb
JR
139%description -l pl.UTF-8
140Pakiet ten jest przydatny jeżeli chcesz rozpoznać typ plików w twoim
141systemie. Na przykład jeżeli fsck zdeponuje jakieś pliki w katalogu
142lost+found, możesz uruchomić file na zdeponowanym pliku i zobaczyć
143jaki to jest typ pliku, jest to metoda bezpieczniejsza niż 'more', ze
144względu na to, że to może być plik binarny. File potrafi rozpoznać
145wiele typów plików np. binarny ELF, biblioteki systemowe, pakiety RPM
146oraz wiele różnych formatów graficznych i dźwiękowych.
147
148%description -l pt.UTF-8
149O comando file é usado para identificar um ficheiro em particular de
150acordo com o tipo de dados que contém. O file pode identificar vários
151formatos de ficheiros, incluindo binários ELF, bibliotecas de sistema,
152pacotes RPM e vários formatos gráficos diferentes.
153
154%description -l pt_BR.UTF-8
155Este pacote é útil para descobrir que tipo de arquivo você está
9a139dfa 156procurando em seu sistema. Por exemplo, se um fsck resulta em um
87044beb
JR
157arquivo forem armazenado no "lost+found", você pode rodar file nele
158para descobrir se é seguro lê-lo com o "more" ou se ele é um binário.
159Ele reconhece vários tipos de arquivos, incluindo binários ELF,
160bibliotecas de sistema, pacotes RPM e vários formatos gráficos
9a139dfa 161diferentes.
162
87044beb
JR
163%description -l ru.UTF-8
164Команда file используется для определения типа файла по данным, в нем
165содержащимся. Она может определить множество разнообразных типов
166файлов, включая бинарные файлы формата ELF, системные библиотеки,
167пакеты RPM, различные графические форматы и много других.
efcbb1e3 168
87044beb
JR
169%description -l sv.UTF-8
170Kommandot file används för att identifera en fil vad avser vilken typ
171av data filen innehåller. File kan identifiera många olika filtyper,
172inklusive ELF-binärer, systembibliotek, RPM-paket och olika
c76db868 173grafikformat.
174
87044beb
JR
175%description -l tr.UTF-8
176file, bir dosyayı inceleyerek ne tür bir dosya olduğu konusunda size
177bir fikir verebilir. Böylece uzantısından ve adından ne olduğunu
178çıkaramadığınız bir dosyayı hangi yazılım ile kullanabileceğinize ya
179da ne yapacağınıza karar verebilisiniz. file, temel dosya tiplerini,
180çoğu grafik formatını, çalıştırılabilir dosyaları, sistem
181kitaplıklarını vs. tanıyabilir.
182
183%description -l uk.UTF-8
184Команда file використовується для визначення типу файлу по даних, які
185він містить. Вона може визначити велику кількість різноманітних типів
186файлів, у тому числі бінарні файли формату ELF, системні бібліотеки,
187пакети RPM, різноманітні графічні формати та багато інших.
188
189%description -l zh_CN.UTF-8
190file 命令用来根据文件中包含的数据类型来识别文件类型。 file
191可以识别许多不同的文件类型,包括 ELF 二进制、系统 库、RPM
192软件包、和不同的图形格式。
193
194%description -l zh_TW.UTF-8
195file 指令是根據檔案包含的資料類型來辨認檔案。 File
196可以辨認許多不同的檔案類型, 包含 ELF binaries,系統函式庫,RPM
197套件,以及不同的 圖像格式。
c76db868 198
27de5dec 199%package -n libmagic
200Summary: libmagic library
17c387d7 201Summary(pl.UTF-8): Biblioteka libmagic
27de5dec 202Group: Libraries
203
204%description -n libmagic
205Library of functions which operate on magic database file.
206
87044beb
JR
207%description -n libmagic -l pl.UTF-8
208Biblioteka funkcji operujących na pliku bazy danych magic.
4902119c 209
27de5dec 210%package -n libmagic-devel
4902119c 211Summary: Header files for libmagic library
17c387d7 212Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libmagic
27de5dec 213Group: Development/Libraries
a272f0a4 214Requires: libmagic = %{version}-%{release}
49d7bd2c 215Requires: zlib-devel
27de5dec 216
217%description -n libmagic-devel
218Library of functions which operate on magic database file.
219
220This package contains the header files needed to develop programs that
221use these libmagic.
222
87044beb
JR
223%description -n libmagic-devel -l pl.UTF-8
224Biblioteka funkcji operujących na pliku bazy danych magic.
4902119c 225
87044beb
JR
226Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
227używających libmagic.
4902119c 228
27de5dec 229%package -n libmagic-static
4902119c 230Summary: Static libmagic library
17c387d7 231Summary(pl.UTF-8): Statyczna biblioteka libmagic
27de5dec 232Group: Development/Libraries
a272f0a4 233Requires: libmagic-devel = %{version}-%{release}
27de5dec 234
235%description -n libmagic-static
236Library of functions which operate on magic database file.
237
238This package contains the static libmagic.
239
87044beb
JR
240%description -n libmagic-static -l pl.UTF-8
241Biblioteka funkcji operujących na pliku bazy danych magic.
4902119c 242
87044beb 243Ten pakiet zawiera statyczną wersję biblioteki.
4902119c 244
76e54b9c 245%package -n python-magic
55d8f9c1
JB
246Summary: Python 2 bindings for libmagic
247Summary(pl.UTF-8): Wiązania Pythona 2 do biblioteki libmagic
76e54b9c
AF
248Group: Libraries/Python
249Requires: libmagic = %{version}-%{release}
779e000d 250Requires: python-libs
8c1e41ad 251BuildArch: noarch
76e54b9c
AF
252
253%description -n python-magic
55d8f9c1 254Python 2 bindings for libmagic.
76e54b9c 255
87044beb 256%description -n python-magic -l pl.UTF-8
55d8f9c1 257Wiązania Pythona 2 do biblioteki libmagic.
89a87771 258
779e000d 259%package -n python3-magic
55d8f9c1
JB
260Summary: Python 3 bindings for libmagic
261Summary(pl.UTF-8): Wiązania Pythona 3 do biblioteki libmagic
779e000d
ER
262Group: Libraries/Python
263Requires: libmagic = %{version}-%{release}
264Requires: python-libs
8c1e41ad 265BuildArch: noarch
779e000d
ER
266
267%description -n python3-magic
55d8f9c1 268Python 3 bindings for libmagic.
779e000d
ER
269
270%description -n python3-magic -l pl.UTF-8
55d8f9c1 271Wiązania Pythona 3 do biblioteki libmagic.
779e000d 272
3db42c15 273%prep
7d7e9909 274%setup -q
1ddfea46 275%patch0 -p1
6bcdf757 276%patch1 -p1
148db065 277%patch2 -p1
dc82de13 278%patch3 -p1
a46ba806 279%patch4 -p1
3db42c15 280
6e95c2de 281%if "%{_ver_lt '%{cc_version}' '3.4'}" == "1"
7fb84ed4
ER
282%{__sed} -i -e 's,-Wextra,,' configure.ac
283%endif
284
640647bd
ER
285cp -p %{SOURCE3} magic/Magdir/mscompress
286cp -p %{SOURCE2} magic/Magdir/zisofs
287
e7680839 288rm -f magic/Magdir/{*.orig,*~}
e3f0414c 289
779e000d
ER
290%if %{with python3}
291cp -a python py3
292%endif
293
3db42c15 294%build
27de5dec 295%{__libtoolize}
a3f903c6 296%{__aclocal} -I m4
d846d5a6 297%{__autoconf}
8778f9e2 298%{__autoheader}
d846d5a6 299%{__automake}
4b9ca3cc 300%configure \
253a10bc 301%ifnarch %{x8664}
cfd17b6b 302 --disable-libseccomp \
253a10bc 303%endif
a284f482 304 --disable-silent-rules \
ae310f23 305 --enable-fsect-man5 \
49d7bd2c 306 %{?with_static_libs:--enable-static}
e855616e 307
9ee0e0b5 308%{__make}
3db42c15 309
779e000d 310%if %{with python2}
76e54b9c 311cd python
65e5039c 312%py_build
76e54b9c
AF
313cd ..
314%endif
779e000d
ER
315%if %{with python3}
316cd py3
65e5039c 317%py3_build
779e000d
ER
318cd ..
319%endif
76e54b9c 320
916aadc7
AM
321%if %{with tests}
322%{__make} check
323%endif
324
3db42c15 325%install
326rm -rf $RPM_BUILD_ROOT
55ad3894 327install -d $RPM_BUILD_ROOT/%{_lib}
e74cb2dc 328
a1cfb053
PG
329%{__make} install \
330 DESTDIR=$RPM_BUILD_ROOT
2e653634 331
6e95c2de 332%{__mv} $RPM_BUILD_ROOT%{_libdir}/libmagic.so.* $RPM_BUILD_ROOT/%{_lib}
f9961c0f 333ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libmagic.so.*.*.*) \
ae33d63f
AM
334 $RPM_BUILD_ROOT%{_libdir}/libmagic.so
335
779e000d 336%if %{with python2}
76e54b9c 337cd python
65e5039c 338%py_install
ae310f23 339cd ..
7abc2151 340%py_postclean
76e54b9c
AF
341%endif
342
779e000d
ER
343%if %{with python3}
344cd py3
65e5039c 345%py3_install
779e000d
ER
346cd ..
347%endif
348
148db065 349awk -f %{SOURCE4} < $RPM_BUILD_ROOT%{_datadir}/misc/magic > $RPM_BUILD_ROOT%{_datadir}/misc/magic.mime
e3acf3ba
ER
350ln -s misc $RPM_BUILD_ROOT%{_datadir}/file
351
352bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
aa747f51
ER
353%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.file-non-english-man-pages
354%{__rm} $RPM_BUILD_ROOT%{_mandir}/file-magic4.diff
b8b920bf 355
3db42c15 356%clean
357rm -rf $RPM_BUILD_ROOT
358
27de5dec 359%post -n libmagic -p /sbin/ldconfig
360%postun -n libmagic -p /sbin/ldconfig
361
55ad3894
AM
362%pretrans
363# it used to be directory
b2cca602 364if [ -d %{_datadir}/file -a ! -L %{_datadir}/file ]; then
55ad3894 365 mv -b %{_datadir}/file{,.dir}
9e4bf8c8 366 ln -sn misc %{_datadir}/file
55ad3894 367%banner -e %{name} <<EOF
55c2baa7 368Check %{_datadir}/file.dir for your own files and remove it when done.
55ad3894
AM
369EOF
370fi
371
3db42c15 372%files
4f023001 373%defattr(644,root,root,755)
bc21903a 374%doc ChangeLog COPYING README
09b88bf5 375%attr(755,root,root) %{_bindir}/file
4902119c 376%{_datadir}/file
969ab84e
SP
377%{_datadir}/misc/magic
378%{_datadir}/misc/magic.mgc
55ad3894 379%{_datadir}/misc/magic.mime
4653b295 380%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/magic
e3f0414c
JB
381%{_mandir}/man1/file.1*
382%{_mandir}/man5/magic.5*
e2cdad8f 383%lang(de) %{_mandir}/de/man[15]/*
384%lang(es) %{_mandir}/es/man[15]/*
385%lang(fr) %{_mandir}/fr/man[15]/*
386%lang(hu) %{_mandir}/hu/man[15]/*
387%lang(it) %{_mandir}/it/man[15]/*
388%lang(ja) %{_mandir}/ja/man[15]/*
389%lang(nl) %{_mandir}/nl/man[15]/*
4b9ca3cc 390%lang(pl) %{_mandir}/pl/man[15]/*
ca0f057f 391%lang(pt_BR) %{_mandir}/pt_BR/man[15]/*
27de5dec 392
393%files -n libmagic
394%defattr(644,root,root,755)
09b88bf5 395%attr(755,root,root) /%{_lib}/libmagic.so.*.*.*
f9961c0f 396%attr(755,root,root) %ghost /%{_lib}/libmagic.so.1
27de5dec 397
398%files -n libmagic-devel
f7bf36fb 399%defattr(644,root,root,755)
09b88bf5
JB
400%attr(755,root,root) %{_libdir}/libmagic.so
401%{_libdir}/libmagic.la
cc7e8ae4 402%{_includedir}/magic.h
58d4dc53 403%{_pkgconfigdir}/libmagic.pc
f9961c0f 404%{_mandir}/man3/libmagic.3*
27de5dec 405
ae310f23 406%if %{with static_libs}
27de5dec 407%files -n libmagic-static
408%defattr(644,root,root,755)
09b88bf5 409%{_libdir}/libmagic.a
ae310f23 410%endif
76e54b9c 411
cd2e9cca 412%if %{with python2}
76e54b9c
AF
413%files -n python-magic
414%defattr(644,root,root,755)
88c82317 415%doc python/README.md python/example.py
7abc2151 416%{py_sitescriptdir}/magic.py[co]
55e86be4 417%{py_sitescriptdir}/file_magic-*-py*.egg-info
76e54b9c 418%endif
779e000d 419
2196b92b 420%if %{with python3}
779e000d
ER
421%files -n python3-magic
422%defattr(644,root,root,755)
88c82317 423%doc python/README.md python/example.py
779e000d
ER
424%{py3_sitescriptdir}/magic.py
425%{py3_sitescriptdir}/__pycache__/magic.*.py[co]
55e86be4 426%{py3_sitescriptdir}/file_magic-*-py*.egg-info
779e000d 427%endif
This page took 0.535151 seconds and 4 git commands to generate.