Commit Graph

142 Commits

Author SHA1 Message Date
chris
5e02e37306 Fix bug which causes cats builds to not produce an a.out install kernels,
which are needed to boot from Cyclone firmware.

Bug reported on port-cats mailing list:
http://mail-index.netbsd.org/port-cats/2007/09/08/0000.html
2007-09-08 14:25:09 +00:00
jnemeth
28af2a6c6b add CDEXTRA for specifying a directory of extra stuff to put on a CD 2007-08-31 14:20:29 +00:00
jnemeth
44f91e0e38 cd to previous directory after copying files so subsequent copies won't fail 2007-08-30 04:27:04 +00:00
skd
1e30d70843 /libexec, not /usr/libexec. 2007-08-24 17:11:58 +00:00
skd
e066a10613 Enable LFS from sysinstall. 2007-08-21 02:20:55 +00:00
he
9f3262d205 After ${_FILENAME} got assigned its value when it's "-", we can
no longer use it as a copy of ${_F} in the subsequent test for
additional targets under the MDSET_SUFFIXES test.

This brings back builds of srec & bin files for evbarm and img
files for evbppc.
2007-06-07 15:12:34 +00:00
dogcow
107a17be60 As Jukka Salmi pointed out, the previous version had duplicated lines;
this is because I committed the wrong (and much larger) version of the file.
Oops.
2007-05-11 18:52:46 +00:00
dogcow
c1583b0d2c Since /etc/services has gotten rather large, use a minimal one for install
kernels. (mount_nfs is notably the only binary that doesn't gracefully deal
with the lack of an /etc/services file, it appears.)
2007-05-10 23:22:27 +00:00
christos
c2d75511d9 Add CDSOURCE variable to include the source in the CD. From Anon Ymous
Misc cleanups
2007-04-11 16:21:40 +00:00
bouyer
541b5a90c5 Improve the use of makefs to build boot CDs, and make it truely MI:
- allow to specify the "instkernel" directory, and allow to put multiple
  kernels on the image
- allow to specify the directory where the image will be created
- only use bootxx_cd9660 if it exists
- search for second-stage boot as usr/mdec/boot.${MACHINE} in addition to
  usr/mdec/boot
- make 'installboot -e' optional
- use target 'release' or 'iso_image' depending on ${CDRELEASE}
- call some MD targets, which will eventually complete the file list or
  make the image bootable
2007-03-06 21:38:29 +00:00
apb
305d6c91e1 MAKEDEV.subr no longer exists. Don't install it in any ramdisk
or miniroot images.
2007-03-03 06:40:05 +00:00
apb
b3a537ff41 ${DESTDIR}/dev/MAKEDEV.subr -> ${MAKEDEVSUBR} 2007-03-01 09:22:28 +00:00
apb
40b4a926c7 Invent MAKEDEVSUBR and add it to IMAGEDEPENDS and PARSELISTENV if
appropriate.  Previously, IMAGEDEPENDS did not include MAKEDEV.subr.
2007-03-01 09:20:59 +00:00
apb
5d188139b4 Treate MAKEDEV.subr just as we treat MAKEDEV when creating ramdisk
images or miniroot images.
2007-03-01 07:11:04 +00:00
hubertf
05975d2cfb Add CDRELEASE_NOISOS to allow excluding installation/cdroms from
CDs that have full releases.
2007-01-17 00:47:40 +00:00
dsl
166a60fbb9 Use 'installboot -e ...' to modify the boot options on a boot file instead
of trying to install the image into a small file.
2007-01-07 18:34:48 +00:00
jmmv
2947e73b43 Move lfs_cleanerd from /usr/libexec to /libexec. This is to allow putting
the root file system on a LFS volume.

Addresses PR bin/30407.  No objections in tech-userlevel@.
2006-11-11 14:47:27 +00:00
hubertf
3da409792d Use CDROMS_RELEASEDIR consistently 2006-11-04 12:06:28 +00:00
hubertf
7e8c91d132 Install CDs need rockridge extensions, else the sets can't be found.
This fixes building of src/distrib/{i386,amd64/cdroms/installcd
(or .../cdroms/bootcd* with CDRELEASE set, which is about the same)
2006-11-01 16:47:17 +00:00
jmmv
7c53e12270 Use TOOL_PAX instead of pax to allow building release CD images (i.e.
CDRELEASE=true) on non-NetBSD systems.
2006-10-29 16:45:18 +00:00
pavel
9883a03a3c Strip the kernel before it is written to floppy. This will allow to have
unstripped INSTALL kernels in the release.

OK lukem@.
2006-09-29 08:16:41 +00:00
bouyer
24e23a5a9c Properly set ${_FILENAME} if the _F item of MDSETTARGETS is '-'.
From Jachym Holecek on tech-toolchain.
2006-08-23 19:01:26 +00:00
oster
066dca4e5e We need to .WAIT until 'prepare' is done, and then .WAIT until
'copy-releasedir' is done before doing 'image'.  Failure to do so
leads to a race condition that may result in build errors on
parallel builds with '-j 4' and '-j 16'.
2006-08-02 21:37:41 +00:00
christos
a61ffc83dc PR/33837: Bucky Katz: crossbuild of release fails because $MAKE not passed 2006-06-27 12:34:54 +00:00
hubertf
f3513c1e13 Add & enable boot-CDs (with ramdisk kernels only, no install sets),
built as part of a regular release. For more information, see
http://mail-index.netbsd.org/tech-install/2006/05/11/0001.html

OK: core@
2006-06-02 22:35:21 +00:00
dsl
934b882096 Stop make wingeing when the crunchgen binary can't be located. 2005-11-10 21:29:37 +00:00
dsl
8b08a3fc64 We need the absolute path of the crunchgen binary in order to make the
generated makefile depend on the binary.
Needed for USE_TOOLS=no builds
2005-11-07 22:19:34 +00:00
dsl
0437903aaf The 'padded by' number displayed for multi-floppy images has been out by 8k
per floppy for a while.  (The rest of the sums are ok).
Change the 'padded' size to include all the space in the last 8k block
of the tar file.
Similarly if the image doesn't fit, report the exact amount of overflow.
2005-09-10 18:05:51 +00:00
dsl
c7c436e94e Fix breakage from yesterday!
Don't pass crunchgen the name of its own binary as an extra argument.
(make must have silently done this when the extra argument was .PHONY)
2005-09-05 20:14:08 +00:00
dsl
0132bc8a19 Report the exact number of free bytes in the install floppy images. 2005-09-04 19:29:31 +00:00
dsl
3047ebb391 Make ${CRUNCHBIN}.mk depend on ${TOOL_CRUNCHGEN:[-1]} instead of .PHONY.
Recreating the makefile when the crunchgen program has changed is probably
adequate, and it allows a lot of later optimisations to still apply.
In particular:
- the final link for ramdiskbin
- the create of the embedded filesystem
- the inclusion of the ramdisk into the kernel
- compressing the kernel
Unless something else actually requires one of the above.
2005-09-04 19:00:40 +00:00
dsl
1ac6a7dc0f Tell pax to use 8k (not 10k) buffers when generating the tar archive
of 'boot' and 'netbsd'.
This makes it possible for the tar archive to end at the end of the 2.88M
floppy, instead of either 4k before, or 6k after.
Gives us a whole extra 4k.
The very observant might realise that we don't need the final 1024 bytes
of nulls written to the floppy either, so they could be deleted!
2005-09-03 20:34:28 +00:00
xtraeme
2d8aae0f85 Copy the Spanish language file into the ramdisk. 2005-08-27 15:42:56 +00:00
dbj
b39ff22204 add "fsimage" phony target to rebuild image.
delete the ${WORKBUILT} tag on cleanfsimage so it
will get properly rebuilt
2005-06-27 19:10:32 +00:00
lukem
172fad8aab Support MDSET_POST; apply the operation to every image.
Implement MDSET_NOGZIP & MDSET_NOGZIP.${FILENAME}, to prevent the gzip
of the final image.  This is useful if that image has already been
munged & gzipped by MDSET_POST* or MDSET_SUFFIXES*.
2005-05-31 16:23:37 +00:00
dsl
306d28231b When a boot floppy overran, the reported excess size was 8k too big. 2005-03-04 16:01:58 +00:00
jmc
d177a1d5bf Make the crunchgen generated makefile regen on each run 2005-02-10 16:03:34 +00:00
lukem
8fa2b6b361 Use
${MAKE} ${CRUNCHENV} ...
instead of
	${CRUNCHENV} ${MAKE} ...
so that CRUNCHENV overrides any user-provided command-line make(1) variables.

This fixes /rescue build problems for people who pass settings such
as MKKERBEROS=yes in via the make(1) command-line.
2005-01-19 01:18:59 +00:00
lukem
46123551a0 Only support SMALLPROG_INET6 if ${USE_INET6} != "no".
Part of PR 28994.
2005-01-18 12:30:21 +00:00
snj
619df63ccc Typo police: sytem -> system. 2004-09-22 21:24:07 +00:00
dsl
3d7f966def The code to pad floppies could sometimes overwrite the end of the kernel
(causing the decompress to generate random data).
I've changed it to pad using:
	dd if=xx.fs of=xx.fs conv=sync conv=notrunc bs=${floppysize}b count=1
which isn't subject to rounding errors!
This might be the fix for PR/25552
2004-06-12 18:39:53 +00:00
dsl
64d44bfc5f Remove the .comment and .ident sections when stripping kernels.
Saves about 4k from all the install floppies
2004-06-06 21:44:52 +00:00
lukem
35a3ccf1af Remove "./dev type=dir" entry from generated devices.spec, as it
causes the ownership of ${.OBJDIR}/work/dev to be used in the image
instead of that from the earlier entry in work.spec.
2004-05-04 03:02:17 +00:00
lukem
6d46b6145e MAKEVERBOSE support 2004-05-04 02:52:05 +00:00
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