Re: git: 65f28f63a73d - main - tools/build: Create toolchain symlinks for non-absolute compiler/linker
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 28 Jul 2023 19:00:46 UTC
On 28/07/23 15:48, Jessica Clarke wrote: > On 28 Jul 2023, at 19:40, Renato Botelho <garga@FreeBSD.org> wrote: >> >> On 27/07/23 01:12, Jessica Clarke wrote: >>> The branch main has been updated by jrtc27: >>> URL: https://cgit.FreeBSD.org/src/commit/?id=65f28f63a73d3371d9d724a2018be6d1ada0d3e0 >>> commit 65f28f63a73d3371d9d724a2018be6d1ada0d3e0 >>> Author: Jessica Clarke <jrtc27@FreeBSD.org> >>> AuthorDate: 2023-07-27 04:10:47 +0000 >>> Commit: Jessica Clarke <jrtc27@FreeBSD.org> >>> CommitDate: 2023-07-27 04:10:47 +0000 >>> tools/build: Create toolchain symlinks for non-absolute compiler/linker >>> If any of the toolchain variables are not absolute then we need to >>> create a symlink in WORLDTMP/legacy/bin in order to make them available >>> during a BUILD_WITH_STRICT_TMPPATH build. >>> Reviewed by: brooks, jhb >>> Differential Revision: https://reviews.freebsd.org/D41188 >> >> I'm having problems with etcupdate and I suspect this can be the commit that caused the trouble. After installworld/installkernel on a chroot Boot Environment directory, etcupdate fails with following error message: >> >> Failed to build new tree. >> >> I've checked etcupdate log and saw this: >> >> cd /usr/src/tools/build; make DIRPRFX=tools/build/ DESTDIR=/var/db/etcupdate/etcupdate-8C3uJ1L/usr/obj/usr/src/amd64.amd64/tmp/legacy host-symlinks >> Linking host tools into /var/db/etcupdate/etcupdate-8C3uJ1L/usr/obj/usr/src/amd64.amd64/tmp/legacy/bin >> cp: /usr/bin/basename: Cross-device link > > That’ll be 246364454fc1 ("etcupdate: Use new buildetc and installetc > targets when available”) which exposed; this commit is just for > cc/c++/cpp/ld, and creates actual symlinks. On FreeBSD we copy rather > than symlink tools so that we don’t have issues during installworld. > But we’re not actually trying to create any hardlinks, just copy. What > you’re discovering is that you’re on one of the FreeBSD versions where > ZFS’s clone_range is broken (exposes EXDEV when it’s supposed to be > handled by the kernel with a fallback implementation) and cp is using > clone_range. Update your kernel first and all should be good. You are right. After reboot with new kernel etcupdate works again. Thank you! -- Renato Botelho