[oe] [PATCH] prelink: Added prelink-20100106, which works on ARM.

Phil Blundell philb at gnu.org
Tue Jun 14 09:16:49 UTC 2011


On Tue, 2011-06-14 at 15:49 +0800, James Limbouris wrote:
> This version of prelink, together with a patch by
> Carsten Munk <carsten at maemo.org>, taken from MeeGo,
> fixes an ARM incompatibility with 20090925.
> 
> Signed-off-by: James Limbouris <james at digitalmatter.com.au>
> ---
>  .../prelink-20100106-arm-fix.patch                 |   86 ++++++++++++++++++++
>  recipes/prelink/prelink_20100106.bb                |   53 ++++++++++++
>  2 files changed, 139 insertions(+), 0 deletions(-)
>  create mode 100755 recipes/prelink/prelink-20100106/prelink-20100106-arm-fix.patch
>  create mode 100644 recipes/prelink/prelink_20100106.bb
> 
> diff --git a/recipes/prelink/prelink-20100106/prelink-20100106-arm-fix.patch b/recipes/prelink/prelink-20100106/prelink-20100106-arm-fix.patch
> new file mode 100755
> index 0000000..a694541
> --- /dev/null
> +++ b/recipes/prelink/prelink-20100106/prelink-20100106-arm-fix.patch
> @@ -0,0 +1,86 @@
> +diff -ru prelink-old/src/arch-arm.c prelink/src/arch-arm.c
> +--- prelink-old/src/arch-arm.c	2009-06-15 07:37:50.000000000 -0400
> ++++ prelink/src/arch-arm.c	2010-08-17 03:35:05.000000000 -0400
> +@@ -832,7 +832,7 @@
> +   .R_COPY = R_ARM_COPY,
> +   .R_RELATIVE = R_ARM_RELATIVE,
> +   .rtype_class_valid = RTYPE_CLASS_VALID,
> +-  .dynamic_linker = "/lib/ld-linux.so.2",
> ++  .dynamic_linker = "/lib/ld-linux.so.3",

That looks like it's going to break OABI binaries.  I'm not sure to what
extent we care about those anymore, but I'm not sure I would describe
this as a "fix" exactly.

> +-  switch (vfork ())
> ++  switch (pid=fork ())
> +     {
> +     case -1:
> +       error (0, errno, "Could not run %s", path);
> +@@ -63,7 +65,9 @@
> + 	  close (p[1]);
> + 	}
> +       dup2 (1, 2);
> +-      execve (path, argv, envp);
> ++      while (*envp) 
> ++        putenv(*envp++);
> ++      execv (path, argv);
> +       _exit (127);

What's that about?

p.





More information about the Openembedded-devel mailing list