Commit Graph

48 Commits

Author SHA1 Message Date
tsutsui 96c07171a0 Use pre-generated boothfs.uue binary to create macppccd. 2009-03-29 04:56:16 +00:00
tsutsui 19165a6c8e Remove an extra escape char. bash(1) complains about it. 2009-03-25 13:53:05 +00:00
tsutsui edbc5d2a81 Use ${TOOL_PAX} rather than tar(1) on the build host.
On some system tar(1) doesn't have --fast-read option.
2009-03-25 09:50:21 +00:00
tsutsui 24d0b20cba Don't remove ${DISTRIBDIR} on cleandir if it isn't default. 2009-03-22 08:43:54 +00:00
tsutsui f71b3da7ab Check if RSYNC and MKISOFS tools are installed before invoking them.
(otherwise we get strange error messages because MKISOFS is used in pipe)
2009-03-22 08:22:37 +00:00
tsutsui bbcdef6f71 Print error message properly when ${RELEASE} is not set. 2009-03-22 07:35:43 +00:00
tsutsui f5415a224c Fix a bug slipped in rev 1.40 which puts extra MD directories into ISO
on multiple image targets.
2009-03-21 23:52:38 +00:00
tsutsui f263184880 Change default path of mkisofs(8) from /usr/pkg/bin to /usr/local/bin
since recent versions in pkgsrc won't work.
2009-03-21 22:41:57 +00:00
tsutsui 22cb2e2e3e - explicitly define the default make target
- create shared/ALL and shared/${MACHINE_ARCH} directories
  only if they exist in ${DISTRIBDIR}
2009-03-09 11:34:37 +00:00
tsutsui ef5ebe3adf Add backslashes missed in rev 1.38.
Fixes traditional bootable macppccd build.
(though this seems to require mkisofs 2.01 or prior)
2009-01-28 17:11:54 +00:00
apb f46c1de7cb Use ${TOOL_SED} instead if plain sed in Makefiles. 2008-10-25 22:27:34 +00:00
tsutsui 9f8e035be7 Use ${TOOL_STAT} to get file size instead of ls and awk in more places. 2007-12-08 12:30:18 +00:00
tsutsui dda5f131c9 Add more useful variables for rsync to fetch binary sets:
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)

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)

Examples:

make RELEASE=3.1 TARGET_CD_IMAGE=mac68kcd fetch
 -> fetch 3.1 mac68k sets from
    rsync.NetBSD.org:/NetBSD/NetBSD-3.1/

make RELEASE=4.0 TARGET_CD_IMAGE=mac68kcd RELEASE_SUFFIX=_RC5 fetch
 -> fetch 4.0_RC5 mac68k sets from
    rsync.NetBSD.org:/NetBSD/NetBSD-4.0_RC5/

make RELEASE=current TARGET_CD_IMAGE=mac68kcd DAILY_DIR=200712060002Z fetch
 -> fetch -current mac68k sets from
    rsync.NetBSD.org:/NetBSD-daily/HEAD/200712060002Z/

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
    rsync3.jp.NetBSD.org:/pub/NetBSD/NetBSD-4.0_RC5/

make RELEASE=3.1 TARGET_CD_IMAGE=mac68kcd \
    RSYNC_PATH=/NetBSD-daily/netbsd-3/200712060002Z fetch
 -> fetch mac68k sets of netbsd-3 branch from
    rsync.NetBSD.org:/pub/NetBSD-daily/netbsd-3/200712060002Z
2007-12-07 21:08:58 +00:00
tsutsui a0b97864fc - fix "Rounding up to 32k boundary and padding 32k" code
("dd if=/dev/zero bs=512 count=0" seems to cause unexpected results)
- use ${TOOL_STAT} to get file size instead of ls and awk
  (1.6.x don't have ${TOOL_STAT} but they have been obsolete anyway)

Both are taken from sys/arch/i386/stand/bootxx/Makefile.bootxx.
2007-12-07 18:35:21 +00:00
bouyer a931914f53 Switch i386 and amd64 to native boot, if INTFILES contains bootxx_cd9660.
Use x86 native boot for current.
Swap i386 and amd64 in multiarch CD sets (cd1 would overflow by 30M otherwise)
and leave vax out (cd3 would overflow by more than 100M - time for a
multi-cd4 ?)
2007-03-08 13:51:37 +00:00
tsutsui d6ca0e8299 Several fixes to make sgimipscd actually bootable:
- introduce SGIMIPS_SGIVOL variable which specifies sgivol(8) path
  because nbsgivol tool is available only in TOOLDIR for sgimips and
  possibly exists in a different directory from default TOOLDIR path
- use fixed (4096) value for SGIVOLHDR.size because default value
  taken from <sys/bootblock.h> is 3135 (not multiples of 4) so it
  doesn't match 2048bytes/sector CD images
- also pass SGIVOLHDR.size to sgivol(8) on creating volume
- rename raw iso9660 image before creating SGIVOLHDR to avoid
  incomplete (non-bootable) image left on failure of sgivol(8)

Problem (i.e. sgimipscd-3.0.2.iso is not bootable) was reported
by Thierry Lacoste on port-sgimips, and fixed images are also
tested by him on IP22 (and by me on IP32).
2007-03-04 04:59:41 +00:00
tsutsui 3723e75357 We can't use && in expression for test(1); use -a instead. 2007-03-04 04:27:21 +00:00
tsutsui 8a4debd1f3 Remove an extra trailing slash. 2007-03-04 03:52:08 +00:00
mrg 3ff056f4e0 use -publisher instead of -P. from mkisofs(1):
-P     Outdated  option  reserved  by  POSIX.1-2001,   use   -publisher
       instead.   This  option  will  get  POSIX.1-2001  semantics with
       mkisofs-2.02.
2007-02-20 18:09:05 +00:00
tsutsui 42f593a4d5 Reorganize macppc_installboot to make macppccd.iso image actually bootable
on (some) OpenFirmware 2.x machines.

Current macppccd.iso image doesn't boot on Openfirmware 2.x
(and probably 1.0.5) machines because it uses pre-compiled binary
which is based on old (and customized) bootxx.
It causes version mismatch against newer ofwboot whose load address
has been changed from 0x600000 to 0xe00000, as mentioned in the
following post:
http://mail-index.netbsd.org/port-macppc/2004/12/14/0020.html
There was also an raw binary which was passed to mkisofs as -boot-hfs-file.

To fix these issue, prepare a simple mkhfsboot program which creates
a boothfs file with the Apple partition map info for mkisofs,
and modify macppc_installboot to search the secondary ofwboot from isofs
and to put and modify the primary bootxx accordingly.
See PR toolchain/30245 for more details.

There are still some machines which don't boot from an iso image created
by this method (G3 machines with OF 2.0f1 etc.), but it's still better
than to keep ugly and obsolete hacks.

Ok'ed by macallan, and there is no other particular comment about this PR.
2006-09-17 03:56:03 +00:00
tsutsui 097bad5fd3 Remove trailing slash from RSYNC_INCLUDE and RSYNC_EXCLUDE pathes
so that rsync can get regular files.
2006-09-17 03:20:46 +00:00
riz 28cb63d856 The sgimips files will be extracted into a different directory if sgimips
is on an image of a different name - compensate.
2005-12-03 01:23:23 +00:00
riz 47cc213a59 Don't make sgimips images bootable unless EXTFILES.sgimips is defined.
While I'm here, fix so that building from a clean objdir works
properly.
2005-10-22 15:56:16 +00:00
martin f531688ba9 Make sgimipscd.iso bootable. 2005-10-04 19:29:34 +00:00
jmc 86c3a374e9 If building a source only cd don't include shared/ALL 2005-01-20 08:05:55 +00:00
jmc 66c068c1fd Make sure amd64 cd's get bootblocks on them correctly also 2004-12-31 08:34:13 +00:00
gavan 0560d8b947 Initial import of iyonix port.
The Iyonix is a desktop machine from Castle Technology, based on a 600MHz
XScale[tm] 80321 processor.

* Uses the bootloader from NetBSD/acorn32, which is now 32-bit compatible.
* Currently boots multiuser with a serial console.
* Device support is not yet complete.

With help from abs.
2004-10-13 23:28:34 +00:00
jmc e58ae2884c Fix typo so VAX_IBOOT works 2004-02-29 01:08:22 +00:00
salo 8d1781e39d netbsd.org->NetBSD.org 2003-07-26 17:06:22 +00:00
lukem eec954fd77 explicitly pull in <bsd.own.mk> for NETBSDSRCDIR (to be safe) 2003-07-10 11:23:53 +00:00
lukem 001c68bd94 Rename a large chunk of the make(1) variables which refer to a
program/tool from "FOO" to "TOOL_FOO".  The new variables are:
	TOOL_ASN1_COMPILE  TOOL_CAP_MKDB  TOOL_CAT  TOOL_CKSUM  TOOL_COMPILE_ET
	TOOL_CONFIG  TOOL_CRUNCHGEN  TOOL_CTAGS  TOOL_DB  TOOL_EQN  TOOL_FGEN
	TOOL_GENCAT  TOOL_GROFF  TOOL_HEXDUMP  TOOL_INDXBIB  TOOL_INSTALLBOOT
	TOOL_INSTALL_INFO  TOOL_M4  TOOL_MAKEFS  TOOL_MAKEINFO  TOOL_MAKEWHATIS
	TOOL_MDSETIMAGE  TOOL_MENUC  TOOL_MKCSMAPPER  TOOL_MKESDB
	TOOL_MKLOCALE  TOOL_MKMAGIC  TOOL_MKTEMP  TOOL_MSGC  TOOL_MTREE
	TOOL_PAX  TOOL_PIC  TOOL_PREPMKBOOTIMAGE  TOOL_PWD_MKDB  TOOL_REFER
	TOOL_ROFF_ASCII  TOOL_ROFF_DVI  TOOL_ROFF_HTML  TOOL_ROFF_PS
	TOOL_ROFF_RAW  TOOL_RPCGEN  TOOL_SOELIM  TOOL_SUNLABEL  TOOL_TBL
	TOOL_UUDECODE  TOOL_VGRIND  TOOL_ZIC

For each, provide default in <bsd.sys.mk> of the form:
	TOOL_FOO?=	foo
and for the ${USETOOLS}=="yes" case in <bsd.own.mk>, provide override:
	TOOL_FOO=	${TOOLDIR}/bin/${_TOOL_PREFIX}foo

Document all of these in bsd.README.

This cleans up a chunk of potential (and actual) namespace collision
within our build infrastructure, as well as improves consistency in
the share/mk documentation and provision of appropriate defaults for
each of these variables.
2003-07-10 10:33:58 +00:00
lukem 5ab04f288f use distrib/common/sunbootcd.sh instead of distrib/utils/mksunbootcd/* 2003-03-07 09:52:59 +00:00
jmc f59ffcc923 After pax-as-tar conversion the -O option no longer exists nor is a
substitute available (boo..hiss..). Fix the extraction to deal with this.
2003-02-13 23:55:12 +00:00
scw 16af9da786 The walnut port has been subsumed by the new evbppc port. 2002-12-09 14:20:52 +00:00
lukem f60d6abce0 don't depend upon 'cvs -kb' to preserve macppcboot.raw (et al).
instead, keep uuencoded versions in the repository.

(arguably /usr/sbin/installboot -m macppc should support -t cd9660,
at which point we'd nuke this macppc_installboot hack)
2002-10-21 05:08:23 +00:00
lukem 863e999f52 - add more MACHINE_ARCH.xxx variables
- when building RSYNC_INCLUDE, only add a directory once
- automatically add `shared/ALL' and `shared/${MACHINE_ARCH}' to
  ${BASE_PORTS.${image}} for each unique MACHINE_ARCH in the latter.
- don't bother explicitly listing shared/* in the example
- note that the cats cdrom is now bootable
2002-10-08 15:20:50 +00:00
lukem e103106547 enable -o append for alpha as well 2002-10-03 07:28:33 +00:00
lukem d864e0371d revert part of previous;
alpha installboot still needs to come after everything else, because non of
the other installboot(8) backends support recalculating the alpha checksum
(yet).
2002-10-03 05:26:49 +00:00
lukem a50326b0d6 - create ${IMAGEDIR}/${image}.contents, with the files from BASE_PORTS.${image}
(could be extended )
- move alpha installboot above pmax/vax; it doesn't need to be last anymore
- cosmetic tweaks
2002-10-03 03:58:56 +00:00
lukem 752effddfa Instead of building the staging area with symlinks and using "mkisofs -f",
only populate the stage area with the minimal necessary files and use
"mkisofs -graft-points -path-list pathlistfile", and populate pathlistfile
with the "reachover" paths.

    IMPORTANT NOTE:
	This change requires mkisofs 1.15a34 or newer for a working
	-graft-points option.
	This can be found in the cdrecord-devel 1.11a34 package.

Don't fetch by default; the rsync is resource intensive on rsync.netbsd.org
and is often unnecessary.  Deprecate NO_FETCH whilst here.
Use "make fetch" explicitly...

Explicitly add ${RELEASENAME} to RSYNC_SITE (and remove it from all
the other rsync options), and deprecate ${RELEASE_SUBDIR}

Add some  # {  and  # }  comments, to make it easier to track make(1)
conditionals & loops.
2002-09-29 14:29:19 +00:00
lukem 4408faac1a - don't hardcode the CD size to 666000 blocks; use CD_SIZE variable instead.
- access mksunbootcd via ${NETBSDSRCDIR}/... && ${PRINTOBJDIR}
- use ${INSTALLBOOT} for alpha,pmax,vax instead of /sys/arch/*/stand/...
- use ${.CURDIR}/macppc_installboot to access macppcboot.raw
2002-09-29 07:23:15 +00:00
mrg 382230624e s/${DISTDIR}/${DISTRIBDIR}/ as the former conflicts with pkgsrc.
add 1.6 support for vax cdrom's.  other ports in NetBSD-1.6.mk are as in
1.6.mk and are probably wrong.
2002-06-24 14:49:15 +00:00
lukem 0002fc052e use ${PRINTOBJDIR}
(mmm, finding make -j N>1 build bugs)
2002-06-15 02:15:15 +00:00
tv 5abeaaee6a Add LOG_MKISOFS option to produce extra-verbose logs of the mkisofs image
generation info (-v -v).
2001-01-17 02:07:25 +00:00
tv 2ad7116616 Use the public-access rsync entrypoint, not a ssh-based developer type. 2000-11-30 21:33:41 +00:00
tv cf2f2908b2 Clean up hidden files a bit.
Give sensible HFS types to some file extensions.
Fix alpha kernel to be a link, not gzip extraction.
2000-11-30 00:04:08 +00:00
tv 481261ff0a Minor updates, fixes, and cleanups. 2000-11-29 19:56:19 +00:00
tv 0bbb454b99 First draft of multiple-arch CD-ROM creation system. This is extremely
rough at this point, and needs more fleshing out in several areas.  Does not
yet do packages or check for the existence of support programs--to be fixed.
2000-11-29 16:35:03 +00:00