- update to 4.11.2
- drop/adjust patches as appropriate
This commit is contained in:
parent
597e221b9f
commit
cfbeab79dc
1
.gitignore
vendored
1
.gitignore
vendored
@ -8,3 +8,4 @@
|
||||
/rpm-4.11.0-beta1.tar.bz2
|
||||
/rpm-4.11.0.1.tar.bz2
|
||||
/rpm-4.11.1.tar.bz2
|
||||
/rpm-4.11.2.tar.bz2
|
||||
|
@ -1,19 +0,0 @@
|
||||
commit 65eec62cb7796dad6fbf1d5436251e176449f522
|
||||
Author: Panu Matilainen <pmatilai@redhat.com>
|
||||
Date: Thu Aug 29 16:32:32 2013 +0300
|
||||
|
||||
Fix double-free on %caps() wildcard %files entry (RhBug:956190)
|
||||
|
||||
diff --git a/build/files.c b/build/files.c
|
||||
index 20f452f..eed5696 100644
|
||||
--- a/build/files.c
|
||||
+++ b/build/files.c
|
||||
@@ -1448,7 +1448,7 @@ static rpmRC addFile(FileList fl, const char * diskPath,
|
||||
}
|
||||
|
||||
if (fl->cur.caps) {
|
||||
- flp->caps = fl->cur.caps;
|
||||
+ flp->caps = xstrdup(fl->cur.caps);
|
||||
} else {
|
||||
flp->caps = xstrdup("");
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
commit 5f3598a700e8e028f9140682262869ca319597ee
|
||||
Author: Panu Matilainen <pmatilai@redhat.com>
|
||||
Date: Fri Sep 6 16:31:25 2013 +0300
|
||||
|
||||
Fix segfault executing a -p <lua> scriptlet without a body (RhBug:1004062)
|
||||
|
||||
- There are any number of places where this could be fixed, but
|
||||
to keep the behavior similar to eg /bin/sh scriptlet without a body,
|
||||
just turn a non-existent script into an empty string.
|
||||
|
||||
diff --git a/rpmio/rpmlua.c b/rpmio/rpmlua.c
|
||||
index 0576318..921cc37 100644
|
||||
--- a/rpmio/rpmlua.c
|
||||
+++ b/rpmio/rpmlua.c
|
||||
@@ -526,6 +526,8 @@ int rpmluaRunScript(rpmlua _lua, const char *script, const char *name)
|
||||
int ret = 0;
|
||||
if (name == NULL)
|
||||
name = "<lua>";
|
||||
+ if (script == NULL)
|
||||
+ script = "";
|
||||
if (luaL_loadbuffer(L, script, strlen(script), name) != 0) {
|
||||
rpmlog(RPMLOG_ERR, _("invalid syntax in lua script: %s\n"),
|
||||
lua_tostring(L, -1));
|
@ -1,27 +0,0 @@
|
||||
commit 65c7cc17664358051f0358de272e616dd88ab624
|
||||
Author: Panu Matilainen <pmatilai@redhat.com>
|
||||
Date: Tue Aug 27 15:15:40 2013 +0300
|
||||
|
||||
Relax the filename triplet sanity check a bit (RhBug:1001553)
|
||||
|
||||
- At least unowned directories can cause orphans to be left around
|
||||
in RPMTAG_DIRNAMES, in which case its possible for number of
|
||||
dirnames to be larger than the number of basenames. This is
|
||||
arguably a bug in the relocation code but doesn't seem worth
|
||||
the trouble... so just relax the check to simply permit non-empty
|
||||
dirnames array, the index bound checking is far more important.
|
||||
|
||||
diff --git a/lib/rpmfi.c b/lib/rpmfi.c
|
||||
index 30663d0..00506ce 100644
|
||||
--- a/lib/rpmfi.c
|
||||
+++ b/lib/rpmfi.c
|
||||
@@ -1128,7 +1128,8 @@ static int indexSane(rpmtd xd, rpmtd yd, rpmtd zd)
|
||||
uint32_t zc = rpmtdCount(zd);
|
||||
|
||||
/* check that the amount of data in each is sane */
|
||||
- if (xc > 0 && yc > 0 && yc <= xc && zc == xc) {
|
||||
+ /* normally yc <= xc but larger values are not fatal (RhBug:1001553) */
|
||||
+ if (xc > 0 && yc > 0 && zc == xc) {
|
||||
uint32_t * i;
|
||||
/* ...and that the indexes are within bounds */
|
||||
while ((i = rpmtdNextUint32(zd))) {
|
@ -1,55 +0,0 @@
|
||||
commit 1ac9e84d9a4a04df7c8f659a8df676fc4f8544f0
|
||||
Author: Panu Matilainen <pmatilai@redhat.com>
|
||||
Date: Fri Jul 5 10:27:18 2013 +0300
|
||||
|
||||
Ensure relocatable packages always get install-prefix(es) set (RhBug:979443)
|
||||
|
||||
- Scriptlets from relocatable packages should always run with
|
||||
$RPM_INSTALL_PREFIX* defined, whether actually being relocated or not.
|
||||
- Fixes regression introduced by the optimization in commit
|
||||
5d3018c4ed476b1b7ac18e2573af517f872cb303. We always need to call
|
||||
addPrefixes() but return early from rpmRelocateFileList() when
|
||||
no relocations are taking place, fixing the performance regression
|
||||
introduced all the way back in cb8241dda783f7e8c143b08fecf57fe89a39c3a6
|
||||
which is what 5d3018c4ed476b1b7ac18e2573af517f872cb303 was trying
|
||||
to fix. Pooh :)
|
||||
|
||||
(cherry picked from commit 88d24b14a8e0e33e768cb74a3487acf0925b012a)
|
||||
|
||||
diff --git a/lib/rpmfi.c b/lib/rpmfi.c
|
||||
index 0bfb5dd..185deae 100644
|
||||
--- a/lib/rpmfi.c
|
||||
+++ b/lib/rpmfi.c
|
||||
@@ -793,7 +793,8 @@ static int addPrefixes(Header h, rpmRelocation *relocations, int numRelocations)
|
||||
headerPutStringArray(h, RPMTAG_INSTPREFIXES, actualRelocations, numActual);
|
||||
}
|
||||
free(actualRelocations);
|
||||
- return numActual;
|
||||
+ /* When any relocations are present there'll be more work to do */
|
||||
+ return 1;
|
||||
}
|
||||
|
||||
static void saveRelocs(Header h, rpmtd bnames, rpmtd dnames, rpmtd dindexes)
|
||||
@@ -835,7 +836,8 @@ void rpmRelocateFileList(rpmRelocation *relocations, int numRelocations,
|
||||
int i, j;
|
||||
struct rpmtd_s bnames, dnames, dindexes, fmodes;
|
||||
|
||||
- addPrefixes(h, relocations, numRelocations);
|
||||
+ if (!addPrefixes(h, relocations, numRelocations))
|
||||
+ return;
|
||||
|
||||
if (!_printed) {
|
||||
_printed = 1;
|
||||
diff --git a/lib/rpmte.c b/lib/rpmte.c
|
||||
index 6afd69e..87fb391 100644
|
||||
--- a/lib/rpmte.c
|
||||
+++ b/lib/rpmte.c
|
||||
@@ -98,7 +98,7 @@ static rpmfi getFI(rpmte p, Header h)
|
||||
(RPMFI_NOHEADER | RPMFI_FLAGS_ERASE);
|
||||
|
||||
/* relocate stuff in header if necessary */
|
||||
- if (rpmteType(p) == TR_ADDED && rpmfsFC(p->fs) > 0 && p->nrelocs) {
|
||||
+ if (rpmteType(p) == TR_ADDED && rpmfsFC(p->fs) > 0) {
|
||||
if (!headerIsSource(h) && !headerIsEntry(h, RPMTAG_ORIGBASENAMES)) {
|
||||
rpmRelocateFileList(p->relocs, p->nrelocs, p->fs, h);
|
||||
}
|
@ -11,84 +11,6 @@
|
||||
endif
|
||||
endif
|
||||
|
||||
--- rpm-4.11.1-rc1-orig/Makefile.in 2013-06-10 08:38:51.000000000 +0200
|
||||
+++ rpm-4.11.1-rc1/Makefile.in 2013-06-24 18:34:06.342894002 +0200
|
||||
@@ -74,7 +74,8 @@ bin_PROGRAMS = rpm2cpio$(EXEEXT) rpmbuil
|
||||
rpmgraph$(EXEEXT)
|
||||
rpmlibexec_PROGRAMS = $(am__EXEEXT_1) rpmdeps$(EXEEXT)
|
||||
@LIBDWARF_TRUE@@LIBELF_TRUE@am__append_6 = scripts/find-debuginfo.sh
|
||||
-@LIBDWARF_TRUE@@LIBELF_TRUE@am__append_7 = debugedit elfdeps
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@am__append_7 = debugedit elfdeps \
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@ sepdebugcrcfix
|
||||
@DOXYGEN_TRUE@@HACKINGDOCS_TRUE@am__append_8 = doc/hacking/html/index.html
|
||||
@DOXYGEN_TRUE@am__append_9 = doc/librpm/html/index.html
|
||||
@WITH_INTERNAL_DB_TRUE@am__append_10 = db.h
|
||||
@@ -110,7 +111,8 @@ am__installdirs = "$(DESTDIR)$(bindir)"
|
||||
"$(DESTDIR)$(rpmconfigdir)" "$(DESTDIR)$(rpmvardir)" \
|
||||
"$(DESTDIR)$(pkgincludedir)" "$(DESTDIR)$(pkgincludedir)"
|
||||
@LIBDWARF_TRUE@@LIBELF_TRUE@am__EXEEXT_1 = debugedit$(EXEEXT) \
|
||||
-@LIBDWARF_TRUE@@LIBELF_TRUE@ elfdeps$(EXEEXT)
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@ elfdeps$(EXEEXT) \
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@ sepdebugcrcfix$(EXEEXT)
|
||||
PROGRAMS = $(bin_PROGRAMS) $(rpmbin_PROGRAMS) $(rpmlibexec_PROGRAMS)
|
||||
am__debugedit_SOURCES_DIST = tools/debugedit.c tools/hashtab.c \
|
||||
tools/hashtab.h
|
||||
@@ -157,6 +159,11 @@ am_rpmspec_OBJECTS = rpmspec-rpmspec.$(O
|
||||
rpmspec_OBJECTS = $(am_rpmspec_OBJECTS)
|
||||
rpmspec_DEPENDENCIES = libcliutils.la build/librpmbuild.la \
|
||||
lib/librpm.la rpmio/librpmio.la
|
||||
+am__sepdebugcrcfix_SOURCES_DIST = tools/sepdebugcrcfix.c
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@am_sepdebugcrcfix_OBJECTS = \
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@ tools/sepdebugcrcfix.$(OBJEXT)
|
||||
+sepdebugcrcfix_OBJECTS = $(am_sepdebugcrcfix_OBJECTS)
|
||||
+sepdebugcrcfix_DEPENDENCIES =
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
@@ -223,12 +230,12 @@ SOURCES = $(libcliutils_la_SOURCES) $(de
|
||||
$(elfdeps_SOURCES) $(rpm_SOURCES) $(rpm2cpio_SOURCES) \
|
||||
$(rpmbuild_SOURCES) $(rpmdb_SOURCES) $(rpmdeps_SOURCES) \
|
||||
$(rpmgraph_SOURCES) $(rpmkeys_SOURCES) $(rpmsign_SOURCES) \
|
||||
- $(rpmspec_SOURCES)
|
||||
+ $(rpmspec_SOURCES) $(sepdebugcrcfix_SOURCES)
|
||||
DIST_SOURCES = $(libcliutils_la_SOURCES) $(am__debugedit_SOURCES_DIST) \
|
||||
$(am__elfdeps_SOURCES_DIST) $(rpm_SOURCES) $(rpm2cpio_SOURCES) \
|
||||
$(rpmbuild_SOURCES) $(rpmdb_SOURCES) $(rpmdeps_SOURCES) \
|
||||
$(rpmgraph_SOURCES) $(rpmkeys_SOURCES) $(rpmsign_SOURCES) \
|
||||
- $(rpmspec_SOURCES)
|
||||
+ $(rpmspec_SOURCES) $(am__sepdebugcrcfix_SOURCES_DIST)
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||
html-recursive info-recursive install-data-recursive \
|
||||
install-dvi-recursive install-exec-recursive \
|
||||
@@ -636,6 +643,8 @@ rpm2cpio_LDADD = lib/librpm.la rpmio/lib
|
||||
@LIBDWARF_TRUE@@LIBELF_TRUE@elfdeps_LDADD = rpmio/librpmio.la \
|
||||
@LIBDWARF_TRUE@@LIBELF_TRUE@ @WITH_LIBELF_LIB@ @WITH_POPT_LIB@ \
|
||||
@LIBDWARF_TRUE@@LIBELF_TRUE@ $(am__empty)
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@sepdebugcrcfix_SOURCES = tools/sepdebugcrcfix.c
|
||||
+@LIBDWARF_TRUE@@LIBELF_TRUE@sepdebugcrcfix_LDADD = @WITH_LIBELF_LIB@
|
||||
rpmdeps_SOURCES = tools/rpmdeps.c
|
||||
rpmdeps_LDADD = lib/librpm.la rpmio/librpmio.la build/librpmbuild.la @WITH_POPT_LIB@
|
||||
rpmgraph_SOURCES = tools/rpmgraph.c
|
||||
@@ -903,6 +912,11 @@ rpmsign$(EXEEXT): $(rpmsign_OBJECTS) $(r
|
||||
rpmspec$(EXEEXT): $(rpmspec_OBJECTS) $(rpmspec_DEPENDENCIES) $(EXTRA_rpmspec_DEPENDENCIES)
|
||||
@rm -f rpmspec$(EXEEXT)
|
||||
$(AM_V_CCLD)$(LINK) $(rpmspec_OBJECTS) $(rpmspec_LDADD) $(LIBS)
|
||||
+tools/sepdebugcrcfix.$(OBJEXT): tools/$(am__dirstamp) \
|
||||
+ tools/$(DEPDIR)/$(am__dirstamp)
|
||||
+sepdebugcrcfix$(EXEEXT): $(sepdebugcrcfix_OBJECTS) $(sepdebugcrcfix_DEPENDENCIES) $(EXTRA_sepdebugcrcfix_DEPENDENCIES)
|
||||
+ @rm -f sepdebugcrcfix$(EXEEXT)
|
||||
+ $(AM_V_CCLD)$(LINK) $(sepdebugcrcfix_OBJECTS) $(sepdebugcrcfix_LDADD) $(LIBS)
|
||||
install-dist_binSCRIPTS: $(dist_bin_SCRIPTS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
|
||||
@@ -994,6 +1008,7 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@tools/$(DEPDIR)/hashtab.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@tools/$(DEPDIR)/rpmdeps.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@tools/$(DEPDIR)/rpmgraph.Po@am__quote@
|
||||
+@AMDEP_TRUE@@am__include@ @am__quote@tools/$(DEPDIR)/sepdebugcrcfix.Po@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
--- rpm-4.11.1-rc1-orig/scripts/find-debuginfo.sh 2013-06-24 17:20:55.407538301 +0200
|
||||
+++ rpm-4.11.1-rc1/scripts/find-debuginfo.sh 2013-06-24 18:34:41.270897302 +0200
|
||||
@@ -114,10 +114,12 @@ done
|
||||
|
@ -1,7 +1,7 @@
|
||||
diff -up rpm-4.9.1.3/lib/rpmrc.c.armhfp-logic rpm-4.9.1.3/lib/rpmrc.c
|
||||
--- rpm-4.9.1.3/lib/rpmrc.c.armhfp-logic 2012-04-19 17:11:32.728750591 +0200
|
||||
+++ rpm-4.9.1.3/lib/rpmrc.c 2012-04-19 17:11:32.754738455 +0200
|
||||
@@ -743,6 +743,56 @@ static int is_sun4v()
|
||||
diff -up rpm-4.11.1/lib/rpmrc.c.armhfp-logic rpm-4.11.1/lib/rpmrc.c
|
||||
--- rpm-4.11.1/lib/rpmrc.c.armhfp-logic 2013-10-01 14:59:12.841041726 +0300
|
||||
+++ rpm-4.11.1/lib/rpmrc.c 2013-10-01 14:59:12.856041684 +0300
|
||||
@@ -733,6 +733,56 @@ static int is_sun4v()
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -58,8 +58,8 @@ diff -up rpm-4.9.1.3/lib/rpmrc.c.armhfp-logic rpm-4.9.1.3/lib/rpmrc.c
|
||||
|
||||
# if defined(__linux__) && defined(__i386__)
|
||||
#include <setjmp.h>
|
||||
@@ -1220,6 +1270,22 @@ static void defaultMachine(const char **
|
||||
}
|
||||
@@ -1136,6 +1186,22 @@ static void defaultMachine(const char **
|
||||
# endif /* __ORDER_BIG_ENDIAN__ */
|
||||
# endif /* ppc64*-linux */
|
||||
|
||||
+# if defined(__linux__) && defined(__arm__)
|
||||
|
20
rpm.spec
20
rpm.spec
@ -11,7 +11,7 @@
|
||||
|
||||
%define rpmhome /usr/lib/rpm
|
||||
|
||||
%define rpmver 4.11.1
|
||||
%define rpmver 4.11.2
|
||||
%define srcver %{rpmver}%{?snapver:-%{snapver}}
|
||||
|
||||
%define bdbname libdb
|
||||
@ -21,7 +21,7 @@
|
||||
Summary: The RPM package management system
|
||||
Name: rpm
|
||||
Version: %{rpmver}
|
||||
Release: %{?snapver:0.%{snapver}.}3%{?dist}
|
||||
Release: %{?snapver:0.%{snapver}.}1%{?dist}
|
||||
Group: System Environment/Base
|
||||
Url: http://www.rpm.org/
|
||||
Source0: http://rpm.org/releases/rpm-4.11.x/%{name}-%{srcver}.tar.bz2
|
||||
@ -44,10 +44,6 @@ Patch5: rpm-4.9.90-armhfp.patch
|
||||
Patch6: rpm-4.9.0-armhfp-logic.patch
|
||||
|
||||
# Patches already in upstream
|
||||
Patch100: rpm-4.11.1-instprefix.patch
|
||||
Patch101: rpm-4.11.1-file-triplet-check.patch
|
||||
Patch102: rpm-4.11.1-caps-double-free.patch
|
||||
Patch103: rpm-4.11.1-empty-lua-script.patch
|
||||
|
||||
# These are not yet upstream
|
||||
Patch301: rpm-4.6.0-niagara.patch
|
||||
@ -110,6 +106,8 @@ BuildRequires: xz-devel%{_isa} >= 4.999.8
|
||||
%endif
|
||||
# Only required by sepdebugcrcfix patch
|
||||
BuildRequires: binutils-devel
|
||||
# Couple of patches change makefiles so, require for now...
|
||||
BuildRequires: automake libtool
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
@ -224,11 +222,6 @@ packages on a system.
|
||||
%patch3 -p1 -b .no-man-dirs
|
||||
%patch4 -p1 -b .use-gpg2
|
||||
|
||||
%patch100 -p1 -b .instprefix
|
||||
%patch101 -p1 -b .file-triplet-check
|
||||
%patch102 -p1 -b .caps-double-free
|
||||
%patch103 -p1 -b .empty-lua-script
|
||||
|
||||
%patch301 -p1 -b .niagara
|
||||
%patch302 -p1 -b .geode
|
||||
%patch304 -p1 -b .ldflags
|
||||
@ -257,6 +250,8 @@ CPPFLAGS="$CPPFLAGS `pkg-config --cflags nss`"
|
||||
CFLAGS="$RPM_OPT_FLAGS"
|
||||
export CPPFLAGS CFLAGS LDFLAGS
|
||||
|
||||
autoreconf -i -f
|
||||
|
||||
# Using configure macro has some unwanted side-effects on rpm platform
|
||||
# setup, use the old-fashioned way for now only defining minimal paths.
|
||||
./configure \
|
||||
@ -463,6 +458,9 @@ exit 0
|
||||
%doc COPYING doc/librpm/html/*
|
||||
|
||||
%changelog
|
||||
* Thu Feb 13 2014 Panu Matilainen <pmatilai@redhat.com> - 4.11.2-1
|
||||
- update to 4.11.2 (http://rpm.org/wiki/Releases/4.11.2)
|
||||
|
||||
* Mon Sep 09 2013 Matilainen <pmatilai@redhat.com> - 4.11.1-3
|
||||
- add missing dependency on tar to rpm-build (#986539)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user