Commit Graph

73 Commits

Author SHA1 Message Date
martin 0a474c24d1 Use libhack and the non-widechar hacked version of curses for
the ramdisk image to save some space.
2021-11-01 19:37:32 +00:00
martin a879768d74 PR install/54780: in the (of course totally unlikely) case that sysinst
should crash, run "stty sane".
2020-01-09 19:17:40 +00:00
christos 7e81d727bc Consistently use ${RELEASEDIR}/${RELEASEMACHINE} instead of
${RELEASEDIR}/${MACHINE} (Paul Ripke)
2019-09-23 13:42:30 +00:00
sevan 430a8c4ffa sysctl(8) is useful to have in the install env when debugging 2019-08-20 12:26:38 +00:00
martin 0e857c5e1f Now that we do not force debug sets off install CDs any more, explicitly
set CDRELEASE_NODEBUG everywhere.
2018-09-28 15:05:19 +00:00
christos 009f8e31d2 += for MAKEFS_FLAGS 2017-01-24 18:04:01 +00:00
nakayama 605add88bb nvi has moved. 2013-11-30 08:27:17 +00:00
tsutsui fe248d00b2 Fix PR install/47123 (sysinst fails with "openpty() failed" on many ports):
Add "ipty" to MAKEDEVTARGETS in miniroot/Makefile.inc since "MAKEDEV all"
 no longer creates /dev/pty* device nodes and miniroot doesn't mount ptyfs.
2012-10-26 18:15:55 +00:00
tsutsui ab5207040e Remove mount_kernfs(8) and use dmesg(8) directly. 2010-05-01 12:14:11 +00:00
tsutsui 3445db8c2d Remove fsck_ext2fs(8) and mount_ext2fs(8).
(no file-system EXT2FS in kernels)
Add fsck_msdos(8) and newfs_msdos(8) instead for bootstrap from WinCE.
2010-05-01 12:08:58 +00:00
roy 0adc6cef21 Remove terminfo.db as it's now embedded in libterminfo. 2010-02-11 09:06:47 +00:00
roy bb3a353864 Use the rescue terminfo.db in our images instead of termcap. 2010-02-05 10:01:16 +00:00
abs 2108b54359 34 different termcap subsets, plus a couple of ports still using
the full termcap distfile. In an attempt to reduce the madness
switch everyone (except the i386 cd install which does its own
thing) to the same (under 8K) termcap subset:

ansi			ansi/pc-term compatible with color
dumb|unknown		80-column dumb tty
hp300h			HP Catseye console
iris-ansi-ap		IRIS ANSI in application-keypad mode
iris-ansi|iris-ansi-net	IRIS emulating 40 line ANSI terminal (almost VT100)
sun|sun1|sun2|sun-il	Sun Microsystems Inc. console with working insert-line
vt100|vt100-am		DEC VT100 (w/advanced video)
vt220-8			DEC VT220 8 bit terminal
vt220|vt200|vt300	DEC VT220 in vt100 emulation mode
wsvt25			NetBSD wscons in 25 line DEC VT220 mode
wsvt25m			NetBSD wscons in 25 line DEC VT220 mode with Meta
x68k|x68k-ite		NetBSD/x68k ITE
xterm|vs100		xterm terminal emulator (X Window System)

Trying to provide similar functionality across all ports? It'll never
catch on...
2009-09-20 23:19:50 +00:00
abs bdf4da2bba Nothing needs disktab anymore, so we'd rather have an inode and
slightly over 1K of space on install media...
2009-09-20 22:46:10 +00:00
joerg 4764c235e5 Change ramdisks from dhclient to dhcpcd and add corresponding glue to
sysinst. For amd64, the crunchgen binary shrinks by 150KB uncompresssed,
60KB compressed.
2009-04-07 11:49:16 +00:00
tsutsui 356ea0a687 usr.bin/vi/build -> usr.bin/nvi/build 2008-10-30 12:39:16 +00:00
tsutsui 97e276be34 Sigh, fix previous properly. 2008-09-19 18:33:29 +00:00
tsutsui 5beeb7d847 Fix a typo in previous. 2008-09-19 18:18:37 +00:00
tsutsui 3e414a4b6b Invoke ${MAKESUMS} for ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation files
as snap_md_post target in etc/etc.${MACHINE}/Makefile.inc rather than
as release target in distrib/${MACHINE}/Makefile so that builds for
release in distrib/${MACHINE}/Makefile don't have to be serialized.

XXX: maybe ramdisk kernels should be installed into binary/kernel dir
XXX: as other ports rather than installation dir, and
XXX: kernel config names should be preserved in their filenames.
2008-09-19 17:38:43 +00:00
matt 7cd6f44757 Change remaining instances of ${RELEASEDIR}/${MACHINES} to
${RELEASEDIR}/${RELEASEMACHINEDIR}
2008-06-23 02:16:53 +00:00
tsutsui 14e5e08b41 Build install kernels and standalone bootloaders in their own directories
so that parallel build works properly.
2008-04-26 14:49:43 +00:00
bouyer fee07bcfd4 Add an iso_image target (iso-image as a target name doesn't play well with
bsd.subdirs.mk) in distrib/makefile, which builds an iso image for $MACHINE
with binary sets, stored in ${RELEASEDIR}/iso. The image is bootable for:
alpha, amd64, cats, i386, pmax, sgimips, sparc, sparc64, sun3, vax.
mac68k/macppc no there yet because of missing feature in makefs.

call iso_image in distrib/ for iso-image in the top Makefile.
2007-03-06 21:56:47 +00:00
he 6114f16a00 Use "${INSTALL} -c" instead of "cp". This makes it possible to install
the bootloader code in a "make release" with UPDATE turned on.  Otherwise
we get "permission denied" errors because the target is mode 444.
2005-07-04 08:17:00 +00:00
jmc 6fe4ead562 Convert to usage of UUDECODE_FILES and standardize on filename extension 2004-03-19 08:07:22 +00:00
salo 8d1781e39d netbsd.org->NetBSD.org 2003-07-26 17:06:22 +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
he 3ace5bb166 Expand the miniroot by 256KB, so that this builds again. 2003-04-10 15:01:52 +00:00
shin d27035e925 add csh, dhclient, dhclient-script, netstat, tset, vi. 2003-02-10 07:17:58 +00:00
tsutsui e2c139ba9f Remove "-Wa,-xgot" hack from DBG flag for broken objcopy-crunchide
that has been fixed by simonb.

BTW, should we also add "-mmemcpy" here to reduce code size?
2003-02-01 05:03:42 +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 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
shin 29815951b2 reorder lines so that ${MAKESUMS} is executed after all files are installed.
(previous revision calculates checksums only for *boot.exe)
2002-09-24 12:15:11 +00:00
lukem 2bc49b8d2a don't bother copying or generating etc/spwd.db, as the miniroot was
switched to libhack a little while ago
2002-05-29 04:11:01 +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 6007cc8838 Use release:: instead of release: when multiple release targets may exist 2002-05-07 03:34:16 +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
shin c0bca8554c delete csh, netstat, tset, and vi to reduce GOT size.
otherwise, libc.a and other objects which was not compiled with -xgot
won't link. (in general, you can't mix -xgot and no -xgot binaries.)

current GOT size is 0000f618 (see below).

 10 .got          0000f618  10010460  10010460  0026c460  2**4
                  CONTENTS, ALLOC, LOAD, DATA
2002-04-27 23:38:22 +00:00
lukem 9e5598221a replace _SRC_TOP_ with NETBSDSRCDIR, since the latter is the "public" version 2002-04-26 15:50:21 +00:00
tv 3522143339 The "objcopy" based crunchide method has a problem on MIPS; it turns global
symbols into locals, but relocs are left in place (rather than attempting
to resolve-in-place with "ld -r", even with "-Bsymbolic").

Standard MIPS code will generate CALL16 relocs for function calls, but
the linker forbids such relocs from being used to call local symbols (such
as those turned "local" by objcopy).  So, rather than battle the toolchain
uphill, work around it for the moment by forcing 32-bit GOT references with
the assembler option "-xgot".

This will be fixed in a more clean manner in the future.
2002-04-23 19:53:10 +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 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 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 fe5992eead convert to using distrib/common/Makefile.mdset 2002-04-11 15:34:52 +00:00
shin 49dfdbeb27 fix typo. 2002-04-11 13:50:06 +00:00
lukem 359c9d0ecd clean up to NDWO makefile 2002-04-11 06:39:04 +00:00
shin e4e5edd1a5 use ${UUDECODE}.
execute ${UUDECODE} at destination directory.
2002-04-10 05:00:47 +00:00
lukem e0f433e649 ensure all sysinst-using makefs generated images have at least 15 inodes free,
and be consistent how MAKEFS_FLAGS is defined.
2002-04-01 12:16:11 +00:00
shin 75c3327ae7 tune inode density of miniroot.fs. 2002-03-23 08:24:37 +00:00
shin 398757bb12 fix IMAGEENDIAN (s/be/le/). 2002-03-23 05:15:20 +00:00