X-Git-Url: https://git.pld-linux.org/?p=packages%2Fbzip2.git;a=blobdiff_plain;f=bzip2.spec;h=d99966527cf2c995e588dc6976c7901717214bb0;hp=4f32273697ebbfcd5a257da1d149b430512576d6;hb=HEAD;hpb=2dd65883a4a71341b3e4f9457cbb0e52694feaac diff --git a/bzip2.spec b/bzip2.spec index 4f32273..d999665 100644 --- a/bzip2.spec +++ b/bzip2.spec @@ -1,26 +1,38 @@ +# +# Conditional build: +%bcond_with progress # with progressbar patch +%bcond_without static_libs # static libraries + Summary: Extremely powerful file compression utility -Summary(es): Un compresor de archivos con un nuevo algoritmo -Summary(fr): Utilitaire de compression de fichier extrêmement puissant -Summary(pl): Kompresor plików bzip2 -Summary(pt_BR): Compactador de arquivo extremamente poderoso -Summary(uk): ëÏÍÐÒÅÓÏÒ ÆÁÊÌ¦× ÎÁ ÂÁÚ¦ ÁÌÇÏÒÉÔÍÕ ÂÌÏÞÎÏÇÏ ÓÏÒÔÕ×ÁÎÎÑ -Summary(ru): ëÏÍÐÒÅÓÓÏÒ ÆÁÊÌÏ× ÎÁ ÏÓÎÏ×Å ÁÌÇÏÒÉÔÍÁ ÂÌÏÞÎÏÊ ÓÏÒÔÉÒÏ×ËÉ +Summary(es.UTF-8): Un compresor de archivos con un nuevo algoritmo +Summary(fr.UTF-8): Utilitaire de compression de fichier extrêmement puissant +Summary(pl.UTF-8): Kompresor plików bzip2 +Summary(pt_BR.UTF-8): Compactador de arquivo extremamente poderoso +Summary(uk.UTF-8): Компресор файлів на базі алгоритму блочного сортування +Summary(ru.UTF-8): Компрессор файлов на основе алгоритма блочной сортировки Name: bzip2 -Version: 1.0.2 -Release: 5 +Version: 1.0.8 +Release: 1 License: BSD-like Group: Applications/Archiving -Source0: ftp://sources.redhat.com/pub/bzip2/v102/%{name}-%{version}.tar.gz -# Source0-md5: ee76864958d568677f03db8afad92beb -Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2 -# Source1-md5: 5ffc3dbdd40080a8c22c3b4c3143cdd7 +Source0: https://sourceware.org/pub/bzip2/%{name}-%{version}.tar.gz +# Source0-md5: 67e051268d0c475ea773822f7500d0e5 +Source1: http://qboosh.pl/man/%{name}-man-pages.tar.bz2 +# Source1-md5: 14a68bf85666428000aad7cb0785a6e5 +Source2: %{name}.pc Patch0: %{name}-libtoolizeautoconf.patch -URL: http://sources.redhat.com/bzip2/ -BuildRequires: autoconf -BuildRequires: automake + +# Modified from http://www.vanheusden.com/Linux/bzip2-1.0.2.diff.gz +Patch2: %{name}-progress-counter-1.0.2.patch +URL: https://sourceware.org/bzip2/ +BuildRequires: autoconf >= 2.50 +BuildRequires: automake >= 1:1.6 BuildRequires: libtool +BuildRequires: rpmbuild(macros) >= 1.213 +Requires: %{name}-libs = %{version}-%{release} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -Obsoletes: libbzip2 + +%define specflags_ia32 -fomit-frame-pointer %description Bzip2 compresses files using the Burrows-Wheeler block-sorting text @@ -31,163 +43,229 @@ family of statistical compressors. The command-line options are deliberately very similar to those of GNU Gzip, but they are not identical. -%description -l es -Bzip2 es un programa de compresión/descompresión. Típicamente el +%description -l es.UTF-8 +Bzip2 es un programa de compresión/descompresión. Típicamente el archivo compactado queda entre 20 la 30 por ciento menor de que se fuera compactado con gzip. Observa que bzip2 no entiende los archivos del bzip original, ni los archivos del gzip. -%description -l fr +%description -l fr.UTF-8 Bzip2 compresse des fichiers en utilisant l'algorithme de compression en tri de blocks de texte Burrows-Wheeler, et le codage Huffman. La -compression est considérablement meilleure que celle effectuée par les -plus conventionels compresseurs basés sur LZ77/LZ78, et approche la +compression est considérablement meilleure que celle effectuée par les +plus conventionels compresseurs basés sur LZ77/LZ78, et approche la performance de la famille PPM de compresseurs statistiques. -%description -l pl -Kompresor bzip2 u¿ywa algorytmu Burrows-Wheelera do kompresji danych i +%description -l pl.UTF-8 +Kompresor bzip2 używa algorytmu Burrows-Wheelera do kompresji danych i metody Huffmana do ich kodowania. Kompresja pliku czy archiwum tar -jest z regu³y lepsza ni¿ w przypadku stosowania klasycznych -kompresorów LZ77/LZ78. Opcje linii poleceñ s± bardzo podobne do -poleceñ GNU Gzip ale nie s± identyczne. +jest z reguły lepsza niż w przypadku stosowania klasycznych +kompresorów LZ77/LZ78. Opcje linii poleceń są bardzo podobne do +poleceń GNU Gzip ale nie są identyczne. -%description -l pt_BR -Bzip2 é um programa de compressão/descompressão. Tipicamente o arquivo +%description -l pt_BR.UTF-8 +Bzip2 é um programa de compressão/descompressão. Tipicamente o arquivo compactado fica 20 a 30 por cento menor do que se fosse compactado com o gzip. -Note que o bzip2 não entende os arquivos do bzip original, nem os +Note que o bzip2 não entende os arquivos do bzip original, nem os arquivos do gzip. -%description -l ru -bzip2 ËÏÍÐÒÅÓÓÉÒÕÅÔ ÆÁÊÌÙ ÉÓÐÏÌØÚÕÑ ËÏÍÐÒÅÓÓÉÒÕÀÝÉÊ ÔÅËÓÔÏ×ÙÊ ÁÌÇÏÒÉÔÍ -ÂÌÏÞÎÏÊ ÓÏÒÔÉÒÏ×ËÉ Burrows-Wheeler É ËÏÄÉÒÏ×ÁÎÉÅ Huffman'Á. -äÏÓÔÉÇÁÅÍÁÑ ËÏÍÐÒÅÓÓÉÑ ÏÂÙÞÎÏ ÓÕÝÅÓÔ×ÅÎÎÏ ÌÕÞÛÅ ÄÏÓÔÉÇÁÅÍÏÊ ÂÏÌÅÅ -ÐÒÉ×ÙÞÎÙÍÉ ËÏÍÐÒÅÓÓÏÒÁÍÉ ÎÁ ÏÓÎÏ×Å LZ77/LZ78 É ÐÒÉÂÌÉÖÁÅÔÓÑ Ë ÔÏÊ, -ËÏÔÏÒÕÀ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÓÅÍÅÊÓÔ×Ï ÓÔÁÔÉÓÔÉÞÅÓËÉÈ ËÏÍÐÒÅÓÓÏÒÏ× PPM. +%description -l ru.UTF-8 +bzip2 компрессирует файлы используя компрессирующий текстовый алгоритм +блочной сортировки Burrows-Wheeler и кодирование Huffman'а. +Достигаемая компрессия обычно существенно лучше достигаемой более +привычными компрессорами на основе LZ77/LZ78 и приближается к той, +которую обеспечивает семейство статистических компрессоров PPM. + +%description -l uk.UTF-8 +bzip2 компресує файли використовуючи текстовий алгоритм блочного +сортування Burrows-Wheeler та кодування Huffman'а. Компресія, яка +досягається bzip2, як правило краща за ту, що забезпечують +розповсюджені компресори на базі LZ77/LZ78 і наближається до тої, що +її забезпечує сімейство статистичних компресорів PPM. + +%package libs +Summary: libbz2 library +Summary(fr.UTF-8): Librairie libbz2 +Summary(pl.UTF-8): Biblioteka libbz2 +Group: Libraries +%ifarch %{x8664} ia64 ppc64 s390x sparc64 +Provides: libbz2.so.1.0()(64bit) +%else +Provides: libbz2.so.1.0 +%endif +Obsoletes: libbzip2 +Conflicts: bzip2 < 0:1.0.2-12 + +%description libs +libbz2 library. + +%description libs -l fr.UTF-8 +Librairie libbz2. -%description -l uk -bzip2 ËÏÍÐÒÅÓÕ¤ ÆÁÊÌÉ ×ÉËÏÒÉÓÔÏ×ÕÀÞÉ ÔÅËÓÔÏ×ÉÊ ÁÌÇÏÒÉÔÍ ÂÌÏÞÎÏÇÏ -ÓÏÒÔÕ×ÁÎÎÑ Burrows-Wheeler ÔÁ ËÏÄÕ×ÁÎÎÑ Huffman'Á. ëÏÍÐÒÅÓ¦Ñ, ÑËÁ -ÄÏÓÑÇÁ¤ÔØÓÑ bzip2, ÑË ÐÒÁ×ÉÌÏ ËÒÁÝÁ ÚÁ ÔÕ, ÝÏ ÚÁÂÅÚÐÅÞÕÀÔØ -ÒÏÚÐÏ×ÓÀÄÖÅΦ ËÏÍÐÒÅÓÏÒÉ ÎÁ ÂÁÚ¦ LZ77/LZ78 ¦ ÎÁÂÌÉÖÁ¤ÔØÓÑ ÄÏ Ôϧ, ÝÏ -§§ ÚÁÂÅÚÐÅÞÕ¤ Ó¦ÍÅÊÓÔ×Ï ÓÔÁÔÉÓÔÉÞÎÉÈ ËÏÍÐÒÅÓÏÒ¦× PPM. +%description libs -l pl.UTF-8 +Biblioteka libbz2. %package devel -Summary: Libbz2 library header files -Summary(es): Header files and libraries needed for bzip2 development -Summary(fr): Librairie statique et fichiers d'en-tête pour bzip2 -Summary(pl): Pliki nag³ówkowe do libbz2 -Summary(pt_BR): Arquivos de inclusão e biblioteca de desenvolvimento para o bzip2 -Summary(uk): èÅÄÅÒÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÒÏÇÒÁÍÕ×ÁÎÎÑ Ú libbz2 -Summary(ru): èÅÄÅÒÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ Ó libbz2 +Summary: libbz2 library header files +Summary(fr.UTF-8): Fichiers d'en-tête pour bzip2 +Summary(pl.UTF-8): Pliki nagłówkowe do libbz2 +Summary(pt_BR.UTF-8): Arquivos de inclusão para o bzip2 +Summary(uk.UTF-8): Хедери, необхідні для програмування з libbz2 +Summary(ru.UTF-8): Хедеры, необходимые для программирования с libbz2 Group: Development/Libraries -Requires: %{name} = %{version} +Requires: %{name}-libs = %{version}-%{release} Obsoletes: libbzip2-devel %description devel Libbz2 library header files. -%description devel -l pl -Pliki nag³ówkowe do libbz2. - -%description devel -l es -This package includes the header files and libraries needed for -developing programs using bzip2. +%description devel -l pl.UTF-8 +Pliki nagłówkowe do libbz2. -%description devel -l pt_BR -Este pacote inclui arquivos de inclusão e biblioteca necessário para o +%description devel -l pt_BR.UTF-8 +Este pacote inclui arquivos de inclusão necessário para o desenvolvimento de programas que usam o bzip2. -%description devel -l ru -üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÂÉÂÌÉÏÔÅËÕ É ÈÅÄÅÒÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ -ÐÒÏÇÒÁÍÍ, ×ËÌÀÞÁÀÝÉÈ ÐÏÄÐÒÏÇÒÁÍÍÙ ËÏÍÐÒÅÓÓÉÉ/ÄÅËÏÍÐÒÅÓÓÉÉ bz2. +%description devel -l ru.UTF-8 +Этот пакет содержит библиотеку и хедеры, необходимые для разработки +программ, включающих подпрограммы компрессии/декомпрессии bz2. -%description devel -l uk -ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ Â¦Â̦ÏÔÅËÕ ÔÁ ÈÅÄÅÒÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÒÏÚÒÏÂËÉ -ÐÒÏÇÒÁÍ, Ñ˦ ×ËÌÀÞÁÀÔØ Ð¦ÄÐÒÏÇÒÁÍÉ ËÏÍÐÒÅÓ¦§/ÄÅËÏÍÐÒÅÓ¦§ bz2. +%description devel -l uk.UTF-8 +Цей пакет містить бібліотеку та хедери, необхідні для розробки +програм, які включають підпрограми компресії/декомпресії bz2. %package static Summary: Static libbz2 library -Summary(es): Static libraries for bzip2 development -Summary(pl): Biblioteka statyczna libbz2 -Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com a bzip2 -Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ bzip2 -Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ bzip2 +Summary(fr.UTF-8): Librairie statique libbz2 +Summary(pl.UTF-8): Biblioteka statyczna libbz2 +Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com a bzip2 +Summary(ru.UTF-8): Статические библиотеки bzip2 +Summary(uk.UTF-8): Статичні бібліотеки bzip2 Group: Development/Libraries -Requires: %{name}-devel = %{version} - -%define specflags_ia32 "-fomit-frame-pointer" +Requires: %{name}-devel = %{version}-%{release} %description static Static libbz2 library. -%description static -l es -Static libraries for bzip2 development. +%description static -l fr.UTF-8 +Librairie statique d'en-tête pour bzip2. -%description static -l pl +%description static -l pl.UTF-8 Biblioteka statyczna libbz2. -%description static -l pt_BR -Bibliotecas estáticas para desenvolvimento com a bzip2. +%description static -l pt_BR.UTF-8 +Bibliotecas estáticas para desenvolvimento com a bzip2. -%description static -l uk -ãÅ ÏËÒÅÍÉÊ ÐÁËÅÔ Ú¦ ÓÔÁÔÉÞÎÉÍÉ Â¦Â̦ÏÔÅËÁÍÉ. +%description static -l uk.UTF-8 +Це окремий пакет зі статичними бібліотеками. -%description static -l ru -üÔÏ ÏÔÄÅÌØÎÙÊ ÐÁËÅÔ ÓÏ ÓÔÁÔÉÞÅÓËÉÍÉ ÂÉÂÌÉÏÔÅËÁÍÉ. +%description static -l ru.UTF-8 +Это отдельный пакет со статическими библиотеками. %prep %setup -q -%patch -p1 +%patch0 -p1 + +%{?with_progress:%patch2 -p1} %build -%{__aclocal} %{__libtoolize} -%{__automake} +%{__aclocal} %{__autoconf} -%configure +%{__autoheader} +%{__automake} +%configure \ + CFLAGS="%{rpmcflags} -D_FILE_OFFSET_BITS=64" \ + %{!?with_static_libs:--disable-static} %{__make} %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT{/%{_lib},/etc/env.d,%{_pkgconfigdir}} + +%{__make} install \ + DESTDIR=$RPM_BUILD_ROOT -%{__make} install DESTDIR=$RPM_BUILD_ROOT +%{__sed} -e ' + s|^libdir=.*|libdir=%{_libdir}| + s|^Version:.*|Version: %{version}| +' %{SOURCE2} > $RPM_BUILD_ROOT%{_pkgconfigdir}/bzip2.pc -# Substitute %{_bindir} in bzless. -mv -f $RPM_BUILD_ROOT%{_bindir}/bzless{,.tmp} -sed -e "s@%%{_bindir}@%{_bindir}@g" \ - $RPM_BUILD_ROOT%{_bindir}/bzless.tmp > \ - $RPM_BUILD_ROOT%{_bindir}/bzless -rm -f $RPM_BUILD_ROOT%{_bindir}/bzless.tmp +%{__mv} $RPM_BUILD_ROOT%{_libdir}/libbz2.so.* $RPM_BUILD_ROOT/%{_lib} +ln -sf /%{_lib}/libbz2.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libbz2.so + +# TODO: move this to install-*-hook so the patch could be upstreamed eventually +# standard soname was libbz2.so.1.0, libtoolizeautoconf patch broke it, +# but ABI has not changed - provide symlink for binary compatibility +ln -sf libbz2.so.1.0.0 $RPM_BUILD_ROOT/%{_lib}/libbz2.so.1.0 + +cat << EOF >$RPM_BUILD_ROOT/etc/env.d/BZIP2 +#BZIP2="-5" +EOF bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} %clean rm -rf $RPM_BUILD_ROOT -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%post libs -p /sbin/ldconfig +%postun libs -p /sbin/ldconfig %files %defattr(644,root,root,755) -%doc README* NEWS Y2K_INFO -%attr(755,root,root) %{_libdir}/lib*.so.*.* -%attr(755,root,root) %{_bindir}/* -%{_mandir}/man1/* +%doc CHANGES LICENSE README manual.html +%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/BZIP2 +%attr(755,root,root) %{_bindir}/bunzip2 +%attr(755,root,root) %{_bindir}/bzcat +%attr(755,root,root) %{_bindir}/bzcmp +%attr(755,root,root) %{_bindir}/bzdiff +%attr(755,root,root) %{_bindir}/bzegrep +%attr(755,root,root) %{_bindir}/bzfgrep +%attr(755,root,root) %{_bindir}/bzgrep +%attr(755,root,root) %{_bindir}/bzip2 +%attr(755,root,root) %{_bindir}/bzip2recover +%attr(755,root,root) %{_bindir}/bzless +%attr(755,root,root) %{_bindir}/bzmore +%{_mandir}/man1/bunzip2.1* +%{_mandir}/man1/bzcat.1* +%{_mandir}/man1/bzcmp.1* +%{_mandir}/man1/bzdiff.1* +%{_mandir}/man1/bzegrep.1* +%{_mandir}/man1/bzfgrep.1* +%{_mandir}/man1/bzgrep.1* +%{_mandir}/man1/bzless.1* +%{_mandir}/man1/bzmore.1* +%{_mandir}/man1/bzip2.1* +%{_mandir}/man1/bzip2recover.1* +%lang(cs) %{_mandir}/cs/man1/* %lang(es) %{_mandir}/es/man1/* %lang(fr) %{_mandir}/fr/man1/* %lang(hu) %{_mandir}/hu/man1/* +%lang(it) %{_mandir}/it/man1/* %lang(ja) %{_mandir}/ja/man1/* %lang(ko) %{_mandir}/ko/man1/* %lang(pl) %{_mandir}/pl/man1/* +%lang(tr) %{_mandir}/tr/man1/* +%lang(zh_CN) %{_mandir}/zh_CN/man1/* + +%files libs +%defattr(644,root,root,755) +%attr(755,root,root) /%{_lib}/libbz2.so.*.*.* +%attr(755,root,root) /%{_lib}/libbz2.so.1.0 +%attr(755,root,root) %ghost /%{_lib}/libbz2.so.1 %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/lib*.so -%{_libdir}/lib*.la -%{_includedir}/*.h +%attr(755,root,root) %{_libdir}/libbz2.so +%{_libdir}/libbz2.la +%{_includedir}/bzlib.h +%{_includedir}/bzlib_private.h +%{_pkgconfigdir}/bzip2.pc +%if %{with static_libs} %files static %defattr(644,root,root,755) -%{_libdir}/lib*.a +%{_libdir}/libbz2.a +%endif