]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- rel 44; do magic_file() under C locale to avoid 'vasprintf failed' coming from...
[packages/rpm.git] / rpm.spec
index 9aea136c3008c7011ac6ff70efd57267ddce1313..d5a39c36e3a603356fc61425c931b4904f4b5f86 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -12,6 +12,8 @@
 #   preserving payload format and compressor from original rpm, _not_ current settings
 #   /usr/bin/install: cannot stat `./it.gmo': No such file or directory
 #   /usr/bin/install: cannot stat `./sr@Latn.gmo': No such file or directory
+# - maybe? http://rpm.org/gitweb?p=rpm.git;a=commitdiff;h=cfcd1f9bd98d5d0fc46a84931984efec3b9d47e2
+# - fix linking, rpm is beeing linked against installed rpmio
 #
 # Conditional build:
 %bcond_with    static          # build static rpm+rpmi
 # 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"
 
+%ifarch sparc sparcv9 sparc64
+%undefine with_apidocs
+%endif
+
 # versions of required libraries
 %if "%{pld_release}" == "th"
 %define        reqdb_ver       4.7.25
@@ -51,7 +57,7 @@ Summary(ru.UTF-8):    Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
 Version:       4.5
-Release:       11
+Release:       44
 License:       LGPL
 Group:         Base
 Source0:       %{name}-%{version}.tar.gz
@@ -78,6 +84,7 @@ Source17:     %{name}-java-requires
 # http://svn.pld-linux.org/banner.sh/
 Source18:      banner.sh
 Source19:      %{name}-macros.gstreamer
+Patch1000:     %{name}-new-debuginfo.patch
 Patch1067:     %{name}-disable-features.patch
 Patch1070:     %{name}-rpmrc-ac.patch
 #Patch0:       %{name}-pl.po.patch
@@ -87,12 +94,15 @@ Patch3:             %{name}-rpmpopt.patch
 Patch4:                %{name}-perl-macros.patch
 Patch6:                %{name}-noexpand.patch
 Patch7:                %{name}-scripts-closefds.patch
+Patch8:                %{name}-db.patch
 Patch9:                %{name}-gettext-in-header.patch
 Patch10:       %{name}-compress-doc.patch
 Patch11:       %{name}-rpm5-patchset-8074.patch
 Patch12:       %{name}-system_libs.patch
+Patch13:       %{name}-unglobal.patch
 Patch14:       %{name}-etc_dir.patch
 Patch15:       %{name}-system_libs-more.patch
+Patch16:       %{name}-libmagic-locale.patch
 Patch17:       %{name}-ldconfig-always.patch
 Patch18:       %{name}-macros-ac.patch
 Patch19:       %{name}-macros-th.patch
@@ -158,6 +168,19 @@ Patch87:   %{name}-mono.patch
 Patch88:       %{name}-poptexecpath.patch
 Patch89:       %{name}-lzma-compress-level.patch
 Patch90:       %{name}-gstreamer.patch
+Patch91:       %{name}-gendiff.patch
+Patch92:       %{name}-set-failed-on-reopen.patch
+Patch93:       %{name}-debugedit-workaround.patch
+Patch94:       %{name}-shescape-memfault.patch
+Patch95:       %{name}-gid-uucp.patch
+Patch96:       %{name}-disable-hkp.patch
+Patch97:       %{name}-sigpad.patch
+Patch98:       %{name}-debugdir.patch
+Patch99:       %{name}-pkgconfig.patch
+Patch100:      %{name}-rpm5-debugedit.patch
+Patch101:      %{name}-builddir-readlink.patch
+Patch102:      pythondeps-speedup.patch
+Patch103:      %{name}-lua-exit-chroot-correctly.patch
 URL:           http://rpm5.org/
 BuildRequires: autoconf >= 2.57
 BuildRequires: automake >= 1.4
@@ -166,6 +189,7 @@ BuildRequires:      bzip2-devel >= 1.0.2-17
 %{!?with_internal_db:BuildRequires:    db-devel >= %{reqdb_ver}}
 BuildRequires: elfutils-devel >= 0.108
 BuildRequires: gettext-devel >= 0.11.4-2
+BuildRequires: keyutils-devel
 %{?with_system_libmagic:BuildRequires: libmagic-devel}
 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
@@ -175,7 +199,7 @@ BuildRequires:      libtool >= 1:1.4.2-9
 BuildRequires: libxml2-devel
 BuildRequires: neon-devel >= 0.25.5
 %endif
-BuildRequires: ossp-uuid-devel >= 1.6.2-4
+BuildRequires: ossp-uuid-devel >= 1.6.2-6
 BuildRequires: patch >= 2.2
 BuildRequires: popt-devel >= %{reqpopt_ver}
 %{?with_python:BuildRequires:  python-devel >= 1:2.3}
@@ -184,7 +208,7 @@ BuildRequires:      rpm-perlprov
 %{?with_python:BuildRequires:  rpm-pythonprov}
 BuildRequires: rpmbuild(macros) >= 1.351
 BuildRequires: tar >= 1:1.15.1
-BuildRequires: zlib-devel
+BuildRequires: zlib-devel >= 1.2.3.3
 %if %{with apidocs}
 BuildRequires: doxygen
 BuildRequires: ghostscript
@@ -201,7 +225,7 @@ BuildRequires:      glibc-static >= 2.2.94
 %{?with_system_libmagic:BuildRequires: libmagic-static}
 %{?with_selinux:BuildRequires: libselinux-static >= 1.18}
 BuildRequires: popt-static >= %{reqpopt_ver}
-BuildRequires: zlib-static
+BuildRequires: zlib-static >= 1.2.3.3
 %endif
 Requires:      %{name}-base = %{version}-%{release}
 Requires:      %{name}-lib = %{version}-%{release}
@@ -315,8 +339,8 @@ Requires:   beecrypt >= %{beecrypt_ver}
 Requires:      ossp-uuid >= 1.6.2-4
 Requires:      popt >= %{reqpopt_ver}
 %{?with_internal_db:%{?with_nptl:Requires:     uname(release) >= 2.6.0}}
-Requires:      zlib >= 1.2.3
-%{?with_suggest_tags:Suggests: lzma}
+Requires:      zlib >= 1.2.3.3
+%{?with_suggest_tags:Suggests: xz}
 Obsoletes:     rpm-libs
 # avoid installing with incompatible (non-tukaani) lzma
 # avoid incompatible (-M0 not supported) lzma
@@ -344,10 +368,11 @@ Requires: beecrypt-devel >= %{beecrypt_ver}
 Requires:      bzip2-devel
 %{!?with_internal_db:Requires: db-devel >= %{reqdb_ver}}
 Requires:      elfutils-devel
+Requires:      keyutils-devel
 %{?with_system_libmagic:Requires:      libmagic-devel}
 %{?with_selinux:Requires:      libselinux-devel}
 Requires:      popt-devel >= %{reqpopt_ver}
-Requires:      zlib-devel
+Requires:      zlib-devel >= 1.2.3.3
 
 %description devel
 The RPM packaging system includes C libraries that make it easy to
@@ -407,9 +432,10 @@ Requires:  beecrypt-static >= %{beecrypt_ver}
 Requires:      bzip2-static
 %{!?with_internal_db:Requires: db-static >= %{reqdb_ver}}
 Requires:      elfutils-static
+Requires:      keyutils-static
 %{?with_system_libmagic:Requires:      libmagic-static}
 Requires:      popt-static >= %{reqpopt_ver}
-Requires:      zlib-static
+Requires:      zlib-static >= 1.2.3.3
 
 %description static
 RPM static libraries.
@@ -500,7 +526,7 @@ Summary(ru.UTF-8):  Скрипты и утилиты, необходимые дл
 Summary(uk.UTF-8):     Скрипти та утиліти, необхідні для побудови пакетів
 Group:         Applications/File
 Requires(pretrans):    findutils
-Requires:      %{name}-build-macros >= 1.486
+Requires:      %{name}-build-macros >= 1.514
 Requires:      %{name}-utils = %{version}-%{release}
 Requires:      /bin/id
 Requires:      awk
@@ -525,7 +551,7 @@ Requires:   gcc >= 5:3.4
 Requires:      glibc-devel
 Requires:      grep
 Requires:      gzip
-Requires:      lzma
+Requires:      xz
 Requires:      make
 Requires:      patch
 Requires:      sed
@@ -676,6 +702,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 
 %prep
 %setup -q
+%patch1000 -p1
 #%patch0 -p1
 %patch1 -p1
 %patch2 -p1
@@ -683,11 +710,14 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch4 -p1
 %patch6 -p1
 %patch7 -p1
+%patch8 -p1
 %patch9 -p1
 %patch10 -p1
 %patch11 -p1 -R
 %patch12 -p1
+%patch13 -p1
 %patch14 -p1
+%patch16 -p1
 %patch17 -p1
 sed -e 's/^/@pld@/' %{SOURCE2} >>platform.in
 echo '%%define __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl
@@ -735,7 +765,6 @@ install %{SOURCE13} scripts/perl.prov
 %endif
 %patch51 -p1
 #%patch52 -p1
-%patch53 -p1
 %patch55 -p1
 %patch56 -p1
 %patch57 -p1
@@ -754,9 +783,8 @@ install %{SOURCE13} scripts/perl.prov
 %patch73 -p1
 %patch74 -p1
 %patch75 -p0
-%if "%{pld_release}" == "ac"
-%patch76 -p1
-%endif
+# having .py sources in -debuginfo needs more testing
+#%patch76 -p1
 %patch77 -p0
 %patch79 -p1
 %patch80 -p1
@@ -769,6 +797,20 @@ install %{SOURCE13} scripts/perl.prov
 %patch88 -p1
 %patch89 -p1
 %patch90 -p1
+%patch91 -p1
+%patch92 -p1
+%patch93 -p1
+%patch94 -p1
+%patch95 -p1
+%patch96 -p1
+%patch97 -p1
+%patch98 -p1
+%patch99 -p1
+%patch53 -p1
+%patch100 -p1
+%patch101 -p1
+%patch102 -p1
+%patch103 -p1
 
 mv -f po/{sr,sr@Latn}.po
 rm -rf sqlite zlib popt
@@ -833,12 +875,16 @@ fi
 cd ..
 %endif
 
-# config.guess doesn't handle athlon, so we have to change it by hand.
 # rpm checks for CPU type at runtime, but it looks better
-sed -i -e 's|@host@|%{_target_cpu}-%{_target_vendor}-linux-gnu|' -e 's|@host_cpu@|%{_target_cpu}|' macros.in
+sed -i \
+       -e 's|@host@|%{_target_cpu}-%{_target_vendor}-%{_target_os}|' \
+       -e 's|@host_cpu@|%{_target_cpu}|' \
+       -e 's|@host_os@|%{_target_os}|' \
+       macros.in
 
 # pass CC and CXX too in case of building with some older configure macro
 # disable perl-RPM2 build, we have it in separate spec
+CPPFLAGS=-I/usr/include/oosp-uuid
 %configure \
        CC="%{__newcc}" \
        CXX="%{__newcxx}" \
@@ -951,16 +997,28 @@ s390-[^-]*-[Ll]inux(-gnu)?
 
 %ifarch sparc64
 sparc64-[^-]*-[Ll]inux(-gnu)?
-sparcv8-[^-]*-[Ll]inux(-gnu)?
-sparcv9-[^-]*-[Ll]inux(-gnu)?
 %endif
-%ifarch sparcv9
-sparcv8-[^-]*-[Ll]inux(-gnu)?
+%ifarch sparcv9 sparc64
 sparcv9-[^-]*-[Ll]inux(-gnu)?
 %endif
 %ifarch sparc sparcv9 sparc64
 sparc-[^-]*-[Ll]inux(-gnu)?
 %endif
+%ifarch armv5tel
+armv5tel-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch armv4t armv5tel
+armv4t-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch armv3t armv4t armv5tel
+armv3t-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch armv5teb
+armv5teb-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch armv4b armv5teb
+armv4b-[^-]*-[Ll]inux(-gnu)?
+%endif
 
 # noarch
 noarch-[^-]*-.*
@@ -972,31 +1030,29 @@ rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl
 rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh
 
 # not installed since 4.4.8 (-tools-perl subpackage)
-install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
-
-install macros.perl    $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
-install macros.python  $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
-install macros.php     $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
-install macros.mono    $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
-install %{SOURCE16}    $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
-install %{SOURCE19}    $RPM_BUILD_ROOT%{_rpmlibdir}/macros.gstreamer
-
-install %{SOURCE1} doc/manual/groups
-install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
-install %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
-install %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
-install %{SOURCE14} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
-install %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
-install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
-install %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
-install %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/rpm
-
-install %{SOURCE18} $RPM_BUILD_ROOT%{_bindir}/banner.sh
+install -p scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir}
+
+cp -a macros.perl      $RPM_BUILD_ROOT%{_rpmlibdir}/macros.perl
+cp -a macros.python    $RPM_BUILD_ROOT%{_rpmlibdir}/macros.python
+cp -a macros.php       $RPM_BUILD_ROOT%{_rpmlibdir}/macros.php
+cp -a macros.mono      $RPM_BUILD_ROOT%{_rpmlibdir}/macros.mono
+cp -a %{SOURCE16}      $RPM_BUILD_ROOT%{_rpmlibdir}/macros.java
+cp -a %{SOURCE19}      $RPM_BUILD_ROOT%{_rpmlibdir}/macros.gstreamer
+
+install -p %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
+install -p %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
+install -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
+install -p %{SOURCE14} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
+install -p %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
+install -p scripts/php.{prov,req}      $RPM_BUILD_ROOT%{_rpmlibdir}
+install -p %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
+install -p %{SOURCE18} $RPM_BUILD_ROOT%{_bindir}/banner.sh
+cp -a %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/rpm
 
 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname
 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Dirnames
-install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Filelinktos
+cp -a %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Filelinktos
 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Obsoletename
 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Providename
 touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Requirename
@@ -1016,10 +1072,10 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros <<EOF
 %%_verify_file_context_path    %%{nil}
 
 # If non-zero, all erasures will be automagically repackaged.
-#%%_repackage_all_erasures     1
+#%%_repackage_all_erasures     0
 
 # If non-zero, create debuginfo packages
-#%%_enable_debug_packages      1
+#%%_enable_debug_packages      0
 
 # Boolean (i.e. 1 == "yes", 0 == "no") that controls whether files
 # marked as %doc should be installed.
@@ -1156,6 +1212,7 @@ rm -f $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py}
 
 rm -rf manual
 cp -a doc/manual manual
+cp -a %{SOURCE1} manual/groups
 rm -f manual/Makefile*
 
 %clean
@@ -1178,6 +1235,9 @@ if [ -d /vservers ]; then
        rm -f /etc/vservers/*/apps/pkgmgmt/base/rpm/state/__*
 fi
 echo >&2 "You should rebuild your rpmdb: rpm --rebuilddb to avoid random rpmdb errors"
+%if "%{pld_release}" == "th"
+echo >&2 "You probably want to remove db4.5 package now"
+%endif
 
 %triggerpostun -- %{name} < 4.4.9-44
 %{_rpmlibdir}/hrmib-cache
@@ -1265,6 +1325,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_libdir}/librpmdb.la
 %{_libdir}/librpmio.la
 %{_includedir}/rpm
+%{_pkgconfigdir}/rpm.pc
 
 %files static
 %defattr(644,root,root,755)
@@ -1343,7 +1404,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %ifarch %{ppc}
 %{_rpmlibdir}/ppc*
 %endif
-%ifarch sparc sparc64
+%ifarch sparc sparcv9 sparc64
 %{_rpmlibdir}/sparc*
 %endif
 %ifarch %{x8664}
@@ -1351,6 +1412,9 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/ia32e*
 %{_rpmlibdir}/x86_64*
 %endif
+%ifarch armv5tel armv4t armv3t armv5teb armv4b
+%{_rpmlibdir}/arm*
+%endif
 # must be here for "Requires: rpm-*prov" to work
 %{_rpmlibdir}/macros.gstreamer
 %{_rpmlibdir}/macros.java
This page took 0.044205 seconds and 4 git commands to generate.