Created attachment 249894 [details] The diff The latest upstream version of rsplib is 3.4.8. Therefore, the port net/rsplib needs an update. Fix: The updated diff file rsplib-3.4.8.diff is attached.
Hello, Sugestion: 1. Pet portlint by adding a DOCS option: pkg-plist: [162]: If and only if your port is DOCSDIR-safe (that is, a user can override DOCSDIR when building this port and the port will still work correctly) consider using DOCSDIR macro; if you are unsure if this port is DOCSDIR-safe, then ignore this warning 2. Drop compiler:c++11-lang from USES as cmake set it on its own: SET(CMAKE_CXX_STANDARD 14) SET(CMAKE_CXX_STANDARD_REQUIRED ON) Thanks
Actually it should be updated to compiler:c++14-lang not removed
(In reply to Daniel Engberg from comment #2) Isn't compiler obsolete? It was used on old compilers that do not have determined features like c++17, etc. Compilers available, llvm and gcc, don't need this check. When we need to force a compiler standard we use USE_CSTD and USE_CXXSTD.
Still valid and USE_C**** should be avoided if the framework supports such as settings like in the case of cmake and meson to avoid conflicting settings and incorrect ones (CMake for example defaults to gnu extensions).
(In reply to Daniel Engberg from comment #4) So in this particular case, when upstream configure cmake like: SET(CMAKE_CXX_STANDARD 14) SET(CMAKE_CXX_STANDARD_REQUIRED ON) does this means that it will use gnu c++14 instead of c++14?
It's defined by https://cmake.org/cmake/help/latest/variable/CMAKE_CXX_EXTENSIONS.html and it defaults to GNU.
(In reply to Daniel Engberg from comment #6) Correcting cmake cxx spec for this port, since c++14 was a requisite of head. This port have cmakelists configured as: SET(CMAKE_CXX_STANDARD 11) SET(CMAKE_CXX_STANDARD_REQUIRED ON) with or without compiler in USES, result is the same: -std=c++11 and not gnu. So, your can set it to c++20, result is the same. Also, porters handbook, talk about capabilities only: --- Determines which compiler to use based on any given wishes. Use C++17-lang if the port needs a C++17-capable compiler, C++14-lang if the port needs a C++14-capable compiler, C++11-lang if the port needs a C++11-capable compiler ---
(In reply to Nuno Teixeira from comment #7) And since all available compiler supports c++11 and all listed, compiler turns obsolete.
As I mentioned before it defaults to non GNU extensions because the CMake variable(s) are set. Around L330 SET(CMAKE_CXX_EXTENSIONS OFF) SET(CMAKE_C_EXTENSIONS OFF) Again, there's nothing wrong to define compiler and it may help 3rd party users (consumers) of the ports tree nor is there a need to remove it. If there's such a need it'll be done in a treewide sweep.