$NetBSD: README,v 1.4 2009/03/22 15:02:24 tsutsui Exp $ This distrib/cdrom directory was used to create bootable CD images in the past releases with optional rsync(1) and mkisofs(8) tool. All necessary binaries for ISOs must be prepared in ${DISTRIBDIR}, which is ${.OBJDIR}/download by default, and the binaries can be fetched by rsync(1) with the "fetch" target defined in Makefile. Now build.sh script has the "iso-image" target using our native makefs(8) and this distrib/cdrom is being superseded, but our makefs(8) still lacks support for a hybrid ISO9660/HFS file system which is required to create bootable CD images for mac68k and macppc. On the other hand, the recent version of mkisofs(8) seems to use iconv(3) libraries on creating the hybrid ISO9660/HFS file system, but the latest mkisofs(8) (at least cdrtools-2.01.01.36) from pkgsrc dumps core on it. cdrtools-2.01 is required to build images. (PR pkg/37643) Note you can also use compiled release binaries prepared in RELEASEDIR by "build.sh release" if you need only single ISO image for a specific port. Environment variables: RELEASE specify target release version (no default, mandatory) TARGET_CD_IMAGE specify target ${MACHINE}cd name (default: all targets defined in ${RELEASE}.conf) MKISOFS specify mkisofs(8) path (default: /usr/pkg/bin/mkisofs) RSYNC specify rsync(1) path (default: /usr/pkg/bin/rsync) RSYNC_HOST specify rsync host (default: rsync.NetBSD.org) RSYNC_PATH_PREFIX specify extra prefix path of NetBSD module names for rsync mirrors ex. "/pub", "/netbsd" etc. (default: empty) DAILY_DIR specify directory name on using NetBSD-daily snapshot for -current ex. "200712060002Z" etc. (no default; mandatory for -current) BRANCH spcify branch name on using NetBSD-daily snapshot (default: current) RELEASE_SUFFIX specify suffix of directory names used for pre-releases ex. "_BETA2", "_RC5" etc. (default: empty) RSYNC_PATH specify path used to rsync hosts (default: set from the above variables) Example usage: make RELEASE=5.0 TARGET_CD_IMAGE=mac68kcd fetch -> fetch 5.0 mac68k sets from rsync://rsync.NetBSD.org/NetBSD/NetBSD-5.0/ make RELEASE=4.0 TARGET_CD_IMAGE=mac68kcd RELEASE_SUFFIX=_RC5 fetch -> fetch 4.0_RC5 mac68k sets from rsync://rsync.NetBSD.org/NetBSD/NetBSD-4.0_RC5/ make RELEASE=current TARGET_CD_IMAGE=mac68kcd \ DAILY_DIR=200903060000Z fetch -> fetch -current mac68k sets from rsync://rsync.NetBSD.org/NetBSD-daily/HEAD/200903060000Z/ make RELEASE=4.0 TARGET_CD_IMAGE=mac68kcd RELEASE_SUFFIX=_RC5 \ RSYNC_HOST=rsync3.jp.NetBSD.org \ RSYNC_PATH_PREFIX=/pub fetch -> fetch 4.0_RC5 mac68k sets from rsync://rsync3.jp.NetBSD.org/pub/NetBSD/NetBSD-4.0_RC5/ make RELEASE=5.0 TARGET_CD_IMAGE=mac68kcd \ RSYNC_HOST=rsync.jp.NetBSD.org \ RSYNC_PATH=/NetBSD-daily/netbsd-5/200903070000Z fetch -> fetch mac68k sets of netbsd-5 branch from rsync://rsync.jp.NetBSD.org/pub/NetBSD-daily/netbsd-5/200903070000Z make RELEASE=5.0 TARGET_CD_IMAGE=mac68kcd all -> build an ISO image for mac68k from downloaded files as the above make RELEASE=5.0 TARGET_CD_IMAGE=macppccd \ DISTRIBDIR=/usr/obj.macppc/releasedir all -> build an ISO image for macppc from release binaries built by "build.sh release" in the RELEASEDIR (use appropriate RELEASEDIR on your build environment)