In order to at least not break Valgrind on every release of FreeBSD (since the configure script checks known versions via uname) I'd like to remove FREEBSD_VERS to put FreeBSD on the same footing as Linux and Solaris. Darwin still has versioning, no plans at the moment to change that.
Created attachment 174490 [details] Patch removing FREEBSD_VERS
Pluses - code is a bit simpler - no need to keep updating for new versions Minuses - more effort for new syscalls - no longer maintain old syscall names for older OSes (possibly a plus). An example of the last point. SYS_mknodat 498 became SYS_freebsd11_mknodat 498 and SYS_mknodat 559. Previously 'mknodat' would have been used in error messages for syscall 498 on older OSes. Now only freebsd11_mknodat will be used for syscall 498. If necessary I can switch to using the macro __FreeBSD_vers (a kind of patch-point number). It doesn't get incremented for every change to syscalls - I suspect that some additions that cause no backwards compatibility issues don't cause __FreeBSD_vers to be bumped.
Created attachment 174767 [details] Update with helgrind lock leak detection turned off for 15.0
commit c87b75e8400f4b6efd77f014183d6180fa766686 (HEAD -> master, origin/master, origin/HEAD, bug494218) Author: Paul Floyd <pjfloyd@wanadoo.fr> Date: Sun Oct 6 21:12:44 2024 +0200 Bug 494218 - Remove FREEBSD_VERS from configure and build