Re: FYI: Example of pkgbase /usr/src/ files with differences vs. what uname -apKU reports for the commit hash

From: Mark Millard <marklmi_at_yahoo.com>
Date: Sun, 17 Aug 2025 03:41:24 UTC
On Aug 12, 2025, at 18:39, Mark Millard <marklmi@yahoo.com> wrote:

> From a recent pkgbase upgrade:
> 
> # uname -apKU
> FreeBSD 7950X3D-ZFS 15.0-PRERELEASE FreeBSD 15.0-PRERELEASE main-n279547-b89104dfd5cf GENERIC-NODEBUG amd64 amd64 1500059 1500059
> 
> That upgrade sequence established its own /usr/src/ update.
> 
> Then:
> 
> # cd /usr/
> # git clone -b main https://git.freebsd.org/src.git src-alt
> # cd /usr/src-alt/
> # git checkout b89104dfd5cf
> . . .
> 
> # diff -rq -x .git /usr/src/ /usr/src-alt/
> Files /usr/src/ObsoleteFiles.inc and /usr/src-alt/ObsoleteFiles.inc differ
> Only in /usr/src/contrib/sqlite3/tea: tclconfig
> Only in /usr/src/contrib/sqlite3/tea: win
> Only in /usr/src/crypto/krb5/src/kadmin: kdbkeys
> Only in /usr/src/crypto/krb5/src/kadmin: scripts
> Only in /usr/src/crypto/krb5/src/lib/crypto/crypto_tests: test
> Only in /usr/src/crypto/krb5/src/lib/krb5: posix
> Only in /usr/src/crypto/krb5/src/tests: softpkcs11
> Only in /usr/src/krb5/include: krb5_private
> Files /usr/src/krb5/usr.bin/ksu/Makefile and /usr/src-alt/krb5/usr.bin/ksu/Makefile differ
> Only in /usr/src/lib/libprocstat: zfs
> Only in /usr/src/share/doc/legal: intel_iwlwififw
> Only in /usr/src/stand/i386: zfsboot
> Only in /usr/src/sys/arm/ti: omap4
> Only in /usr/src/sys/arm/ti: twl
> Only in /usr/src/sys/arm/ti: usb
> Only in /usr/src/sys/contrib/dev: iwlwififw
> Only in /usr/src/sys/contrib/openzfs/lib/libzpool: include
> Only in /usr/src/sys/modules/dtb: omap4
> Only in /usr/src/sys/modules: iwlwififw
> Only in /usr/src/tools/tools/net80211: wlanstats
> Only in /usr/src/usr.bin: objcopy
> Only in /usr/src/usr.bin: shar
> Only in /usr/src/usr.sbin: nvmfd
> Only in /usr/src/usr.sbin: rpc.ypupdated
> 
> # diff -u /usr/src/ObsoleteFiles.inc /usr/src-alt/ObsoleteFiles.inc
> --- /usr/src/ObsoleteFiles.inc 2025-08-11 15:40:54.000000000 -0700
> +++ /usr/src-alt/ObsoleteFiles.inc 2025-08-12 12:07:44.279492000 -0700
> @@ -61,8 +61,6 @@
> 
> # 20250807: Replace lib/libgssapi with krb5/lib/gssapi
> OLD_FILES+=usr/include/gssapi_krb5/gssapi.h
> -OLD_FILES+=usr/include/gssapi_krb5/gssapi/gssapi.h
> -OLD_FILES+=usr/include/gssapi_krb5/gssapi/mechglue.h
> OLD_DIRS+=usr/include/gssapi_krb5/gssapi
> OLD_DIRS+=usr/include/gssapi_krb5
> OLD_FILES+=etc/gssapi/qop
> 
> # diff -u /usr/src/krb5/usr.bin/ksu/Makefile /usr/src-alt/krb5/usr.bin/ksu/Makefile
> --- /usr/src/krb5/usr.bin/ksu/Makefile 2025-08-11 15:40:54.000000000 -0700
> +++ /usr/src-alt/krb5/usr.bin/ksu/Makefile 2025-08-12 12:07:44.279733000 -0700
> @@ -23,8 +23,7 @@
> xmalloc.c
> 
> CFLAGS+=-I${KRB5_DIR}/include \
> - -I${KRB5_SRCTOP}/include \
> - -DGET_TGT_VIA_PASSWD
> + -I${KRB5_SRCTOP}/include
> 
> MAN= ksu.1

Another example, /usr/src/ is as established by pkgbase :

# uname -apKU
FreeBSD 7950X3D-ZFS 15.0-PRERELEASE FreeBSD 15.0-PRERELEASE main-n279648-3f94fb8d6a76 GENERIC-NODEBUG amd64 amd64 1500061 1500061

# git -C /usr/src-alt/ switch main
. . .

# git -C /usr/src-alt/ fetch
. . .

# git -C /usr/src-alt/ merge --ff-only
. . .

# git -C /usr/src-alt/ checkout 3f94fb8d6a76

# diff -rq -x .git /usr/src-alt/ /usr/src/
Files /usr/src-alt/Makefile.libcompat and /usr/src/Makefile.libcompat differ
Files /usr/src-alt/UPDATING and /usr/src/UPDATING differ
Files /usr/src-alt/contrib/kyua/doc/kyuafile.5.in and /usr/src/contrib/kyua/doc/kyuafile.5.in differ
Files /usr/src-alt/contrib/kyua/drivers/report_junit_test.cpp and /usr/src/contrib/kyua/drivers/report_junit_test.cpp differ
Files /usr/src-alt/contrib/kyua/engine/atf_list.cpp and /usr/src/contrib/kyua/engine/atf_list.cpp differ
Files /usr/src-alt/contrib/kyua/engine/requirements.cpp and /usr/src/contrib/kyua/engine/requirements.cpp differ
Files /usr/src-alt/contrib/kyua/engine/requirements.hpp and /usr/src/contrib/kyua/engine/requirements.hpp differ
Files /usr/src-alt/contrib/kyua/integration/cmd_report_junit_test.sh and /usr/src/contrib/kyua/integration/cmd_report_junit_test.sh differ
Files /usr/src-alt/contrib/kyua/integration/cmd_report_test.sh and /usr/src/contrib/kyua/integration/cmd_report_test.sh differ
Files /usr/src-alt/contrib/kyua/model/metadata.cpp and /usr/src/contrib/kyua/model/metadata.cpp differ
Files /usr/src-alt/contrib/kyua/model/metadata.hpp and /usr/src/contrib/kyua/model/metadata.hpp differ
Files /usr/src-alt/contrib/kyua/model/metadata_test.cpp and /usr/src/contrib/kyua/model/metadata_test.cpp differ
Files /usr/src-alt/contrib/kyua/model/test_case_test.cpp and /usr/src/contrib/kyua/model/test_case_test.cpp differ
Files /usr/src-alt/contrib/kyua/model/test_program_test.cpp and /usr/src/contrib/kyua/model/test_program_test.cpp differ
Files /usr/src-alt/contrib/kyua/os/freebsd/main.cpp and /usr/src/contrib/kyua/os/freebsd/main.cpp differ
Only in /usr/src/contrib/kyua/os/freebsd: reqs_checker_kmods.cpp
Only in /usr/src/contrib/kyua/os/freebsd: reqs_checker_kmods.hpp
Only in /usr/src/contrib/sqlite3/tea: tclconfig
Only in /usr/src/contrib/sqlite3/tea: win
Only in /usr/src/crypto/krb5/src/kadmin: kdbkeys
Only in /usr/src/crypto/krb5/src/kadmin: scripts
Only in /usr/src/crypto/krb5/src/lib/crypto/crypto_tests: test
Only in /usr/src/crypto/krb5/src/lib/krb5: posix
Only in /usr/src/crypto/krb5/src/tests: softpkcs11
Only in /usr/src/krb5/include: krb5_private
Files /usr/src-alt/lib/libmilter/Makefile and /usr/src/lib/libmilter/Makefile differ
Only in /usr/src/lib/libprocstat: zfs
Only in /usr/src/release/packages/ucl: libmilter-all.ucl
Only in /usr/src/share/doc/legal: intel_iwlwififw
Only in /usr/src/stand/i386: zfsboot
Only in /usr/src/sys/arm/ti: omap4
Only in /usr/src/sys/arm/ti: twl
Only in /usr/src/sys/arm/ti: usb
Only in /usr/src/sys/contrib/dev: iwlwififw
Only in /usr/src/sys/contrib/openzfs/lib/libzpool: include
Only in /usr/src/sys/modules/dtb: omap4
Only in /usr/src/sys/modules: iwlwififw
Only in /usr/src/tools/tools/net80211: wlanstats
Files /usr/src-alt/usr.bin/kyua/Makefile and /usr/src/usr.bin/kyua/Makefile differ
Only in /usr/src/usr.bin: objcopy
Only in /usr/src/usr.bin: shar
Only in /usr/src/usr.sbin: nvmfd

An example diff is:

# diff -u /usr/src-alt/lib/libmilter/Makefile /usr/src/lib/libmilter/Makefile
--- /usr/src-alt/lib/libmilter/Makefile	2025-08-16 20:23:45.038906000 -0700
+++ /usr/src/lib/libmilter/Makefile	2025-08-16 16:19:43.000000000 -0700
@@ -1,6 +1,6 @@
 .include <src.opts.mk>
 
-PACKAGE=sendmail
+PACKAGE=lib${LIB}
 SENDMAIL_DIR=${SRCTOP}/contrib/sendmail
 .PATH:	${SENDMAIL_DIR}/libmilter ${SENDMAIL_DIR}/libsm
 

For the pkgbase build, /usr/src/sys/ can be somewhat older than
/usr/src/ outside sys/ . The likes of main-n279648-3f94fb8d6a76
from the uname -apKU output is for the /usr/src/sys/ . Figuring
out what commit corresponds to the /usr/src/ outside sys/
is not necessarily trivial.


===
Mark Millard
marklmi at yahoo.com