Commit Graph

198 Commits

Author SHA1 Message Date
dsl da913444c4 Add /targetroot (used by sysinst) so that sysinst can work on sparc (etc)
systems booted off a readonly miniroot.
2004-04-29 19:44:11 +00:00
dsl 8fc0ae8d08 Add French, German and Polish sysinstmsgs to all ramdisks that include sysinst
expect those where at least one of the language variants isn't built,
and those that are known not to have enough space (i386 ramdisk-tiny).
Files added to list.sysinst, list.sysinst.en is used when these files
cannot be added.
This might hit a size limit on another build - but I have no (sane) way of
testing it.
2004-04-18 20:04:26 +00:00
he e49da78c8f Add a list of files which determine the kernel version as
DISTRIBVERDEP in Makefile.distrib, and make both sysinst and
distribution notes use that information so that they rebuild
if the kernel version changes.

Distribution notes didn't have this before, sysinst had a private
(now outdated, since sys/sys/param.h now determines version) copy
of this.
2004-02-02 18:43:39 +00:00
dsl 23c3ad7622 Run mdsetimage on a temporary copy of the kernel, then we retry if/when
it fails.
2004-01-17 20:17:44 +00:00
lukem ea188c8e82 When using "MAKEDEV -s" to generate a specfile, rewrite the paths from
"./" -> "./dev/".  Noted by Tetsuya Isaki <isaki@NetBSD.org> in private mail.
2004-01-01 14:34:24 +00:00
lukem fcdfdbba5c Rework MAKEDEV:
*	Use "mknod -F netbsd -r" to create nodes, instead of
	"rm ; mknod; chmod; chown".
	This means permissions & ownership of existing nodes will
	not be changed.
	This is up to 30% faster when populating an empty /dev,
	and nearly 2x faster when re-running on an existing /dev.

    *	New options:
    	-f		force change of permission & ownership of existing
			devices
    	-m mknod	override name/path of mknod program
			(which defaults to $TOOL_MKNOD, then "mknod").
	-s		generate mtree(8) specfile instead of creating devices

    *	Remove /usr/etc from $PATH; not needed anymore.

    *	Provide functions to create devices & directories:
	    mkdev name [b|c] major minor [mode{=600} [gid{=0} [uid{=0}]]]
		create device node `name' with the appropriate permissions
	    lndev src target
		create a symlink from src to target
	    makedir dir mode
		create directory with appropriate mode

    *	UIDs and GIDs are hardcoded in at MAKEDEV generation time.
	(Unfortunately there's not a simple way of determining a GID
	a la "id -n user" for determining a UID).

This was tested by generating MAKEDEV for each MACHINE,MACHINE_ARCH
combination and comparing the results of "MAKEDEV all" from the
previous version to the new one.
(This testing actually highlighted mistakes in the previous configuration!)


Simplify distrib/common/Makefile.makedev to use "MAKEDEV -s"
2003-12-21 17:37:26 +00:00
matt 9ada790a26 s/awk/${AWK} 2003-11-14 06:00:34 +00:00
lukem ed9fb819aa When calculating the number of disks, take into account that every
floppy needs an 8KB tar volume header, not just the first.
Fixes size calculation bug reported by Frank van der Linden.
2003-11-09 23:44:48 +00:00
lukem f85d2d1c14 Use ${HOST_SH} instead of `sh'.
If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
2003-10-26 07:25:33 +00:00
lukem 20534790da Update for MAKEDEV.tmpl changes; use <.OBJDIR-of-etc>/MAKEDEV
instead of etc/etc.${MACHINE}/MAKEDEV
2003-10-25 04:29:24 +00:00
lukem 8be7e53735 Add MDSET_NOSTRIP and MDSET_NOSYMBOLS; global versions of the "per ${FILE}"
equivalents that currently exist.
2003-10-24 00:11:24 +00:00
lukem d7e5203947 Allow ${CRUNCHBIN} to be optional by defaulting to "." when doing the
"${.OODATE}" check.
Problem noticed in a build that uses Makefile.image but not Makefile.crunch.
2003-10-03 02:46:52 +00:00
lukem 94830d866e revert previous accidental commit (just whitespace tyop in this case) 2003-07-10 10:36:03 +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 20b9064eac Don't force "make -j 1" any more, since David Laight appears to have
fixed the parallel-make issues in crunchgen generated Makefiles.
2003-05-18 11:25:33 +00:00
dsl adb2f69a2f Avoid building the xxx.mk file (etc) multiple times in a parralel build.
Change name of target build from xxx.mk from 'all' to xxx.crunched to avoid
picking up baggage from bsd.own.mk and bsd.prog.mk.
Fixes toolchain/21563 (with new crunchgen binary)
2003-05-15 17:52:32 +00:00
dsl 689ce9ee7c Force ramdiskbin.mk to be run to update the crunched binary.
Explicitly check times on built targets so to stop make rebuilding
the later targets.
nbmake in src/distrib/i386/floppies/ramdisk-big (etc) will now
pick up changes to source files that make the crunched binary.
2003-05-09 12:20:04 +00:00
lukem 8c75c09c1b pull in <bsd.sys.mk> for HOST_SH 2003-05-09 09:06:14 +00:00
lukem 4989a7a8c6 Don't bother building var/db/obsolete/* files for the install media;
this stuff is in the base.tgz distribution, and it's better to have
postinstall fix it up than use the (dodgy) code in sysinst.
2003-05-09 01:45:08 +00:00
christos 3d24ae7c3d Use ${HOST_SH} 2003-05-08 13:05:01 +00:00
christos 395450a2eb use ${HOST_SH} 2003-05-08 13:04:13 +00:00
fvdl 42614ed3f3 Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.
2003-04-02 10:39:19 +00:00
lukem 1b0869163c Add MAKE to PARSELISTENV, and specifically set MAKE=${MAKE} in
list.sysinst.
(Better fix to previous, but thanks to Warner for committing a
fix which then prodded me to improve it :)
2003-03-25 23:07:29 +00:00
imp 7bd540a729 Fix cross building case where the host is not a NetBSD host. We need
to set MAKE for the subshell that's used to populate the work tree.
It needs to be the the correct make (in the cross build case: nbmake +
args) so that when makeobsolete is run it can pickup this value.
Otherwise makeobsolete defaults to the host's make is used which might
not understand some of NetBSD make's constructs.

This fixes, mostly, the build of NetBSD/hpcmips on a FreeBSD-current
system.
2003-03-25 18:37:59 +00:00
lukem 664f01402c add multiple-include protection.
clean up some comments.
2003-03-11 07:18:38 +00:00
lukem 00a162d001 Augment the `KERNEL' field of MDSETIMAGES; if it contains a `/'
character, use that as the path to the kernel to use, rather than
using the default of "${KERNOBJDIR}/${KERNEL}/netbsd".
(Using this feature means that FILENAME == "-" isn't useful. such is life...)
2003-03-11 05:14:58 +00:00
lukem 5c40b88236 a minor heads-up. (if i got bit by this, someone else might) 2003-03-10 23:42:45 +00:00
lukem 43dbccb5e3 Script to make a file system image (usually .iso) bootable by Sun
computers, by appending appropriate boot file systems to the image and
then creating a disklabel using sunlabel(8).

Inspired by distrib/utils/mksunbootcd, except that this is a shell script
instead of being a C program that would have needed to become a host tool.
2003-03-07 09:36:02 +00:00
lukem 85794c7b93 improve calculation to determine number of disks required 2003-03-07 09:33:53 +00:00
dsl 9817668a75 Report free space for unpadded floppies
(approved by christos)
2003-03-03 14:20:13 +00:00
lukem 4f6381b784 all:
Use /var/db/obsolete instead of /etc/obsolete

etc/Makefile:
	Create separate target "install-obsolete-files" to populate
	/var/db/obsolete, instead of using "install-etc-files".

Makefile:
	Add do-obsolete target, to run "cd etc && make install-obsolete-files",
	and add this to BUILDTARGETS.
	This moves the "obsolete files" creation from "distribution" to "build".


Per discussion with Andrew Brown.
2003-02-22 03:20:45 +00:00
lukem 73b865f1d6 install obsolete set lists as /etc/obsolete/%s not /dist/%s_obsolete 2003-02-20 12:06:54 +00:00
jhawk d8390bf622 install /usr/bin/progress along with sysinst on all installation media
of all architectures that use sysinst.
2003-01-22 05:57:37 +00:00
lukem a250e57c96 Install release files under "${RELEASEDIR}/${MACHINE}/..." instead of
"${RELEASEDIR}/...".

${RELEASEDIR} is never cleaned , and ${RELEASEDIR}/${MACHINE} is only
cleaned if UPDATE is not defined.
2003-01-03 15:34:30 +00:00
lukem d9aa9519e8 Invoke ${PAX} with '-O' so that various errors don't hang the make
or the command with an interactive question.  (This also prevents
weird problems if a directory element of '-f path' is missing and
'make -j N' is being used).
2002-12-21 15:54:48 +00:00
lukem c7ad6e6337 Consistently use "netbsd-XXXXX" instead of "netbsd.XXXXX". 2002-11-18 12:39:43 +00:00
lukem ed56ec3a05 Rework how SMALLPROG was being used and how INET6 support was enabled.
There's two variables added to Makefile.crunch:

    SMALLPROG		If 1, add SMALLPROG=1 to CRUNCHENV.  [default: 1]
			This can be used by various Makefiles to
			determine if a `small' version of the program
			is required.

    SMALLPROG_INET6	If 1 and SMALLPROG == 1, add SMALLPROG_INET6=1
			to CRUNCHENV.  [default: 0]
			This can be used by various Makefiles to
			determine if the `small' version has INET6
			support enabled.

Only enable SMALLPROG_INET6 for programs on the ramdisks that have INET6 in
the appropriate kernel, and cleanup INET6 setting.
(Note: this means that sysinst won't get INET6 support if the kernel
it's running on doesn't have it).

This change saves a fair bit of space on various install images
(including i386 ramdisk-{ps2,small,tiny}) that didn't have INET6 in
the kernel but were unconditionally getting INET6 support in their tools.
2002-10-17 02:05:35 +00:00
lukem e3ad63279a Use _KERNEL.${_K}.${_F} instead of _KERNEL.${_K}, as this allows
MDSETTARGETS to contain the same kernel (_K) more than once, as long
as the filename (_F) is different.
2002-10-14 16:16:09 +00:00
thorpej 23d33fadf0 Don't escape constructs like ${FOO} in printf statements. awk doesn't
expand variables like that in printfs, and the escapes end up in the
output in some versions of awk.
2002-09-16 02:13:16 +00:00
thorpej 3587dba99e Escape { and } in the regexp that matches e.g. ${FOO}. 2002-09-15 16:15:40 +00:00
lukem a7e553295a support "mode=install", which generates a Makefile with an install target. 2002-08-18 14:03:42 +00:00
lukem 4c7d8ab16d this file is now unnecessary, now that MAKEDEV's "local" target
doesn't complain if $0.local doesn't exist.
2002-08-10 00:25:06 +00:00
lukem a6370c993f correct a comment 2002-06-01 16:22:54 +00:00
lukem ef1b7bce09 - build crunchgen(1)-created Makefiles with -j 1, as they're not
parallel build safe at this time.
- invoke crunchgen with -q, as the verbose output looks ugly with "make -j N"
  and in build logs.
2002-05-29 09:56:04 +00:00
lukem 032b6cf60e - for COPY, default perm to 0444 if it's not supplied
- for COPYDIR, use perms of 0444 for files
- set perm to crunchgen program to 0555
- for mode=populate, add  `` || exit 1''  after  `` ( ... ) ''  to
  ensure that sh -e correctly exits upon failure...
2002-05-29 03:01:55 +00:00
lukem a88aa54aa4 support MDSET_NOSTRIP.${FILENAME} 2002-05-10 02:31:45 +00:00
lukem 81f6719d57 only provide targets for ${WORKSPEC} and ${WORKBUILT} if non are provided.
this allows custom specfiles to be generated or custom WORKDIRS to be used,
whilst still allowing use of IMAGE or IMAGETAR rules.
2002-05-09 09:21:25 +00:00
lukem 04e61f8526 - whitespace consistency cleanup
- build (mdset/nm/strip) into ${filename} as one rule, and move ${filename}.gz
  into separate rule
- rename MDSET.${filename}.nosymbols -> MDSET_NOSYMBOLS.${filename}
- rename MDSET.${filename}.post -> MDSET_POST.${filename}, and don't do
  suffix handling here
- rework suffix handling:
	- rename MDSET.${filename}.suffixes -> MDSET_SUFFIXES.${filename},
	  and change from list of suffixes to list of "suffix cmdtobuildsuffix",
  	  where cmdtobuildsuffix is the name of the variable containing the
	  command to build ${filename}.${suffix} (available as "${.TARGET}").
	- for each ${filename}.${suffix}, depend upon ${filename} and use
	  ${cmdtobuildsuffix} to create the former.
	- add separate ${filename}.${suffix}.gz rule
- mipsco & pmax: rename "install.gz" to "netbsd-INSTALL.gz", for
  consistency and so the target to build the mdset kernel doesn't get
  confused with general "install" target
2002-05-08 21:44:53 +00:00
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