[PATCH v2] gcompat: Add __getauxval wrapper needed on aarch64


Khem Raj
 

Update SRCREV to bring in few bug fixes
Install a .so symlink which could be used during linking

Signed-off-by: Khem Raj <raj.khem@...>
---
v2: Symlink should point to base_libdir not libdir

.../musl/gcompat/0001-auxv-new-module.patch | 59 +++++++++++++++++++
meta/recipes-core/musl/gcompat_git.bb | 6 +-
2 files changed, 63 insertions(+), 2 deletions(-)
create mode 100644 meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch

diff --git a/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch b/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch
new file mode 100644
index 0000000000..ee292f3841
--- /dev/null
+++ b/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch
@@ -0,0 +1,59 @@
+From aecd42801904462501a890d173648e4e826eda19 Mon Sep 17 00:00:00 2001
+From: "A. Wilcox" <AWilcox@...>
+Date: Sat, 23 Oct 2021 23:29:40 -0500
+Subject: [PATCH] auxv: new module
+
+Adds `__getauxval` wrapper, needed for Parallels Tools GUI installer.
+
+Upstream-Status: Submitted [https://git.adelielinux.org/adelie/gcompat/-/commit/e860a38a88c7ea148ee15976136a1f83ea13f8e0]
+Signed-off-by: Khem Raj <raj.khem@...>
+---
+ CHANGELOG.rst | 5 +++++
+ Makefile | 1 +
+ libgcompat/auxv.c | 6 ++++++
+ 3 files changed, 12 insertions(+)
+ create mode 100644 libgcompat/auxv.c
+
+diff --git a/CHANGELOG.rst b/CHANGELOG.rst
+index ce6859b..c3a9cee 100644
+--- a/CHANGELOG.rst
++++ b/CHANGELOG.rst
+@@ -11,6 +11,11 @@
+ 1.1 (202?-??-??)
+ ================
+
++auxv
++----
++
++* Add __getauxval wrapper for getauxval.
++
+ locale
+ ------
+
+diff --git a/Makefile b/Makefile
+index cbb7634..1893cc1 100644
+--- a/Makefile
++++ b/Makefile
+@@ -2,6 +2,7 @@ LIBGCOMPAT_INCLUDE = \
+ libgcompat/alias.h \
+ libgcompat/internal.h
+ LIBGCOMPAT_SRC = \
++ libgcompat/auxv.c \
+ libgcompat/ctype.c \
+ libgcompat/cxx_thread.c \
+ libgcompat/dlfcn.c \
+diff --git a/libgcompat/auxv.c b/libgcompat/auxv.c
+new file mode 100644
+index 0000000..01de376
+--- /dev/null
++++ b/libgcompat/auxv.c
+@@ -0,0 +1,6 @@
++#include <sys/auxv.h> /* getauxval */
++
++unsigned long __getauxval(unsigned long value)
++{
++ return getauxval(value);
++}
+--
+2.37.3
+
diff --git a/meta/recipes-core/musl/gcompat_git.bb b/meta/recipes-core/musl/gcompat_git.bb
index b051e43b6c..773263809b 100644
--- a/meta/recipes-core/musl/gcompat_git.bb
+++ b/meta/recipes-core/musl/gcompat_git.bb
@@ -8,12 +8,13 @@ LICENSE = "NCSA"
LIC_FILES_CHKSUM = "file://LICENSE;md5=eb33ef4af05a9c7602843afb7adfe792"

SRC_URI = "git://git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current \
- "
+ file://0001-auxv-new-module.patch \
+ "
SRC_URI:append:powerpc = "\
file://0001-make-Static-PIE-does-not-work-on-musl-ppc.patch \
"
PV = "1.0.0+1.1+git${SRCPV}"
-SRCREV = "4d6a5156a6eb7f56b30d93853a872e36dadde81b"
+SRCREV = "c6921a1aa454bb87671f9bd1ecfe47d80d1620aa"

S = "${WORKDIR}/git"

@@ -42,6 +43,7 @@ do_install () {
install -d ${D}${nonarch_base_libdir}${SITEINFO_BITS}
ln -rs ${D}${GLIBC_LDSO} ${D}${nonarch_base_libdir}${SITEINFO_BITS}/`basename ${GLIBC_LDSO}`
fi
+ ln -sf ${base_libdir}/libgcompat.so.0 ${D}${libdir}/libgcompat.so
}

FILES:${PN} += "${nonarch_base_libdir}${SITEINFO_BITS}"
--
2.37.3


Richard Purdie
 

On Tue, 2022-09-20 at 19:23 -0700, Khem Raj wrote:
Update SRCREV to bring in few bug fixes
Install a .so symlink which could be used during linking

Signed-off-by: Khem Raj <raj.khem@...>
---
v2: Symlink should point to base_libdir not libdir
It still breaks:

https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/5884/steps/11/logs/stdio

Cheers,

Richard


Khem Raj
 

On Wed, Sep 21, 2022 at 9:38 AM Richard Purdie
<richard.purdie@...> wrote:

On Tue, 2022-09-20 at 19:23 -0700, Khem Raj wrote:
Update SRCREV to bring in few bug fixes
Install a .so symlink which could be used during linking

Signed-off-by: Khem Raj <raj.khem@...>
---
v2: Symlink should point to base_libdir not libdir
It still breaks:

https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/5884/steps/11/logs/stdio
yeah patches in conference benched do not help :) I realised that we
have to create libdir
since it may not always be created. Have this time built with poky
distro locally on qemux86
please try v3.

Cheers,

Richard