tech-pkg archive

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

Re: USE_LANGUAGES and wrappers



On Wed, Jul 19, 2023 at 11:03:05AM -0400, Greg Troxel wrote:
> Joerg Sonnenberger <joerg%bec.de@localhost> writes:
> 
> > On Wed, Jul 19, 2023 at 10:50:14AM -0400, Greg Troxel wrote:
> >> Joerg Sonnenberger <joerg%bec.de@localhost> writes:
> >> 
> >> > On Wed, Jul 19, 2023 at 02:13:53PM +0000, nia wrote:
> >> >> "cwrappers should always default to oldest version of the C/C++ standard
> >> >> unless -std=XX is given" is not quite as trivial but should also be doable.
> >> >
> >> > This is going to seriously annoy any one using a compiler defaulting to
> >> > a newer language mode when it also introduces any ABI differences. So
> >> > when given a choice between pissing off users on modern system and some
> >> > fallout on outdated systems, I'm strongly inclined to go with the
> >> > former.
> >> 
> >> Do people really think it's ok for a compiler to change ABI for varying
> >> --std arguments?
> >
> > It's OK for a *library* to change the ABI based on the standard flags.
> > After all, how else are they supposed to be able to use and/or expose
> > them.
> 
> That's an answer to a question I didn't ask :-), but it's interesting
> and relevant.  It would seem then that a package containing a library
> has to declare the c++ language variants it supports, explain in the
> README how to build the library for varying language variants, and to
> explain how one should deal with needing multiple versions.
> 
> Can you point to any such libraries in pkgsrc, explain the variation
> issues, and how we handle that now?

I'm willing to blindly bet that Boost will be affected. For C++03 vs
C++11, databases/soci had some fun error case. But anything that
optionally use newer C++ features like std::string_view will be
affected.

Joerg


Home | Main Index | Thread Index | Old Index