[Bug 254101] release/release.sh: Release products aren't updated at 2nd or later build

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Mar 7 15:07:57 UTC 2021


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254101

            Bug ID: 254101
           Summary: release/release.sh: Release products aren't updated at
                    2nd or later build
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: bugs at FreeBSD.org
          Reporter: yasu at utahime.org
                CC: gjb at FreeBSD.org

At 1st build, that is, if there isn't ${CHROOTDIR} at all, then release.sh
works just as is expected. But if you execute release.sh again, you'll find
files under ${CHROOTDIR}/R aren't updated. According to the log messages, both
src tree (${CHROOTDIR}/usr/src) and ports tree (${CHROOTDIR}/usr/ports) are
updated. `make buildworld` is done with updated src tree and chroot file system
is updated. Both `make buildworld` and `make buildworld` are done inside chroot
with updated src tree. But after that, tar archives, iso images and memstick
images are regarded up to date and aren't updated as following.

----------------------------------------------------------------------
--------------------------------------------------------------
>>> Kernel build for GENERIC completed on Fri Mar  5 08:39:00 UTC 2021
--------------------------------------------------------------
>>> Kernel(s)  GENERIC built in 993 seconds, ncpu: 4, make -j2
--------------------------------------------------------------
make -C /usr/src/release  obj
make -C /usr/src/release  ftp cdrom memstick.img mini-memstick.img
`ftp' is up to date.
`memstick.img' is up to date.
`mini-memstick.img' is up to date.
make -C /usr/src/release  release-done
touch release
true
mkdir -p /R
cp -a ftp /R/
cp -p disc1.iso /R/FreeBSD-14.0-CURRENT-amd64-disc1.iso
cp -p bootonly.iso /R/FreeBSD-14.0-CURRENT-amd64-bootonly.iso
cp -p memstick.img /R/FreeBSD-14.0-CURRENT-amd64-memstick.img
cp -p mini-memstick.img /R/FreeBSD-14.0-CURRENT-amd64-mini-memstick.img
cd /R && sha512 FreeBSD-14.0-CURRENT-amd64* > /R/CHECKSUM.SHA512
cd /R && sha256 FreeBSD-14.0-CURRENT-amd64* > /R/CHECKSUM.SHA256
----------------------------------------------------------------------

As a result those created at 1st build are copied to ${CHROOTDIR}/R again.

After some trials and errors, I found 2nd build works as is expected if I
remove ${CHROOTDIR}/usr/obj/usr/src/${TARGET}.${TARGET_ARCH}/release before
executing release.sh. So I tried to create patch that changes release.sh so it
removes this directory before starting release build. But I faced one
difficulty. When either ${TARGET} or ${TARGET_ARCH} isn't explicitly specified,
I don't know how to get the default value of them. And I'm not sure if `rm -rf
${CHROOTDIR}/usr/obj/usr/src/*/release` isn't overkill.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list