[libcamera-devel] rpi: controller: awb: Include <functional>
diff mbox series

Message ID 20220728155433.11579-1-jacopo@jmondi.org
State Not Applicable, archived
Headers show
Series
  • [libcamera-devel] rpi: controller: awb: Include <functional>
Related show

Commit Message

Jacopo Mondi July 28, 2022, 3:54 p.m. UTC
Building on gcc8 on Debian 10 fails with:

 asyncThread_ = std::thread(std::bind(&Awb::asyncFunc, this));
../src/ipa/raspberrypi/controller/rpi/awb.cpp:177:34: note: ‘std::bind’
is defined in header ‘<functional>’; did you forget to ‘#include
<functional>’?

Fix that by including <functional> in awb.cpp.

Reported-by: https://buildbot.libcamera.org/#/builders/6/builds/414
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>

---
I diff-ed to check if std::bind() was introduced in the last great refactor,
but it seems to be there since 0db2c8dc75e466e7648dc1b95380495c6a126349 from
May 2020. Can't tell why it didn't fail so far, nor why it only fails on gcc8.

But it does anyway fix the build:
https://buildbot.libcamera.org/#/builders/6/builds/421
---
 src/ipa/raspberrypi/controller/rpi/awb.cpp | 2 ++
 1 file changed, 2 insertions(+)

--
2.37.1

Comments

Laurent Pinchart July 28, 2022, 3:59 p.m. UTC | #1
Hi Jacopo,

Thank you for the patch.

On Thu, Jul 28, 2022 at 05:54:33PM +0200, Jacopo Mondi via libcamera-devel wrote:
> Building on gcc8 on Debian 10 fails with:
> 
>  asyncThread_ = std::thread(std::bind(&Awb::asyncFunc, this));
> ../src/ipa/raspberrypi/controller/rpi/awb.cpp:177:34: note: ‘std::bind’
> is defined in header ‘<functional>’; did you forget to ‘#include
> <functional>’?
> 
> Fix that by including <functional> in awb.cpp.
> 
> Reported-by: https://buildbot.libcamera.org/#/builders/6/builds/414
> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
> 
> ---
> I diff-ed to check if std::bind() was introduced in the last great refactor,
> but it seems to be there since 0db2c8dc75e466e7648dc1b95380495c6a126349 from
> May 2020. Can't tell why it didn't fail so far, nor why it only fails on gcc8.
> 
> But it does anyway fix the build:
> https://buildbot.libcamera.org/#/builders/6/builds/421

Could it come from commit c1597f989654 that dropped the dependency on
boost, changing the indirect inclusion chains ?

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

possibly with a fixes tag.

> ---
>  src/ipa/raspberrypi/controller/rpi/awb.cpp | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/ipa/raspberrypi/controller/rpi/awb.cpp b/src/ipa/raspberrypi/controller/rpi/awb.cpp
> index 6c2b627d234b..94629b121eb0 100644
> --- a/src/ipa/raspberrypi/controller/rpi/awb.cpp
> +++ b/src/ipa/raspberrypi/controller/rpi/awb.cpp
> @@ -5,6 +5,8 @@
>   * awb.cpp - AWB control algorithm
>   */
> 
> +#include <functional>
> +
>  #include <libcamera/base/log.h>
> 
>  #include "../lux_status.h"
Jacopo Mondi July 28, 2022, 4:08 p.m. UTC | #2
Hi Laurent,

On Thu, Jul 28, 2022 at 06:59:55PM +0300, Laurent Pinchart wrote:
> Hi Jacopo,
>
> Thank you for the patch.
>
> On Thu, Jul 28, 2022 at 05:54:33PM +0200, Jacopo Mondi via libcamera-devel wrote:
> > Building on gcc8 on Debian 10 fails with:
> >
> >  asyncThread_ = std::thread(std::bind(&Awb::asyncFunc, this));
> > ../src/ipa/raspberrypi/controller/rpi/awb.cpp:177:34: note: ‘std::bind’
> > is defined in header ‘<functional>’; did you forget to ‘#include
> > <functional>’?
> >
> > Fix that by including <functional> in awb.cpp.
> >
> > Reported-by: https://buildbot.libcamera.org/#/builders/6/builds/414
> > Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
> >
> > ---
> > I diff-ed to check if std::bind() was introduced in the last great refactor,
> > but it seems to be there since 0db2c8dc75e466e7648dc1b95380495c6a126349 from
> > May 2020. Can't tell why it didn't fail so far, nor why it only fails on gcc8.
> >
> > But it does anyway fix the build:
> > https://buildbot.libcamera.org/#/builders/6/builds/421
>
> Could it come from commit c1597f989654 that dropped the dependency on
> boost, changing the indirect inclusion chains ?
>

Ah yes

> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>
> possibly with a fixes tag.
>

Will add when applying!

> > ---
> >  src/ipa/raspberrypi/controller/rpi/awb.cpp | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/src/ipa/raspberrypi/controller/rpi/awb.cpp b/src/ipa/raspberrypi/controller/rpi/awb.cpp
> > index 6c2b627d234b..94629b121eb0 100644
> > --- a/src/ipa/raspberrypi/controller/rpi/awb.cpp
> > +++ b/src/ipa/raspberrypi/controller/rpi/awb.cpp
> > @@ -5,6 +5,8 @@
> >   * awb.cpp - AWB control algorithm
> >   */
> >
> > +#include <functional>
> > +
> >  #include <libcamera/base/log.h>
> >
> >  #include "../lux_status.h"
>
> --
> Regards,
>
> Laurent Pinchart

Patch
diff mbox series

diff --git a/src/ipa/raspberrypi/controller/rpi/awb.cpp b/src/ipa/raspberrypi/controller/rpi/awb.cpp
index 6c2b627d234b..94629b121eb0 100644
--- a/src/ipa/raspberrypi/controller/rpi/awb.cpp
+++ b/src/ipa/raspberrypi/controller/rpi/awb.cpp
@@ -5,6 +5,8 @@ 
  * awb.cpp - AWB control algorithm
  */

+#include <functional>
+
 #include <libcamera/base/log.h>

 #include "../lux_status.h"