* [Buildroot] [PATCH 1/1] package/autossh: fix build with gcc >= 14
@ 2024-07-20 14:26 Fabrice Fontaine
2024-07-20 21:00 ` Thomas Petazzoni via buildroot
2024-08-29 6:07 ` Peter Korsgaard
0 siblings, 2 replies; 3+ messages in thread
From: Fabrice Fontaine @ 2024-07-20 14:26 UTC (permalink / raw)
To: buildroot; +Cc: Fabrice Fontaine
Include stdio.h to avoid that __progname check wrongly returned that
the function is unavailable with gcc >= 14 which enables
-Werror=implicit-function-declaration
(https://gcc.gnu.org/gcc-14/porting_to.html):
configure:5231: checking if libc defines __progname
configure:5249: /home/autobuild/autobuild/instance-7/output-1/host/bin/sh4-buildroot-linux-musl-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -static -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static conftest.c >&5
conftest.c: In function 'main':
conftest.c:73:27: error: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
73 | extern char *__progname; printf("%s", __progname);
| ^~~~~~
conftest.c:1:1: note: include '<stdio.h>' or provide a declaration of 'printf'
1 | /* confdefs.h */
conftest.c:73:27: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
73 | extern char *__progname; printf("%s", __progname);
| ^~~~~~
conftest.c:73:27: note: include '<stdio.h>' or provide a declaration of 'printf'
resulting in the following static build failure:
/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/sh4-buildroot-linux-musl/14.1.0/../../../../sh4-buildroot-linux-musl/bin/ld: /home/autobuild/autobuild/instance-7/output-1/host/sh4-buildroot-linux-musl/sysroot/lib/libc.a(libc.o):(.bss.__progname+0x0): multiple definition of `__progname'; autossh.o:(.bss+0x120): first defined here
Fixes:
- http://autobuild.buildroot.org/results/5d80a8096d0f5529cbd86903a74f3bab3d230f4a
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
....ac-fix-__progname-check-with-gcc-14.patch | 52 +++++++++++++++++++
package/autossh/autossh.mk | 1 +
2 files changed, 53 insertions(+)
create mode 100644 package/autossh/0001-configure.ac-fix-__progname-check-with-gcc-14.patch
diff --git a/package/autossh/0001-configure.ac-fix-__progname-check-with-gcc-14.patch b/package/autossh/0001-configure.ac-fix-__progname-check-with-gcc-14.patch
new file mode 100644
index 0000000000..a517328110
--- /dev/null
+++ b/package/autossh/0001-configure.ac-fix-__progname-check-with-gcc-14.patch
@@ -0,0 +1,52 @@
+From 3a74eff481f37975e04f00db4923b1c16f93497d Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sat, 20 Jul 2024 16:06:37 +0200
+Subject: [PATCH] configure.ac: fix __progname check with gcc >= 14
+
+Include stdio.h to avoid that __progname check wrongly returns that
+the function is unavailable with gcc >= 14 which enables
+-Werror=implicit-function-declaration
+(https://gcc.gnu.org/gcc-14/porting_to.html):
+
+configure:5231: checking if libc defines __progname
+configure:5249: /home/autobuild/autobuild/instance-7/output-1/host/bin/sh4-buildroot-linux-musl-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -static -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static conftest.c >&5
+conftest.c: In function 'main':
+conftest.c:73:27: error: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
+ 73 | extern char *__progname; printf("%s", __progname);
+ | ^~~~~~
+conftest.c:1:1: note: include '<stdio.h>' or provide a declaration of 'printf'
+ 1 | /* confdefs.h */
+conftest.c:73:27: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
+ 73 | extern char *__progname; printf("%s", __progname);
+ | ^~~~~~
+conftest.c:73:27: note: include '<stdio.h>' or provide a declaration of 'printf'
+
+resulting in the following static build failure:
+
+/home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/sh4-buildroot-linux-musl/14.1.0/../../../../sh4-buildroot-linux-musl/bin/ld: /home/autobuild/autobuild/instance-7/output-1/host/sh4-buildroot-linux-musl/sysroot/lib/libc.a(libc.o):(.bss.__progname+0x0): multiple definition of `__progname'; autossh.o:(.bss+0x120): first defined here
+
+Fixes:
+ - http://autobuild.buildroot.org/results/5d80a8096d0f5529cbd86903a74f3bab3d230f4a
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Upstream: https://github.com/Autossh/autossh/pull/9
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4bb9380..dadb523 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -132,7 +132,7 @@ AC_CHECK_LIB(socket, connect)
+ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ AC_CACHE_CHECK([if libc defines __progname], ac_cv_libc_defines___progname, [
+- AC_TRY_LINK([],
++ AC_TRY_LINK([ #include <stdio.h> ],
+ [ extern char *__progname; printf("%s", __progname); ],
+ [ ac_cv_libc_defines___progname="yes" ],
+ [ ac_cv_libc_defines___progname="no" ]
+--
+2.43.0
+
diff --git a/package/autossh/autossh.mk b/package/autossh/autossh.mk
index 899e5cdb52..fbb525bcca 100644
--- a/package/autossh/autossh.mk
+++ b/package/autossh/autossh.mk
@@ -10,6 +10,7 @@ AUTOSSH_SOURCE = autossh-$(AUTOSSH_VERSION).tgz
AUTOSSH_LICENSE = Modified BSD
AUTOSSH_LICENSE_FILES = autossh.c
# Fix AC_ARG_WITH code generation for --with-ssh
+# 0001-configure.ac-fix-__progname-check-with-gcc-14.patch
AUTOSSH_AUTORECONF = YES
AUTOSSH_CONF_OPTS = --with-ssh=/usr/bin/ssh
--
2.43.0
_______________________________________________
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] [PATCH 1/1] package/autossh: fix build with gcc >= 14
2024-07-20 14:26 [Buildroot] [PATCH 1/1] package/autossh: fix build with gcc >= 14 Fabrice Fontaine
@ 2024-07-20 21:00 ` Thomas Petazzoni via buildroot
2024-08-29 6:07 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-07-20 21:00 UTC (permalink / raw)
To: Fabrice Fontaine; +Cc: buildroot
On Sat, 20 Jul 2024 16:26:29 +0200
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> Include stdio.h to avoid that __progname check wrongly returned that
> the function is unavailable with gcc >= 14 which enables
> -Werror=implicit-function-declaration
> (https://gcc.gnu.org/gcc-14/porting_to.html):
>
> configure:5231: checking if libc defines __progname
> configure:5249: /home/autobuild/autobuild/instance-7/output-1/host/bin/sh4-buildroot-linux-musl-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -static -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static conftest.c >&5
> conftest.c: In function 'main':
> conftest.c:73:27: error: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
> 73 | extern char *__progname; printf("%s", __progname);
> | ^~~~~~
> conftest.c:1:1: note: include '<stdio.h>' or provide a declaration of 'printf'
> 1 | /* confdefs.h */
> conftest.c:73:27: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
> 73 | extern char *__progname; printf("%s", __progname);
> | ^~~~~~
> conftest.c:73:27: note: include '<stdio.h>' or provide a declaration of 'printf'
>
> resulting in the following static build failure:
>
> /home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/sh4-buildroot-linux-musl/14.1.0/../../../../sh4-buildroot-linux-musl/bin/ld: /home/autobuild/autobuild/instance-7/output-1/host/sh4-buildroot-linux-musl/sysroot/lib/libc.a(libc.o):(.bss.__progname+0x0): multiple definition of `__progname'; autossh.o:(.bss+0x120): first defined here
>
> Fixes:
> - http://autobuild.buildroot.org/results/5d80a8096d0f5529cbd86903a74f3bab3d230f4a
>
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
> ....ac-fix-__progname-check-with-gcc-14.patch | 52 +++++++++++++++++++
> package/autossh/autossh.mk | 1 +
> 2 files changed, 53 insertions(+)
> create mode 100644 package/autossh/0001-configure.ac-fix-__progname-check-with-gcc-14.patch
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
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
* Re: [Buildroot] [PATCH 1/1] package/autossh: fix build with gcc >= 14
2024-07-20 14:26 [Buildroot] [PATCH 1/1] package/autossh: fix build with gcc >= 14 Fabrice Fontaine
2024-07-20 21:00 ` Thomas Petazzoni via buildroot
@ 2024-08-29 6:07 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2024-08-29 6:07 UTC (permalink / raw)
To: Fabrice Fontaine; +Cc: buildroot
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:
> Include stdio.h to avoid that __progname check wrongly returned that
> the function is unavailable with gcc >= 14 which enables
> -Werror=implicit-function-declaration
> (https://gcc.gnu.org/gcc-14/porting_to.html):
> configure:5231: checking if libc defines __progname
> configure:5249:
> /home/autobuild/autobuild/instance-7/output-1/host/bin/sh4-buildroot-linux-musl-gcc
> -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
> -D_FILE_OFFSET_BITS=64 -Os -g0 -static -Wall -D_LARGEFILE_SOURCE
> -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static conftest.c >&5
> conftest.c: In function 'main':
> conftest.c:73:27: error: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
> 73 | extern char *__progname; printf("%s", __progname);
> | ^~~~~~
> conftest.c:1:1: note: include '<stdio.h>' or provide a declaration of 'printf'
> 1 | /* confdefs.h */
> conftest.c:73:27: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
> 73 | extern char *__progname; printf("%s", __progname);
> | ^~~~~~
> conftest.c:73:27: note: include '<stdio.h>' or provide a declaration of 'printf'
> resulting in the following static build failure:
> /home/autobuild/autobuild/instance-7/output-1/host/lib/gcc/sh4-buildroot-linux-musl/14.1.0/../../../../sh4-buildroot-linux-musl/bin/ld:
> /home/autobuild/autobuild/instance-7/output-1/host/sh4-buildroot-linux-musl/sysroot/lib/libc.a(libc.o):(.bss.__progname+0x0):
> multiple definition of `__progname'; autossh.o:(.bss+0x120): first
> defined here
> Fixes:
> - http://autobuild.buildroot.org/results/5d80a8096d0f5529cbd86903a74f3bab3d230f4a
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Committed to 2024.05.x, thanks.
--
Bye, Peter Korsgaard
_______________________________________________
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:[~2024-08-29 6:07 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-20 14:26 [Buildroot] [PATCH 1/1] package/autossh: fix build with gcc >= 14 Fabrice Fontaine
2024-07-20 21:00 ` Thomas Petazzoni via buildroot
2024-08-29 6:07 ` Peter Korsgaard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox