Commit Graph

50 Commits

Author SHA1 Message Date
lukem
681ca7d1c9 keep ${IMAGE} around even after building (optional) ${IMAGE}.gz 2002-05-07 14:27:25 +00:00
lukem
6007cc8838 Use release:: instead of release: when multiple release targets may exist 2002-05-07 03:34:16 +00:00
lukem
119f33b8a8 install correct item with IMAGETAR_RELEASEDIR release target 2002-05-07 02:40:55 +00:00
lukem
da5192b2fe add support for MDSET.${FILENAME}.nosymbols 2002-05-05 13:02:44 +00:00
lukem
897d27df90 - add support for [-s suffix] to buildfloppies.sh (defaults to "",
rather than the previous ".fs").
- add support for (optional) FLOPPYSUFFIX in Makefile.tarfloppy, and
  use appropriately
- remove (now unnecessary) custom release targets in alpha/instkernel/*
2002-05-04 01:34:36 +00:00
lukem
d5209f6152 rather than blocking parallel mdset builds with .WAIT, replace usage of
"netbsd.tmp" with "${.TARGET:R}" (et al)
2002-05-03 15:22:55 +00:00
lukem
dac2544a0d revert previous; all includers of Makefile.image should set MTREECONF 2002-05-03 14:21:44 +00:00
lukem
611543b0a7 provide common/mtree.dot (contains entry for ". type=dir ...") , and
use that rather than MTREE entry in the list, because Makefile.image
needs at least one mtree file anyway
2002-05-03 14:20:54 +00:00
bjh21
f1c9ecc81e When doing a shell "for" loop over a potentially-empty list, assign the list
to a shell variable and iterate over that.  This is necessary for some POSIX
shells.
2002-05-02 18:32:45 +00:00
lukem
ed8e534c7e yet another distrib overhaul:
- move guts of distrib/Makefile.inc to distrib/common/Makefile.distrib
  (fixes problem caused by implicit include of ../Makefile.inc in certain
  submake conditions triggered by makefiles not yet in tree)
- removed mkdir of ${RELEASEDIR}/*;  rely upon "snap_pre" target of
  etc/Makefile to create all the release directories
- renamed RELINSTALL to RELEASE_INSTALL
- renamed FLOPPYINSTDIR to FLOPPY_RELEASEDIR
- renamed MDSETDIR to MDSET_RELEASEDIR
- removed ITARGET
- move release target from top level to appropriate subdirectory
- ensure release target has correct depends
- replace miniroot's IMAGE_MD_POST with common/Makefile.image IMAGEPOSTBUILD
- Makefile.image: add realall: ${IMAGE}
2002-05-02 18:02:14 +00:00
lukem
e2923328ba support optional CRUNCHENV - environment variables to pass to
crunchgen(1) and the make -f ${CRUNCHBIN}.mk.
defaults to SMALLPROG=1
2002-05-02 13:16:46 +00:00
lukem
a9988cc940 allow IMAGE to be optional (and don't create rule for ${IMAGE}: if
it's not defined)
2002-05-02 13:05:49 +00:00
lukem
9e5598221a replace _SRC_TOP_ with NETBSDSRCDIR, since the latter is the "public" version 2002-04-26 15:50:21 +00:00
bjh21
2fb16bb43f Set PAX in buildfloppies.sh's environment. 2002-04-24 23:04:08 +00:00
thorpej
2fb4fdf715 Fix kernel suffix processing:
* Don't put .WAIT in ${KERNELS}.
* Make sure to add suffixed kernel names to ${KERNELDEPS}.
2002-04-24 21:03:42 +00:00
tv
73a896df92 Exit with nonzero status if the -i (installboot) command fails. (The media
certainly won't be usable in this case.)
2002-04-17 20:42:34 +00:00
lukem
a0296e9ed9 Makefile snippet to create bootable ustar floppies 2002-04-16 09:00:20 +00:00
lukem
2db638e823 buildfloppies.sh -- build floppy images from the given files.
It can write multiple disks (up to a maximum number), and optionally
install a bootstrap or pad the last disk to the image size.
2002-04-16 04:28:23 +00:00
lukem
8e8fe76d90 Makefile.mdset: add ${KERNELDEPS} variable which is ${KERNELS} with
.WAIT between the items, and remove .WAIT from ${KERNELS}.
Use ${KERNELDEPS} in make dependencies.
2002-04-14 06:18:12 +00:00
lukem
2a8d02abe9 improve comments and status messages 2002-04-14 04:22:38 +00:00
lukem
36f355e14e - Rename Makefile.mdset variables:
MDEXTRA_SUFFIXES.${KERNEL} 	-> MDSET.${FILENAME}.suffixes
	${KERNEL.${_K}}.post		-> MDSET.${FILENAME}.post
  This allows "default" rules for for MDSETTARGETS with FILENAMEs of "-"
  by defined MDSET.-.post & MDSET.-.suffixes
- Document the above
- Use the above appropriately in various Makefiles
- Be a be quieter when building these kernels
- Add .WAIT syncs so that multiple kernels aren't built in parallel, because
  the temporary filename is the same, and it also avoid hairy magic in
  syncing the targets generated from MDSET.${FILENAME}.suffixes with
  the master target for that ${FILENAME}
2002-04-14 01:41:24 +00:00
thorpej
4d4b475b97 Add support for optional extra install kernel suffixes (e.g. .srec
or .bin), provided by the MDEXTRA_SUFFIXES.${kernel} variable.
2002-04-13 17:27:07 +00:00
lukem
0dfdd76021 Makefile.mdset:
replace
		TARGETS = KERNEL IMAGE [...]
	with
		MDTARGETS = KERNEL IMAGE FILENAME [...]
	If FILENAME is "-", use "netbsd.${KERNEL}" as the target filename

The rest:
	Update for new MDTARGETS syntax.  In some cases, the kernel
	name from the "old" method will be used to override the default.
2002-04-12 13:39:43 +00:00
lukem
60a7b54bb3 document which variables get modified by this fragment 2002-04-12 05:50:19 +00:00
lukem
627174f862 - don't pull in <bsd.prog.mk> in Makefile.mdset; do that in the caller instead
- renamed optional post-strip action variable from ${KERNEL}.post to
  netbsd.${KERNEL}.post
2002-04-12 05:33:58 +00:00
lukem
eddc639fec support optional IMAGETAR; if defined, build a tar.gz file named {IMAGETAR}
which contains the same contents as ${IMAGE}.
2002-04-12 04:50:01 +00:00
lukem
7573349ed7 use ${DISTRIBDIR} instead of ${_SRC_TOP_}/distrib 2002-04-12 02:07:15 +00:00
lukem
9cde6de136 move default PARSELISTENV and related goop into separate Makefile.parselist,
and add DISTRIBDIR to PARSELISTENV.
2002-04-12 01:59:45 +00:00
lukem
35c61b16c8 Makefile snippet to do the ${MDSETIMAGE} / ${NM} / ${STRIP} / gzip
game on various kernels and fs images.
2002-04-11 15:28:14 +00:00
lukem
6121661138 Improve wording for COPYDIR M.
Inspired by email on tech-install@ from Klaus Heinz <klaus.heinz@onlinehome.de>
2002-04-10 02:01:43 +00:00
lukem
9c0c79c7ab Add support for optional ${CRUNCHGEN_FLAGS}.
Per discussion with Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
2002-04-02 05:36:23 +00:00
lukem
9e302cc286 add description and free space reminder 2002-04-01 11:59:40 +00:00
bjh21
df35897577 When matching "?" and "*" in a regexp, put backslashes before them
even at the start of the regexp.  This seems to be necessary to
placate mawk.
2002-03-31 01:09:44 +00:00
lukem
aa82eb53b0 add missing backslash. noted by Havard Eidnes 2002-03-17 21:33:45 +00:00
lukem
deffb66504 parselist.awk
- improve comments
- provide a general purpose variable replacement; replace contents of ${FOO}
  with ENVIRON["FOO"].
- deprecate @MACHINE@ and @MACHINE_ARCH@ in favour of using ${MACHINE}
  and ${MACHINE_ARCH} instead
- add errx() function; like err(), but doesn't print the line number
- invoke this script with various variables defined via PARSELISTENV

*/Makefile*
- use PARSELISTENV instead of POPULATEENV, and add variables like DESTDIR
- other minor tweaks

*/list*
- replace @MACHINE@ with ${MACHINE}
2002-03-14 22:26:08 +00:00
lukem
cd5cc87679 in COPYDIR, don't run the find's if the cd failed 2002-03-14 01:24:35 +00:00
lukem
1a1a1a5721 cosmetic tweaks: sort some variable lists, improve descriptions, [...] 2002-03-14 01:07:27 +00:00
lukem
a4fb7ad013 add MTREE keyword, which just outputs its args "as is" for mode=mtree 2002-03-07 01:36:34 +00:00
lukem
a0ce988331 COPYDIR: output "./destdir" not "./destdir/." for the first entry 2002-03-06 04:47:58 +00:00
lukem
fb33595139 implement COPYDIR for mtree and populate modes 2002-03-05 00:19:43 +00:00
lukem
70b2ffae62 rcsid police 2002-02-08 05:17:49 +00:00
lukem
39805e0285 - cleanup image device creation: add Makefile.makedev & list.makedev,
remove dist/*, now that they're not needed.
  if MAKEDEVTARGETS is set, use MAKEDEV.wrapper and makedev2spec.awk to
  create an mtree specfile containing the devices that would be made with
  "etc/etc.${MACHINE}/MAKEDEV $MAKEDEVTARGETS".
  otherwise, copy etc/etc.${MACHINE}/MAKEDEV to dev/MAKEDEV (via list.makedev)
- add mtree.common; contains directories used by all images, and optional
  entries for dist/*
2002-02-08 02:18:53 +00:00
lukem
cc74f22504 add list containing files used by sysinst, including dummy files that
are used to set the default permissions in the generated mtree specfile
for files generated by makeobsolete.
2002-02-07 11:40:48 +00:00
lukem
6276be048b - improve error checking
- add support for passing variables to parselist.awk that are used to replace
  text in each line of the lists.  currently supported strings:
	text		variable
	----		--------
	@MACHINE_ARCH@	MACHINE_ARCH
	@MACHINE@	MACHINE
2002-02-07 11:39:17 +00:00
lukem
2d60e83706 add more argument checking 2002-02-07 11:35:56 +00:00
lukem
1a64af8d1b MAKEDEV.wrapper
generate list of commands from provided MAKEDEV script with
	given arguments, to feed into makedev2spec.awk

makedev2spec.awk
	take output of MAKEDEV.wrapper and generate an mtree(8) specfile.
2002-02-06 16:08:16 +00:00
lukem
8b407af734 - allow ${MTREECONF} to contain multiple files, and build ${WORKSPEC} up by
catting these together with "/unset all" between each file.
- when populating the tree (${WORKBUILT} rule), depend upon ${WORKSPEC}
  rather than ${MTREECONF}
- support ${MAKEFS_FLAGS} as optional flags for ${MAKEFS}
- use CLEANFILES to remove files
2002-02-05 23:29:43 +00:00
lukem
5bb092ee45 replace /unset mode with /unset all 2002-02-05 23:16:51 +00:00
lukem
e07af841a2 use CLEANFILES to remove cruft 2002-02-05 23:16:16 +00:00
lukem
d691d4a33e distrib/common - shared files for building distribution media, initially
comprising of:

    Makefile.crunch
	build a crunchgen(1)ed binary from the provided lists

    Makefile.image
	build a tree from the provided lists, and
	build an ffs file system image from that tree using makefs(8),
	without requiring root privileges

    parselist.awk
	parse list files generating different output:
		crunchgen config
		mtree specfile
		sh commands to populate a tree
2002-02-03 15:24:43 +00:00