[OE-core] [PATCH] dpkg: Upgrade to 1.18.7

Aníbal Limón anibal.limon at linux.intel.com
Fri Jun 3 13:41:25 UTC 2016


ping

On 05/26/2016 04:18 PM, Aníbal Limón wrote:
> Rebased patches:
> 
> 0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch
> add_armeb_triplet_entry.patchadd_armeb_triplet_entry.patch
> 
> Patches removed already in upstream:
> 
> 	[1] 0001-When-running-do_package_write_deb-we-have-trees-of-h.patch
> 	[2] fix-abs-redefine.patch
> 
> Signed-off-by: Aníbal Limón <anibal.limon at linux.intel.com>
> 
> [1] https://anonscm.debian.org/cgit/dpkg/dpkg.git/commit/dpkg-deb/build.c?id=7a91341446851cd3594a8b752823b8c1f26d652a
> [2] https://anonscm.debian.org/cgit/dpkg/dpkg.git/commit/lib/dpkg/i18n.h?id=ecd4baa091619cbbdd70043129dd992573580371
> ---
>  meta/recipes-devtools/dpkg/dpkg.inc                |  2 -
>  ...g-do_package_write_deb-we-have-trees-of-h.patch | 71 ----------------------
>  ...tinsts-expect-D-to-be-set-when-running-in.patch | 36 +++++++----
>  .../dpkg/dpkg/add_armeb_triplet_entry.patch        | 22 ++++---
>  .../dpkg/dpkg/fix-abs-redefine.patch               | 40 ------------
>  .../dpkg/{dpkg_1.18.4.bb => dpkg_1.18.7.bb}        |  6 +-
>  6 files changed, 40 insertions(+), 137 deletions(-)
>  delete mode 100644 meta/recipes-devtools/dpkg/dpkg/0001-When-running-do_package_write_deb-we-have-trees-of-h.patch
>  delete mode 100644 meta/recipes-devtools/dpkg/dpkg/fix-abs-redefine.patch
>  rename meta/recipes-devtools/dpkg/{dpkg_1.18.4.bb => dpkg_1.18.7.bb} (79%)
> 
> diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc
> index 3d9e7e3..c2215ce 100644
> --- a/meta/recipes-devtools/dpkg/dpkg.inc
> +++ b/meta/recipes-devtools/dpkg/dpkg.inc
> @@ -4,8 +4,6 @@ SECTION = "base"
>  
>  SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.xz"
>  
> -SRC_URI_append_class-native = " file://0001-When-running-do_package_write_deb-we-have-trees-of-h.patch"
> -
>  DEPENDS = "zlib bzip2 perl ncurses"
>  DEPENDS_class-native = "bzip2-replacement-native zlib-native virtual/update-alternatives-native gettext-native perl-native"
>  RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives} xz run-postinsts perl"
> diff --git a/meta/recipes-devtools/dpkg/dpkg/0001-When-running-do_package_write_deb-we-have-trees-of-h.patch b/meta/recipes-devtools/dpkg/dpkg/0001-When-running-do_package_write_deb-we-have-trees-of-h.patch
> deleted file mode 100644
> index 49ef853..0000000
> --- a/meta/recipes-devtools/dpkg/dpkg/0001-When-running-do_package_write_deb-we-have-trees-of-h.patch
> +++ /dev/null
> @@ -1,71 +0,0 @@
> -From e391bdba238d1371fc5b67cdae08b06eb5ada5c2 Mon Sep 17 00:00:00 2001
> -From: Alexander Kanavin <alex.kanavin at gmail.com>
> -Date: Wed, 26 Aug 2015 15:48:13 +0300
> -Subject: [PATCH] When running do_package_write_deb, we have trees of
> - hardlinked files such as the dbg source files in ${PN}-dbg. If something
> - makes another copy of one of those files (or deletes one), the number of
> - links a file has changes and tar can notice this, e.g.:
> -
> -| DEBUG: Executing python function do_package_deb
> -| dpkg-deb: building package `sed-ptest' in `/media/build1/poky/build/tmp/work/i586-poky-linux/sed/4.2.2-r0/deploy-debs/i586/sed-ptest_4.2.2-r0.3_i386.deb'.
> -| tar: ./usr/lib/sed/ptest/testsuite/tst-regex2: file changed as we read it
> -| dpkg-deb: error: subprocess tar -cf returned error exit status 1
> -
> -Tar returns an error of 1 when files 'change' and other errors codes
> -in other error cases. We tweak dpkg-deb here so that it ignores an exit
> -code of 1 from tar. The files don't really change (and we have locking in
> -place to avoid that kind of issue).
> -
> -Upstream-Status: Inappropriate
> -RP 2015/3/27
> ----
> - dpkg-deb/build.c | 12 ++++++++----
> - 1 file changed, 8 insertions(+), 4 deletions(-)
> -
> -diff --git a/dpkg-deb/build.c b/dpkg-deb/build.c
> -index 2ddeec6..af363f0 100644
> ---- a/dpkg-deb/build.c
> -+++ b/dpkg-deb/build.c
> -@@ -452,7 +452,7 @@ static void
> - tarball_pack(const char *dir, filenames_feed_func *tar_filenames_feeder,
> -              struct compress_params *tar_compress_params, int fd_out)
> - {
> --  int pipe_filenames[2], pipe_tarball[2];
> -+  int pipe_filenames[2], pipe_tarball[2], rc;
> -   pid_t pid_tar, pid_comp;
> - 
> -   /* Fork off a tar. We will feed it a list of filenames on stdin later. */
> -@@ -493,7 +493,9 @@ tarball_pack(const char *dir, filenames_feed_func *tar_filenames_feeder,
> -   /* All done, clean up wait for tar and <compress> to finish their job. */
> -   close(pipe_filenames[1]);
> -   subproc_reap(pid_comp, _("<compress> from tar -cf"), 0);
> --  subproc_reap(pid_tar, "tar -cf", 0);
> -+  rc = subproc_reap(pid_tar, "tar -cf", SUBPROC_RETERROR);
> -+  if (rc && rc != 1)
> -+    ohshite(_("subprocess %s returned error exit status %d"), "tar -cf", rc);
> - }
> - 
> - /**
> -@@ -509,7 +511,7 @@ do_build(const char *const *argv)
> -   char *debar;
> -   char *tfbuf;
> -   int arfd;
> --  int p1[2], gzfd;
> -+  int p1[2], gzfd, rc;
> -   pid_t c1, c2;
> - 
> -   /* Decode our arguments. */
> -@@ -590,7 +592,9 @@ do_build(const char *const *argv)
> -   }
> -   close(p1[0]);
> -   subproc_reap(c2, _("<compress> from tar -cf"), 0);
> --  subproc_reap(c1, "tar -cf", 0);
> -+  rc = subproc_reap(c1, "tar -cf", SUBPROC_RETERROR);
> -+  if (rc && rc != 1)
> -+    ohshite(_("subprocess %s returned error exit status %d"), "tar -cf", rc);
> - 
> -   if (lseek(gzfd, 0, SEEK_SET))
> -     ohshite(_("failed to rewind temporary file (%s)"), _("control member"));
> --- 
> -2.7.0
> -
> diff --git a/meta/recipes-devtools/dpkg/dpkg/0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch b/meta/recipes-devtools/dpkg/dpkg/0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch
> index 9f77c6c..80504ce 100644
> --- a/meta/recipes-devtools/dpkg/dpkg/0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch
> +++ b/meta/recipes-devtools/dpkg/dpkg/0003-Our-pre-postinsts-expect-D-to-be-set-when-running-in.patch
> @@ -8,30 +8,41 @@ Subject: [PATCH 3/5] Our pre/postinsts expect $D to be set when running in a
>  Upstream-Status: Inappropriate [OE Specific]
>  
>  RP 2011/12/07
> +ALIMON 2016/05/26
> +
>  ---
> - src/script.c | 31 ++-----------------------------
> - 1 file changed, 2 insertions(+), 29 deletions(-)
> + src/script.c | 39 +++------------------------------------
> + 1 file changed, 3 insertions(+), 36 deletions(-)
>  
>  diff --git a/src/script.c b/src/script.c
> -index a958145..24c49f9 100644
> +index 3c88be8..ce66a86 100644
>  --- a/src/script.c
>  +++ b/src/script.c
> -@@ -100,36 +100,9 @@ maintscript_pre_exec(struct command *cmd)
> - 	size_t instdirl = strlen(instdir);
> - 
> - 	if (*instdir) {
> +@@ -97,43 +97,10 @@ setexecute(const char *path, struct stat *stab)
> + static const char *
> + maintscript_pre_exec(struct command *cmd)
> + {
> +-	const char *admindir = dpkg_db_get_dir();
> +-	const char *changedir = fc_script_chrootless ? instdir : "/";
> +-	size_t instdirl = strlen(instdir);
> +-
> +-	if (*instdir && !fc_script_chrootless) {
>  -		if (strncmp(admindir, instdir, instdirl) != 0)
>  -			ohshit(_("admindir must be inside instdir for dpkg to work properly"));
>  -		if (setenv("DPKG_ADMINDIR", admindir + instdirl, 1) < 0)
>  -			ohshite(_("unable to setenv for subprocesses"));
> +-		if (setenv("DPKG_ROOT", "", 1) < 0)
> +-			ohshite(_("unable to setenv for subprocesses"));
>  -
>  -		if (chroot(instdir))
>  -			ohshite(_("failed to chroot to '%.250s'"), instdir);
> --	}
> ++	if (*instdir) {
> ++		setenv("D", instdir, 1);
> + 	}
>  -	/* Switch to a known good directory to give the maintainer script
>  -	 * a saner environment, also needed after the chroot(). */
> --	if (chdir("/"))
> --		ohshite(_("failed to chdir to '%.255s'"), "/");
> +-	if (chdir(changedir))
> +-		ohshite(_("failed to chdir to '%.255s'"), changedir);
>  -	if (debug_has_flag(dbg_scripts)) {
>  -		struct varbuf args = VARBUF_INIT;
>  -		const char **argv = cmd->argv;
> @@ -44,9 +55,8 @@ index a958145..24c49f9 100644
>  -		debug(dbg_scripts, "fork/exec %s (%s )", cmd->filename,
>  -		      args.buf);
>  -		varbuf_destroy(&args);
> -+		setenv("D", instdir, 1);
> - 	}
> --	if (!instdirl)
> +-	}
> +-	if (!instdirl || fc_script_chrootless)
>  -		return cmd->filename;
>  -
>  -	assert(strlen(cmd->filename) >= instdirl);
> diff --git a/meta/recipes-devtools/dpkg/dpkg/add_armeb_triplet_entry.patch b/meta/recipes-devtools/dpkg/dpkg/add_armeb_triplet_entry.patch
> index af275de..dc69eb2 100644
> --- a/meta/recipes-devtools/dpkg/dpkg/add_armeb_triplet_entry.patch
> +++ b/meta/recipes-devtools/dpkg/dpkg/add_armeb_triplet_entry.patch
> @@ -25,14 +25,22 @@ Upstream-Status: Pending
>  
>  Signed-off-by: Krishnanjanappa, Jagadeesh <jagadeesh.krishnanjanappa at caviumnetworks.com>
>  
> -diff -Naurp dpkg-1.17.21_org/triplettable dpkg-1.17.21/triplettable
> ---- dpkg-1.17.21_org/triplettable	2015-04-08 17:08:52.370759171 +0530
> -+++ dpkg-1.17.21/triplettable	2015-04-08 17:09:12.406752081 +0530
> -@@ -9,6 +9,7 @@ musleabihf-linux-arm	musl-linux-armhf
> - musl-linux-<cpu>	musl-linux-<cpu>
> - gnueabihf-linux-arm	armhf
> +---
> + triplettable | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/triplettable b/triplettable
> +index abe4726..1e9c247 100644
> +--- a/triplettable
> ++++ b/triplettable
> +@@ -11,6 +11,7 @@ gnueabihf-linux-arm	armhf
>   gnueabi-linux-arm	armel
> + gnuabin32-linux-mips64r6el	mipsn32r6el
> + gnuabin32-linux-mips64r6	mipsn32r6
>  +gnueabi-linux-armeb	armeb
>   gnuabin32-linux-mips64el	mipsn32el
>   gnuabin32-linux-mips64	mipsn32
> - gnuabi64-linux-mips64el	mips64el
> + gnuabi64-linux-mips64r6el	mips64r6el
> +-- 
> +2.1.4
> +
> diff --git a/meta/recipes-devtools/dpkg/dpkg/fix-abs-redefine.patch b/meta/recipes-devtools/dpkg/dpkg/fix-abs-redefine.patch
> deleted file mode 100644
> index e73311c..0000000
> --- a/meta/recipes-devtools/dpkg/dpkg/fix-abs-redefine.patch
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -Upstream-Status: Pending
> -
> -dpkg defines:
> -#define DPKG_BEGIN_DECLS	extern "C" {
> -
> -That makes header cstdlib included in a extern "C" block which is not supported
> -by gcc 4.8. It fails on Fedora 19:
> -
> -/usr/include/c++/4.8.1/cstdlib: In function ‘long long int std::abs(long long int)’:
> -/usr/include/c++/4.8.1/cstdlib:174:20: error: declaration of C function ‘long long int std::abs(long long int)’ conflicts with
> -   abs(long long __x) { return __builtin_llabs (__x); }
> -                    ^
> -/usr/include/c++/4.8.1/cstdlib:166:3: error: previous declaration ‘long int std::abs(long int)’ here
> -   abs(long __i) { return __builtin_labs(__i); }
> -   ^
> -
> -Move include gettext.h out of the extern "C" block to fix this issue.
> -
> -Signed-off-by: Kai Kang <kai.kang at windriver.com>
> -
> ---- dpkg-1.17.1/lib/dpkg/i18n.h.orig	2013-08-13 17:31:28.870935573 +0800
> -+++ dpkg-1.17.1/lib/dpkg/i18n.h	2013-08-13 17:31:37.893065249 +0800
> -@@ -23,8 +23,6 @@
> - 
> - #include <dpkg/macros.h>
> - 
> --DPKG_BEGIN_DECLS
> --
> - /**
> -  * @defgroup i18n Internationalization support
> -  * @ingroup dpkg-internal
> -@@ -33,6 +31,8 @@
> - 
> - #include <gettext.h>
> - 
> -+DPKG_BEGIN_DECLS
> -+
> - /* We need to include this because pgettext() uses LC_MESSAGES, but libintl.h
> -  * which gets pulled by gettext.h only includes it if building optimized. */
> - #include <locale.h>
> diff --git a/meta/recipes-devtools/dpkg/dpkg_1.18.4.bb b/meta/recipes-devtools/dpkg/dpkg_1.18.7.bb
> similarity index 79%
> rename from meta/recipes-devtools/dpkg/dpkg_1.18.4.bb
> rename to meta/recipes-devtools/dpkg/dpkg_1.18.7.bb
> index 7876944..5375923 100644
> --- a/meta/recipes-devtools/dpkg/dpkg_1.18.4.bb
> +++ b/meta/recipes-devtools/dpkg/dpkg_1.18.7.bb
> @@ -4,7 +4,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
>  SRC_URI_append_class-native =" file://glibc2.5-sync_file_range.patch "
>  SRC_URI += "file://noman.patch \
>              file://remove-tar-no-timestamp.patch \
> -            file://fix-abs-redefine.patch \
>              file://arch_pm.patch \
>              file://dpkg-configure.service \
>              file://add_armeb_triplet_entry.patch \
> @@ -15,6 +14,5 @@ SRC_URI += "file://noman.patch \
>  	    file://0006-add-musleabi-to-known-target-tripets.patch \
>             "
>  
> -SRC_URI[md5sum] = "e95b513c89693f6ec3ab53b6b1c3defd"
> -SRC_URI[sha256sum] = "fe89243868888ce715bf45861f26264f767d4e4dbd0d6f1a26ce60bbbbf106da"
> -
> +SRC_URI[md5sum] = "073dbf2129a54b0fc627464bf8af4a1b"
> +SRC_URI[sha256sum] = "ace36d3a6dc750a42baf797f9e75ec580a21f92bb9ff96b482100755d6d9b87b"
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160603/f68c6d9a/attachment-0002.sig>


More information about the Openembedded-core mailing list