[OE-core] [PATCH] opkg-utils: handle 6 digit UID fields properly

Saul Wold sgw at linux.intel.com
Tue Nov 29 15:50:53 UTC 2011


On 11/26/2011 01:47 AM, Koen Kooi wrote:
> Signed-off-by: Koen Kooi<koen at dominion.thruhere.net>
> ---
>   .../opkg-utils/arfile_header_split.patch           |   27 ++++++++++++++++++++
>   meta/recipes-devtools/opkg-utils/opkg-utils_svn.bb |    3 +-
>   2 files changed, 29 insertions(+), 1 deletions(-)
>   create mode 100644 meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
>
> diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch b/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
> new file mode 100644
> index 0000000..435e74e
> --- /dev/null
> +++ b/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
> @@ -0,0 +1,27 @@
> +From: Scott Anderson<o2e at saaworld.com>
> +Subject: ipkg-utils: Make arfile.py handle six digit UIDs
> +
> +    Essentially, the problem is that arfile.py is splitting the ar header with
> +    white-space instead of fixed-width fields, so two fields would get treated
> +    as a single field.  This makes things better than before as it now honors
> +    the fixed field widths.
> +
> +Upsteam-status: Pending (there is no upstream after openmoko imploded)
> +
> +--- ipkg-utils/arfile.py.orig	2010-09-29 13:38:15.000000000 -0700
> ++++ ipkg-utils/arfile.py	2010-10-01 16:06:00.000000000 -0700
> +@@ -74,7 +74,12 @@
> +             if l == "\n":
> +                 l = self.f.readline()
> +                 if not l: break
> +             l = l.replace('`', '')
> +-            descriptor = l.split()
> ++            # Field lengths from /usr/include/ar.h:
> ++            ar_field_lens = [ 16, 12, 6, 6, 8, 10, 2 ]
> ++            descriptor = []
> ++            for field_len in ar_field_lens:
> ++                descriptor.append(l[:field_len].strip())
> ++                l = l[field_len:]
> + #            print descriptor
> +             size = int(descriptor[5])
> +             memberName = descriptor[0][:-1]
> diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils_svn.bb b/meta/recipes-devtools/opkg-utils/opkg-utils_svn.bb
> index e04b74a..9b94aff 100644
> --- a/meta/recipes-devtools/opkg-utils/opkg-utils_svn.bb
> +++ b/meta/recipes-devtools/opkg-utils/opkg-utils_svn.bb
> @@ -8,12 +8,13 @@ RDEPENDS_${PN} = "python"
>   RDEPENDS_${PN}_virtclass-native = ""
>   SRCREV = "4747"
>   PV = "0.1.8+svnr${SRCPV}"
> -PR = "r5"
> +PR = "r6"
>
>   SRC_URI = "svn://svn.openmoko.org/trunk/src/host/;module=opkg-utils;proto=http \
>              file://index-ignore-filenotfound.patch \
>              file://mtime-int.patch \
>              file://add-license-field.patch \
> +           file://arfile_header_split.patch \
>              "
>
>   S = "${WORKDIR}/opkg-utils"

Merged into OE-Core

Thanks
	Sau!




More information about the Openembedded-core mailing list