On 23/09/21 09:52AM, Patrick Welche wrote: > Am I right in thinking that > > USE_CXX_FEATURES= c++17 > > is "just" so that we pick a compiler that supports that variety of c++ > a la GCC_REQD, Yes, to my understanding, that's the case. > but we still need a > > USE_LANGUAGES= c++17 > to actually apply the -std=c++17 flag so it get used? If the package doesn't append `-std=c++17' to CFLAGS on its own, but requires it... yes this will allow it to build. However, forcing a specific C/C++ standard through USE_LANGUAGES is now deprecated in pkgsrc (and will likely become unsupported in future). The proper way to do this in pkgsrc-trunk is: FORCE_CXX_STD= c++17 From mk/compiler.mk: # FORCE_CXX_STD # # Overrides the compiler's default C++ dialect to ensure that a # specific language variant is used. This is useful if a package # uses features from a later or earlier C++ standard but doesn't set # -std=c++XX, since the default dialect choice of different compiler # versions is not consistent. It is also useful if a package # wants to use GNU language extensions without setting -std=gnu++XX. # # Valid values are: c++03, c++11, c++14, c++17, c++20, gnu++03, # gnu++11, gnu++17, gnu++20 I've already committed the change and tested the package on NetBSD 10.0_BETA. It builds fine. Thanks for reporting. Kindest Regards, PVO
Attachment:
signature.asc
Description: PGP signature