]> git.pld-linux.org Git - packages/file.git/blame - file.spec
- release 5 (by relup.sh)
[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
6caccfdb 32Version: 5.39
858a8724 33Release: 5
521d0b82 34License: distributable
a8857009 35Group: Applications/File
7fb84ed4 36Source0: ftp://ftp.astron.com/pub/file/%{name}-%{version}.tar.gz
6caccfdb 37# Source0-md5: 1c450306053622803a25647d88f80f25
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
f8bdc9cd 48Patch5: wasm.patch
b94947b2 49URL: http://www.darwinsys.com/file/
148db065 50BuildRequires: autoconf >= 2.50
f8bfd976 51BuildRequires: automake
d85e161f 52BuildRequires: libseccomp-devel
49d7bd2c 53BuildRequires: libtool >= 2:2.0
6e95c2de 54BuildRequires: rpmbuild(macros) >= 1.751
779e000d 55%if %{with python2}
7abc2151
ER
56BuildRequires: python-devel
57BuildRequires: python-modules
253a10bc 58BuildRequires: python-setuptools
09b88bf5 59BuildRequires: rpm-pythonprov
76e54b9c 60%endif
779e000d
ER
61%if %{with python3}
62BuildRequires: python3-devel
63BuildRequires: python3-modules
253a10bc 64BuildRequires: python3-setuptools
779e000d
ER
65BuildRequires: rpm-pythonprov
66%endif
49d7bd2c 67BuildRequires: zlib-devel
67ffc518 68Requires(pretrans): coreutils
a272f0a4 69Requires: libmagic = %{version}-%{release}
d8acffac 70Conflicts: rpm-build < 4.4.1-9
c21622ad 71Conflicts: xdelta < 1.0.0
69564887 72BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
3db42c15 73
74%description
4055376c 75This package is useful for finding out what type of file you are
76looking at on your system. For example, if an fsck results in a file
77being stored in lost+found, you can run file on it to find out if it's
78safe to 'more' it or if it's a binary. It recognizes many file types,
79including ELF binaries, system libraries, RPM packages, and many
80different graphics formats.
3db42c15 81
87044beb
JR
82%description -l cs.UTF-8
83Příkaz file se používá pro identifikaci zadaného souboru podle jeho
84obsahu. Je schopen identifikovat množství různých typů souborů včetně
85binárních souborů ELF, systémových knihoven, RPM balíčků a různých
86grafických formátů.
c76db868 87
87044beb
JR
88%description -l da.UTF-8
89Programmet "file" bruges til at identificere filer baseret på indhold.
c76db868 90"file" kan identificere mange forskellige filtyper, inkl. ELF-filer,
91systembiblioteker, RPM-pakker og billedfiler i forskellige formater.
92
87044beb
JR
93%description -l de.UTF-8
94Sie können dieses Paket verwenden, um zu bestimmen, welches Format
4055376c 95eine bestimmte Datei hat. Wird durch fsck eine Datei in lost+found
87044beb
JR
96gespeichert, können Sie 'file' ausführen, um herauszufinden, ob Sie
97sie mit 'more' einsehen können, oder ob es sich um ein Binärprogramm
98handelt Das Programm erkennt u.a. ELF-Binärprogramme,
4055376c 99System-Libraries, RPM-Pakete und viele Grafikformate.
3db42c15 100
87044beb
JR
101%description -l es.UTF-8
102Este paquete es útil para descubrir que tipo de archivo estás buscando
9a139dfa 103en tu sistema. Por ejemplo, si fsck resulta un archivo que fue
87044beb 104almacenado en el "lost+found", tu puedes ejecutar file en él para
9a139dfa 105descubrir si es seguro leerlo con el "more" o si es un binario.
106Reconoce varios tipos de archivos, incluyendo binarios ELF,
87044beb 107bibliotecas de sistema, paquetes RPM y varios formatos gráficos
9a139dfa 108diferentes.
109
87044beb
JR
110%description -l fr.UTF-8
111Ce paquetage sert à trouver le type du fichier que vous recherchez sur
112votre système. Par exemple, si un fsck fait qu'un fichier a été stocké
4055376c 113dans lost+found, vous pouvez lancer file dessus pour savoir si on peut
87044beb
JR
114faire un more, ou s'il s'agit d'un binaire. Il reconnaît de nombreux
115types de fichiers dont les binaires ELF, les bibliothèques systèmes,
116les paquetages RPM et de nombreux formats graphiques différents.
3db42c15 117
87044beb
JR
118%description -l it.UTF-8
119Il comando file è utilizzato per identificare il tipo di file in base
120ai tipi di dati che contiene. File può identificare molti tipi di
c76db868 121file, tra cui i binari ELF, le librerie di sistema, i pacchetti RPM e
122vari formati grafici.
123
87044beb
JR
124%description -l ja.UTF-8
125ファイルコマンドはファイルに含まれるデータの種類により個々のファイルを
126見分けるために使われる。file は ELF バイナリ、システムライブラリ、 RPM
127パッケージ、そして種々のグラフィックフォーマットを含む、多くの異なる
128ファイルの種類を見分けることが可能である。
f8911847 129
87044beb
JR
130%description -l ko.UTF-8
131파일에 저장된 자료 유형에 따라 파일을 식별하는 file 명령. File은 ELF
132바이너리, 시스템 라이브러리, RPM 패키지와 다른 그래픽 유형을 포함한
133여러 많은 파일 유형을 식별 가능합니다.
c76db868 134
87044beb
JR
135%description -l nb.UTF-8
136Programmet "file" brukes for å identifisere filer basert på innhold.
c76db868 137"file" kan identifisere mange ulike filtyper, inkl. ELF-filer,
138systembibliotek, RPM-pakker og bildefiler i ulike formater.
139
87044beb
JR
140%description -l pl.UTF-8
141Pakiet ten jest przydatny jeżeli chcesz rozpoznać typ plików w twoim
142systemie. Na przykład jeżeli fsck zdeponuje jakieś pliki w katalogu
143lost+found, możesz uruchomić file na zdeponowanym pliku i zobaczyć
144jaki to jest typ pliku, jest to metoda bezpieczniejsza niż 'more', ze
145względu na to, że to może być plik binarny. File potrafi rozpoznać
146wiele typów plików np. binarny ELF, biblioteki systemowe, pakiety RPM
147oraz wiele różnych formatów graficznych i dźwiękowych.
148
149%description -l pt.UTF-8
150O comando file é usado para identificar um ficheiro em particular de
151acordo com o tipo de dados que contém. O file pode identificar vários
152formatos de ficheiros, incluindo binários ELF, bibliotecas de sistema,
153pacotes RPM e vários formatos gráficos diferentes.
154
155%description -l pt_BR.UTF-8
156Este pacote é útil para descobrir que tipo de arquivo você está
9a139dfa 157procurando em seu sistema. Por exemplo, se um fsck resulta em um
87044beb
JR
158arquivo forem armazenado no "lost+found", você pode rodar file nele
159para descobrir se é seguro lê-lo com o "more" ou se ele é um binário.
160Ele reconhece vários tipos de arquivos, incluindo binários ELF,
161bibliotecas de sistema, pacotes RPM e vários formatos gráficos
9a139dfa 162diferentes.
163
87044beb
JR
164%description -l ru.UTF-8
165Команда file используется для определения типа файла по данным, в нем
166содержащимся. Она может определить множество разнообразных типов
167файлов, включая бинарные файлы формата ELF, системные библиотеки,
168пакеты RPM, различные графические форматы и много других.
efcbb1e3 169
87044beb
JR
170%description -l sv.UTF-8
171Kommandot file används för att identifera en fil vad avser vilken typ
172av data filen innehåller. File kan identifiera många olika filtyper,
173inklusive ELF-binärer, systembibliotek, RPM-paket och olika
c76db868 174grafikformat.
175
87044beb
JR
176%description -l tr.UTF-8
177file, bir dosyayı inceleyerek ne tür bir dosya olduğu konusunda size
178bir fikir verebilir. Böylece uzantısından ve adından ne olduğunu
179çıkaramadığınız bir dosyayı hangi yazılım ile kullanabileceğinize ya
180da ne yapacağınıza karar verebilisiniz. file, temel dosya tiplerini,
181çoğu grafik formatını, çalıştırılabilir dosyaları, sistem
182kitaplıklarını vs. tanıyabilir.
183
184%description -l uk.UTF-8
185Команда file використовується для визначення типу файлу по даних, які
186він містить. Вона може визначити велику кількість різноманітних типів
187файлів, у тому числі бінарні файли формату ELF, системні бібліотеки,
188пакети RPM, різноманітні графічні формати та багато інших.
189
190%description -l zh_CN.UTF-8
191file 命令用来根据文件中包含的数据类型来识别文件类型。 file
192可以识别许多不同的文件类型,包括 ELF 二进制、系统 库、RPM
193软件包、和不同的图形格式。
194
195%description -l zh_TW.UTF-8
196file 指令是根據檔案包含的資料類型來辨認檔案。 File
197可以辨認許多不同的檔案類型, 包含 ELF binaries,系統函式庫,RPM
198套件,以及不同的 圖像格式。
c76db868 199
27de5dec 200%package -n libmagic
201Summary: libmagic library
17c387d7 202Summary(pl.UTF-8): Biblioteka libmagic
27de5dec 203Group: Libraries
204
205%description -n libmagic
206Library of functions which operate on magic database file.
207
87044beb
JR
208%description -n libmagic -l pl.UTF-8
209Biblioteka funkcji operujących na pliku bazy danych magic.
4902119c 210
27de5dec 211%package -n libmagic-devel
4902119c 212Summary: Header files for libmagic library
17c387d7 213Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libmagic
27de5dec 214Group: Development/Libraries
a272f0a4 215Requires: libmagic = %{version}-%{release}
49d7bd2c 216Requires: zlib-devel
27de5dec 217
218%description -n libmagic-devel
219Library of functions which operate on magic database file.
220
221This package contains the header files needed to develop programs that
222use these libmagic.
223
87044beb
JR
224%description -n libmagic-devel -l pl.UTF-8
225Biblioteka funkcji operujących na pliku bazy danych magic.
4902119c 226
87044beb
JR
227Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
228używających libmagic.
4902119c 229
27de5dec 230%package -n libmagic-static
4902119c 231Summary: Static libmagic library
17c387d7 232Summary(pl.UTF-8): Statyczna biblioteka libmagic
27de5dec 233Group: Development/Libraries
a272f0a4 234Requires: libmagic-devel = %{version}-%{release}
27de5dec 235
236%description -n libmagic-static
237Library of functions which operate on magic database file.
238
239This package contains the static libmagic.
240
87044beb
JR
241%description -n libmagic-static -l pl.UTF-8
242Biblioteka funkcji operujących na pliku bazy danych magic.
4902119c 243
87044beb 244Ten pakiet zawiera statyczną wersję biblioteki.
4902119c 245
76e54b9c 246%package -n python-magic
55d8f9c1
JB
247Summary: Python 2 bindings for libmagic
248Summary(pl.UTF-8): Wiązania Pythona 2 do biblioteki libmagic
76e54b9c
AF
249Group: Libraries/Python
250Requires: libmagic = %{version}-%{release}
779e000d 251Requires: python-libs
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
265
266%description -n python3-magic
55d8f9c1 267Python 3 bindings for libmagic.
779e000d
ER
268
269%description -n python3-magic -l pl.UTF-8
55d8f9c1 270Wiązania Pythona 3 do biblioteki libmagic.
779e000d 271
3db42c15 272%prep
7d7e9909 273%setup -q
1ddfea46 274%patch0 -p1
6bcdf757 275%patch1 -p1
148db065 276%patch2 -p1
dc82de13 277%patch3 -p1
a46ba806 278%patch4 -p1
f8bdc9cd 279%patch5 -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
779e000d 412%if %{with python3}
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.160979 seconds and 4 git commands to generate.