Re: git: b56d0bc41af7 - main - devel/libcutl: Explain why USE_CXXSTD=c++11 is used

From: Rainer Hurling <rhurlin_at_gwdg.de>
Date: Fri, 07 Jul 2023 15:56:22 UTC
Am 07.07.23 um 13:29 schrieb Nuno Teixeira:
> PORTREVISION=11:  USE_CXXSTD=gnu++14
> http://freebsdrpi4.hopto.org/data/13Saarch64-main/2023-07-07_12h12m14s/logs/eboard-1.1.3_11.log <http://freebsdrpi4.hopto.org/data/13Saarch64-main/2023-07-07_12h12m14s/logs/eboard-1.1.3_11.log>
> 
> PORTREVISION=10:  USE_CXXSTD=c++14
> http://freebsdrpi4.hopto.org/data/13Saarch64-main/2023-07-07_09h44m48s/logs/eboard-1.1.3_10.log <http://freebsdrpi4.hopto.org/data/13Saarch64-main/2023-07-07_09h44m48s/logs/eboard-1.1.3_10.log>
> 
> Both revs 10 and 11 runs OK.

yes, both seems fine. Even the hashes of the packages are the same. So 
no dump of portrevision necessary ;)

Which version, gnu++14 or c++14, should we use here in terms of being as 
universal as possible? Probably gnu++14, since clang treats both the 
same ...

> I've take a look at logs and it seems that glib2 deprecations could be 
> the reason for c++17 build failures.
> Could you take a look at:
> https://cgit.freebsd.org/ports/commit/?id=e95c4bea425b3e3c49b63e0cf4eff24af40c574b <https://cgit.freebsd.org/ports/commit/?id=e95c4bea425b3e3c49b63e0cf4eff24af40c574b>
> it also includes link to mailing full discussion.
> 
> This is what we should do when possible, fix the code as said in 
> previous messages.

Yes, it is likely that glib2 is the culprit here.

Two warnings with direct glib reference stand out to me:
- 'GTypeDebugFlags' is deprecated
- GTimeVal' is deprecated: Use 'GDateTime' instead

My C++ knowledge and my knowledge about glib are unfortunately not 
enough to provide a patch :(


Many thanks for the poudriere runs under arm. Very appreciated!

> 
> Rainer Hurling <rhurlin@gwdg.de <mailto:rhurlin@gwdg.de>> escreveu no 
> dia sexta, 7/07/2023 à(s) 10:53:
> 
>     Am 07.07.23 um 10:59 schrieb Nuno Teixeira:
>      > Hello!
>      >
>      > I've bumped PORTREVISION to 10 so we can identify better each
>     experiment
>      > build:
>      >
>      > PORTREVISION=10:  USE_CXXSTD=c++14
>      > build status:
>      >
>     http://freebsdrpi4.hopto.org/build.html?mastername=13Saarch64-main&build=2023-07-07_09h44m48s <http://freebsdrpi4.hopto.org/build.html?mastername=13Saarch64-main&build=2023-07-07_09h44m48s> <http://freebsdrpi4.hopto.org/build.html?mastername=13Saarch64-main&build=2023-07-07_09h44m48s <http://freebsdrpi4.hopto.org/build.html?mastername=13Saarch64-main&build=2023-07-07_09h44m48s>>
>      >
>      > and when built I will do a run test.
>      >
> 
>     Oops, yes!
> 
>      > Shoud I test gnu++14 too?
> 
>     I accidentally provided a patch with c++14 that I had used for another
>     test of my own. Meant was gnu++14, so please feel free to test that one
>     too. Thanks!
> 
>      >
>      >
>      >
>      >
>      > Rainer Hurling <rhurlin@gwdg.de <mailto:rhurlin@gwdg.de>
>     <mailto:rhurlin@gwdg.de <mailto:rhurlin@gwdg.de>>> escreveu no
>      > dia sexta, 7/07/2023 à(s) 06:42:
>      >
>      >     Hi Nuno,
>      >
>      >     Am 06.07.23 um 23:51 schrieb Nuno Teixeira:
>      >      > Hello Rainer,
>      >      >
>      >      >     Still, one more question: is it safe to remove
>      >     USES=compiler:c++11-lang
>      >      >     for architectures other than amd64 and i386 and just use
>      >      >     USE_STDCXX=gnu++14. I have no way to test for arm, etc.
>      >      >
>      >      >
>      >      > I've asked the same for compiler:c11 on mailing today.
>      >      > My doubt is: is it neccessary using c11, c++11, etc when
>     available
>      >      > compilers support it or have capabilities for it?
>      >      >
>      >      > I can do poudriere testport and run test on a rpi4 running 13
>      >     stable,
>      >      > just send me diff.
>      >
>      >     Thanks for the offer. Here is a diff against games/eboard
>     with the to
>      >     changes:
>      >
>      >     diff --git a/games/eboard/Makefile b/games/eboard/Makefile
>      >     index 3f78f9e91874..ce399415cba8 100644
>      >     --- a/games/eboard/Makefile
>      >     +++ b/games/eboard/Makefile
>      >     @@ -20,10 +20,10 @@ LIB_DEPENDS=
>      >     libfontconfig.so:x11-fonts/fontconfig \
>      >                       libfreetype.so:print/freetype2 \
>      >                       libpng.so:graphics/png
>      >
>      >     -USES=          compiler:c++11-lang gnome gstreamer perl5
>     pkgconfig
>      >     shebangfix tar:bzip2
>      >     +USES=          gnome gstreamer perl5 pkgconfig shebangfix
>     tar:bzip2
>      >        # eboard 1.1.13 is not compatible with C++17, which is the
>      >     default since
>      >        # clang 16. This means ports depending on it also need to
>     use at
>      >     most
>      >     C++14.
>      >     -USE_CXXSTD=    c++11
>      >     +USE_CXXSTD=    c++14
>      >        USE_GITHUB=    yes
>      >        GH_ACCOUNT=    fbergo
>      >        USE_GNOME=     cairo gdkpixbuf2 gtk20
>      >
>      >
>      >     It would be very nice if you could also look for arm, if the
>     package is
>      >     still binary compatible compared to the unpatched version :)
>      >
>      >     Thanks a lot !
>      >
>      >     Best wishes,
>      >     Rainer
>      >
>      >      >
>      >      > Cheers,
>      >      >
>      >      > --
>      >      > Nuno Teixeira
>      >      > FreeBSD Committer (ports)
>      >
>      >
>      >
>      > --
>      > Nuno Teixeira
>      > FreeBSD Committer (ports)
> 
> 
> 
> -- 
> Nuno Teixeira
> FreeBSD Committer (ports)