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