X-Git-Url: http://git.pld-linux.org/?p=packages%2Frpm.git;a=blobdiff_plain;f=rpm.spec;h=e5b4267a3b0e52f7296e3962cf63599e0fbe590c;hp=c94a84405c6e3f5861df39b1674af112ce7a9630;hb=e1bd88bafa68f4caa212867cba351f7887103831;hpb=b10643ac91ae601333286a815fcb3586aa66c24b diff --git a/rpm.spec b/rpm.spec index c94a844..e5b4267 100644 --- a/rpm.spec +++ b/rpm.spec @@ -12,24 +12,16 @@ %bcond_without python # don't build python bindings %bcond_without selinux # build without selinux support %bcond_without suggest_tags # build without Suggest tag (bootstrapping) +%bcond_with db61 # use DB 6.1 instead of 5.2 %bcond_with neon # build with HTTP/WebDAV support (neon library) -%bcond_without db # BerkeleyDB -%bcond_without sqlite # build with SQLite support -%bcond_with sqlite_dbapi # default database backend is sqlite +%bcond_with sqlite # build with SQLite support %bcond_with system_lua # use system lua +%bcond_without system_pcre # use system pcre %bcond_with keyutils # build with keyutils support # 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" # -%if %{with sqlite_dbapi} -%define with_sqlite 1 -%endif - -%if %{without db} && %{without sqlite} -%{error:Need db or sqlite} -ERROR -%endif %if %{with sqlite} # Error: /lib64/librpmio-5.4.so: undefined symbol: sqlite3_enable_load_extension @@ -37,10 +29,17 @@ ERROR %endif # versions of required libraries +%if %{with db61} +%define reqdb_pkg db6.1 +%define reqdb_ver 6.1 +%define reqdb_pkgver 6.1.19 +%else %define reqdb_pkg db5.2 %define reqdb_ver 5.2 +%define reqdb_pkgver 5.2.36.0-4 +%endif %define reqpopt_ver 1.15 -%define beecrypt_ver 2:4.1.2-4 +%define beecrypt_ver 2:4.2.0 %define sover 5.4 Summary: RPM Package Manager @@ -51,13 +50,13 @@ Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM Summary(ru.UTF-8): Менеджер пакетов от RPM Summary(uk.UTF-8): Менеджер пакетів від RPM Name: rpm -Version: 5.4.10 -Release: 38 -License: LGPL +Version: 5.4.15 +Release: 7 +License: LGPL v2.1 Group: Base -# http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.10-0.20120706.src.rpm +# http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.15-0.20140824.src.rpm Source0: %{name}-%{version}.tar.gz -# Source0-md5: 5d099161bdd3203265ab32ffad3360b5 +# Source0-md5: 4067f83ca8b5bf1a21e443c0cff3efa0 Source100: cpu-os-macros.tar.gz # Source100-md5: 928034a5bdceb398881bc14b5f29973b Source1: %{name}.groups @@ -80,20 +79,22 @@ Source16: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc # Source16-md5: 08b29584dd349aac9caa7610131a0a88 Source17: %{name}-mimetypedeps Source18: macros.local -Source19: rpm.noautocompressdoc -Source20: rpm.noautoprov -Source21: rpm.noautoprovfiles -Source22: rpm.noautoreq -Source23: rpm.noautoreqdep -Source24: rpm.noautoreqfiles +Source19: %{name}.noautocompressdoc +Source20: %{name}.noautoprov +Source21: %{name}.noautoprovfiles +Source22: %{name}.noautoreq +Source24: %{name}.noautoreqfiles Source25: %{name}-php-requires.php -Source26: rpmdb_checkversion.c +Source26: %{name}db_checkversion.c Source27: macros.lang -Source28: rpmdb_reset.c +Source28: %{name}db_reset.c Source29: dbupgrade.sh +Source30: rubygems.rb +Source31: gem_helper.rb Patch0: %{name}-branch.patch Patch1: %{name}-man_pl.patch Patch2: %{name}-popt-aliases.patch +Patch3: %{name}-nosetproctitle.patch Patch4: %{name}-perl-macros.patch Patch5: %{name}-perl-req-perlfile.patch Patch6: %{name}-scripts-closefds.patch @@ -116,7 +117,6 @@ Patch22: %{name}-sparc64.patch Patch23: %{name}-gendiff.patch Patch24: openmp.patch Patch25: %{name}-URPM-build-fix.patch -Patch26: %{name}-db5.3.patch Patch27: %{name}-helperEVR-noassert.patch Patch28: %{name}-unglobal.patch Patch29: %{name}-builddir-readlink.patch @@ -146,97 +146,107 @@ Patch52: %{name}-null-term-ascii-digest.patch Patch53: %{name}-lua-enable-extra-libs.patch Patch54: %{name}-fix-filedigests-verify.patch Patch55: %{name}-disable-hmac-verify.patch -Patch56: rpm-macros.patch +Patch56: %{name}-macros.patch Patch57: %{name}-db5.2.patch Patch58: %{name}-preserve-iterator.patch -Patch59: %{name}-triggerin-compat.patch Patch60: %{name}-python-sitescriptdir.patch +Patch61: %{name}-clean-docdir.patch +Patch62: %{name}-DB_CONFIG.patch +Patch63: %{name}-pythoneggs.patch +Patch64: %{name}-fix-compress-doc.patch +Patch65: %{name}-parseSpec-skip-empty-tags.patch +Patch66: %{name}-payload-use-hashed-inode.patch +Patch67: %{name}-repackage-dont-force-max-compression.patch +Patch70: python-%{name}sense-missingok.patch +Patch71: %{name}-changelog-encoding.patch +Patch72: %{name}-preserve-tag-type.patch +Patch74: %{name}-fix-internal-lua-build.patch +Patch75: %{name}-double_check_file_deps.patch +Patch77: %{name}-lua-expat.patch +Patch78: %{name}-double_check_unpackaged_subdirs.patch +Patch79: %{name}-rpmspec.patch +Patch80: %{name}-revert-gpg-argv-parsing.patch +Patch81: %{name}-perl-magic.patch +Patch82: %{name}-5.4.15-use-DSA-sig.patch +Patch83: %{name}-ignore-missing-macro-files.patch # Patches imported from Mandriva # status: ready to merge, it's already been merged on HEAD, so commiting it to rpm-5_4 # would basically just mean backporting it.. -Patch1000: rpm-5.4.4-add-_specfile-macro.patch +Patch1000: %{name}-5.4.4-add-_specfile-macro.patch # status: needs to be cleaned up and properly reviewed together with rest # of the patches related to dependency generation -Patch1001: rpm-5.4.9-avoid-dependencies-on-self.patch +Patch1001: %{name}-5.4.9-avoid-dependencies-on-self.patch # status: probably ready to merge -Patch1002: rpm-5.4.4-pkgconfigdeps-check-path.patch +Patch1002: %{name}-5.4.4-pkgconfigdeps-check-path.patch # status: probably okay to merge, but discuss on rpm-devel first -Patch1003: rpm-5.4.4-glob-wildcards-for-loading-macro-files.patch +Patch1003: %{name}-5.4.4-glob-wildcards-for-loading-macro-files.patch # status: needs to be discussed -Patch1004: rpm-5.4.4-allow-installation-of-repackaged-rpms.patch +Patch1004: %{name}-5.4.4-allow-installation-of-repackaged-rpms.patch # status: ready to merge -Patch1005: rpm-5.4.8-dont-show-suggests-with-requires.patch +Patch1005: %{name}-5.4.8-dont-show-suggests-with-requires.patch # status: ready for merge -Patch1006: rpm-5.4.9-strip-buildroot-away-from-duplicate-files-list.patch +Patch1006: %{name}-5.4.9-strip-buildroot-away-from-duplicate-files-list.patch # status: probably okay to merge, but discuss on rpm-devel first -Patch1007: rpm-5.4.10-duplicate_files_terminate_build.patch +Patch1007: %{name}-5.4.10-duplicate_files_terminate_build.patch # status: same as above -Patch1008: rpm-5.4.10-unpackaged_subdirs_terminate_build.patch +Patch1008: %{name}-5.4.10-unpackaged_subdirs_terminate_build.patch # mdvbz#64898 # status: uncertain, might be okay to merge, discuss on rpm-devel first -Patch1009: rpm-5.4.4-rpmbuild-withoutclean.patch +Patch1009: %{name}-5.4.4-rpmbuild-withoutclean.patch # no sense in having an additional dependency on 'pkgconfig' on all packages that # have a pkgconfig file, it's not needed for them to be made useful and anything # actuallly using pkgconfig for this purpose will pull it in as a dependency anyways... # status: might be okay to merge, but discuss on rpm-devel first -Patch1010: rpm-5.4.4-drop-useless-auto-generated-pkgconfig-dependency.patch +Patch1010: %{name}-5.4.4-drop-useless-auto-generated-pkgconfig-dependency.patch # status: ready for merge -Patch1011: rpm-5.4.4-fix-rpmconstant-to-always-use-LC_CTYPE-C-for-case-conversion.patch +Patch1011: %{name}-5.4.4-fix-rpmconstant-to-always-use-LC_CTYPE-C-for-case-conversion.patch # $RPM_BUILD_DIR isn't necessarily the same as $PWD, it's %%{_builddir}, not # %%{_builddir}/%%{?buildsubdir}, messing up paths in debug packages created.. # status: needs to be discussed and investigated a bit better.. -Patch1012: rpm-5.4.4-pass-_builddir-properly-to-find-debuginfo.patch +Patch1012: %{name}-5.4.4-pass-_builddir-properly-to-find-debuginfo.patch # status: probably okay to merge, but discuss on rpm-devel first -Patch1013: rpm-5.4.10-files-listed-twice-terminates-build.patch +Patch1013: %{name}-5.4.10-files-listed-twice-terminates-build.patch # status: probably okay to merge -Patch1014: rpm-5.4.9-ruby1.9-fixes.patch +Patch1014: %{name}-5.4.9-ruby1.9-fixes.patch # status: keep locally -Patch1015: rpm-5.4.9-keep-loading-script-macros.patch +Patch1015: %{name}-5.4.9-keep-loading-script-macros.patch # status: same as for other dep gen patches -Patch1016: rpm-5.4.9-update-rpmfc-when-removing-dependencies-on-self.patch +Patch1016: %{name}-5.4.9-update-rpmfc-when-removing-dependencies-on-self.patch # status: idem -Patch1017: rpm-5.4.9-rpmfc-extract-dependencies-for-all-files.patch -# status: ready for merge -Patch1018: rpm-5.4.5-rubygems-add-missing-newline.patch +Patch1017: %{name}-5.4.9-rpmfc-extract-dependencies-for-all-files.patch # status: probably okay to merge -Patch1019: rpm-5.4.5-python-export-spec-macros.patch +Patch1019: %{name}-5.4.5-python-export-spec-macros.patch # status: idem -Patch1020: rpm-5.4.9-font-provides.patch +Patch1020: %{name}-5.4.9-font-provides.patch # stauus: idem -Patch1021: rpm-5.4.7-kmod-dependencies.patch +Patch1021: %{name}-5.4.7-kmod-dependencies.patch # status: probably okay to merge, discuss on rpm-devel first -Patch1022: rpm-5.4.5-skip-dependencies-for-character-devices.patch -# status: ready to merge -Patch1023: rpm-5.4.5-rpmfc-use-strlen-not-sizeof.patch +Patch1022: %{name}-5.4.5-skip-dependencies-for-character-devices.patch # status: probably okay to merge -Patch1024: rpm-5.4.5-rpmfc-apply-python-coloring-from-magic.patch -# status: ready to merge -Patch1025: rpm-5.4.7-rpmfc-fix-invalid-free-if-not-_defaultdocdir-set.patch +Patch1024: %{name}-5.4.5-rpmfc-apply-python-coloring-from-magic.patch # status: probably okay to merge -Patch1026: rpm-5.4.10-dont-try-generate-rpmfc-dependencies-from-doc-files.patch +Patch1026: %{name}-5.4.10-dont-try-generate-rpmfc-dependencies-from-doc-files.patch # status: ready -Patch1027: rpm-5.4.7-fix-generation-of-ruby-abi-provides.patch +Patch1027: %{name}-5.4.7-fix-generation-of-ruby-abi-provides.patch # crash reproducable with 'rpm -qa --triggers' # status: ready -Patch1028: rpm-5.4.7-hdrfmt-fix-unitialized-argv-element.patch +Patch1028: %{name}-5.4.7-hdrfmt-fix-unitialized-argv-element.patch # status: same as for other dep gen patches -Patch1029: rpm-5.4.7-dont-consider-trigger-dependencies-as-overlapping.patch +Patch1029: %{name}-5.4.7-dont-consider-trigger-dependencies-as-overlapping.patch # status: ready -Patch1030: rpm-5.4.7-fix-minor-memleaks.patch +Patch1030: %{name}-5.4.7-fix-minor-memleaks.patch # status: ready -Patch1031: rpm-5.4.9-mire-fix-strings-lacking-null-terminator.patch +Patch1031: %{name}-5.4.9-mire-fix-strings-lacking-null-terminator.patch # status: ready -Patch1032: rpm-5.4.9-rpmpython-fix-input.patch +Patch1032: %{name}-5.4.9-rpmpython-fix-input.patch # status: ready -Patch1033: rpm-5.4.7-no-seqid_init-on-rdonly-database.patch +Patch1033: %{name}-5.4.7-no-seqid_init-on-rdonly-database.patch # status: probably ready for merging -Patch1034: rpm-5.4.9-avoid-double-slash-in-path-for-dirname-filetrigger-matching.patch +Patch1034: %{name}-5.4.9-avoid-double-slash-in-path-for-dirname-filetrigger-matching.patch # status: probably ready to merge, discuss on rpm-devel first -Patch1035: rpm-5.4.9-fix-verify-segfault.patch -# status: ready and should be merged -Patch1036: rpm-5.4.9-fix-typo-in-rpmtag-header.patch +Patch1035: %{name}-5.4.9-fix-verify-segfault.patch # Due to rpmdav/neon being written in a different fashion than other rpmio clients, # the inconsistent behaviour affects code elsewhere which expects consistent behaviour, # with the result being that when unable to download files, neon will save error @@ -245,39 +255,58 @@ Patch1036: rpm-5.4.9-fix-typo-in-rpmtag-header.patch # more of a workaround, while rewriting rpmdav code to behave consistently # would be "the right thing to do". Yet I'm not fully able to grasp all of the # code and don't want to spend more time just to get the API.. -Patch1037: rpm-5.4.10-fix-neon-saving-error-pages-as-target-file.patch +Patch1037: %{name}-5.4.10-fix-neon-saving-error-pages-as-target-file.patch # As the transaction flags for ignoring arch & os are no longer used, there's # currently no way to ignore arch & os of packages anymore. This patch adds # support for doing this again by defining rpm variables and overriding # --ignorearch & --ignoreos to set these. # status: needs to be discussed upstream before thinking about merging -Patch1038: rpm-5.4.10-support-ignore-arch-and-os-again.patch +Patch1038: %{name}-5.4.10-support-ignore-arch-and-os-again.patch # status: ready for merge -Patch1039: rpm-5.4.4-fix-same-package-with-epoch-possible-to-upgrade.patch +Patch1039: %{name}-5.4.4-fix-same-package-with-epoch-possible-to-upgrade.patch # we want that patch too, a bit of builder infrastructure relies on NOSIGNATURES -Patch1040: rpm-5.4.9-support-signatures-and-digest-disablers.patch +Patch1040: %{name}-5.4.9-support-signatures-and-digest-disablers.patch # lack insight on actual functionality, which anyways seems broken, so let's # disable it to avoid errors from berkeley db.. # status: keep locally -Patch1041: rpm-5.4.9-disable-l10ndir.patch +Patch1041: %{name}-5.4.9-disable-l10ndir.patch # status: ready for merge -Patch1042: rpm-5.4.9-fix-rpm_qa-pattern.patch +Patch1042: %{name}-5.4.9-fix-rpm_qa-pattern.patch +# warning: introduces memory leak +Patch1043: %{name}-5.4.12-copy-Value-string.patch +Patch1044: %{name}-5.4.12-fix-rpmlua-print.patch +Patch1045: %{name}-5.4.12-fix-rpmpython-module-import-init.patch +Patch1046: %{name}-5.4.12-truncate-output-buffer-after-use.patch +Patch1047: %{name}-5.4.13-perl-bindings-do-not-use-xmalloc.patch +# proyvind: +# there's a rpmdbchk tool I wrote a while back, which might help you. although +# the incidents it's able to deal with is rather limited ATM... it might help +# you out, if not and you'll be able to solve yer problem, you could take a +# stab at adding support for fixing your specific problem to the util ;) +# https://abf.io/openmandriva/rpm/raw/master/rpm-5.4.14-rpmdbchk.patch +Patch1048: %{name}-5.4.14-rpmdbchk.patch +# https://abf.io/openmandriva/rpm/raw/master/rpm-5.4.14-no-assert-abort-with-broken-headers.patch +Patch1049: %{name}-5.4.14-no-assert-abort-with-broken-headers.patch URL: http://rpm5.org/ -BuildRequires: autoconf >= 2.60 +BuildRequires: %{reqdb_pkg}-devel >= %{reqdb_pkgver} +%if %{with sqlite} +BuildRequires: sqlite3-devel +%else +BuildRequires: %{reqdb_pkg}-sql-devel >= %{reqdb_pkgver} +%endif +BuildRequires: autoconf >= 2.63 BuildRequires: automake >= 1.4 BuildRequires: beecrypt-devel >= %{beecrypt_ver} BuildRequires: bzip2-devel >= 1.0.2-17 -%{?with_db:BuildRequires: %{reqdb_pkg}-devel >= %{reqdb_ver}} BuildRequires: elfutils-devel >= 0.108 -#BuildRequires: gettext-autopoint >= 0.11.4-2 -BuildRequires: gettext-devel >= 0.11.4-2 +BuildRequires: gettext-tools >= 0.19.2 %{?with_keyutils:BuildRequires: keyutils-devel} BuildRequires: libmagic-devel %if %{with selinux} BuildRequires: libselinux-devel >= 2.1.0 -BuildRequires: libsepol-devel >= 2.1.0 BuildRequires: libsemanage-devel >= 2.1.0 +BuildRequires: libsepol-devel >= 2.1.0 %endif # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros BuildRequires: libstdc++-devel @@ -286,17 +315,16 @@ BuildRequires: libtool >= 1:1.4.2-9 BuildRequires: libxml2-devel BuildRequires: neon-devel >= 0.25.5 %endif +%{?with_system_lua:BuildRequires: lua52-devel >= 5.2.2} BuildRequires: ossp-uuid-devel BuildRequires: patch >= 2.2 BuildRequires: popt-devel >= %{reqpopt_ver} -%{?with_system_lua:BuildRequires: lua51-devel >= 5.1.2} %{?with_python:BuildRequires: python-devel >= 1:2.3} BuildRequires: python-modules >= 1:2.3 %{?with_python:BuildRequires: rpm-pythonprov} -%{?with_sqlite:BuildRequires: sqlite3-devel} BuildRequires: tcl -BuildRequires: zlib-devel BuildRequires: xz-devel +BuildRequires: zlib-devel %if %{with apidocs} BuildRequires: doxygen BuildRequires: ghostscript @@ -305,16 +333,16 @@ BuildRequires: tetex-pdftex %endif %if %{with static} # Require static library only for static build +BuildRequires: %{reqdb_pkg}-static >= %{reqdb_pkgver} BuildRequires: beecrypt-static >= %{beecrypt_ver} BuildRequires: bzip2-static >= 1.0.2-17 -%{?with_db:BuildRequires: %{reqdb_pkg}-static >= %{reqdb_ver}} BuildRequires: elfutils-static BuildRequires: glibc-static >= 2.2.94 BuildRequires: libmagic-static %if %{with selinux} BuildRequires: libselinux-static >= 2.1.0 -BuildRequires: libsepol-static >= 2.1.0 BuildRequires: libsemanage-static >= 2.1.0 +BuildRequires: libsepol-static >= 2.1.0 %endif BuildRequires: popt-static >= %{reqpopt_ver} BuildRequires: zlib-static @@ -426,12 +454,16 @@ Zawiera on: Summary: RPMs library Summary(pl.UTF-8): Biblioteki RPM-a Group: Libraries +Requires: %{reqdb_pkg} >= %{reqdb_pkgver} +%if %{with sqlite} +Requires: sqlite3 >= %{sqlite_build_version} +%else +Requires: %{reqdb_pkg}-sql >= %{reqdb_pkgver} +%endif Requires: beecrypt >= %{beecrypt_ver} -%{?with_db:Requires: %{reqdb_pkg} >= %{reqdb_ver}} Requires: libmagic >= 1.15-2 %{?with_selinux:Requires: libselinux >= 2.1.0} Requires: popt >= %{reqpopt_ver} -%{?with_sqlite:Requires: sqlite3 >= %{sqlite_build_version}} Obsoletes: rpm-libs # avoid SEGV caused by mixed db versions Conflicts: poldek < 0.18.1-16 @@ -452,13 +484,17 @@ Summary(ru.UTF-8): Хедеры и библиотеки для программ, Summary(uk.UTF-8): Хедери та бібліотеки для програм, що працюють з пакетами rpm Group: Development/Libraries Requires: %{name}-lib = %{version}-%{release} +Requires: %{reqdb_pkg}-devel >= %{reqdb_pkgver} Requires: beecrypt-devel >= %{beecrypt_ver} Requires: bzip2-devel -%{?with_db:Requires: %{reqdb_pkg}-devel >= %{reqdb_ver}} Requires: elfutils-devel %{?with_keyutils:Requires: keyutils-devel} Requires: libmagic-devel -%{?with_selinux:Requires: libselinux-devel} +%if %{with selinux} +Requires: libselinux-devel +Requires: libsemanage-devel +Requires: libsepol-devel +%endif Requires: popt-devel >= %{reqpopt_ver} Requires: zlib-devel @@ -516,12 +552,17 @@ Summary(ru.UTF-8): Статическая библиотека для прогр Summary(uk.UTF-8): Статична бібліотека для програм, що працюють з пакетами rpm Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} +Requires: %{reqdb_pkg}-static >= %{reqdb_pkgver} Requires: beecrypt-static >= %{beecrypt_ver} Requires: bzip2-static -%{?with_db:Requires: %{reqdb_pkg}-static >= %{reqdb_ver}} Requires: elfutils-static %{?with_keyutils:Requires: keyutils-static} Requires: libmagic-static +%if %{with selinux} +Requires: libselinux-static +Requires: libsemanage-static +Requires: libsepol-static +%endif Requires: popt-static >= %{reqpopt_ver} Requires: zlib-static @@ -613,8 +654,9 @@ Summary(pt_BR.UTF-8): Scripts e programas executáveis usados para construir pac Summary(ru.UTF-8): Скрипты и утилиты, необходимые для сборки пакетов Summary(uk.UTF-8): Скрипти та утиліти, необхідні для побудови пакетів Group: Applications/File -Requires(pre): findutils -Requires: %{name}-build-macros >= 1.653 +Requires(pretrans): coreutils +Requires(pretrans): findutils +Requires: %{name}-build-macros >= 1.699 Requires: %{name}-utils = %{version}-%{release} Requires: /bin/id Requires: awk @@ -640,6 +682,7 @@ Requires: sed >= 4.0 Requires: sh-utils Requires: tar >= 1:1.22 Requires: textutils +Requires: which Requires: xz Provides: rpmbuild(monoautodeps) Provides: rpmbuild(noauto) = 3 @@ -693,6 +736,7 @@ Summary(de.UTF-8): Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-P Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM Group: Applications/File Requires: %{name} = %{version}-%{release} +Requires: perl-Encode Requires: perl-devel Requires: perl-modules @@ -713,8 +757,8 @@ Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napi Group: Applications/File Requires: %{name} = %{version}-%{release} Requires: python -Requires: python-modules Requires: python-distribute +Requires: python-modules %description pythonprov Python macros, which simplifies creation of RPM packages with Python @@ -730,6 +774,7 @@ Summary(pl.UTF-8): Dodatkowe narzędzia do sprawdzania zależności skryptów ph Group: Applications/File Requires: %{name} = %{version}-%{release} Requires: sed >= 4.0 +Suggests: php-pear-PHP_CompatInfo %description php-pearprov Additional utilities for checking PHP PEAR provides/requires in RPM @@ -739,13 +784,30 @@ packages. Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w pakietach RPM. +%package rubyprov +Summary: Ruby tools, which simplify creation of RPM packages with Ruby software +Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Ruby +Group: Applications/File +Requires: %{name} = %{version}-%{release} +Requires: ruby +Requires: ruby-modules +Requires: ruby-rubygems + +%description rubyprov +Ruby tools, which simplifies creation of RPM packages with Ruby +software. + +%description rubyprov -l pl.UTF-8 +Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w +Ruby. + %package -n python-rpm Summary: Python interface to RPM library Summary(pl.UTF-8): Pythonowy interfejs do biblioteki RPM-a Summary(pt_BR.UTF-8): Módulo Python para aplicativos que manipulam pacotes RPM Group: Development/Languages/Python Requires: %{name} = %{version}-%{release} -%pyrequires_eq python +Requires: python Obsoletes: rpm-python %description -n python-rpm @@ -775,6 +837,9 @@ Python para manipular pacotes e bancos de dados RPM. Summary: RPM API documentation and guides Summary(pl.UTF-8): Documentacja API RPM-a i przewodniki Group: Documentation +%if "%{_rpmversion}" >= "5" +BuildArch: noarch +%endif %description apidocs Documentation for RPM API and guides in HTML format generated from rpm @@ -789,6 +854,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze #patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 @@ -816,7 +882,6 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch23 -p1 %patch24 -p1 %patch25 -p1 -####%patch26 -p1 %patch27 -p1 %patch28 -p1 %patch29 -p1 @@ -831,7 +896,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch38 -p1 %patch39 -p1 %patch40 -p1 -####%patch41 -p1 +%{?with_db61:%patch41 -p1} %patch42 -p1 %patch43 -p1 %patch44 -p1 @@ -847,10 +912,27 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch54 -p1 %patch55 -p1 %patch56 -p1 -%patch57 -p1 +%{!?with_db61:%patch57 -p1} %patch58 -p1 -%patch59 -p1 %patch60 -p1 +%patch61 -p1 +%patch62 -p1 +%patch63 -p1 +%patch64 -p1 +%patch65 -p1 +%patch66 -p1 +%patch67 -p1 +%patch70 -p1 +%patch71 -p1 +%patch72 -p1 +%patch74 -p1 +%patch75 -p1 +%patch77 -p0 +%patch78 -p1 +%patch79 -p1 +%patch80 -p1 +%patch81 -p0 +%patch82 -p1 %patch1000 -p1 %patch1001 -p1 @@ -870,14 +952,11 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch1015 -p1 %patch1016 -p1 %patch1017 -p1 -%patch1018 -p1 %patch1019 -p1 %patch1020 -p1 %patch1021 -p1 %patch1022 -p1 -%patch1023 -p1 %patch1024 -p1 -%patch1025 -p1 %patch1026 -p1 %patch1027 -p1 %patch1028 -p1 @@ -888,18 +967,29 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch1033 -p1 %patch1034 -p1 %patch1035 -p1 -%patch1036 -p1 %patch1037 -p1 %patch1038 -p1 %patch1039 -p1 %patch1040 -p1 -%patch1041 -p1 +# don't delete, may be usefull if jbj descides to enable this again +#%patch1041 -p1 %patch1042 -p1 +%patch1043 -p1 +%patch1044 -p1 +%patch1045 -p1 +%patch1046 -p1 +%patch1047 -p1 +%patch1048 -p1 +%patch1049 -p1 + +%patch83 -p1 install %{SOURCE2} macros/pld.in install %{SOURCE8} scripts/php.prov.in install %{SOURCE9} scripts/php.req.in install %{SOURCE11} scripts/perl.prov.in +cp -p %{SOURCE30} scripts/rubygems.rb +cp -p %{SOURCE31} scripts/gem_helper.rb %{__mv} -f scripts/perl.req{,.in} @@ -909,6 +999,10 @@ awk -f %{SOURCE6} %{SOURCE1} install %{SOURCE26} tools/rpmdb_checkversion.c install %{SOURCE28} tools/rpmdb_reset.c +for extlib in beecrypt neon %{?with_system_pcre:pcre} popt; do + [ -d $extlib ] && %{__rm} -r $extlib +done + %build %{__libtoolize} #%{__autopoint} @@ -932,34 +1026,35 @@ sed -i \ CPP="%{__newcpp}" \ WITH_PERL_VERSION=no \ __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \ + --disable-silent-rules \ --enable-shared \ --enable-static \ %{!?with_apidocs:--without-apidocs} \ - %{?with_python:--with-python=%{py_ver} --with-python-lib-dir=%{py_sitedir}} \ - %{!?with_python:--without-python} \ - --with-selinux=%{!?with_selinux:no}%{?with_selinux:external} \ - --with-sepol=%{!?with_selinux:not}%{?with_selinux:external} \ - --with-semanage=%{!?with_selinux:no}%{?with_selinux:external} \ - --with-libelf \ - --with-zlib=external \ - --with-bzip2=external \ --with-beecrypt=external \ + --with-bugreport="http://bugs.pld-linux.org/" \ + --with-bzip2=external \ + --with-db=external \ + --with-dbapi=db \ + --with-file=external \ + --with-keyutils=%{?with_keyutils:external}%{!?with_keyutils:no} \ + --with-libelf \ + --with-lua=%{!?with_system_lua:internal}%{?with_system_lua:external} \ --with-lzma=external \ - --with-xz=external \ --with-neon=%{?with_neon:external}%{!?with_neon:no} \ - --with-file=external \ + --with-path-macros='%{_rpmlibdir}/macros:%{_rpmlibdir}/%%{_target}/macros:%{_rpmlibdir}/macros.d/pld:%{_rpmlibdir}/macros.build:%{_sysconfdir}/rpm/macros.*:%{_sysconfdir}/rpm/macros:%{_sysconfdir}/rpm/%%{_target}/macros:%{_sysconfdir}/rpm/macros.d/*.macros:~/etc/.rpmmacros:~/.rpmmacros' \ + --without-path-versioned \ + --with-pcre=%{!?with_system_pcre:internal}%{?with_system_pcre:external} \ --with-popt=external \ - --with-db=%{?with_db:external}%{!?with_db:no} \ + %{?with_python:--with-python=%{py_ver} --with-python-lib-dir=%{py_sitedir}} \ + %{!?with_python:--without-python} \ + --with-selinux=%{!?with_selinux:no}%{?with_selinux:external} \ + --with-semanage=%{!?with_selinux:no}%{?with_selinux:external} \ + --with-sepol=%{!?with_selinux:no}%{?with_selinux:external} \ --with-sqlite=%{?with_sqlite:yes}%{!?with_sqlite:no} \ - --with-dbapi=%{!?with_sqlite_dbapi:db}%{?with_sqlite_dbapi:sqlite} \ - --with-lua=%{!?with_system_lua:internal}%{?with_system_lua:external} \ - --with-pcre=external \ - --with-keyutils=%{?with_keyutils:external}%{!?with_keyutils:no} \ --with-uuid=%{_libdir}:%{_includedir}/ossp-uuid \ - --without-path-versioned \ - --with-path-macros='%{_rpmlibdir}/macros:%{_rpmlibdir}/%{_target}/macros:%{_rpmlibdir}/macros.d/pld:%{_rpmlibdir}/macros.build:%{_sysconfdir}/rpm/macros.*:%{_sysconfdir}/rpm/macros:%{_sysconfdir}/rpm/%{_target}/macros:%{_sysconfdir}/rpm/macros.d/*.macros:~/etc/.rpmmacros:~/.rpmmacros' \ - --with-bugreport="http://bugs.pld-linux.org/" \ - --with-vendor=pld + --with-vendor=pld \ + --with-xz=external \ + --with-zlib=external %{__make} -j1 \ CC="%{__cc}" \ @@ -989,7 +1084,7 @@ install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm} \ install %{SOURCE16} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc -%{__make} install \ +%{__make} -j1 install \ pkgconfigdir=%{_pkgconfigdir} \ DESTDIR=$RPM_BUILD_ROOT @@ -1024,7 +1119,6 @@ cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform # first platform file entry can't contain regexps %{_target_cpu}-%{_target_vendor}-linux -# x86_64 things %ifarch x86_64 x86_64-[^-]*-[Ll]inux(-gnu)? amd64-[^-]*-[Ll]inux(-gnu)? @@ -1038,7 +1132,6 @@ ia32e-[^-]*-[Ll]inux(-gnu)? x86_64-[^-]*-[Ll]inux(-gnu)? %endif -# x86 things %ifarch athlon %{x8664} athlon-[^-]*-[Ll]inux(-gnu)? %endif @@ -1098,14 +1191,20 @@ sparcv9-[^-]*-[Ll]inux(-gnu)? sparc-[^-]*-[Ll]inux(-gnu)? %endif -# noarch noarch-[^-]*-.* EOF -rm $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides* -rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl -rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl -rm $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh +# Squash Extra Blank Lines +%{__sed} -i -e '/./,/^$/!d' $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform + +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/vpkg-provides* +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/find-{prov,req}.pl +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/find-{provides,requires}.perl +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/lib/liblua.a +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/lib/liblua.la +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/mono-find-provides +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/mono-find-requires # not installed since 4.4.8 (-tools-perl subpackage) install scripts/rpmdiff scripts/rpmdiff.cgi $RPM_BUILD_ROOT%{_rpmlibdir} @@ -1133,7 +1232,6 @@ install %{SOURCE19} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc install %{SOURCE20} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov install %{SOURCE21} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles install %{SOURCE22} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq -install %{SOURCE23} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqdep install %{SOURCE24} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname @@ -1152,6 +1250,9 @@ for m in gstreamer java mono perl php python; do echo "%%{load:%{_rpmlibdir}/macros.d/$m}" >$RPM_BUILD_ROOT%{_rpmlibdir}/macros.$m done +# moved to rpm-build-macros 1.699 +%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/macros.d/kernel + # for rpm -e|-U --repackage install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm} touch $RPM_BUILD_ROOT/var/lock/rpm/transaction @@ -1167,15 +1268,15 @@ done # Bourne shell script vs ELF executable linked with rpm,rpmdb,rpmio mv $RPM_BUILD_ROOT{%{_rpmlibdir},%{_bindir}}/rpm2cpio +%if %{with python} %py_ocomp $RPM_BUILD_ROOT%{py_sitedir} %py_comp $RPM_BUILD_ROOT%{py_sitedir} %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/rpm/*.{la,a,py} +%endif # wrong location, not used anyway %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/rpm.{daily,log,xinetd} -# utils dropped in 4.4.8 -- their manuals -%{__rm} $RPM_BUILD_ROOT%{_mandir}/*/man8/rpmgraph.8 # utils dropped in 5.4 -- their manuals %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/rpmgrep.1 # script obsoleted by /usr/lib/rpm/bin/dbconvert binary @@ -1227,8 +1328,8 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %defattr(644,root,root,755) %doc CHANGES CREDITS README pubkeys/JBJ-GPG-KEY manual/* -%dir %{_sysconfdir}/pki/rpm-gpg -%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc +%dir /etc/pki/rpm-gpg +/etc/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc %attr(755,root,root) /bin/rpm @@ -1242,7 +1343,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %{_mandir}/man8/rpm.8* %lang(fr) %{_mandir}/fr/man8/rpm.8* %lang(ja) %{_mandir}/ja/man8/rpm.8* -%lang(ko) %{_mandir}/ko/man8/rpm.8* %lang(pl) %{_mandir}/pl/man8/rpm.8* %lang(ru) %{_mandir}/ru/man8/rpm.8* %lang(sk) %{_mandir}/sk/man8/rpm.8* @@ -1265,6 +1365,32 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %dir %{_rpmlibdir}/macros.d %{_rpmlibdir}/macros.d/pld %{_rpmlibdir}/cpuinfo.yaml +%{_rpmlibdir}/noarch-* +%ifarch %{ix86} +%{_rpmlibdir}/i?86* +%{_rpmlibdir}/pentium* +%{_rpmlibdir}/athlon* +%endif +%ifarch alpha +%{_rpmlibdir}/alpha* +%endif +%ifarch ia64 +%{_rpmlibdir}/ia64* +%endif +%ifarch mips mipsel mips64 mips64el +%{_rpmlibdir}/mips* +%endif +%ifarch %{ppc} +%{_rpmlibdir}/ppc* +%endif +%ifarch sparc sparc64 +%{_rpmlibdir}/sparc* +%endif +%ifarch %{x8664} +%{_rpmlibdir}/amd64* +%{_rpmlibdir}/ia32e* +%{_rpmlibdir}/x86_64* +%endif %attr(755,root,root) %{_rpmlibdir}/hrmib-cache @@ -1273,6 +1399,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_rpmlibdir}/bin/dbupgrade.sh %attr(755,root,root) %{_rpmlibdir}/bin/rpmdb_checkversion %attr(755,root,root) %{_rpmlibdir}/bin/rpmdb_reset +%attr(755,root,root) %{_rpmlibdir}/bin/rpmdbchk %files base %defattr(644,root,root,755) @@ -1280,7 +1407,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rpm %dir %{_rpmlibdir} %attr(755,root,root) %{_bindir}/banner.sh -%attr(755,root,root) %{_bindir}/multiarch-dispatch %attr(755,root,root) %{_rpmlibdir}/user_group.sh %dir /var/lib/banner @@ -1309,7 +1435,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_libdir}/librpmmisc-%{sover}.so %{_libdir}/librpm*.la %{_includedir}/rpm -%{_includedir}/multiarch-dispatch.h %{_pkgconfigdir}/*.pc %files static @@ -1346,15 +1471,11 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %{?with_keyutils:%attr(755,root,root) %{_rpmlibdir}/bin/rpmkey} %attr(755,root,root) %{_rpmlibdir}/bin/rpmrepo %{_mandir}/man8/rpm2cpio.8* -%{_mandir}/man8/rpmcache.8* %{_mandir}/man8/rpmconstant.8* %{_mandir}/man8/rpmdeps.8* %{_mandir}/man8/rpmmtree.8* %lang(ja) %{_mandir}/ja/man8/rpm2cpio.8* -%lang(ja) %{_mandir}/ja/man8/rpmcache.8* -%lang(ko) %{_mandir}/ko/man8/rpm2cpio.8* %lang(pl) %{_mandir}/pl/man8/rpm2cpio.8* -%lang(pl) %{_mandir}/pl/man8/rpmcache.8* %lang(pl) %{_mandir}/pl/man8/rpmdeps.8* %lang(ru) %{_mandir}/ru/man8/rpm2cpio.8* @@ -1387,39 +1508,15 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh %attr(755,root,root) %{_rpmlibdir}/bin/api-sanity-autotest.pl %attr(755,root,root) %{_rpmlibdir}/bin/api-sanity-checker.pl +%{!?with_sqlite:%attr(755,root,root) %{_rpmlibdir}/bin/dbsql} %attr(755,root,root) %{_rpmlibdir}/bin/install-sh %attr(755,root,root) %{_rpmlibdir}/bin/mkinstalldirs %attr(755,root,root) %{_rpmlibdir}/bin/pom2spec +%attr(755,root,root) %{_rpmlibdir}/bin/rpmspec %attr(755,root,root) %{_rpmlibdir}/bin/rpmspecdump %attr(755,root,root) %{_rpmlibdir}/bin/sqlite3 %attr(755,root,root) %{_rpmlibdir}/bin/wget %attr(755,root,root) %{_rpmlibdir}/vcheck -%{_rpmlibdir}/noarch-* -%ifarch %{ix86} -%{_rpmlibdir}/i?86* -%{_rpmlibdir}/pentium* -%{_rpmlibdir}/athlon* -%endif -%ifarch alpha -%{_rpmlibdir}/alpha* -%endif -%ifarch ia64 -%{_rpmlibdir}/ia64* -%endif -%ifarch mips mipsel mips64 mips64el -%{_rpmlibdir}/mips* -%endif -%ifarch %{ppc} -%{_rpmlibdir}/ppc* -%endif -%ifarch sparc sparc64 -%{_rpmlibdir}/sparc* -%endif -%ifarch %{x8664} -%{_rpmlibdir}/amd64* -%{_rpmlibdir}/ia32e* -%{_rpmlibdir}/x86_64* -%endif # not used yet ... these six depend on perl %attr(755,root,root) %{_rpmlibdir}/http.req # we always used scripts provided by mono-devel, maybe move them here @@ -1431,7 +1528,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %{_rpmlibdir}/macros.d/cmake %{_rpmlibdir}/macros.d/gstreamer %{_rpmlibdir}/macros.d/java -%{_rpmlibdir}/macros.d/kernel %{_rpmlibdir}/macros.d/libtool %{_rpmlibdir}/macros.d/mono %{_rpmlibdir}/macros.d/perl @@ -1450,15 +1546,10 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %{_rpmlibdir}/macros.php %{_rpmlibdir}/macros.python -%attr(755,root,root) %{_rpmlibdir}/check-multiarch-files -%attr(755,root,root) %{_rpmlibdir}/gem_helper.rb %attr(755,root,root) %{_rpmlibdir}/gstreamer.sh %attr(755,root,root) %{_rpmlibdir}/kmod-deps.sh -%attr(755,root,root) %{_rpmlibdir}/mkmultiarch -%attr(755,root,root) %{_rpmlibdir}/rubygems.rb %attr(755,root,root) %{_bindir}/gendiff -%attr(755,root,root) %{_bindir}/multiarch-platform %attr(755,root,root) %{_bindir}/rpmbuild %dir %{_rpmlibdir}/helpers @@ -1476,6 +1567,11 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f # needs jar (any jdk), jcf-dump (gcc-java) to work %attr(755,root,root) %{_rpmlibdir}/javadeps.sh +%files rubyprov +%defattr(644,root,root,755) +%attr(755,root,root) %{_rpmlibdir}/gem_helper.rb +%attr(755,root,root) %{_rpmlibdir}/rubygems.rb + %files perlprov %defattr(644,root,root,755) %attr(755,root,root) %{_rpmlibdir}/perl.*