Bug 278307 - net/rsplib: Update to new release 3.4.9
Summary: net/rsplib: Update to new release 3.4.9
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Robert Clausecker
URL: https://www.nntb.no/~dreibh/rserpool/
Keywords:
Depends on:
Blocks:
 
Reported: 2024-04-11 08:37 UTC by Thomas Dreibholz
Modified: 2024-09-25 06:34 UTC (History)
3 users (show)

See Also:


Attachments
The diff (783 bytes, patch)
2024-04-11 08:37 UTC, Thomas Dreibholz
thomas.dreibholz: maintainer-approval+
Details | Diff
The diff file (1.08 KB, patch)
2024-06-08 12:40 UTC, Thomas Dreibholz
thomas.dreibholz: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Dreibholz 2024-04-11 08:37:53 UTC
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.
Comment 1 Nuno Teixeira freebsd_committer freebsd_triage 2024-04-12 22:01:39 UTC
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
Comment 2 Daniel Engberg freebsd_committer freebsd_triage 2024-04-13 14:58:52 UTC
Actually it should be updated to compiler:c++14-lang not removed
Comment 3 Nuno Teixeira freebsd_committer freebsd_triage 2024-04-13 18:12:40 UTC
(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.
Comment 4 Daniel Engberg freebsd_committer freebsd_triage 2024-04-13 18:18:46 UTC
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).
Comment 5 Nuno Teixeira freebsd_committer freebsd_triage 2024-04-13 18:25:20 UTC
(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?
Comment 6 Daniel Engberg freebsd_committer freebsd_triage 2024-04-13 18:33:45 UTC
It's defined by https://cmake.org/cmake/help/latest/variable/CMAKE_CXX_EXTENSIONS.html and it defaults to GNU.
Comment 7 Nuno Teixeira freebsd_committer freebsd_triage 2024-04-13 18:45:48 UTC
(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
---
Comment 8 Nuno Teixeira freebsd_committer freebsd_triage 2024-04-13 18:47:41 UTC
(In reply to Nuno Teixeira from comment #7)

And since all available compiler supports c++11 and all listed, compiler turns obsolete.
Comment 9 Daniel Engberg freebsd_committer freebsd_triage 2024-04-13 19:39:49 UTC
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.
Comment 10 Thomas Dreibholz 2024-06-08 12:40:40 UTC
Created attachment 251289 [details]
The diff file
Comment 11 Thomas Dreibholz 2024-06-08 12:44:14 UTC
The C and CXX standards are indeed unnecessary in the CMakeLists.txt. There are no relevant compilers not supporting at least the 2011 standard now, and RSPLIB builds with current versions as well. Version 3.4.9 has an updated CMakeLists.txt, and the updated Makefile does not request c++11 any more.
Comment 12 Robert Clausecker freebsd_committer freebsd_triage 2024-09-20 14:57:07 UTC
Sorry for the slow processing.  I'll add this one to my next batch.
Comment 13 Robert Clausecker freebsd_committer freebsd_triage 2024-09-24 10:22:10 UTC
Build fails on armv7 FreeBSD 14:

: && /usr/local/libexec/ccache/c++ -fPIC -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -pthread -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG  -Wl,--undefined-version -fstack-protector-strong -shared -Wl,-soname,libtdtimeutilities.so.3 -o src/libtdtimeutilities.so.3.4.9 src/CMakeFiles/libtdtimeutilities-shared.dir/libtdtimeutilities-shared_autogen/mocs_compilation.cpp.o src/CMakeFiles/libtdtimeutilities-shared.dir/timeutilities.c.o  -lm   -latomic && :
ld: error: unable to find library -latomic
c++: error: linker command failed with exit code 1 (use -v to see invocation)

Seems like -latomic needs to be patched out.

I can proceed with this update or hold it if you would like to fix the breakage.
Comment 14 commit-hook freebsd_committer freebsd_triage 2024-09-25 06:31:10 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=19229626bac65f01b1bccba0e6013d4aead9e56c

commit 19229626bac65f01b1bccba0e6013d4aead9e56c
Author:     Thomas Dreibholz <thomas.dreibholz@gmail.com>
AuthorDate: 2024-09-20 14:56:24 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2024-09-25 06:28:04 +0000

    net/rsplib: update to 3.4.9

    Changelog: https://www.nntb.no/~dreibh/rserpool/

    PR:             278307
    Event:          EuroBSDcon 2024

 net/rsplib/Makefile | 4 ++--
 net/rsplib/distinfo | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)
Comment 15 Robert Clausecker freebsd_committer freebsd_triage 2024-09-25 06:34:41 UTC
Thank you for your contribution.

Please open a new PR if you wish to address the build failures.