[libcamera-devel,0/2] libcamera: Fix compilation with gcc 8.3.0
mbox series

Message ID 20221009044440.21499-1-laurent.pinchart@ideasonboard.com
Headers show
Series
  • libcamera: Fix compilation with gcc 8.3.0
Related show

Message

Laurent Pinchart Oct. 9, 2022, 4:44 a.m. UTC
Hello,

It is with great sadness that I have to announce the removal of
utils::defopt. This feature causes compilation failures with gcc 8.0.0
to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
support until June 2024, making it an important target.

I'm sure nobody but me will miss utils::defopt, so I'll get over it.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521

Laurent Pinchart (2):
  ipa: rkisp1: Drop use of utils::defopt
  libcamera: base: utils: Drop defopt

 include/libcamera/base/utils.h    | 14 --------
 src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
 src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
 src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
 src/libcamera/base/utils.cpp      | 21 ------------
 test/utils.cpp                    | 53 -------------------------------
 6 files changed, 9 insertions(+), 97 deletions(-)


base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402

Comments

Jacopo Mondi Oct. 10, 2022, 8:36 a.m. UTC | #1
Hi Laurent

On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
> Hello,
>
> It is with great sadness that I have to announce the removal of
> utils::defopt. This feature causes compilation failures with gcc 8.0.0
> to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
> find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
> support until June 2024, making it an important target.
>
> I'm sure nobody but me will miss utils::defopt, so I'll get over it.

I'm sorry :(
But happy gcc8.3 gets fixed

Rafael, would you be able to test this and provide a tag ?

For the series
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>

Thanks
  j

>
> [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
>
> Laurent Pinchart (2):
>   ipa: rkisp1: Drop use of utils::defopt
>   libcamera: base: utils: Drop defopt
>
>  include/libcamera/base/utils.h    | 14 --------
>  src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
>  src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
>  src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
>  src/libcamera/base/utils.cpp      | 21 ------------
>  test/utils.cpp                    | 53 -------------------------------
>  6 files changed, 9 insertions(+), 97 deletions(-)
>
>
> base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
> --
> Regards,
>
> Laurent Pinchart
>
Rafael Diniz Oct. 10, 2022, 8:54 a.m. UTC | #2
Sure. I will test asap.

Thanks for the fix!

Rafael

On 10/10/22 11:36, Jacopo Mondi wrote:
> Hi Laurent
> 
> On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
>> Hello,
>>
>> It is with great sadness that I have to announce the removal of
>> utils::defopt. This feature causes compilation failures with gcc 8.0.0
>> to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
>> find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
>> support until June 2024, making it an important target.
>>
>> I'm sure nobody but me will miss utils::defopt, so I'll get over it.
> 
> I'm sorry :(
> But happy gcc8.3 gets fixed
> 
> Rafael, would you be able to test this and provide a tag ?
> 
> For the series
> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> 
> Thanks
>    j
> 
>>
>> [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
>>
>> Laurent Pinchart (2):
>>    ipa: rkisp1: Drop use of utils::defopt
>>    libcamera: base: utils: Drop defopt
>>
>>   include/libcamera/base/utils.h    | 14 --------
>>   src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
>>   src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
>>   src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
>>   src/libcamera/base/utils.cpp      | 21 ------------
>>   test/utils.cpp                    | 53 -------------------------------
>>   6 files changed, 9 insertions(+), 97 deletions(-)
>>
>>
>> base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
>> --
>> Regards,
>>
>> Laurent Pinchart
>>
Rafael Diniz Oct. 10, 2022, 9:04 a.m. UTC | #3
Btw, this was not committed to master yet, right? Last commit I see is 3 
days old.

Rafael

On 10/10/22 11:36, Jacopo Mondi wrote:
> Hi Laurent
> 
> On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
>> Hello,
>>
>> It is with great sadness that I have to announce the removal of
>> utils::defopt. This feature causes compilation failures with gcc 8.0.0
>> to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
>> find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
>> support until June 2024, making it an important target.
>>
>> I'm sure nobody but me will miss utils::defopt, so I'll get over it.
> 
> I'm sorry :(
> But happy gcc8.3 gets fixed
> 
> Rafael, would you be able to test this and provide a tag ?
> 
> For the series
> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> 
> Thanks
>    j
> 
>>
>> [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
>>
>> Laurent Pinchart (2):
>>    ipa: rkisp1: Drop use of utils::defopt
>>    libcamera: base: utils: Drop defopt
>>
>>   include/libcamera/base/utils.h    | 14 --------
>>   src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
>>   src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
>>   src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
>>   src/libcamera/base/utils.cpp      | 21 ------------
>>   test/utils.cpp                    | 53 -------------------------------
>>   6 files changed, 9 insertions(+), 97 deletions(-)
>>
>>
>> base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
>> --
>> Regards,
>>
>> Laurent Pinchart
>>
Jacopo Mondi Oct. 10, 2022, 9:27 a.m. UTC | #4
Hi Rafal

On Mon, Oct 10, 2022 at 12:04:51PM +0300, Rafael Diniz wrote:
> Btw, this was not committed to master yet, right? Last commit I see is 3
> days old.

No it's not, it's still in active review/testing.
That's why I asked if you can give it a go ;)

>
> Rafael
>
> On 10/10/22 11:36, Jacopo Mondi wrote:
> > Hi Laurent
> >
> > On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
> > > Hello,
> > >
> > > It is with great sadness that I have to announce the removal of
> > > utils::defopt. This feature causes compilation failures with gcc 8.0.0
> > > to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
> > > find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
> > > support until June 2024, making it an important target.
> > >
> > > I'm sure nobody but me will miss utils::defopt, so I'll get over it.
> >
> > I'm sorry :(
> > But happy gcc8.3 gets fixed
> >
> > Rafael, would you be able to test this and provide a tag ?
> >
> > For the series
> > Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> >
> > Thanks
> >    j
> >
> > >
> > > [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
> > >
> > > Laurent Pinchart (2):
> > >    ipa: rkisp1: Drop use of utils::defopt
> > >    libcamera: base: utils: Drop defopt
> > >
> > >   include/libcamera/base/utils.h    | 14 --------
> > >   src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
> > >   src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
> > >   src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
> > >   src/libcamera/base/utils.cpp      | 21 ------------
> > >   test/utils.cpp                    | 53 -------------------------------
> > >   6 files changed, 9 insertions(+), 97 deletions(-)
> > >
> > >
> > > base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
> > > --
> > > Regards,
> > >
> > > Laurent Pinchart
> > >
Kieran Bingham Oct. 10, 2022, 1:28 p.m. UTC | #5
Quoting Jacopo Mondi via libcamera-devel (2022-10-10 09:36:49)
> Hi Laurent
> 
> On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
> > Hello,
> >
> > It is with great sadness that I have to announce the removal of
> > utils::defopt. This feature causes compilation failures with gcc 8.0.0
> > to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
> > find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
> > support until June 2024, making it an important target.
> >
> > I'm sure nobody but me will miss utils::defopt, so I'll get over it.
> 
> I'm sorry :(
> But happy gcc8.3 gets fixed

Seeing it go, I can see some of it's benefits. ... but I agree removing
it will help fix things for now.

Seems like we should note somewhere that we might want to re-introduce
this when we bump our minimum gcc version - but I'm not sure of where
would be suitable.


> Rafael, would you be able to test this and provide a tag ?
> 

Worth waiting for this still but:


Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

> For the series
> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> 
> Thanks
>   j
> 
> >
> > [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
> >
> > Laurent Pinchart (2):
> >   ipa: rkisp1: Drop use of utils::defopt
> >   libcamera: base: utils: Drop defopt
> >
> >  include/libcamera/base/utils.h    | 14 --------
> >  src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
> >  src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
> >  src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
> >  src/libcamera/base/utils.cpp      | 21 ------------
> >  test/utils.cpp                    | 53 -------------------------------
> >  6 files changed, 9 insertions(+), 97 deletions(-)
> >
> >
> > base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
> > --
> > Regards,
> >
> > Laurent Pinchart
> >
Laurent Pinchart Oct. 10, 2022, 1:47 p.m. UTC | #6
Hi Kieran,

On Mon, Oct 10, 2022 at 02:28:46PM +0100, Kieran Bingham wrote:
> Quoting Jacopo Mondi via libcamera-devel (2022-10-10 09:36:49)
> > On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
> > > Hello,
> > >
> > > It is with great sadness that I have to announce the removal of
> > > utils::defopt. This feature causes compilation failures with gcc 8.0.0
> > > to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
> > > find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
> > > support until June 2024, making it an important target.
> > >
> > > I'm sure nobody but me will miss utils::defopt, so I'll get over it.
> > 
> > I'm sorry :(
> > But happy gcc8.3 gets fixed
> 
> Seeing it go, I can see some of it's benefits. ... but I agree removing
> it will help fix things for now.
> 
> Seems like we should note somewhere that we might want to re-introduce
> this when we bump our minimum gcc version - but I'm not sure of where
> would be suitable.

Maybe in a bugzilla entry ?

I considered keeping the implementation of defopt in utils.h and
utils.cpp, with a comment to tell it shouldn't be used for now, but I
don't really like carrying dead code.

> > Rafael, would you be able to test this and provide a tag ?
> 
> Worth waiting for this still but:
> 
> 
> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> 
> > For the series
> > Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> > 
> > Thanks
> >   j
> > 
> > >
> > > [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
> > >
> > > Laurent Pinchart (2):
> > >   ipa: rkisp1: Drop use of utils::defopt
> > >   libcamera: base: utils: Drop defopt
> > >
> > >  include/libcamera/base/utils.h    | 14 --------
> > >  src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
> > >  src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
> > >  src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
> > >  src/libcamera/base/utils.cpp      | 21 ------------
> > >  test/utils.cpp                    | 53 -------------------------------
> > >  6 files changed, 9 insertions(+), 97 deletions(-)
> > >
> > >
> > > base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
Kieran Bingham Oct. 10, 2022, 3:48 p.m. UTC | #7
Quoting Laurent Pinchart (2022-10-10 14:47:14)
> Hi Kieran,
> 
> On Mon, Oct 10, 2022 at 02:28:46PM +0100, Kieran Bingham wrote:
> > Quoting Jacopo Mondi via libcamera-devel (2022-10-10 09:36:49)
> > > On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
> > > > Hello,
> > > >
> > > > It is with great sadness that I have to announce the removal of
> > > > utils::defopt. This feature causes compilation failures with gcc 8.0.0
> > > > to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
> > > > find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
> > > > support until June 2024, making it an important target.
> > > >
> > > > I'm sure nobody but me will miss utils::defopt, so I'll get over it.
> > > 
> > > I'm sorry :(
> > > But happy gcc8.3 gets fixed
> > 
> > Seeing it go, I can see some of it's benefits. ... but I agree removing
> > it will help fix things for now.
> > 
> > Seems like we should note somewhere that we might want to re-introduce
> > this when we bump our minimum gcc version - but I'm not sure of where
> > would be suitable.
> 
> Maybe in a bugzilla entry ?
> 
> I considered keeping the implementation of defopt in utils.h and
> utils.cpp, with a comment to tell it shouldn't be used for now, but I
> don't really like carrying dead code.
> 
> > > Rafael, would you be able to test this and provide a tag ?
> > 
> > Worth waiting for this still but:

I'm afraid I have inadvertently merged this... though I intended to wait
for tested by tags here.

Still, that makes it easy to test, just update to the latest!

--
Kieran


> > 
> > 
> > Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> > 
> > > For the series
> > > Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> > > 
> > > Thanks
> > >   j
> > > 
> > > >
> > > > [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
> > > >
> > > > Laurent Pinchart (2):
> > > >   ipa: rkisp1: Drop use of utils::defopt
> > > >   libcamera: base: utils: Drop defopt
> > > >
> > > >  include/libcamera/base/utils.h    | 14 --------
> > > >  src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
> > > >  src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
> > > >  src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
> > > >  src/libcamera/base/utils.cpp      | 21 ------------
> > > >  test/utils.cpp                    | 53 -------------------------------
> > > >  6 files changed, 9 insertions(+), 97 deletions(-)
> > > >
> > > >
> > > > base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
> 
> -- 
> Regards,
> 
> Laurent Pinchart
Rafael Diniz Oct. 11, 2022, 7:42 a.m. UTC | #8
All good. Compilation works again on Debian 10.

tks!

Rafael

On 10/10/22 18:48, Kieran Bingham via libcamera-devel wrote:
> Quoting Laurent Pinchart (2022-10-10 14:47:14)
>> Hi Kieran,
>>
>> On Mon, Oct 10, 2022 at 02:28:46PM +0100, Kieran Bingham wrote:
>>> Quoting Jacopo Mondi via libcamera-devel (2022-10-10 09:36:49)
>>>> On Sun, Oct 09, 2022 at 07:44:38AM +0300, Laurent Pinchart via libcamera-devel wrote:
>>>>> Hello,
>>>>>
>>>>> It is with great sadness that I have to announce the removal of
>>>>> utils::defopt. This feature causes compilation failures with gcc 8.0.0
>>>>> to 8.3.0 due to (I believe) a gcc bug ([1]), and I haven't been able to
>>>>> find a suitable workaround. Debian 10 ships gcc 8.3.0, and it has LTS
>>>>> support until June 2024, making it an important target.
>>>>>
>>>>> I'm sure nobody but me will miss utils::defopt, so I'll get over it.
>>>>
>>>> I'm sorry :(
>>>> But happy gcc8.3 gets fixed
>>>
>>> Seeing it go, I can see some of it's benefits. ... but I agree removing
>>> it will help fix things for now.
>>>
>>> Seems like we should note somewhere that we might want to re-introduce
>>> this when we bump our minimum gcc version - but I'm not sure of where
>>> would be suitable.
>>
>> Maybe in a bugzilla entry ?
>>
>> I considered keeping the implementation of defopt in utils.h and
>> utils.cpp, with a comment to tell it shouldn't be used for now, but I
>> don't really like carrying dead code.
>>
>>>> Rafael, would you be able to test this and provide a tag ?
>>>
>>> Worth waiting for this still but:
> 
> I'm afraid I have inadvertently merged this... though I intended to wait
> for tested by tags here.
> 
> Still, that makes it easy to test, just update to the latest!
> 
> --
> Kieran
> 
> 
>>>
>>>
>>> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
>>>
>>>> For the series
>>>> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
>>>>
>>>> Thanks
>>>>    j
>>>>
>>>>>
>>>>> [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86521
>>>>>
>>>>> Laurent Pinchart (2):
>>>>>    ipa: rkisp1: Drop use of utils::defopt
>>>>>    libcamera: base: utils: Drop defopt
>>>>>
>>>>>   include/libcamera/base/utils.h    | 14 --------
>>>>>   src/ipa/rkisp1/algorithms/dpf.cpp |  6 ++--
>>>>>   src/ipa/rkisp1/algorithms/gsl.cpp |  8 ++---
>>>>>   src/ipa/rkisp1/algorithms/lsc.cpp |  4 +--
>>>>>   src/libcamera/base/utils.cpp      | 21 ------------
>>>>>   test/utils.cpp                    | 53 -------------------------------
>>>>>   6 files changed, 9 insertions(+), 97 deletions(-)
>>>>>
>>>>>
>>>>> base-commit: 4bf68fdbe1493e57118dad4e94c2a46c50a9c402
>>
>> -- 
>> Regards,
>>
>> Laurent Pinchart