[openwrt/openwrt] uml: fix glibc-static check with GCC14
LEDE Commits
lede-commits at lists.infradead.org
Sat Jun 22 13:06:09 PDT 2024
robimarko pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/0ed72c271b13078d2daff45349368ed80d4a1fd5
commit 0ed72c271b13078d2daff45349368ed80d4a1fd5
Author: Robert Marko <robimarko at gmail.com>
AuthorDate: Sat Jun 22 21:57:23 2024 +0200
uml: fix glibc-static check with GCC14
Running the glibc-static check with GCC14 as the host compiler will fail:
Please install a static glibc package. (Missing libutil.a, librt.a or libpthread.a)
However, this error will get printed even with the required static
libraries installed when GCC14 is used.
Manually running the check exposes the real error:
<stdin>: In function ‘main’:
<stdin>:1:45: error: implicit declaration of function ‘timer_gettime’ [-Wimplicit-function-declaration]
GCC14 now errors on implicit declarations by default, so lets add the
required time.h header to fix compilation and thus the check.
Link: https://github.com/openwrt/openwrt/pull/15778
Signed-off-by: Robert Marko <robimarko at gmail.com>
---
target/linux/uml/image/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target/linux/uml/image/Makefile b/target/linux/uml/image/Makefile
index 45ab0cfbcd..f00ccab0e4 100644
--- a/target/linux/uml/image/Makefile
+++ b/target/linux/uml/image/Makefile
@@ -30,4 +30,4 @@ $(eval $(call BuildImage))
$(eval $(call TestHostCommand,glibc-static, \
Please install a static glibc package. (Missing libutil.a, librt.a or libpthread.a), \
echo 'int main(int argc, char **argv) { login(0); timer_gettime(0, 0); return 0; }' | \
- gcc -include utmp.h -x c -o $(TMP_DIR)/a.out - -static -lutil -lrt))
+ gcc -include utmp.h -include time.h -x c -o $(TMP_DIR)/a.out - -static -lutil -lrt))
More information about the lede-commits
mailing list