* [Buildroot] [git commit] package/uclibc: add missing sys/auxv.h for static builds
@ 2026-10-13 8:13 Thomas Petazzoni via buildroot
2026-10-13 8:21 ` Yegor Yefremov via buildroot
0 siblings, 1 reply; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-13 8:13 UTC (permalink / raw)
To: buildroot
commit: https://gitlab.com/buildroot.org/buildroot/-/commit/471feacb2d9c13190d635721208b9d31e995d04e
branch: https://gitlab.com/buildroot.org/buildroot/-/tree/master
getauxval() works fine for static builds. This was already fixed
a while ago, see the commit message of the patch for more details.
Fixes:
- https://autobuild.buildroot.net/results/f03/f03380ef48cea232e4958084eae419d5516f4ef4
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
...nstall-sys-auxv.h-for-static-builds-again.patch | 57 ++++++++++++++++++++++
1 file changed, 57 insertions(+)
diff --git a/package/uclibc/0006-buildsys-install-sys-auxv.h-for-static-builds-again.patch b/package/uclibc/0006-buildsys-install-sys-auxv.h-for-static-builds-again.patch
new file mode 100644
index 0000000000..74d14b5501
--- /dev/null
+++ b/package/uclibc/0006-buildsys-install-sys-auxv.h-for-static-builds-again.patch
@@ -0,0 +1,57 @@
+From 6dc9f06a0330f11171f76f4b831724c02642f11f Mon Sep 17 00:00:00 2001
+From: ramin <lordrasmus@gmail.com>
+Date: Mon, 12 Oct 2026 16:30:56 +0200
+Subject: [PATCH] buildsys: install sys/auxv.h for static builds again
+
+getauxval() has not needed ld.so since 227b7c825 and 737a0edf4 ("Make
+getauxval work with static linking", "Support non-cached entries in
+getauxval", v1.0.52): _dl_auxvt and _dl_auxv_start are defined in
+libc/misc/elf/dl-support.c for the static libc, and __uClibc_main calls
+_dl_aux_init() on that path too. The static libc.a carries getauxval,
+__getauxval, _dl_aux_init, _dl_auxvt and _dl_auxv_start.
+
+Its header is still withheld, though. df81bd1e2 ("getauxval: remove
+header for static builds") put sys/auxv.h next to dlfcn.h in the
+HEADERS_RM line that applies when HAVE_SHARED is unset, as a way around
+the link error of the day -- a package that probed for getauxval would
+not find a declaration and would take its fallback path. That error is
+gone and the workaround outlived it: a static sysroot installs 70 of the
+71 headers in include/sys, and the one missing is auxv.h.
+
+So a static configuration of, say, openssl fails with "sys/auxv.h: No
+such file or directory", which reads like a missing feature rather than
+a withheld declaration.
+
+Measured on riscv64 with a static configuration and gcc 10.5.0: with the
+header installed, a
+statically linked program answers AT_PAGESZ as 4096, matching
+sysconf(_SC_PAGESIZE), returns every entry of /proc/self/auxv unchanged,
+and reports ENOENT for a type that was not passed -- both for a type
+inside the cached range and for one above it, which takes the search
+over the whole vector.
+
+dlfcn.h and bits/dlfcn.h stay removed.
+
+Upstream: https://gogs.waldemar-brodkorb.de/oss/uclibc-ng/commit/6dc9f06a0330f11171f76f4b831724c02642f11f
+Signed-off-by: Ramin Moussavi <lordrasmus@gmail.com>
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+---
+ Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 3b28fbf60..72865863d 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -257,7 +257,7 @@ HEADERS_RM- := \
+ ifeq ($(UCLIBC_STRICT_HEADERS),y)
+ HEADERS_RM- += sgtty.h
+ endif
+-HEADERS_RM-$(HAVE_SHARED) += dlfcn.h bits/dlfcn.h sys/auxv.h
++HEADERS_RM-$(HAVE_SHARED) += dlfcn.h bits/dlfcn.h
+ HEADERS_RM-$(PTHREADS_DEBUG_SUPPORT) += thread_db.h
+ HEADERS_RM-$(UCLIBC_HAS_ARGP) += argp.h
+ HEADERS_RM-$(UCLIBC_HAS_BSD_ERR) += err.h
+--
+2.47.3
+
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Buildroot] [git commit] package/uclibc: add missing sys/auxv.h for static builds
2026-10-13 8:13 [Buildroot] [git commit] package/uclibc: add missing sys/auxv.h for static builds Thomas Petazzoni via buildroot
@ 2026-10-13 8:21 ` Yegor Yefremov via buildroot
2026-10-13 9:16 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 3+ messages in thread
From: Yegor Yefremov via buildroot @ 2026-10-13 8:21 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: buildroot
Waldemar, Thomas,
On Tue, Oct 13, 2026 at 10:14 AM Thomas Petazzoni via buildroot
<buildroot@buildroot.org> wrote:
>
> commit: https://gitlab.com/buildroot.org/buildroot/-/commit/471feacb2d9c13190d635721208b9d31e995d04e
> branch: https://gitlab.com/buildroot.org/buildroot/-/tree/master
>
> getauxval() works fine for static builds. This was already fixed
> a while ago, see the commit message of the patch for more details.
Does this mean we no longer need this fix?
https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/938
Regards,
Yegor
> Fixes:
> - https://autobuild.buildroot.net/results/f03/f03380ef48cea232e4958084eae419d5516f4ef4
>
> Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> ---
> ...nstall-sys-auxv.h-for-static-builds-again.patch | 57 ++++++++++++++++++++++
> 1 file changed, 57 insertions(+)
>
> diff --git a/package/uclibc/0006-buildsys-install-sys-auxv.h-for-static-builds-again.patch b/package/uclibc/0006-buildsys-install-sys-auxv.h-for-static-builds-again.patch
> new file mode 100644
> index 0000000000..74d14b5501
> --- /dev/null
> +++ b/package/uclibc/0006-buildsys-install-sys-auxv.h-for-static-builds-again.patch
> @@ -0,0 +1,57 @@
> +From 6dc9f06a0330f11171f76f4b831724c02642f11f Mon Sep 17 00:00:00 2001
> +From: ramin <lordrasmus@gmail.com>
> +Date: Mon, 12 Oct 2026 16:30:56 +0200
> +Subject: [PATCH] buildsys: install sys/auxv.h for static builds again
> +
> +getauxval() has not needed ld.so since 227b7c825 and 737a0edf4 ("Make
> +getauxval work with static linking", "Support non-cached entries in
> +getauxval", v1.0.52): _dl_auxvt and _dl_auxv_start are defined in
> +libc/misc/elf/dl-support.c for the static libc, and __uClibc_main calls
> +_dl_aux_init() on that path too. The static libc.a carries getauxval,
> +__getauxval, _dl_aux_init, _dl_auxvt and _dl_auxv_start.
> +
> +Its header is still withheld, though. df81bd1e2 ("getauxval: remove
> +header for static builds") put sys/auxv.h next to dlfcn.h in the
> +HEADERS_RM line that applies when HAVE_SHARED is unset, as a way around
> +the link error of the day -- a package that probed for getauxval would
> +not find a declaration and would take its fallback path. That error is
> +gone and the workaround outlived it: a static sysroot installs 70 of the
> +71 headers in include/sys, and the one missing is auxv.h.
> +
> +So a static configuration of, say, openssl fails with "sys/auxv.h: No
> +such file or directory", which reads like a missing feature rather than
> +a withheld declaration.
> +
> +Measured on riscv64 with a static configuration and gcc 10.5.0: with the
> +header installed, a
> +statically linked program answers AT_PAGESZ as 4096, matching
> +sysconf(_SC_PAGESIZE), returns every entry of /proc/self/auxv unchanged,
> +and reports ENOENT for a type that was not passed -- both for a type
> +inside the cached range and for one above it, which takes the search
> +over the whole vector.
> +
> +dlfcn.h and bits/dlfcn.h stay removed.
> +
> +Upstream: https://gogs.waldemar-brodkorb.de/oss/uclibc-ng/commit/6dc9f06a0330f11171f76f4b831724c02642f11f
> +Signed-off-by: Ramin Moussavi <lordrasmus@gmail.com>
> +Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
> +---
> + Makefile.in | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/Makefile.in b/Makefile.in
> +index 3b28fbf60..72865863d 100644
> +--- a/Makefile.in
> ++++ b/Makefile.in
> +@@ -257,7 +257,7 @@ HEADERS_RM- := \
> + ifeq ($(UCLIBC_STRICT_HEADERS),y)
> + HEADERS_RM- += sgtty.h
> + endif
> +-HEADERS_RM-$(HAVE_SHARED) += dlfcn.h bits/dlfcn.h sys/auxv.h
> ++HEADERS_RM-$(HAVE_SHARED) += dlfcn.h bits/dlfcn.h
> + HEADERS_RM-$(PTHREADS_DEBUG_SUPPORT) += thread_db.h
> + HEADERS_RM-$(UCLIBC_HAS_ARGP) += argp.h
> + HEADERS_RM-$(UCLIBC_HAS_BSD_ERR) += err.h
> +--
> +2.47.3
> +
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Buildroot] [git commit] package/uclibc: add missing sys/auxv.h for static builds
2026-10-13 8:21 ` Yegor Yefremov via buildroot
@ 2026-10-13 9:16 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-13 9:16 UTC (permalink / raw)
To: Yegor Yefremov; +Cc: buildroot
On Tue, Oct 13, 2026 at 10:21:48AM +0200, Yegor Yefremov wrote:
> Waldemar, Thomas,
>
> On Tue, Oct 13, 2026 at 10:14 AM Thomas Petazzoni via buildroot
> <buildroot@buildroot.org> wrote:
> >
> > commit: https://gitlab.com/buildroot.org/buildroot/-/commit/471feacb2d9c13190d635721208b9d31e995d04e
> > branch: https://gitlab.com/buildroot.org/buildroot/-/tree/master
> >
> > getauxval() works fine for static builds. This was already fixed
> > a while ago, see the commit message of the patch for more details.
>
> Does this mean we no longer need this fix?
>
> https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/938
I'd say indeed, this fix is probably no longer needed.
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-10-13 9:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-13 8:13 [Buildroot] [git commit] package/uclibc: add missing sys/auxv.h for static builds Thomas Petazzoni via buildroot
2026-10-13 8:21 ` Yegor Yefremov via buildroot
2026-10-13 9:16 ` Thomas Petazzoni via buildroot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.