All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/bayer2rgb-neon: fix build
@ 2022-06-26  8:45 Fabrice Fontaine
  2022-07-20 16:33 ` Thomas Petazzoni via buildroot
  2022-08-11 11:45 ` Peter Korsgaard
  0 siblings, 2 replies; 3+ messages in thread
From: Fabrice Fontaine @ 2022-06-26  8:45 UTC (permalink / raw)
  To: buildroot; +Cc: Eloi Bail, Fabrice Fontaine

Fix the following build failure:

/home/autobuild/autobuild/instance-12/output-1/host/lib/gcc/aarch64-buildroot-linux-uclibc/10.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: ./.libs/libbayer2rgb3.so: undefined reference to `__bayer2rgb_missing_convert_dumb_implementation'

Fixes:
 - http://autobuild.buildroot.org/results/69a637b7f1422ce2bf04dda573abb09388b9a02d

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 ...-src-convert.c-remove-have_cplusplus.patch | 56 +++++++++++++++++++
 1 file changed, 56 insertions(+)
 create mode 100644 package/bayer2rgb-neon/0001-src-convert.c-remove-have_cplusplus.patch

diff --git a/package/bayer2rgb-neon/0001-src-convert.c-remove-have_cplusplus.patch b/package/bayer2rgb-neon/0001-src-convert.c-remove-have_cplusplus.patch
new file mode 100644
index 0000000000..71a6291a3c
--- /dev/null
+++ b/package/bayer2rgb-neon/0001-src-convert.c-remove-have_cplusplus.patch
@@ -0,0 +1,56 @@
+From ca68dadf585aadb8adf582cd94f8fcdd4592e09f Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sun, 26 Jun 2022 10:31:49 +0200
+Subject: [PATCH] src/convert.c: remove have_cplusplus
+
+Remove have_cplusplus function for simplicity and to avoid the following
+build failure:
+
+/home/autobuild/autobuild/instance-12/output-1/host/lib/gcc/aarch64-buildroot-linux-uclibc/10.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: ./.libs/libbayer2rgb3.so: undefined reference to `__bayer2rgb_missing_convert_dumb_implementation'
+
+Fixes:
+ - http://autobuild.buildroot.org/results/69a637b7f1422ce2bf04dda573abb09388b9a02d
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ src/convert.c | 19 +++++--------------
+ 1 file changed, 5 insertions(+), 14 deletions(-)
+
+diff --git a/src/convert.c b/src/convert.c
+index c852a14..83d631d 100644
+--- a/src/convert.c
++++ b/src/convert.c
+@@ -27,25 +27,16 @@ static bool have_neon()
+ #endif
+ }
+ 
+-static bool have_cplusplus()
+-{
+-#ifdef HAVE_CPLUSPLUS
+-	return true;
+-#else
+-	return false;
+-#endif
+-}
+-
+ void bayer2rgb_convert_dumb(struct image_in const *input,
+ 			    struct image_out const *output,
+ 			    struct image_conversion_info *info)
+ {
++#ifdef HAVE_CPLUSPLUS
++	return bayer2rgb_convert_cc(input, output, info);
++#else
+ 	extern void __bayer2rgb_missing_convert_dumb_implementation();
+-
+-	if (have_cplusplus())
+-		return bayer2rgb_convert_cc(input, output, info);
+-	else
+-		__bayer2rgb_missing_convert_dumb_implementation();
++	__bayer2rgb_missing_convert_dumb_implementation();
++#endif
+ }
+ 
+ void bayer2rgb_convert(struct image_in const *input,
+-- 
+2.35.1
+
-- 
2.35.1

_______________________________________________
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/bayer2rgb-neon: fix build
  2022-06-26  8:45 [Buildroot] [PATCH 1/1] package/bayer2rgb-neon: fix build Fabrice Fontaine
@ 2022-07-20 16:33 ` Thomas Petazzoni via buildroot
  2022-08-11 11:45 ` Peter Korsgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2022-07-20 16:33 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: Eloi Bail, buildroot

On Sun, 26 Jun 2022 10:45:17 +0200
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> Fix the following build failure:
> 
> /home/autobuild/autobuild/instance-12/output-1/host/lib/gcc/aarch64-buildroot-linux-uclibc/10.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: ./.libs/libbayer2rgb3.so: undefined reference to `__bayer2rgb_missing_convert_dumb_implementation'
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/69a637b7f1422ce2bf04dda573abb09388b9a02d
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
>  ...-src-convert.c-remove-have_cplusplus.patch | 56 +++++++++++++++++++
>  1 file changed, 56 insertions(+)
>  create mode 100644 package/bayer2rgb-neon/0001-src-convert.c-remove-have_cplusplus.patch

I have applied to fix the immediate build issue, but I am not entirely
convinced this is the completely correct fix.

Indeed, the function __bayer2rgb_missing_convert_dumb_implementation()
is not implemented anywhere. So as soon as C++ support is not
available, bayer2rgb-neon doesn't build. So the correct fix would be
(IMO) to drop this logic, and make C++ a requirement in the
configure.ac script.

Normally, this call to
__bayer2rgb_missing_convert_dumb_implementation() gets optimized away
by the dead code elimination gcc optimizations. But when you build with
-Og as it is the case in the autobuilder failure you're pointing to,
such optimization does not take place, and the call to
__bayer2rgb_missing_convert_dumb_implementation() is preserved, even
though it is never invoked practically at runtime.

Best regards,

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/bayer2rgb-neon: fix build
  2022-06-26  8:45 [Buildroot] [PATCH 1/1] package/bayer2rgb-neon: fix build Fabrice Fontaine
  2022-07-20 16:33 ` Thomas Petazzoni via buildroot
@ 2022-08-11 11:45 ` Peter Korsgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2022-08-11 11:45 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: Eloi Bail, buildroot

>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:

 > Fix the following build failure:
 > /home/autobuild/autobuild/instance-12/output-1/host/lib/gcc/aarch64-buildroot-linux-uclibc/10.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld:
 > ./.libs/libbayer2rgb3.so: undefined reference to
 > `__bayer2rgb_missing_convert_dumb_implementation'

 > Fixes:
 >  - http://autobuild.buildroot.org/results/69a637b7f1422ce2bf04dda573abb09388b9a02d

 > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

Committed to 2022.05.x and 2022.02.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:[~2022-08-11 11:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-26  8:45 [Buildroot] [PATCH 1/1] package/bayer2rgb-neon: fix build Fabrice Fontaine
2022-07-20 16:33 ` Thomas Petazzoni via buildroot
2022-08-11 11:45 ` Peter Korsgaard

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.