tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: gdal 3.9.0, C++17, charconv, gcc7



On Thu, Jun 06, 2024 at 07:47:04PM -0400, Greg Troxel wrote:
> We do, but we are in the strange situation where saying you need C++17
> (because upstream says so) does not get you C++17, but some subset.  Not
> only is this not documented, but the comments say that asking for a
> language variant actually gets you that variant.
> 
> Besides having the documentation be accurate, there's a real mismatch
> between the rest of the world which expects, naturally enough, "requires
> C++17" to mean "a compiler that can compile all valid C++17 programs",
> and pkgsrc, which means "a compiler that can compile some, except those
> that can't, and we won't tell you which ones those are, and we don't
> document what you need to ask for to make them all work".
> 
> I know that sounds cranky, but that's how I see at, coming from "read
> upstream NEWS, set variables, and expect sound behavior".
> 
> Hence, I meant
> 
>   are we going to make C++17 means C++17
> 
> or
> 
>   are we going to document our Alice situation clearly, so that when
>   someone reads C++17 in release notes, they can write
> 
>   USE_CXX_FEATURES= c++17 charconv other-secret-feature
> 
> instead?
> 
> 
> Right now the straightforward approach leads to failing builds.
> 
> 
> Maybe we should have c++17lite and map that as we do, but really to
> commit something with that when upstream says c++17, one has to test
> with the forced-by-c++17 version of each compiler, and no higher, and
> that's basically impossible on NetBSD 10 or current.

I guess the way it is is because saying you need
c++17-with-all-bells-and-whistles is impossible right now.

From https://gcc.gnu.org/projects/cxx-status.html

"C++17 Support in GCC

GCC has almost full support for the previous revision of the C++ standard"

i.e. even now, c++17 support in gcc is not "complete".

So c++17 support would need to pull in gcc14+ even if many c++17
programs could build with gcc10.

Perhaps we should rename c++17 to something else, but I think the
situation right now is good enough, and you can check NetBSD 9 bulk
reports to see if you need to add some more c++17 features to
USE_CXX_FEATURES.
 Thomas


Home | Main Index | Thread Index | Old Index