X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=rpm.spec;h=b3ae86e5a0db9dfe8d898063dd430288f3233e9d;hb=51da5f32a8ba2fd2557459cc6bf048525be5872c;hp=707c9b9d5bc6118017a64201fae783db38e3a388;hpb=635e71bb9c2fcce962cc35f8d9162c23ec15f7aa;p=packages%2Frpm.git diff --git a/rpm.spec b/rpm.spec index 707c9b9..b3ae86e 100644 --- a/rpm.spec +++ b/rpm.spec @@ -16,7 +16,7 @@ # # Conditional build: %bcond_with static # build static rpm+rpmi -%bcond_without apidocs # don't generate documentation with doxygen +%bcond_with apidocs # don't generate documentation with doxygen %bcond_with internal_db # internal db (db 4.5.20) %bcond_with autoreqdep # autogenerate package name deps in addition to sonames/perl(X) %bcond_without nptl # internal db: don't use process-shared POSIX mutexes (NPTL provides full interface) @@ -25,15 +25,10 @@ %bcond_without system_libmagic # don't use system libmagic %bcond_without suggest_tags # build without Suggest tag (bootstrapping) %bcond_with neon # build with HTTP/WebDAV support (neon library). NOTE: neon libs are in /usr! -# force_cc - force using __cc other than "%{_target_cpu}-tld-linux-gcc" -# force_cxx - force using __cxx other than "%{_target_cpu}-tld-linux-g++" -# force_cpp - force using __cpp other than "%{_target_cpu}-tld-linux-gcc -E" -#%%define force_cc "%{_target_cpu}-tld-linux-gcc" -#%%define force_cxx "%{_target_cpu}-tld-linux-g++" -#%%define force_cpp '%{_target_cpu}-tld-linux-gcc -E' # versions of required libraries -%define reqdb_ver 4.5.20 +%define reqdb_pkg db4.7 +%define reqdb_ver 4.7.25 %define reqpopt_ver 1.10.8 %define beecrypt_ver 2:4.1.2-4 %define sover 4.5 @@ -47,7 +42,7 @@ Summary(ru.UTF-8): Менеджер пакетов от RPM Summary(uk.UTF-8): Менеджер пакетів від RPM Name: rpm Version: 4.5 -Release: 57 +Release: 90 License: LGPL Group: Base Source0: %{name}-%{version}.tar.gz @@ -55,24 +50,16 @@ Source0: %{name}-%{version}.tar.gz Source1: %{name}.groups Source2: %{name}.platform Source3: %{name}-install-tree -Source4: %{name}-find-spec-bcond Source5: %{name}-hrmib-cache Source6: %{name}-groups-po.awk -Source7: %{name}-compress-doc -Source10: %{name}-php-provides -Source11: %{name}-php-requires Source12: %{name}.sysinfo Source13: perl.prov Source14: %{name}-user_group.sh Source15: %{name}.sysconfig -Source16: %{name}-macros.java -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 Patch1: %{name}-rpmrc.patch Patch2: %{name}-arch.patch @@ -108,6 +95,7 @@ Patch35: %{name}-disable-features-ti.patch Patch36: %{name}-debuginfo.patch Patch37: %{name}-doxygen_hack.patch Patch39: %{name}-popt-coreutils.patch +Patch40: %{name}-helperEVR-noassert.patch Patch42: %{name}-old-fileconflicts-behaviour.patch Patch43: %{name}-rpm5-patchset-8637.patch Patch44: %{name}-no-neon.patch @@ -166,12 +154,29 @@ Patch101: %{name}-builddir-readlink.patch Patch102: pythondeps-speedup.patch Patch103: %{name}-lua-exit-chroot-correctly.patch Patch104: %{name}-glob.patch +Patch105: %{name}-am.patch +Patch106: %{name}-automake_1.12.patch +Patch107: %{name}-debugedit-dwarf4.patch +Patch108: %{name}-changelog_order_check_nonfatal.patch +Patch109: %{name}-installplatform.patch +Patch110: %{name}-xz.patch +Patch111: %{name}-shrink.patch +Patch112: notrans.patch +Patch113: %{name}-rubyprov.patch +Patch114: %{name}-ruby-gem-build.patch +Patch115: %{name}-glibc.patch +Patch116: %{name}-trigger-flags-int-type.patch +Patch117: %{name}-rpm2cpio-xz.patch +Patch118: %{name}-noarch-subpackages.patch +Patch119: %{name}-div0.patch +Patch120: %{name}-pythondeps.patch +Patch121: %{name}-tld-macros.patch URL: http://rpm5.org/ BuildRequires: autoconf >= 2.57 BuildRequires: automake >= 1.4 BuildRequires: beecrypt-devel >= %{beecrypt_ver} BuildRequires: bzip2-devel >= 1.0.2-17 -%{!?with_internal_db:BuildRequires: db-devel >= %{reqdb_ver}} +%{!?with_internal_db:BuildRequires: %{reqdb_pkg}-devel >= %{reqdb_ver}} BuildRequires: elfutils-devel >= 0.108 BuildRequires: gettext-devel >= 0.11.4-2 BuildRequires: keyutils-devel @@ -204,11 +209,12 @@ BuildRequires: tetex-pdftex # Require static library only for static build BuildRequires: beecrypt-static >= %{beecrypt_ver} BuildRequires: bzip2-static >= 1.0.2-17 -%{!?with_internal_db:BuildRequires: db-static >= %{reqdb_ver}} +%{!?with_internal_db:BuildRequires: %{reqdb_pkg}-static >= %{reqdb_ver}} BuildRequires: elfutils-static BuildRequires: glibc-static >= 2.2.94 %{?with_system_libmagic:BuildRequires: libmagic-static} %{?with_selinux:BuildRequires: libselinux-static >= 1.18} +BuildRequires: ossp-uuid-static >= 1.6.2-8 BuildRequires: popt-static >= %{reqpopt_ver} BuildRequires: zlib-static >= 1.2.3.3 %endif @@ -243,10 +249,6 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define specflags -fno-strict-aliasing -%define _host_alias %{_target_cpu}-tld-linux%{nil} -%define _host_vendor tld -%define _vendor tld - %description RPM is a powerful package manager, which can be used to build, install, query, verify, update, and uninstall individual software @@ -322,7 +324,7 @@ Summary: RPMs library Summary(pl.UTF-8): Biblioteki RPM-a Group: Libraries Requires: beecrypt >= %{beecrypt_ver} -%{!?with_internal_db:Requires: db >= %{reqdb_ver}} +%{!?with_internal_db:Requires: %{reqdb_pkg} >= %{reqdb_ver}} %{?with_system_libmagic:Requires: libmagic >= 1.15-2} %{?with_selinux:Requires: libselinux >= 1.18} Requires: ossp-uuid >= 1.6.2-4 @@ -355,7 +357,7 @@ Group: Development/Libraries Requires: %{name}-lib = %{version}-%{release} Requires: beecrypt-devel >= %{beecrypt_ver} Requires: bzip2-devel -%{!?with_internal_db:Requires: db-devel >= %{reqdb_ver}} +%{!?with_internal_db:Requires: %{reqdb_pkg}-devel >= %{reqdb_ver}} Requires: elfutils-devel Requires: keyutils-devel %{?with_system_libmagic:Requires: libmagic-devel} @@ -420,7 +422,7 @@ Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} Requires: beecrypt-static >= %{beecrypt_ver} Requires: bzip2-static -%{!?with_internal_db:Requires: db-static >= %{reqdb_ver}} +%{!?with_internal_db:Requires: %{reqdb_pkg}-static >= %{reqdb_ver}} Requires: elfutils-static Requires: keyutils-static %{?with_system_libmagic:Requires: libmagic-static} @@ -512,7 +514,7 @@ Summary(ru.UTF-8): Скрипты и утилиты, необходимые дл Summary(uk.UTF-8): Скрипти та утиліти, необхідні для побудови пакетів Group: Applications/File Requires(pretrans): findutils -Requires: %{name}-build-macros >= 1.514 +Requires: %{name}-tld-macros-build >= 1.744-3 Requires: %{name}-utils = %{version}-%{release} Requires: /bin/id Requires: awk @@ -524,8 +526,8 @@ Requires: elfutils Requires: file >= 4.17 Requires: fileutils Requires: findutils -# rpmrc patch adds flags specific to gcc >= 3.4 -Requires: gcc >= 5:3.4 +# rpmrc patch adds flags specific to gcc >= 4.7 +Requires: gcc >= 6:4.7.0 Requires: glibc-devel Requires: grep Requires: gzip @@ -564,24 +566,6 @@ construir pacotes usando o RPM. Різноманітні допоміжні скрипти та утиліти, які використовуються для побудови RPM'ів. -%package javaprov -Summary: Additional utilities for checking Java provides/requires in RPM packages -Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM -Group: Applications/File -Requires: %{name} = %{version}-%{release} -Requires: file -Requires: findutils >= 1:4.2.26 -Requires: mktemp -Requires: unzip - -%description javaprov -Additional utilities for checking Java provides/requires in RPM -packages. - -%description javaprov -l pl.UTF-8 -Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach -RPM. - %package perlprov Summary: Additional utilities for checking Perl provides/requires in RPM packages Summary(de.UTF-8): Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen @@ -618,21 +602,6 @@ software. Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie. -%package php-pearprov -Summary: Additional utilities for checking PHP PEAR provides/requires in RPM packages -Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM -Group: Applications/File -Requires: %{name} = %{version}-%{release} -Requires: sed >= 4.0 - -%description php-pearprov -Additional utilities for checking PHP PEAR provides/requires in RPM -packages. - -%description php-pearprov -l pl.UTF-8 -Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w -pakietach RPM. - %package -n python-rpm Summary: Python interface to RPM library Summary(pl.UTF-8): Pythonowy interfejs do biblioteki RPM-a @@ -680,10 +649,11 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %prep %setup -q +cp -p %{SOURCE15} . %patch1000 -p1 #%patch0 -p1 -%patch1 -p1 %patch2 -p1 +%patch1 -p1 %patch3 -p1 %patch4 -p1 %patch6 -p1 @@ -701,12 +671,8 @@ sed -e 's/^/@tld@/' %{SOURCE2} >>platform.in echo '%%define __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl echo '%%define __perl_requires %%{__perl} /usr/lib/rpm/perl.req' >> macros.perl echo '# obsoleted file' > macros.python -echo '%%define __php_provides /usr/lib/rpm/php.prov' > macros.php -echo '%%define __php_requires /usr/lib/rpm/php.req' >> macros.php echo '%%define __mono_provides /usr/lib/rpm/mono-find-provides' > macros.mono echo '%%define __mono_requires /usr/lib/rpm/mono-find-requires' >> macros.mono -install %{SOURCE10} scripts/php.prov -install %{SOURCE11} scripts/php.req install %{SOURCE13} scripts/perl.prov %patch21 -p1 %patch22 -p1 @@ -724,6 +690,7 @@ install %{SOURCE13} scripts/perl.prov %patch36 -p1 %patch37 -p1 %patch39 -p1 +%patch40 -p1 %patch42 -p1 %patch43 -p1 %patch82 -p1 @@ -782,6 +749,23 @@ install %{SOURCE13} scripts/perl.prov %patch102 -p1 %patch103 -p1 %patch104 -p1 +%patch105 -p1 +%patch106 -p1 +%patch107 -p1 +%patch108 -p1 +%patch109 -p1 +%patch110 -p1 +%patch111 -p1 +%patch112 -p1 +%patch113 -p1 +%patch114 -p1 +%patch115 -p1 +%patch116 -p1 +%patch117 -p1 +%patch118 -p1 +%patch119 -p1 +%patch120 -p1 +%patch121 -p1 mv -f po/{sr,sr@Latn}.po rm -rf sqlite zlib popt @@ -850,7 +834,7 @@ sed -i \ # 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="%{rpmcppflags} -I/usr/include/ossp-uuid" +CPPFLAGS="%{rpmcppflags} -I/usr/include/ossp-uuid -I/usr/include/%{reqdb_pkg}" %configure \ CC="%{__newcc}" \ CXX="%{__newcxx}" \ @@ -867,10 +851,10 @@ CPPFLAGS="%{rpmcppflags} -I/usr/include/ossp-uuid" --without-db %{__make} \ - CC="%{__newcc}" \ - CXX="%{__newcxx}" \ - CPP="%{__newcpp}" \ - libdb_la=%{_libdir}/libdb.la \ + CC="%{__cc}" \ + CXX="%{__cxx}" \ + CPP="%{__cpp}" \ + libdb_la=%{_libdir}/libdb-%(echo %{reqdb_pkg} | sed -e 's/^db//').la \ pylibdir=%{py_libdir} \ myLDFLAGS="%{rpmldflags}" \ staticLDFLAGS=%{?with_static:-all-static} @@ -882,8 +866,7 @@ install -d $RPM_BUILD_ROOT{/%{_lib},/etc/{sysconfig,tmpwatch},%{_sysconfdir}/rpm %{__make} install \ DESTDIR=$RPM_BUILD_ROOT \ staticLDFLAGS=%{?with_static:-all-static} \ - pylibdir=%{py_libdir} \ - pkgbindir="%{_bindir}" + pylibdir=%{py_libdir} cat <<'EOF' > $RPM_BUILD_ROOT/etc/tmpwatch/rpm.conf # Cleanup 90-days old repackage files. @@ -964,6 +947,9 @@ sparcv9-[^-]*-[Ll]inux(-gnu)? %ifarch sparc sparcv9 sparc64 sparc-[^-]*-[Ll]inux(-gnu)? %endif +%ifarch armv6l +armv6l-[^-]*-[Ll]inux(-gnu)? +%endif %ifarch armv5tel armv5tel-[^-]*-[Ll]inux(-gnu)? %endif @@ -994,20 +980,14 @@ 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 +cp -p %{name}.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/rpm install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname @@ -1036,6 +1016,9 @@ cat > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros < $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.lang <