Commit Graph

285 Commits

Author SHA1 Message Date
lukem f1b860ea33 Convert lines of the form
(cd ${.CURDIR}/somedir && ${MAKE} AVAR=value atarget)
to
	${MAKEDIRTARGET} somedir atarget AVAR=value
which results in a "prettier" display of these operations
2004-04-13 12:43:12 +00:00
cgd 335ed73c4c sync after building kernels. on some host systems (Linux) on NFS
have been seen to fail with the error:
    pax: File ./netbsd was modified during copy to archive
and this avoids it.
2004-03-08 05:46:44 +00:00
agc c0585f5a71 Allow CKSUM to be overridden. 2004-02-25 15:00:59 +00:00
enami 4b4d77a7b2 Disable parallel build when doing make params so that `---- params ----'
won't be emitted into /etc/release.
2004-02-13 23:48:10 +00:00
lukem 7833fb35ce Move the 'build date' & 'built by' stuff to the "build settings" section. 2004-02-07 07:59:17 +00:00
itohy 867dc753a9 Add /etc/locate.conf 2004-02-06 15:36:52 +00:00
lukem 818f07b6aa in etc-release, put the builder on a separate line to the date 2004-01-31 15:40:42 +00:00
lukem 4d0df9f157 Run "cd ../distrib/sets && make makesetfiles" at the end of "distribution" 2004-01-30 08:46:19 +00:00
he 1607f0c077 When using obj directories, the make proces cd's to the obj directory.
Therefore, we need to cd to ${.CURDIR} before re-invoking ${MAKE} so
that it can find the Makefile.
Also, pass ${MFLAGS} to ${MAKE} so that we pick up the source tree's
makefile fragment, not the host system's fragments, so that this
works properly on older NetBSD host systems, as well in other
cross-compile contexts.
2004-01-27 15:55:42 +00:00
lukem eb5766fce9 Add to RELEASEVARS:
NETBSDSRCDIR OBJMACHINE USR_OBJMACHINE X11SRCDIR

Add 'params' separate to 'etc-release', and use the former as part of
the latter.
2004-01-27 04:19:06 +00:00
lukem 3ae3c90bcf Apply .PHONY appropriately.
Use .EXEC when we always want to create ${.TARGET}, rather than
perform an non-file-based operation (.PHONY is for the latter).
2004-01-27 01:52:06 +00:00
tls d8793381d3 Install default ssh_known_hosts file with public keys for Project servers.
Hopefully I didn't make too much of a hash of the postinstall support for
this; it currently installs the file if there's none in the destination,
and elsewise notes if the CVS version differs (or is missing) but doesn't
try to fix that.
2004-01-11 04:21:18 +00:00
lukem 88068bf42a Add the following to the list of variables displayed in etc/release
MKBFD MKCRYPTO_IDEA MKCRYPTO_MDC2 MKCRYPTO_RC5 MKCVS
	MKDYNAMICROOT MKGCC MKGCCCMDS MKGDB MKHESIOD MKHTML MKIEEEFP
	MKKERBEROS4 MKKERBEROS MKLINKLIB MKMANZ MKPICLIB MKPOSTFIX
	MKSENDMAIL MKSKEY MKSOFTFLOAT MKSTATICLIB MKUUCP MKX11 MKYP
2004-01-08 02:37:16 +00:00
lukem b83d8ffd8d rename release-info to etc-release
rename  install-release-info  to  install-etc-release
2004-01-06 07:25:40 +00:00
lukem 57ec8c75e1 remove superfluous .endif accidentally introduced in previous 2004-01-06 03:46:27 +00:00
lukem 5f82e1b832 deprecate NO_SENDMAIL and consistently test MKSENDMAIL 2004-01-06 02:10:43 +00:00
lukem ccf752736a Get the copyright info for etc/release from sys/conf/copyright.
Idea from Simon Burge.
2004-01-05 04:05:06 +00:00
lukem f0eea29c73 install-release-info does not need DESTDIR. [toolchain/23982] 2004-01-05 00:12:01 +00:00
lukem 51f1131bbc Rename /etc/release-info to /etc/release, to be consistent with other
implementations and Hubert's original intent.
2004-01-04 23:55:11 +00:00
lukem de34191fc7 Add "release-info", to create the file of that name containing
information about the build, and "install-release-info" to install it.
(The latter will be invoked by src/Makefile)

Based on work by Hubert Feyrer <hubertf@> and the "params" target in
src/Makefile.
2004-01-04 13:29:16 +00:00
lukem 6e1ebdd6fa display path of created iso-image 2004-01-01 12:28:22 +00:00
lukem 4ddba21b9a * Match the source code to the comments, and use $NETBSDSRCDIR
instead of -v ETCDIR.
* Parse $NETBSDSRCDIR/etc/{master.passwd,group} to build a list of
  user->uid and group->gid mappings, and replace %uid_XXX% and %gid_XXX%
  appropriately.
* Whitespace & regex tweaks.
2003-12-19 06:04:16 +00:00
lukem 7eec24689d MAKEVERBOSE-ify MAKEDEV creation 2003-12-15 09:46:51 +00:00
jdolecek 67702193cc explicitly pass MACHINE and MACHINE_ARCH to MAKEDEV.awk via environment,
so that this works as expected when not invoked via build.sh
2003-11-15 08:50:26 +00:00
cl 7833f0afc9 now that MAKEDEV is generate, install it from ${.OBJDIR} 2003-10-26 23:34:29 +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
ross b9e3ec284d Add the -T etc_pkg arg back to the MAKEDEV install. 2003-10-25 03:55:26 +00:00
ross ebbe98fcaf Now that MAKEDEV is generated, just do an ordinary ${INSTALL_FILE} instead
of going back to the source dir (and losing) with ${ETC_INSTALL_FILE}
2003-10-24 22:39:51 +00:00
jdolecek 1b00681156 switch over to unified MAKEDEV 2003-10-24 20:12:04 +00:00
dsl a276117721 Optimise DISTRIBUTION_DONE= KERNELS_DONE= nbmake snapshot
- If DISTRIBUTION_DONE is defined, don't add the 'root' directory to METALOG.
  (maybe install -M shouldn't write to the METALOG file if it doesn't install
  the file either)
- Don't re-compress the kernels if the compressed file is newer than the
  kernel.
Useful if all you want to do is rebuild the ramdisk image.
2003-08-22 19:03:03 +00:00
lukem f134f3dc38 Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was defined.
Replace defined(UNPRIVED) tests with ${MKUNPRIVED} != "no"

Add MKUPDATE; if not no has the same semantics as if UPDATE was defined.
Replace defined(UPDATE) tests with ${MKUPDATE} != "no"

Improve documentation for these and other make flags.
2003-07-18 08:26:01 +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 eaaa8e8699 Invoke makeobsolete with ${HOST_SH} and pass in ${MAKE}.
Fixes FreeBSD cross-build problem noted by Valeriy E. Ushakov <uwe@>
2003-06-08 23:49:21 +00:00
lukem 6087671da1 * Always include <bsd.endian.mk>, and include it much earlier so that
it's available for the MD etc.${MACHINE}/Makefile.inc
* Set PWD_MKDB_ENDIAN to the cap_mkdb(8) endian flag, rather than
  overriding TARGET_ENDIANNESS.
2003-05-18 08:28:05 +00:00
thorpej 3449ccac0f Install powerd(8) scripts when installing etc files. 2003-04-18 05:41:47 +00:00
perry c85da95565 For consistency and simplicity, move the default location for cron logs
from /var/cron/log to /var/log/cron
2003-04-02 14:38:26 +00:00
jdolecek 2a74d10407 atc uses /var/games/atc_score, not atc_scores
Problem pointed out and fix supplied in PR install/20709 by Kazuhito Tsuburaya
2003-03-15 08:44:16 +00:00
lukem 7dbfbdf511 - rename 'iso-image_*' -> 'iso-image-*'
- run MAKESUMS in iso-image, *after* the MD iso-image-md-post has run,
  since the latter might actually modify the generated image...
2003-03-08 00:22:29 +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 5c198ab018 etc/postinstall
*	Improve message display in find_file_in_dirlist()
    *	do_obsolete(): instead of running distrib/sets/makeobsolete to
	temporarily generate the obsolete sets lists, look for them in
	${SRC_DIR}/etc/obsolete/* or ${DEST_DIR}/etc/obsolete/*.
	The obsolete check now works for "extracted etc.tgz" as the source dir.

etc/Makefile (install-etc-files), distrib/sets/lists/*
    *	Install obsolete set lists into /etc/obsolete/
    *	Tweak how pwd_mkdb files are added to METALOG

distrib/sets/makeobsolete
    *	Don't bother with "_obsolete" suffix on generated file names.
2003-02-20 11:40:28 +00:00
lukem ed45489d27 be more obvious about the requirement on mkisofs 2.0 2003-02-16 00:22:37 +00:00
mrg b83a08e1ff allow NO_SENDMAIL to equal "no" 2003-01-09 16:57:45 +00:00
lukem bc4b0716ee Missed a 'cd ${.CURDIR}' when adding the OBJDIR support here,
causing "make distribution" to fail on "install-etc-files".
(oops!)
2003-01-06 14:47:28 +00:00
lukem 7b4296a270 - Enable OBJ support for etc/; a scratch dir is needed for iso-image.
- Add ${.CURDIR} to various rules.
- Remove the ${KERNOBJDIR} (sys/arch/${MACHINE}/compile) objdir creation
  from here.
- Rework iso-image to copy temporary files (such as kernels or boot files)
  into a temporary directory instead of stomping over ${RELEASEDIR}, and
  use mkisofs -graft-points to merge the temporary directory and
  ${RELEASEDIR}/${MACHINE}.
	NOTE: mkisofs 2.0 is highly recommended for functioning -graft-points
- Add some more comments
2003-01-04 15:49:29 +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 cdee7cbdf4 Don't remove ${RELEASEDIR} if UPDATE is defined. 2003-01-03 14:27:54 +00:00
lukem 144b55005f Rework METALOG manipulation:
- add '-D ${DESTDIR}' to INSTPRIV, so install(8) removes the leading
  ${DESTDIR} from the metalogged path
- provide ${METADB.add} variable (for "${CAT} -l >> ${METALOG}"), to make
  it easier to replace manual metalog manipulation in the future.
- with manual metalog additions, don't add the leading ${DESTDIR} in the path
- in maketars, use "mtree -C ..." instead of
  "mtree -D ... | sed -e 's,\(.*\) \(\..*\),\2 \1,";

Benefits:
- maketars "Parsing METALOG" step speeds up from 29 seconds to 1.2 seconds
  on a P3-600.
  (This also benefits "make installworld" at the top level.)
- ${DESTDIR}/METALOG is easier to read without the leading "${DESTDIR}"
  on all the pathnames, and it's smaller as well.
2002-12-23 06:52:48 +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 9dac6e17e3 Remove /sys -> /usr/src/sys symlink. 2002-12-19 23:04:26 +00:00
jdolecek 67705b22ff use single minimal default disktab file for most archs, replacing
MD disktab where possible (everything but vax)
the MD disktab was often either empty, or contained entries even for disks
which support geometry autodetection (SCSI), and/or non-interesting/long
obsolete entries

the old records are still available in example disktab in
/usr/share/examples/disktab/disktab in case anyone would need them
2002-12-19 20:03:46 +00:00