tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bootable mac68k iso (Was: Tools mkhybrid(8) for mac68k/macppcISO9660/HFS install ISO images



abs@ wrote:

> Bootable NetBSD-HEAD mac68k iso images should now be available on
> https://nycdn.netbsd.org/ - direct download should be
> 
> https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/images/NetBSD-10.99.10-mac68k.iso
> 
> Now calling for people with a mac68k and CD-writer to give it a test :)
> 
> > I guess we still need to consider the following (lower priority) items:
> >
> > - maybe debug.tgz and xdebug.tgz should be excluded from ISO
> >   to avoid 700MB overflow
> >   (I'm not sure if src/etc/Makefile can handle it, but -m option
> >    of mkhybrid(8) should work)
> 
> We have prior art for that - at least sparc64 excludes debug.tgz and
> xdebug.tgz from the default iso (but includes them in an optional dvd
> image)

202406022310Z/images/NetBSD-10.99.10-mac68k.iso is 667,525,120 bytes
so it still fits to 700MB, but macppc one doesn't and even for mac68k
with '-m debug.tgz -m xdebug.tgz' generates 339,959,808 byte iso.

I'll commit the change soon:
---
diff --git a/etc/etc.mac68k/Makefile.inc b/etc/etc.mac68k/Makefile.inc
index 4452381de61f..81239128f35b 100644
--- a/etc/etc.mac68k/Makefile.inc
+++ b/etc/etc.mac68k/Makefile.inc
@@ -19,6 +19,7 @@ snap_md_post:
 # For "make iso-image"
 # mkisofs arguments to create a hybrid (HFS/Rockridge) CD-ROM image.
 MKISOFS_FLAGS+=	-hfs --macbin \
+	-m debug.tgz -m xdebug.tgz \
 	-map ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc/extensions.map
 
 iso-image: do-iso-image

---

> > - we should prepare an intermediate target on creating iso
> >   by mkhybrid, rather than to specify ${RELEASEDIR}/images/NetBSD-foo.iso
> >   as an output image directly (especially for macppc that needs
> >    ${TOOL_MACPPCINSTALLBOOT} in "iso-image-md-post" process)
> >
> > - rename targets like "iso-image" "do-iso-image" "iso-image-setup" etc.
> >   in src/etc/Makefile to explicitly denote "to create special
> >   ISO9660/HFS hybrid ISO images only for Mac ports"?
> 
> Makes sense. Are there any other ports which have similar additional
> iso manipulation requirements which should be pulled into a similar
> pattern?

Several ports that have bootable installcd call ${TOOL_INSTALLBOOT}
against generated iso images (by makefs(8)):

 https://github.com/NetBSD/src/blob/791da06d/distrib/alpha/cdroms/installcd/Makefile#L8-L10
---
#make the CD bootable
image_md_post:
	${TOOL_INSTALLBOOT} -m${MACHINE} ${CDIMAGE} bootxx.${MACHINE}
---

This ${CDIMAGE} target is created in ${.OBJDIR} and it's copied
into ${CDROMS_RELEASEDIR} later in MI "iso_image" target in
src/distrib/common/Makefile.bootcd:

  https://github.com/NetBSD/src/blob/791da06d/distrib/common/Makefile.bootcd#L347-L349
---
iso_image: prepare .WAIT prepare_md_post .WAIT copy-releasedir .WAIT image_md_pre .WAIT image .WAIT image_md_post
	${MKDIR} ${MKDIRPERM} ${RELEASEDIR}/${CDROMS_RELEASEDIR}
	${RELEASE_INSTALL} ${CDIMAGE} ${RELEASEDIR}/${CDROMS_RELEASEDIR}
---

In the perfect world[TM], we should merge mkisofs/mkhybrid iso targets
in etc/Makefile to src/distrib/common/Makefile.bootcd :-)

---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index