2026Q1 and USE_CXX_FEATURES+=c++20
Edgar Fuß <[email protected]> Tue, 31 Mar 2026 12:01:12 +0200
| Newsgroups | gmane.os.netbsd.devel.packages |
|---|---|
| Message-ID | <[email protected]> |
Upgrading to 2025Q4 and then to 2026Q1 I see an increasing number of packages bumping USE_CXX_FEATURES from c++17 to c++20. On -10, this inflicts gcc12, thus a non-base C++ compiler with all the resulting potential C++ library incompatibilities, on me. I've patched that to c++17 (plus filesystem for libheif) in graphics/libheif, print/poppler (Makefile.common, buildlink3.mk) and print/qpdf and built all my packages with the base gcc10. So, what problem is this trying to solve? Is it that packages compile with gcc10, but fail to function? Is it that linking to specific programs I don't use doesn't work? Is it specific for -9? compiler/gcc.mk says: # gcc documents that 11 is required, with a few perhaps-obscure # features requiring 12. gcc10 does not define __cplusplus as meeting # c++20. print/qpdf/Makefile says: # fix build on NetBSD/9.4 # -- Performing Test ATOMIC_WORKED0 # CMake Error in /tmp/print/qpdf/work/qpdf-12.3.2/cmake-pkgsrc-build/CMakeFiles/CMakeScratch/TryCompile-g61khV/CMakeLists.txt: # Target "cmTC_f6cd8" requires the language dialect "CXX20" . But the # current compiler "GNU" does not support this, or CMake does not know the Couldn't at least this be limited to -9?