diff options
author | Mark Hatle <mark.hatle@windriver.com> | 2014-07-02 19:57:44 -0500 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-07-08 11:19:48 +0100 |
commit | 0c7b4a5e23836889196f85f472f081d51529e94e (patch) | |
tree | f300a95188e10f51ddd30f53ee2eff73e92d41ff /meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch | |
parent | 04bb223110da2f92725c341bc3ec0cf26325f675 (diff) | |
download | openembedded-core-contrib-0c7b4a5e23836889196f85f472f081d51529e94e.tar.gz |
rpm: Upgrade to 5.4.14
Update various patches. A few corrections to the patch descriptions,
otherwise simple quilt refresh or conflict resolution.
Remove rpm-solvedb.patch and rpm-respect-arch.patch. These are both related
to the old solvedb package dependency solver. This is no longer used since
we moved to smartpm.
rpm-stub-out-git_strerror was a backport and is no longer needed.
RPM 5.4.12 and newer normally requires Berkley DB 6.0 or newer. A small
patch to configure allows RPM to dynamically select DB 5.3 or DB 6.0 based
on what is available at configure time.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch')
-rw-r--r-- | meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch b/meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch index fc6b218300..9cd02a0f92 100644 --- a/meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch +++ b/meta/recipes-devtools/rpm/rpm/rpm-payload-use-hashed-inode.patch @@ -19,10 +19,11 @@ RP 2014/6/10 Upstream-Status: Pending -diff -ur rpm-5.4.10/build/files.c rpm-5.4.10-collision/build/files.c ---- rpm-5.4.10/build/files.c 2013-03-17 13:17:38.233358389 +0100 -+++ rpm-5.4.10-collision/build/files.c 2013-03-17 13:07:37.468483625 +0100 -@@ -1323,6 +1323,26 @@ +Index: rpm-5.4.14/build/files.c +=================================================================== +--- rpm-5.4.14.orig/build/files.c ++++ rpm-5.4.14/build/files.c +@@ -1328,6 +1328,26 @@ static rpmuint32_t getDigestAlgo(Header return dalgo; } @@ -49,7 +50,7 @@ diff -ur rpm-5.4.10/build/files.c rpm-5.4.10-collision/build/files.c /** * Add file entries to header. * @todo Should directories have %doc/%config attributes? (#14531) -@@ -1370,6 +1390,7 @@ +@@ -1374,6 +1394,7 @@ memset(buf, 0, sizeof(buf)); /* XXX valg for (i = 0, flp = fl->fileList; i < fl->fileListRecsUsed; i++, flp++) { const char *s; @@ -57,7 +58,7 @@ diff -ur rpm-5.4.10/build/files.c rpm-5.4.10-collision/build/files.c /* Merge duplicate entries. */ while (i < (fl->fileListRecsUsed - 1) && -@@ -1437,6 +1458,13 @@ +@@ -1436,6 +1457,13 @@ memset(buf, 0, sizeof(buf)); /* XXX valg /* Leave room for both dirname and basename NUL's */ dpathlen += (strlen(flp->diskURL) + 2); @@ -71,20 +72,19 @@ diff -ur rpm-5.4.10/build/files.c rpm-5.4.10-collision/build/files.c /* * Make the header, the OLDFILENAMES will get converted to a * compressed file list write before we write the actual package to -@@ -1519,7 +1547,11 @@ +@@ -1518,7 +1546,11 @@ memset(buf, 0, sizeof(buf)); /* XXX valg /* XXX Hash instead of 64b->32b truncate to prevent aliasing. */ { ino_t _ino = flp->fl_ino; -- ui32 = hashFunctionString(0, &_ino, sizeof(_ino)); + /* don't use hash here, as hash collisions which happen on large packages + cause bus errors in rpmbuild -+ ui32 = hashFunctionString(0, &_ino, sizeof(_ino)); + ui32 = hashFunctionString(0, &_ino, sizeof(_ino)); + */ + ui32 = fileid + 1; } he->tag = RPMTAG_FILEINODES; he->t = RPM_UINT32_TYPE; -@@ -1752,39 +1780,6 @@ +@@ -1751,39 +1783,6 @@ if (_rpmbuildFlags & 4) { IOSM_MAP_TYPE | IOSM_MAP_MODE | IOSM_MAP_UID | IOSM_MAP_GID; if (isSrc) fi->fmapflags[i] |= IOSM_FOLLOW_SYMLINKS; @@ -124,9 +124,11 @@ diff -ur rpm-5.4.10/build/files.c rpm-5.4.10-collision/build/files.c } ui32 = fl->totalFileSize; ---- rpm-5.4.10/lib/fsm.c~ -+++ rpm-5.4.10/lib/fsm.c -@@ -898,6 +898,7 @@ int fsmMapAttrs(IOSM_t fsm) +Index: rpm-5.4.14/lib/fsm.c +=================================================================== +--- rpm-5.4.14.orig/lib/fsm.c ++++ rpm-5.4.14/lib/fsm.c +@@ -904,6 +904,7 @@ int fsmMapAttrs(IOSM_t fsm) if (fi && i >= 0 && i < (int) fi->fc) { mode_t perms = (S_ISDIR(st->st_mode) ? fi->dperms : fi->fperms); @@ -134,7 +136,7 @@ diff -ur rpm-5.4.10/build/files.c rpm-5.4.10-collision/build/files.c mode_t finalMode = (fi->fmodes ? (mode_t)fi->fmodes[i] : perms); dev_t finalRdev = (dev_t)(fi->frdevs ? fi->frdevs[i] : 0); rpmuint32_t finalMtime = (fi->fmtimes ? fi->fmtimes[i] : 0); -@@ -937,6 +938,7 @@ int fsmMapAttrs(IOSM_t fsm) +@@ -943,6 +944,7 @@ int fsmMapAttrs(IOSM_t fsm) if ((S_ISCHR(st->st_mode) || S_ISBLK(st->st_mode)) && st->st_nlink == 0) st->st_nlink = 1; |