Commit Graph

61 Commits

Author SHA1 Message Date
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
shin
0519856aa2 delete TX3922.
add hpcboot.
2002-03-23 03:21:23 +00:00
lukem
a8025d95ae Commit work-in-progess rototill of distrib/miniroot and associated machine
dependent files:

- Use infrastructure from distrib/common to build file system images with
  crunchgen-ed programs from a list file.

- Non root ("UNPRIVED") builds from a read-only source tree are possible,
  as makefs(8) replaces vnconfig(8)/vnd use, devices are generated using
  common/makedev2spec.awk, etc.

- Cross builds should be possible, except that some ports need cross-compile
  host tool versions of installboot and any appropriate host disk labelling
  tools.
	XXX: pmax, sparc and vax need fixing for this!

- This code has NOT YET BEEN TESTED on most of the ports.
  It should work, but it is extremely likely that the file system
  parameters may need tweaking to get things to fit.
  See MAKEFS_FLAGS in sparc/miniroot/Makefile.inc for an example.
  If assistance is required, please ask!
2002-03-06 12:04:48 +00:00
thorpej
1d1d02da94 Make sure <bsd.own.mk> is pulled in before ${PRINTOBJDIR} is used. 2002-03-05 21:23:28 +00:00
shin
1d194dffda s/mdsetimage/${MDSETIMAGE}/. 2002-02-18 03:38:01 +00:00
lukem
811d644d8f don't set the owner or group when installing into $RELEASEDIR 2002-02-09 13:56:48 +00:00
uch
48d7ccb224 s/vnd0d/vnd0/ 2002-01-05 02:23:30 +00:00
tv
8bef0452bd ${MAKE} print-objdir -> ${PRINTOBJDIR} 2001-11-14 00:41:52 +00:00
jmc
4d6ad24166 Convert to using ${MDSETIMAGE}.
Provide a default value for $MDSETIMAGE and pull in bsd.own.mk to have
it overriden as needed for cross/-current builds.
2001-10-21 23:23:19 +00:00
shin
f4f816e21f add lists of obsolete files. 2001-04-22 02:05:18 +00:00
shin
91e2de49f3 build INSTKERNELS for system installation. 2001-04-22 02:04:22 +00:00
jhawk
a022cf9d37 Use
${MAKE}
instead of
  make
2000-08-30 23:51:46 +00:00
cgd
c85d2eb42b sweep of my licenses for consistency. (no functional changes) These
files have copyright held by people in addition to myself.  (I did the
original work, they copied it, enhanced it, and added their copyright
to the derivative work.)  Their approval has been given re: the license
change.
2000-06-14 22:52:37 +00:00