- loosen up restrictions on dependency names (#455119)
- handle inter-dependent pkg-config files for requires too (#473814) - error/warn on elf binaries in noarch package in build
This commit is contained in:
parent
86a7924ceb
commit
3f11e35589
47
rpm-4.6.0-noarch-elf-check.patch
Normal file
47
rpm-4.6.0-noarch-elf-check.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
diff -up rpm-4.6.0/build/files.c.noarch-elf-check rpm-4.6.0/build/files.c
|
||||||
|
--- rpm-4.6.0/build/files.c.noarch-elf-check 2009-02-06 09:18:53.000000000 +0200
|
||||||
|
+++ rpm-4.6.0/build/files.c 2009-02-21 12:53:21.000000000 +0200
|
||||||
|
@@ -2174,17 +2174,27 @@ int processBinaryFiles(rpmSpec spec, int
|
||||||
|
check_fileList = newStringBuf();
|
||||||
|
|
||||||
|
for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) {
|
||||||
|
- const char *n, *v, *r;
|
||||||
|
+ const char *n, *v, *r, *a;
|
||||||
|
|
||||||
|
if (pkg->fileList == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
- (void) headerNVR(pkg->header, &n, &v, &r);
|
||||||
|
- rpmlog(RPMLOG_NOTICE, _("Processing files: %s-%s-%s\n"), n, v, r);
|
||||||
|
+ (void) headerNEVRA(pkg->header, &n, NULL, &v, &r, &a);
|
||||||
|
+ rpmlog(RPMLOG_NOTICE, _("Processing files: %s-%s-%s-%s\n"), n, v, r, a);
|
||||||
|
|
||||||
|
if ((rc = processPackageFiles(spec, pkg, installSpecialDoc, test)) != RPMRC_OK ||
|
||||||
|
(rc = rpmfcGenerateDepends(spec, pkg)) != RPMRC_OK)
|
||||||
|
goto exit;
|
||||||
|
+
|
||||||
|
+ if (strcmp(a, "noarch") == 0 && headerGetColor(pkg->header) != 0) {
|
||||||
|
+ int terminate = rpmExpandNumeric("%{?_binaries_in_noarch_packages_terminate_build}");
|
||||||
|
+ rpmlog(terminate ? RPMLOG_ERR : RPMLOG_WARNING,
|
||||||
|
+ _("Arch dependent binaries in noarch package\n"));
|
||||||
|
+ if (terminate) {
|
||||||
|
+ rc = RPMRC_FAIL;
|
||||||
|
+ goto exit;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Now we have in fileList list of files from all packages.
|
||||||
|
diff -up rpm-4.6.0/macros.in.noarch-elf-check rpm-4.6.0/macros.in
|
||||||
|
--- rpm-4.6.0/macros.in.noarch-elf-check 2009-02-21 12:41:20.000000000 +0200
|
||||||
|
+++ rpm-4.6.0/macros.in 2009-02-21 12:41:20.000000000 +0200
|
||||||
|
@@ -375,6 +375,9 @@ package or when debugging this package.\
|
||||||
|
# Note: The default value should be 0 for legacy compatibility.
|
||||||
|
%_missing_doc_files_terminate_build 1
|
||||||
|
|
||||||
|
+# Should binaries in noarch packages terminate a build?
|
||||||
|
+%_binaries_in_noarch_packages_terminate_build 1
|
||||||
|
+
|
||||||
|
#
|
||||||
|
# Should an ELF file processed by find-debuginfo.sh having no build ID
|
||||||
|
# terminate a build? This is left undefined to disable it and defined to
|
20
rpm-4.6.0-pkgconfig-reqs.patch
Normal file
20
rpm-4.6.0-pkgconfig-reqs.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
commit 6ce7def270994a675836e2b945a7f70eb2b03c2b
|
||||||
|
Author: Panu Matilainen <pmatilai@redhat.com>
|
||||||
|
Date: Mon Feb 2 14:17:27 2009 +0200
|
||||||
|
|
||||||
|
Prepend PKG_CONFIG_PATH on pkgconfig requires extraction too (rhbz#473814)
|
||||||
|
- similar to ab02fb183a441b6a30c863aebf49be992cd431fe but for requires
|
||||||
|
|
||||||
|
diff --git a/scripts/pkgconfigdeps.sh b/scripts/pkgconfigdeps.sh
|
||||||
|
index 6baa0f1..2251abe 100755
|
||||||
|
--- a/scripts/pkgconfigdeps.sh
|
||||||
|
+++ b/scripts/pkgconfigdeps.sh
|
||||||
|
@@ -34,6 +34,8 @@ case $1 in
|
||||||
|
*.pc)
|
||||||
|
i="`expr $i + 1`"
|
||||||
|
[ $i -eq 1 ] && echo "$pkgconfig"
|
||||||
|
+ DIR="`dirname ${filename}`"
|
||||||
|
+ export PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
|
||||||
|
$pkgconfig --print-requires "$filename" 2> /dev/null | while read n r v ; do
|
||||||
|
echo "pkgconfig($n)" "$r" "$v"
|
||||||
|
done
|
29
rpm-4.6.0-utf-dependencies.patch
Normal file
29
rpm-4.6.0-utf-dependencies.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
commit 58e92b976aebe43ebddbe2d2ec41bff0dd46b6fc
|
||||||
|
Author: Panu Matilainen <pmatilai@redhat.com>
|
||||||
|
Date: Sat Feb 21 12:11:54 2009 +0200
|
||||||
|
|
||||||
|
Loosen up restrictions on dependency token names (rhbz#455119)
|
||||||
|
- Package names aren't restricted to ascii, no point restricting
|
||||||
|
dependency names either.
|
||||||
|
- This lets UTF-8 to go through but also all sorts of other junk but
|
||||||
|
as we haven't got a clue about the specs encoding, no can do. So we
|
||||||
|
only check for bad characters from plain ascii.
|
||||||
|
|
||||||
|
diff --git a/build/parseReqs.c b/build/parseReqs.c
|
||||||
|
index 54230c7..f2130ec 100644
|
||||||
|
--- a/build/parseReqs.c
|
||||||
|
+++ b/build/parseReqs.c
|
||||||
|
@@ -100,8 +100,11 @@ rpmRC parseRCPOT(rpmSpec spec, Package pkg, const char *field, rpmTag tagN,
|
||||||
|
|
||||||
|
Flags = (tagflags & ~RPMSENSE_SENSEMASK);
|
||||||
|
|
||||||
|
- /* Tokens must begin with alphanumeric, _, or / */
|
||||||
|
- if (!(risalnum(r[0]) || r[0] == '_' || r[0] == '/')) {
|
||||||
|
+ /*
|
||||||
|
+ * Tokens must begin with alphanumeric, _, or /, but we don't know
|
||||||
|
+ * the spec's encoding so we only check what we can: plain ascii.
|
||||||
|
+ */
|
||||||
|
+ if (isascii(r[0]) && !(risalnum(r[0]) || r[0] == '_' || r[0] == '/')) {
|
||||||
|
rpmlog(RPMLOG_ERR,
|
||||||
|
_("line %d: Dependency tokens must begin with alpha-numeric, '_' or '/': %s\n"),
|
||||||
|
spec->lineNum, spec->line);
|
18
rpm.spec
18
rpm.spec
@ -18,7 +18,7 @@
|
|||||||
Summary: The RPM package management system
|
Summary: The RPM package management system
|
||||||
Name: rpm
|
Name: rpm
|
||||||
Version: %{rpmver}
|
Version: %{rpmver}
|
||||||
Release: 6%{?dist}
|
Release: 7%{?dist}
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Url: http://www.rpm.org/
|
Url: http://www.rpm.org/
|
||||||
Source0: http://rpm.org/releases/testing/%{name}-%{srcver}.tar.bz2
|
Source0: http://rpm.org/releases/testing/%{name}-%{srcver}.tar.bz2
|
||||||
@ -39,10 +39,13 @@ Patch3: rpm-4.6.0-fedora-specspo.patch
|
|||||||
Patch200: rpm-4.6.0-rc1-defaultdocdir.patch
|
Patch200: rpm-4.6.0-rc1-defaultdocdir.patch
|
||||||
Patch201: rpm-4.6.0-inherit-group.patch
|
Patch201: rpm-4.6.0-inherit-group.patch
|
||||||
Patch202: rpm-4.6.0-anyarch-actions-fix.patch
|
Patch202: rpm-4.6.0-anyarch-actions-fix.patch
|
||||||
|
Patch203: rpm-4.6.0-utf-dependencies.patch
|
||||||
|
Patch204: rpm-4.6.0-noarch-elf-check.patch
|
||||||
|
Patch205: rpm-4.6.0-pkgconfig-reqs.patch
|
||||||
|
Patch206: rpm-4.6.0-python-validate.patch
|
||||||
|
|
||||||
# These are not yet upstream
|
# These are not yet upstream
|
||||||
Patch300: rpm-4.6.0-extra-provides.patch
|
Patch300: rpm-4.6.0-extra-provides.patch
|
||||||
Patch301: rpm-4.6.0-python-validate.patch
|
|
||||||
|
|
||||||
# Partially GPL/LGPL dual-licensed and some bits with BSD
|
# Partially GPL/LGPL dual-licensed and some bits with BSD
|
||||||
# SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD
|
# SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD
|
||||||
@ -173,13 +176,15 @@ that will manipulate RPM packages and databases.
|
|||||||
%patch2 -p1 -b .gstreamer-prov
|
%patch2 -p1 -b .gstreamer-prov
|
||||||
%patch3 -p1 -b .fedora-specspo
|
%patch3 -p1 -b .fedora-specspo
|
||||||
|
|
||||||
# upstream but not on 4.6.x branch yet, oops
|
|
||||||
%patch200 -p1 -b .defaultdocdir
|
%patch200 -p1 -b .defaultdocdir
|
||||||
%patch201 -p1 -b .inherit-group
|
%patch201 -p1 -b .inherit-group
|
||||||
%patch202 -p1 -b .anyarch-actions-fix
|
%patch202 -p1 -b .anyarch-actions-fix
|
||||||
|
%patch203 -p1 -b .utf-dependencies
|
||||||
|
%patch204 -p1 -b .noarch-elf-check
|
||||||
|
%patch205 -p1 -b .pkgconfig-reqs
|
||||||
|
%patch206 -p1 -b .python-bytecompile
|
||||||
|
|
||||||
%patch300 -p1 -b .extra-prov
|
%patch300 -p1 -b .extra-prov
|
||||||
%patch301 -p1 -b .python-bytecompile
|
|
||||||
|
|
||||||
%if %{with int_bdb}
|
%if %{with int_bdb}
|
||||||
ln -s db-%{bdbver} db
|
ln -s db-%{bdbver} db
|
||||||
@ -379,6 +384,11 @@ exit 0
|
|||||||
%doc doc/librpm/html/*
|
%doc doc/librpm/html/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Feb 21 2009 Panu Matilainen <pmatilai@redhat.com> - 4.6.0-7
|
||||||
|
- loosen up restrictions on dependency names (#455119)
|
||||||
|
- handle inter-dependent pkg-config files for requires too (#473814)
|
||||||
|
- error/warn on elf binaries in noarch package in build
|
||||||
|
|
||||||
* Fri Feb 20 2009 Panu Matilainen <pmatilai@redhat.com> - 4.6.0-6
|
* Fri Feb 20 2009 Panu Matilainen <pmatilai@redhat.com> - 4.6.0-6
|
||||||
- error out on uncompilable python code (Tim Waugh)
|
- error out on uncompilable python code (Tim Waugh)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user