> On Sep 29, 2015, at 6:26 AM, Richard Purdie > <[email protected]> wrote: > > Checks within prelink force 64 bit binaries into lib64 and n32 binaries > into lib32. We load prelink.conf with all combinations but this code > then defeats it for us and means /lib is ignored. > > Comment out this code to disable it and allow our settings to work. This > allows 64 bit binaries in /lib to work. We pass in the correct dyanamic > loader path anyhow and our binaries don't contain ld.so so this should > be safe for us. > > Signed-off-by: Richard Purdie <[email protected]> > > diff --git a/meta/recipes-devtools/prelink/prelink/64bitfix.patch > b/meta/recipes-devtools/prelink/prelink/64bitfix.patch > new file mode 100644 > index 0000000..74b1a7d > --- /dev/null > +++ b/meta/recipes-devtools/prelink/prelink/64bitfix.patch > @@ -0,0 +1,35 @@ > +These checks force 64 bit binaries into lib64 and n32 binaries into lib32. We > +load prelink.conf with all combinations but this code then defeats it for us > +and means /lib is ignored. > + > +Comment out this code to disable it and allow our settings to work. This > +allows 64 bit binaries in /lib to work. We pass in the correct dyanamic > +loader path anyhow and our binaries don't contain ld.so so this should be > +safe for us. > + > +Upstream-Status: Inappropriate > +RP 2015/9/23 > + > + > +Index: trunk/src/rtld/rtld.c > +=================================================================== > +--- trunk.orig/src/rtld/rtld.c > ++++ trunk/src/rtld/rtld.c > +@@ -334,7 +334,7 @@ load_ld_so_conf (int use_64bit, int use_ > + > + /* Only use the correct machine, to prevent mismatches if we > + have both /lib/ld.so and /lib64/ld.so on x86-64. */ > +- if (use_64bit) > ++ /*if (use_64bit)
may be it would be good to use it as fallback if nothing comes out of
prelink.conf
such a patch would be acceptable upstream too.
> + {
> + dst_LIB = "lib64";
> + add_dir (&ld_dirs, "/lib64/tls", strlen ("/lib64/tls"));
> +@@ -350,7 +350,7 @@ load_ld_so_conf (int use_64bit, int use_
> + add_dir (&ld_dirs, "/usr/lib32/tls", strlen ("/usr/lib32/tls"));
> + add_dir (&ld_dirs, "/usr/lib32", strlen ("/usr/lib32"));
> + }
> +- else
> ++ else*/
> + {
> + dst_LIB = "lib";
> + add_dir (&ld_dirs, "/lib/tls", strlen ("/lib/tls"));
> diff --git a/meta/recipes-devtools/prelink/prelink_git.bb
> b/meta/recipes-devtools/prelink/prelink_git.bb
> index 79a5f501..0cbce36 100644
> --- a/meta/recipes-devtools/prelink/prelink_git.bb
> +++ b/meta/recipes-devtools/prelink/prelink_git.bb
> @@ -27,6 +27,7 @@ FILES_${PN}-cron = "${sysconfdir}/cron.daily
> ${sysconfdir}/default"
> PACKAGES =+ "${PN}-cron"
>
> SRC_URI = "git://git.yoctoproject.org/prelink-cross.git;branch=cross_prelink \
> + file://64bitfix.patch \
> file://prelink.conf \
> file://prelink.cron.daily \
> file://prelink.default \
>
>
> --
> _______________________________________________
> Openembedded-core mailing list
> [email protected]
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
signature.asc
Description: Message signed with OpenPGP using GPGMail
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
