iso.1 target and release(8) in RELENG_7 (WAS: Re: release(8)
Brian A. Seklecki
lavalamp at spiritual-machines.org
Thu Nov 1 11:07:05 PDT 2007
Here's some fun -- I'm pretty sure this worked in RELENG_6:
"make release" in /usr/src/release into RELEASEDIR=/opt/releasedir
The rebuild completes (release.1 -> release.8), the kernels are built,
the file system layout is prepared (ftp.1 -> cdrom.3), then (I think)
the iso.1 target is called and the images are zero-bytes. Log excerpts
Either I'm confused, I have my environmental variables set wrong, or
this is broken. :)
1) My $LOCAL_SCRIPT properly copies mkisofs(1) and mkhybrid(1) into
place in the $CHROOTDIR/usr/bin
$ ls -al /opt/relchroot/usr/bin/mkisofs
-r-xr-xr-x 1 root wheel 510712 Nov 1
2) On the root of the system, I have to make /R a sylink
to /opt/relchroot/R to make "make iso.1" succeed :
# ls -al /R
lrwxr-xr-x 1 root wheel 16 Oct 29 23:20 /R -> /opt/relchroot/R
[root at build-fbsd-releng7-amd64 /usr/src/release]# make iso.1
Creating ISO images...
mkisofs: No such file or directory. Invalid node - /R/cdrom/bootonly
*** Error code 2
Stop in /usr/src/release.
3) I don't see how $CHROOTDIR is used in /usr/src/release/Makefile at:
Unless, when not run as a manual target outside of the chroot(), it
runs in the chroot and /R is relative to $CHROOTDIR?. That would make
sense of the error in the log excerpt below matched what I encounter
on the command line as a manual run.
# applies to build
This is a shell script that runs nightly -- it worked in RELENG_6.
Setting up FTP distribution area
Building CDROM live filesystem image
Copy GENERIC kernel to boot area
Setting up CDROM boot area
Building CDROM disc1 filesystem image
Building CDROM disc2 filesystem image
Building bootonly CDROM filesystem image
On Wed, 2007-10-31 at 19:45 +0200, Giorgos Keramidas wrote:
> On 2007-10-31 13:26, "Brian A. Seklecki" <lavalamp at spiritual-machines.org> wrote:
> >>> really sucks.
> >> I believe that's intentional, so re-running "make release" with
> >> different CHROOTDIR values will produce consistently "similar" binaries.
> > I use LOCAL_SCRIPT to copy /etc/make.conf (well, /etc/src.conf) into place
> > inside the jail for the rebuild so that I can build a custom internal
> > release w/o certain subsystems (IPv6 or CSH, for example)
> > Is there a better way to do it?
> LOCAL_SCRIPT sounds fine to me :)
> freebsd-questions at freebsd.org mailing list
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
More information about the freebsd-questions