On 28 Dec 2025, at 09:17, Warner Losh <[email protected]> wrote: > > The branch main has been updated by imp: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=faeaa25f562493370a5da84b429ab0a117c3213a > > commit faeaa25f562493370a5da84b429ab0a117c3213a > Author: Warner Losh <[email protected]> > AuthorDate: 2025-12-28 07:31:05 +0000 > Commit: Warner Losh <[email protected]> > CommitDate: 2025-12-28 08:16:39 +0000 > > kernel: MK_REPRODUCIBLE_PATHS for full paths vs /usr/src > > There are many environments that you do not want the paths to be > canonicalized. For example, if I always build a product from a specific > path in a jail that's dependent on the product version, I don't want > that to be sanitized to /usr/src because when I have profiling tools run > against multiple kernels, I can't do A/B testing and results processing > if everything points to /usr/src (sadly, the profiling tools cannot > remap back to the original like gdb can). Since we need both active at > the same time, symbloic link fallbacks don't work. > > We do want the rest of the build to be reproducible, however. We'll get > the same binaries if we rebuild later since we always rebuild with the > same path. > > Turn them both on for maximum reproduction for environments where that > cannot be guaranteed. > > Sponsored by: Netflix > Input from: emaste, ivy > Differential Revision: https://reviews.freebsd.org/D52959
This breaks at least the devel/libsysinfo port, which error out with: ===> Building for libsysinfo-0.0.3_3 make: /usr/share/mk/bsd.debug.mk:19: Variable "MK_REPRODUCIBLE_PATHS" is undefined in /usr/share/mk/bsd.lib.mk:525 in /wrkdirs/usr/ports/devel/libsysinfo/work/libsysinfo-0.0.3/Makefile:16 make: Fatal errors encountered -- cannot continue make: stopped making "all" in /wrkdirs/usr/ports/devel/libsysinfo/work/libsysinfo-0.0.3 *** Error code 1 I think bsd.debug.mk should now include src.opts.mk, not only bsd.opts.mk? Either that, or MK_REPRODUCIBLE_PATHS should be moved to bsd.opts.mk. -Dimitry
