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