]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- redesign: allow to be used as a library
[packages/rpm.git] / rpm.spec
index 2ede830b1164e43c9c1ec0637e5e612c246f9830..21f83ea81d2ffbb0e7ce7da9dca1e6cc5883c4dc 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -2,20 +2,23 @@
 # TODO:
 # - learn find-perl-provides to use the __perl macro instead
 #   of /usr/bin/perl
+#   NOTE: there is no find-perl* now, only perl.{prov,req}
 # - use system libmagic not internal libfmagic
 #
 # Conditional build:
 # _without_static      - build shared /bin/rpm (doesn't work at the moment)
+# _without_docs                - don't generate documentation with doxygen
 # force_cc             - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
 # force_cxx            - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
 # force_cpp            - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
 #
 %include        /usr/lib/rpm/macros.python
-%define snap   20030515
+%define snap   20030610
 # versions of required libraries
 %define        reqdb_ver       4.1.25-1
 %define        reqpopt_ver     1.9
-%define        beecrypt_ver    3.0.0
+%define        beecrypt_ver    3.0.0-0.20030610.1
+%define rpm_macros_rev 1.118
 Summary:       RPM Package Manager
 Summary(de):   RPM Packet-Manager
 Summary(es):   Gestor de paquetes RPM
@@ -26,27 +29,29 @@ Summary(uk):        
 Name:          rpm
 %define        ver     4.3
 Version:       %{ver}
-%define        rel     0.%{snap}.8
+%define        rel     0.%{snap}.18
 Release:       %{rel}
 License:       GPL
 Group:         Base
 #Source0:      ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.2.x/%{name}-%{version}.%{snap}.tar.gz
-# Source0-md5: b7a16114143a0465aa65daf7a0234cf4
-Source0:       http://recesja.icm.edu.pl/~psk/%{name}-%{version}.%{snap}.tar.gz
+Source0:       ftp://distfiles.pld-linux.org/src/%{name}-%{version}.%{snap}.tar.gz
+# Source0-md5: f923fe5ca8f0803868ae7bcc0fabe9bb
 Source1:       %{name}.groups
 Source2:       %{name}.platform
 Source3:       %{name}-install-tree
 Source4:       %{name}-find-rpm-provides
-Source8:       %{name}-find-spec-bcond
-Source9:       %{name}-find-lang
-Source10:      %{name}-find-provides
-Source11:      %{name}-find-requires
-Source14:      %{name}-groups-po.awk
-Source15:      %{name}-compress-doc
-Source16:      %{name}-check-files
-Source17:      %{name}-php-provides
-Source18:      %{name}-php-requires
-Source20:      %{name}.macros
+Source5:       %{name}-find-spec-bcond
+Source6:       %{name}-find-lang
+Source7:       %{name}-find-provides
+Source8:       %{name}-find-requires
+Source9:       %{name}-groups-po.awk
+Source10:      %{name}-compress-doc
+Source11:      %{name}-check-files
+Source12:      %{name}-php-provides
+Source13:      %{name}-php-requires
+Source14:      %{name}.macros
+Source15:      %{name}-find-provides-wrapper
+Source16:      %{name}-find-requires-wrapper
 Source30:      builder
 Source31:      adapter.awk
 Source32:      pldnotify.awk
@@ -57,30 +62,35 @@ Patch2:             %{name}-arch.patch
 Patch3:                %{name}-rpmpopt.patch
 Patch4:                %{name}-perl-macros.patch
 Patch5:                %{name}-perl-req-perlfile.patch
-Patch7:                %{name}-glob.patch
-Patch11:       %{name}-noexpand.patch
-Patch12:       %{name}-scripts-closefds.patch
-Patch13:       %{name}-python-macros.patch
-#Patch16:      %{name}-drop-legacy-CLI.patch
-Patch18:       %{name}-gettext-in-header.patch
-Patch19:       %{name}-compress-doc.patch
-Patch20:       %{name}-lt14d.patch
-Patch21:       %{name}-gettext0.11.patch
-Patch22:       %{name}-build.patch
-Patch24:       %{name}-system_libs.patch
-Patch25:       %{name}-bb-and-short-circuit.patch
-Patch30:       %{name}-etc_dir.patch
-Patch31:       %{name}-system_libs-more.patch
-Patch32:       %{name}-php-deps.patch
-Patch33:       %{name}-python-fix.patch
-Patch34:       %{name}-spec-prep-pre.patch
-Patch35:       %{name}-perl_req.patch
-Patch36:       %{name}-system_libs_more.patch
-Patch37:       %{name}-python_2_3.patch
-Patch38:       %{name}-no-bin-env.patch
-Patch39:       %{name}-specflags.patch
-Patch40:       %{name}-magic-usesystem.patch
-Patch41:       %{name}-dontneedutils.patch
+Patch6:                %{name}-glob.patch
+Patch7:                %{name}-noexpand.patch
+Patch8:                %{name}-scripts-closefds.patch
+Patch9:                %{name}-python-macros.patch
+Patch10:       %{name}-gettext-in-header.patch
+Patch11:       %{name}-compress-doc.patch
+Patch12:       %{name}-gettext0.11.patch
+Patch13:       %{name}-build.patch
+Patch14:       %{name}-system_libs.patch
+Patch15:       %{name}-bb-and-short-circuit.patch
+Patch16:       %{name}-etc_dir.patch
+Patch17:       %{name}-system_libs-more.patch
+Patch18:       %{name}-php-deps.patch
+Patch19:       %{name}-python-fix.patch
+Patch20:       %{name}-spec-prep-pre.patch
+Patch21:       %{name}-perl_req.patch
+Patch22:       %{name}-system_libs_more.patch
+Patch23:       %{name}-python_2_3.patch
+Patch24:       %{name}-no-bin-env.patch
+Patch25:       %{name}-specflags.patch
+Patch26:       %{name}-magic-usesystem.patch
+Patch27:       %{name}-dontneedutils.patch
+Patch28:       %{name}-python-beecrypt.patch
+Patch29:       %{name}-man-typos.patch
+Patch30:       %{name}-man-pl.patch
+Patch31:       %{name}-fdClose-typo.patch
+Patch32:       %{name}-userpmdepswrappers.patch
+Patch33:       %{name}-provides-dont-obsolete.patch
+Patch34:       %{name}-examplesaredoc.patch
 URL:           http://www.rpm.org/
 Icon:          rpm.gif
 BuildRequires: autoconf >= 2.52
@@ -88,7 +98,7 @@ BuildRequires:        automake
 BuildRequires: beecrypt-devel >= %{beecrypt_ver}
 BuildRequires: bzip2-devel >= 1.0.1
 BuildRequires: db-devel >= %{reqdb_ver}
-BuildRequires: doxygen
+%{!?_without_docs:BuildRequires:       doxygen}
 BuildRequires: gettext-devel >= 0.11.4-2
 BuildRequires: elfutils-devel
 #BuildRequires:        libmagic-devel
@@ -177,10 +187,10 @@ RPM - 
 ¦ÎÆÏÒÍÁæÀ ÐÒÏ ÐÁËÅÔ.
 
 %package devel
-Summary:       Header files and libraries
-Summary(de):   Header-Dateien uns Libraries
+Summary:       Header files for rpm libraries
+Summary(de):   Header-Dateien für rpm Libraries
 Summary(es):   Archivos de inclusión y bibliotecas para programas de manipulación de paquetes rpm
-Summary(pl):   Pliki nag³ówkowe i biblioteki statyczne
+Summary(pl):   Pliki nag³ówkowe bibliotek rpm
 Summary(pt_BR):        Arquivos de inclusão e bibliotecas para programas de manipulação de pacotes RPM
 Summary(ru):   èÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÒÁÂÏÔÁÀÝÉÈ Ó rpm-ÐÁËÅÔÁÍÉ
 Summary(uk):   èÅÄÅÒÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÄÌÑ ÐÒÏÇÒÁÍ, ÝÏ ÐÒÁÃÀÀÔØ Ú ÐÁËÅÔÁÍÉ rpm
@@ -194,10 +204,11 @@ Requires: popt-devel >= %{reqpopt_ver}
 Requires:      zlib-devel
 
 %description devel
-The RPM packaging system includes a C library that makes it easy to
-manipulate RPM packages and databases. It is intended to ease the
+The RPM packaging system includes C libraries that make it easy to
+manipulate RPM packages and databases. They are intended to ease the
 creation of graphical package managers and other tools that need
-intimate knowledge of RPM packages.
+intimate knowledge of RPM packages. This package contains header files
+for these libraries.
 
 %description devel -l de
 Der RPM-Packensystem enthält eine C-Library, die macht es einfach
@@ -212,10 +223,11 @@ facilitar la creaci
 herramientas que necesiten un conocimiento profundo de paquetes RPM.
 
 %description devel -l pl
-System RPM zawiera bibliotekê C, która u³atwia manipulowanie pakietami
-RPM oraz bazami danych. W zamiarze ma to upro¶ciæ tworzenie
+System RPM zawiera biblioteki C, które u³atwiaj± manipulowanie
+pakietami RPM oraz bazami danych. W zamiarze ma to upro¶ciæ tworzenie
 graficznych programów zarz±dzaj±cych pakietami oraz innych narzêdzi,
-które wymagaj± szczegó³owej wiedzy na temat pakietów RPM.
+które wymagaj± szczegó³owej wiedzy na temat pakietów RPM. Ten pakiet
+zawiera pliki nag³ówkowe wspomnianych bibliotek.
 
 %description devel -l pt_BR
 O sistema de empacotamento RPM inclui uma biblioteca C que torna fácil
@@ -412,6 +424,7 @@ Summary(pt_BR):     Scripts e programas execut
 Summary(ru):   óËÒÉÐÔÙ É ÕÔÉÌÉÔÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÓÂÏÒËÉ ÐÁËÅÔÏ×
 Summary(uk):   óËÒÉÐÔÉ ÔÁ ÕÔÉ̦ÔÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÁËÅÔ¦×
 Group:         Applications/File
+Provides:      rpmbuild(macros) = %{rpm_macros_rev}
 Requires(pre): findutils
 Requires:      %{name} = %{version}
 Requires:      %{name}-utils = %{version}
@@ -501,41 +514,47 @@ construir pacotes usando o RPM.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
 %patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
 %patch11 -p1
 %patch12 -p1
 %patch13 -p1
+%patch14 -p1
+%patch15 -p1
+%patch16 -p1
+%patch17 -p1
 %patch18 -p1
 %patch19 -p1
-%patch20 -p1
+# patch20 -- look down
 %patch21 -p1
 %patch22 -p1
+%patch23 -p1
 %patch24 -p1
-%patch25 -p1
-%patch30 -p1
-%patch31 -p1
-%patch32 -p1
-%patch33 -p1
-# patch34 -- look down
-%patch35 -p1
-%patch36 -p1
-%patch37 -p1
-%patch38 -p1
 
 sed -e 's/^/@pld@/' %{SOURCE2} >>platform.in
 cp -f platform.in macros.pld.in
 echo '# obsoleted file' > macros.perl
 echo '# obsoleted file' > macros.python
 echo '# obsoleted file' > macros.php
-install %{SOURCE9} scripts/find-lang.sh
-install %{SOURCE17} scripts/php.prov.in
-install %{SOURCE18} scripts/php.req.in
+install %{SOURCE6} scripts/find-lang.sh
+install %{SOURCE12} scripts/php.prov.in
+install %{SOURCE13} scripts/php.req.in
 install %{SOURCE33} scripts/perl.prov
-cat %{SOURCE20} >> macros.in
+cat %{SOURCE14} >> macros.in
+%patch20 -p1
+%patch25 -p1
+%patch26 -p1
+%patch27 -p1
+%patch28 -p1
+%patch29 -p1
+%patch30 -p1
+%patch31 -p1
+%patch32 -p1
+%patch33 -p1
 %patch34 -p1
-%patch39 -p1
-%patch40 -p1
-%patch41 -p1
 
 cd scripts;
 mv -f perl.req perl.req.in
@@ -546,7 +565,13 @@ chmod +x %{SOURCE4}
 rm -rf zlib libelf db db3 popt rpmdb/db.h
 
 # generate Group translations to *.po
-awk -f %{SOURCE14} %{SOURCE1}
+awk -f %{SOURCE9} %{SOURCE1}
+
+# update macros paths
+for f in doc{,/ja,/pl}/rpm.8 doc{,/ja,/pl}/rpmbuild.8 ; do
+       sed -e 's@lib/rpm/redhat@lib/rpm/pld@g' $f > ${f}.tmp
+       mv -f ${f}.tmp $f
+done
 
 %build
 cd file
@@ -577,7 +602,7 @@ mv -f macros.tmp macros.in
        CC="%{__cc}" CXX="%{__cxx}" CPP="%{__cpp}" \
        --enable-shared \
        --enable-static \
-       --with-apidocs \
+       %{!?_without_docs:--with-apidocs} \
        --with-python=auto \
        --without-db
 
@@ -600,11 +625,15 @@ install macros.php        $RPM_BUILD_ROOT%{_libdir}/rpm/macros.php
 install %{SOURCE1} doc/manual/groups
 install %{SOURCE3} $RPM_BUILD_ROOT%{_libdir}/rpm/install-build-tree
 install %{SOURCE4} $RPM_BUILD_ROOT%{_libdir}/rpm/find-rpm-provides
-install %{SOURCE8} $RPM_BUILD_ROOT%{_libdir}/rpm/find-spec-bcond
-install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/rpm/find-provides
-install %{SOURCE11} $RPM_BUILD_ROOT%{_libdir}/rpm/find-requires
-install %{SOURCE15} $RPM_BUILD_ROOT%{_libdir}/rpm/compress-doc
-install %{SOURCE16} $RPM_BUILD_ROOT%{_libdir}/rpm/check-files
+install %{SOURCE5} $RPM_BUILD_ROOT%{_libdir}/rpm/find-spec-bcond
+# 2 following files - to be removed or changed to find-elf-*
+# (to generate only ELF dependencies using objdump)???
+install %{SOURCE7} $RPM_BUILD_ROOT%{_libdir}/rpm/find-provides
+install %{SOURCE8} $RPM_BUILD_ROOT%{_libdir}/rpm/find-requires
+install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/rpm/compress-doc
+install %{SOURCE11} $RPM_BUILD_ROOT%{_libdir}/rpm/check-files
+install %{SOURCE15} $RPM_BUILD_ROOT%{_libdir}/rpm/find-provides-wrapper
+install %{SOURCE16} $RPM_BUILD_ROOT%{_libdir}/rpm/find-requires-wrapper
 install scripts/find-php*      $RPM_BUILD_ROOT%{_libdir}/rpm
 install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_libdir}/rpm
 
@@ -622,6 +651,32 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
 %%distribution PLD
 EOF
 
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles <<EOF
+# global list of files (name regexps) which don't generate Provides
+EOF
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov <<EOF
+# global list of capabilities (regexps) not to be used in Provides
+EOF
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles <<EOF
+# global list of files (name regexps) which don't generate Requires
+/usr/src/examples/.*
+/usr/share/doc/.*
+EOF
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq <<EOF
+# global list of capabilities (regexps) not to be used in Requires
+EOF
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep <<EOF
+# global list of capabilities (SONAME, perl(module), php(module) regexps)
+# which don't generate dependencies on package NAMES
+libGL.so.1
+libGLU.so.1
+libOSMesa.so.4
+libglide3.so.3
+libgtkmozembed.so
+libgtksuperwin.so
+libxpcom.so
+EOF
+
 # for rpm -e|-U --repackage
 install -d $RPM_BUILD_ROOT/var/spool/repackage
 
@@ -687,10 +742,13 @@ find /usr/lib/rpm -name '*-linux' -type l | xargs rm -f
 
 %files build
 %defattr(644,root,root,755)
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/rpm/noauto*
 %attr(755,root,root) %{_libdir}/rpm/compress-doc
 %attr(755,root,root) %{_libdir}/rpm/cross-build
-%attr(755,root,root) %{_libdir}/rpm/find-requires
 %attr(755,root,root) %{_libdir}/rpm/find-provides
+%attr(755,root,root) %{_libdir}/rpm/find-provides-wrapper
+%attr(755,root,root) %{_libdir}/rpm/find-requires
+%attr(755,root,root) %{_libdir}/rpm/find-requires-wrapper
 %attr(755,root,root) %{_libdir}/rpm/find-rpm-provides
 %attr(755,root,root) %{_libdir}/rpm/find-spec-bcond
 %attr(755,root,root) %{_libdir}/rpm/find-lang.sh
@@ -739,6 +797,9 @@ find /usr/lib/rpm -name '*-linux' -type l | xargs rm -f
 
 %{_mandir}/man1/gendiff.1*
 %{_mandir}/man8/rpmbuild.8*
+%lang(ja) %{_mandir}/ja/man8/rpmbuild.8*
+%lang(pl) %{_mandir}/pl/man1/gendiff.1*
+%lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
 
 %files devel
 %defattr(644,root,root,755)
@@ -773,13 +834,18 @@ find /usr/lib/rpm -name '*-linux' -type l | xargs rm -f
 #%%{_libdir}/rpm/rpm.xinetd
 
 %{_mandir}/man8/rpm2cpio.8*
+%{_mandir}/man8/rpmdeps.8*
+%{_mandir}/man8/rpmcache.8*
+%{_mandir}/man8/rpmgraph.8*
 %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8*
+%lang(ja) %{_mandir}/ja/man8/rpmcache.8*
+%lang(ja) %{_mandir}/ja/man8/rpmgraph.8*
 %lang(ko) %{_mandir}/ko/man8/rpm2cpio.8*
 %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8*
+%lang(pl) %{_mandir}/pl/man8/rpmdeps.8*
+%lang(pl) %{_mandir}/pl/man8/rpmcache.8*
+%lang(pl) %{_mandir}/pl/man8/rpmgraph.8*
 %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8*
-%{_mandir}/man8/rpmdeps.8*
-%{_mandir}/man8/rpmcache.8*
-%{_mandir}/man8/rpmgraph.8*
 
 %files utils-static
 %defattr(644,root,root,755)
This page took 0.041704 seconds and 4 git commands to generate.