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