Commit Graph

392 Commits

Author SHA1 Message Date
he
e92ef40b67 Now that one can choose boot image for i386 to produce a slightly
different cd-rom image (e.g. using the INSTALL_LAPTOP-derived boot
image), make it possible to add a string to the cd-rom image name
by setting the optional environment variable CDROM_NAME_ADD.
2004-07-28 11:35:44 +00:00
lukem
20526529b6 Overhaul install-etc-files so that
*	most files are installed with CONFIGFILES (from bsd.files.mk)
    *	empty files are created in a cleaner fashion
    *	MAKEVERBOSE is supported for the remaining custom items
2004-06-28 14:03:02 +00:00
itojun
2a49c3efe7 install pf related files to /etc 2004-06-22 18:21:55 +00:00
christos
0553899e97 remove ad-hok list of pty's from port tty files, and auto-generate it so
that it is consistent, and in the proper order.
2004-06-20 21:30:26 +00:00
lukem
fe7056555c Move '${MAKEDIRTARGET} x11 distribution' from Makefile::distribution to
etc/Makefile::distribution, and only perform if ${MKX11}!=no.
Should fix a problem experienced by Alistair whilst doing a "make release".
2004-05-17 07:00:16 +00:00
lukem
ee04d88971 Consistently use CONFIGFILES & CONFIGLINKS (which enable the 'configinstall'
target) instead of using home-grown 'distribution' targets or using
FILES with the 'install' target.
Add some etc/ subdir Makefiles where appropriate.

XXX: some of etc/Makefile install-etc-files could be converted to CONFIGFILES.
2004-05-16 09:53:09 +00:00
cl
885c0b6fc9 ``build.sh -m xen-i386 release'' now builds a release for NetBSD/xen
for i386.  The resulting release consists of:
- NetBSD/xen for i386 kernel, loader and docuemntation
- NetBSD/i386 userland sets
2004-05-12 16:56:41 +00:00
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
lukem
9f5d4466a9 Always invoke mtree & pax with "-N ${NETBSDSRCDIR}/etc" so that user & group
lookups occur from there rather than from the host system.
2002-12-19 12:35:01 +00:00
jdolecek
1e127d86d1 ttyaction is ${MACHINE}-specific, not per ${MACHINE_ARCH}
remove special ttyaction hook from etc/etc.sun[23]/Makefile.inc, it's no longer
  needed
ld.so.conf is ${MACHINE}-specific, the code happened to work for i386 and sparc
  only because ${MACHINE} == ${MACHINE_ARCH} there
remove basesrc/etc/ld.so.conf and its special vax/ns32k/m68k hook in Makefile -
  vax & m68k are ELF now, and ns32k doesn't need to be handled here
2002-12-17 15:54:59 +00:00
lukem
fe5f6ce974 - add snap_post, which makes "clean depend all release" in ../distrib/
for all platforms.
- remove now unnecessary replicated code in the various snap_md_post targets
- remove snap_md_pre; nothing uses it any more
- use ${NETBSDSRCDIR} and ${KERNSRCDIR} as appropriate
2002-12-02 13:18:03 +00:00
lukem
e7bf86cbd5 Separate snap_kern into three targets, to allow finer control over
which bits to build, and to allow "make -j N" actually do something in
parallel:
- build_kernels: for each of ${ALL_KERNELS}, create kern-${NAME} target
  which configures & builds the kernel ${NAME}.
- build_kernsets: for each of ${KERNEL_SETS}, create kernset-${NAME} target
  to create ${RELEASEDIR}/binary/sets/kern-${NAME}.tgz
- build_releasekernels: for each of ${KERNEL_SETS} ${EXTRA_KERNELS}, create
  ${RELEASEDIR}/binary/kernel/netbsd-${NAME}.gz (et al)
(The latter two .WAIT until build_kernels has completed)
2002-11-18 07:09:46 +00:00
perry
59af185fe1 Add hackdir/perm and hackdir/record
move larn files into alphabetical order
2002-10-23 20:35:45 +00:00
perry
e0ea033b82 add code to include (primitive) package tag names
XXX This file has gotten big and ugly enough that a bit of a rewrite
is likely in order.
2002-10-23 19:50:30 +00:00
lukem
407233e842 Set
ALL_KERNELS ?= ${KERNEL_SETS} ${EXTRA_KERNELS} ${BUILD_KERNELS}
and use ALL_KERNELS instead of the latter three in the loop to configure
& build kernels. This allows ALL_KERNELS to be overridden in make(1)'s
environment or on make(1)'s command line... (I got sick of waiting for
all eleven i386 kernels to rebuild when I was only testing one)
2002-10-16 02:30:48 +00:00
grant
904247526b create /etc/mail/local-host-names, required by sendmail(8). 2002-10-05 15:23:19 +00:00
perry
a2bd5604f5 Make utmp and utmpx group utmp, not group wheel. This gets masked by
the fact that rc.d sets it to group utmp anyway, but it was certainly
wrong in principle.
2002-09-16 02:35:04 +00:00
perry
e1fd62d224 Create wtmpx, just as wtmp is created. 2002-09-16 02:30:29 +00:00
wiz
bd93d53f7c Add /var/run/utmpx, requested by soren. 2002-09-03 00:56:08 +00:00
bjh21
2e5fd793fb Set the volume ID on CDs produced my "make iso-image" to something meaningful,
rather than the default of "CDROM".  The volume ID now looks like
"NETBSD_ACORN26_16D".
2002-07-28 01:21:07 +00:00
fredette
1c928c08b2 Removed ftpwelcome from BIN1; it was removed. 2002-07-06 18:19:31 +00:00
lukem
6f9558487e use ` | ${CAT} -l >> ${METALOG} ' to serialise writes to the metalog 2002-06-11 15:50:05 +00:00
itojun
dbbcec2c04 have bsd.endian.mk, which detects target endian.
generate *.db in target endian.  (see tech-userlevel for discussions)
2002-05-30 21:40:47 +00:00
itojun
b837b667b8 set TARGET_ENDIANNESS appropriately. 2002-05-30 09:49:22 +00:00
jdolecek
074863cac2 Move the sample fstab files to /usr/share/examples/fstab/. Duplicates
or very similar configs removed.
2002-05-04 19:43:57 +00:00
sommerfeld
965e0acae4 Correct BUGS in BUILDING.mdoc now that most ports are USE_NEW_TOOLCHAIN
Obsolete NBUILDJOBS; build.sh just passes -jN through to make(1),
which inherits it cooperatively through the build tree.  Fix
documentation so that it's shown to be deprecated.

If you use build -jN, please save full build logs so that errors due
to missing dependancies can be analyzed and corrected.
2002-05-02 22:13:30 +00:00
lukem
2d1f93d643 - consistency cleanup
- ensure INSTALLATION_DIRS contains the appropriate extra directories
  for a given platform
2002-05-02 15:09:40 +00:00
lukem
8feb052770 s/_SRC_TOP_/NETBSDSRCDIR/ 2002-04-26 16:23:14 +00:00
lukem
9ada96166d install postinstall 2002-04-26 15:43:39 +00:00
lukem
46de584226 When building kernel .tgz sets, take advantage of pax's new ability to
not store optional directory entries when copying from a specfile.
2002-04-21 00:06:03 +00:00
perry
9c429c8cc6 add default passwd.conf file 2002-04-15 03:01:31 +00:00
lukem
818750e0b3 if UNPRIVED, call ${PAX} with -N ${_SRC_TOP}/etc 2002-04-10 15:12:37 +00:00
lukem
cf1352743d now <bsd.kernobj.mk> defines KERNSRCDIR correctly, pull it in earlier
and clean up related goop
2002-04-10 14:57:45 +00:00
lukem
fbeeec837c When building kern-*.tgz, output an mtree specfile to pipe into
${PAX} -M so that the contents get the appropriate ownership.
Fixes [toolchain/16161] from Ben Harris <bjh21@netbsd.org>
2002-04-10 12:05:20 +00:00
matt
a6a8089c11 Don't install pcs750.bin in here anymore. 2002-04-09 18:07:24 +00:00
wiz
f4c143690e arm32 is not a valid MACHINE_ARCH anymore. 2002-04-07 15:52:27 +00:00
bjh21
9f2fd14aea When doing a "for" loop over a potentially-empty list
(${KERNEL_SUFFIXES}), put the list in a shell variable and use that.
Both bash (before 2.05a) and Solaris /usr/xpg4/bin/sh report a syntax
error otherwise.
2002-04-01 17:32:19 +00:00
bjh21
3f0d7066b3 Add a MAKESUMS variable which invokes makesums with CKSUM in its environment.
Use this whenever we want to invoke makesums.
2002-03-31 16:07:53 +00:00
matt
e4d7babf1f Change pcs750.bin processing so it works UNPRIVED=. XXX this needs to be
moved to someplace with an objdir.
2002-03-29 04:45:37 +00:00
lukem
4b99ad4ad4 provide check_DESTDIR and check_RELEASEDIR targets in <bsd.own.mk>
and use those rather than local versions
2002-03-05 03:51:21 +00:00
chs
4318a1a32b copy kernels to the releasedir even when KERNELS_DONE is defined
(i.e. only skip building the kernels).  fix some comments while I'm here.
2002-03-01 06:22:09 +00:00
lukem
7b1ed2d086 - add check_destdir and check_releasedir targets, and use appropriately
(easier to read that large nested .if's
- use INSTALL_FILE, INSTALL_LINK and INSTALL_SYMLINK instead of INSTALL
- when creating release directories, don't bother setting owner and group
2002-02-09 11:09:29 +00:00
lukem
6af35d5a81 - replace "tar -cf - ... | gzip -9 > foo" with "GZIP=-9 ${PAX} -zwf foo ... "
- more comment hacking
2002-01-27 06:49:22 +00:00
lukem
03a5940a64 - add the following targets to the DESTDIR=="" check:
install-etc-files iso_image_mi iso-image_md_pre iso-image_md_post snap_kern
- add the following targets to the RELEASEDIR=="" check:
    iso_image_mi iso-image_md_pre iso-image_md_post snap_kern
- improve comments around make .flow control statements (including adding
  some helper # { ... # } comments around large .if statements for (ab)use
  with vi showmatch mode)
- clean up whitespace
2002-01-27 01:44:02 +00:00
tv
a2291b79c0 MKfoo=no -> NOfoo= 2001-12-12 00:07:45 +00:00
jmc
5baaa9092b Make pwd_mkdb a conditional set so bsd.own.mk can override it 2001-12-07 02:30:22 +00:00
thorpej
8aa58740cf Add support for specifying extra kernel name suffixes to search for
when building the kernel sets and placing gzip'd kernels in binary/kernels.
For example, if KERNEL_SUFFIXES were set to "ecoff srec", then the kernel
set would include:

	netbsd
	netbsd.ecoff (only if it exists in the kernel compile directory)
	netbsd.srec (only if it exists in the kernel compile directory)

This is useful for packaging kernel sets for platforms which have
extra special requirements for loading the kernel.
2001-11-30 18:50:09 +00:00
thorpej
44f4566e1a Change the way kernel sets are specified, and make them
more consistent.  To quote the comment in etc/Makefile
that describes how it's done:

# This target builds the kernels specified by each port.  A port may
# specify the following kernels:
#
#       KERNEL_SETS             The list of kernels that will be
#                               packaged into sets, named
#                               kern-${kernel}.tgz.  These kernels
#                               are also placed in the binary/kernels
#                               area of the release package as
#                               netbsd-${kernel}.gz.
#
#       EXTRA_KERNELS           Additional kernels to place in the
#                               binary/kernels area of the release
#                               package as netbsd-${kernel}.gz, but
#                               which are not placed into sets. This
#                               allows a port to provide e.g. a netbootable
#                               installation kernel containing a ramdisk.
#
#       BUILD_KERNELS           Additional kernels to build which are
#                               not placed into sets nor into the
#                               binary/kernels area of the release
#                               package.  These are typically kernels
#                               that are built for inclusion only in
#                               installation disk/CD-ROM/tape images.
#
2001-11-29 22:45:53 +00:00
thorpej
ff0f6d3aec Fix oversight in the addition of install-etc-files target; move the
.endif for DISTRIBUTION_DONE to the right place.
2001-11-25 18:19:14 +00:00
perry
33c33d421a Synthetically generate metadata entries for passwd, spwd.db, pwd.db.
XXX Note that it can easily be argued that these should be generated by
the installer, not shipped in the tar files, but that's for another day.
2001-11-24 21:41:12 +00:00
thorpej
ba119b4fb0 Split the "distribution" target into "distribution" and "install-etc-files",
the latter being called by the "distribution" target.  This allows the
various /etc/... files to be installed manually in a convenient way, if
desired.

NOTE: It is INTENTIONAL that this target is not named "install".
2001-11-20 16:07:59 +00:00
perry
2d02e3afad UNPRIVILEGED->UNPRIVED 2001-11-19 05:05:06 +00:00
tv
0b5c0ba712 Make the TARGET_ENDIANNESS check only valid when making release, snapshot,
or distribution.

Also, clean up the check and include <sys/endian.h> instead -- some platforms'
<machine/endian_machdep.h> pull in the definitions of _BIG_ENDIAN and
_LITTLE_ENDIAN, invalidating the test; this makes the check values uniformly
"4321" and "1234" respectively.
2001-11-13 17:14:27 +00:00
jmc
7526979e21 Don't run rules unless DESTDIR is set *and* contains a value. Fixes PR 14410 2001-10-31 02:58:58 +00:00
perry
6476719bea Add rm's before symlink and hard link commands.
Shouldn't be needed, but install has no other good way to deal with
this.

Pointed out by Rob Windsor in PR 14394 -- I committed his patch plus
one for something he didn't hit yet.
2001-10-29 22:18:28 +00:00
perry
6ca8767be9 Now that it will actually work, replace instances of ln with install. 2001-10-29 01:19:19 +00:00
jmc
6d536163de Change defaults for kernel compiles. Default all to USETOOLS?=no and have
the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES
This way the default for kernel compiles is still to use the installed
toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by
simply adding USETOOLS=yes to the command line as usual.

Adjust each ports template to set the default no setting and also pull in
bsd.own.mk if they weren't already to ensure they'll build correctly
with the new toolchain setup.
2001-10-26 06:45:33 +00:00
tv
3f973487e6 Since <bsd.prog.mk> is included, we already have a full list of default
build rules for all standard targets.  Remove the manually-created list
of empty rules.
2001-10-24 02:43:13 +00:00
tv
80439f53c0 Do not run MAKEDEV on "make distribution". The device nodes are not part
of the resultant tarballs; only the MAKEDEV script itself is.  Running
MAKEDEV here can futz with cross build hosts.
2001-10-19 15:07:48 +00:00
lukem
6c2d977e6f A few more changes, from more discussions with Andrew Brown.
- Resurrect /etc/changelist, even if it's an "empty" file by default,
  because it's easier to use than /etc/mtree/special.local for adding
  a couple of simple files. Back by popular demand (hi @@@! :-)
- Add /etc/rc.d/* to the list of "dynamic" files; this notices changes
  in user-added scripts
- Only calculate the mtree -I nomail list once, and re-use
- Use "cat foo | while read file" instead of "for file in `cat foo`" ;
  handles whitespace better...
2001-10-13 14:22:11 +00:00
lukem
96a1608ee4 Major overhaul, with help from Andrew Brown <atatat@netbsd.org>.
Features:
- Add a bunch of stuff to /etc/mtree/special to enable removal of
  /etc/changelist:
	- files which we want to monitor for changes but don't want to
	  see the diffs of (master.passwd, ssh_host_key, ...) are
	  tagged with "nomail"
	- files which we don't want to monitor are tagged with "exclude"
	  (such as netgroup.db, kvm.db, ...)
	- monitor /etc/mtree/special.local, /root/.ssh/*
	- remove /etc/changelist, and a bunch of XXX comments
	- use mtree(8)'s -D, -I, and -E to generate lists of files to
	  actually do the changelist stuff on.
	- support /etc/mtree/special.local as an optional user-provided
	  version of /etc/mtree/special (effectively, an enhanced
	  /etc/changelist)
- Add code to monitor: /etc/ifconfig.* /etc/raid*.conf /etc/rc.conf.d/*
  including support for these files being added and removed at will.
- If /sbin/fdisk exists, backup the output of "fdisk $disk" for all
  the active disk drives as part of $check_disklabels
- Check permissions on: ~/.ssh/* ~/.shosts

Details:
- Reorder initialisation of defaults
- Remove special case for /etc/master.passwd "monitor but don't email diffs"
  with general case for other similar files.
- Keep all `autogenerated' files (such as disklabel.*, setuid.current, ...)
  in "$backup_dir/work", to minimise name clashes.
- Add migrate_file(old, new) to do the hard work of migrating files
  from the old `top level' /var/backups mechanism to the `full path'
  mechanism recently added. Use this appropriately.
- Add backup_and_diff(file, printdiffs), to the hard work of backing-up
  and diff-ing files.
- Cleanup use of shell redirects
- /bin/sh supports ~root globbing, so use it.
- Improve umask checking; use awk regex rather than awk math
2001-10-12 05:18:23 +00:00
chs
d15ad88d82 skip "distribution" step if DISTRIBUTION_DONE is set. 2001-10-10 06:58:56 +00:00
enami
a28fcd776c Make mtree a host tool and use it when appropriate. 2001-10-09 05:19:03 +00:00
tv
c4d13adb05 Append / to ${DESTDIR} in distrib-dirs rule; fixes PR bin/14080. 2001-10-04 16:46:22 +00:00
mrg
31be837848 support kernel configs called `../../sparc64/conf/GENERIC32', and the like,
by stripping the dirname off by using ${configfile:C/.*\///} where necessary.
2001-08-23 14:37:02 +00:00
matt
799202c512 Fix botched commit (a conflict was committed). 2001-08-05 03:37:37 +00:00
tsutsui
e6b1a09d07 Use "mtree -U" instead of "mtree -u" on making distrib-dirs
to ignore file hierarchy unmatches and check exit status of mtree
to detect actual errors on it (like "unknown user/group" etc).
2001-08-04 18:41:18 +00:00
itojun
7759c4c1c7 do not try to install rtadvd.conf 2001-01-21 15:03:22 +00:00
christos
410cfa811a more dup target fixes... snap_md_post should be fixed in etc.i386
Makefile.inc not to work if $RELEASEDIR or $DESTDIR is not defined.
2001-01-14 06:08:24 +00:00
christos
79c236a085 protect against multiple target definition for parse_md_post 2001-01-14 05:31:36 +00:00
simonb
04935f138a Only need to "make distribution" in usr.bin/ssh once. 2001-01-09 02:13:54 +00:00
jlam
4275d75e69 Correct comment for KERNOBJDIR. 2000-12-02 18:04:45 +00:00
simonb
13e5202536 Get the TARGET_ENDIANNESS by running ${CC} -E over
<machine/endian_machdep.h>.  Fixes problems where
<machine/endian_machdep.h> just includes another file
without defining _BYTE_ORDER itself.
2000-11-30 11:31:05 +00:00
jdolecek
8b43f30672 Call pwd_mkdb with proper flag, so that it creates database in same
endianness as compile target. This is primarily for cross compiles.
Hopefully this method (looking into
${DESTDIR}/usr/include/machine/endian_machdep.h) is okay.

Patch sent by Andrew Brown in bin/11454.
2000-11-09 20:01:54 +00:00
thorpej
a84221b9db Just nuke the "build aliases.db" stuff from here. It's not
necessary, as /etc/rc.d/sendmail will already rebuild DB files
automatically if necessary, and doing aliases.db here just
totally breaks cross-compiling.
2000-10-30 21:48:20 +00:00
jmc
52645e1ee3 Moved comment about rm out of shell command area. (typo) 2000-10-29 05:16:53 +00:00
jmc
6349db47e1 Ignore errors from the rm in snap_pre. RELEASEDIR could be a mountpoint and
rm complains because it can't actually nuke the mount point. Anything serious
like permissions or I/O errors will get caught in the install's after this
anyways.
2000-10-23 01:50:37 +00:00
garbled
b1fd9718d4 When building kernels for a release (snap_kern) use "distclean" instead of
"clean" to get rid of any .depend files that might be lying about in the
kernel build directory.
2000-10-19 17:53:41 +00:00
simonb
654fd3b749 cd to skel during "make distribution".
Part of fix for PR bin/10985.
2000-10-16 13:18:36 +00:00
hubertf
144164c6e4 Fix typo in iso-image target that led to the cdrom-directory not being
excluded in the iso image (nothing harmful).
2000-10-14 16:45:42 +00:00
thorpej
bf69b1a900 Do the `distribution' target for usr.bin/ssh, too. 2000-10-01 22:31:04 +00:00
lukem
b5b6e95c7b move default config files from /etc/default -> /etc/defaults, to be
consistent with what FreeBSD uses /etc/defaults for, and since SVR4
uses /etc/default for another purpose.
as discussed on tech-userlevel, and no objections were made.
2000-10-01 05:49:26 +00:00
hubertf
b4b75848de Add standalone "iso-image" target that can be run with DESTDIR and RELEASEDIR
set in src/etc after a "make release" in both "src" and "xsrc", to create a
ISO-image of the release in $RELEASEDIR/installation/cdrom.

Hook for architecture dependent pre/post-processing in etc/etc.*/Makefile.inc
are available as 'iso-image_md_post' and 'iso-image_md_pre', see
etc/etc.i386/Makefile.inc as an example. Might be useful for setting up
bootable CDs on alpha, sparc, ...

Reviewed by Todd Whitesel and Thomas Klausner.
2000-09-11 21:53:30 +00:00
jhawk
3635b53ea7 As .ifndef RELEASEDIR checks for targets:
snap_pre snap_md_pre snap_md_post
so should .ifndef DESTDIR
2000-08-23 20:48:42 +00:00
lukem
801142dbde - install files in etc/default/
- migrate rc.wscons to (already existing) rc.d/ wscons
2000-08-21 23:03:10 +00:00
fvdl
4ed8b47725 Do not create the binary/security directory, there is no seperate
security set anymore.
2000-08-06 18:10:48 +00:00
kleink
a8c7e91153 As discussed with Hubert Feyrer in private mail, install UTC as the default
time zone; while amounting to the same offset, the time zone 'name' of
Factory violates the prinicple of least surprise.
2000-08-03 13:00:02 +00:00
hubertf
343777f0d3 Change default timezone from US/Pacific to Factory:
Before:
    Wed Aug  2 06:53:04 PDT 2000

After:
    Wed Aug  2 13:52:52 Local time zone must be set--see zic manual page 2000
2000-08-02 14:40:45 +00:00
thorpej
fe54e81eb3 Also do ../usr.bin/ssh for the `distribution' target. 2000-07-25 19:07:39 +00:00
thorpej
e7d6b96938 Merge a bunch of things from crypto-us and crypto-intl into basesrc,
adding support for Heimdal/KTH Kerberos where easy to do so.  Eliminate
bsd.crypto.mk.

There is still a bunch more work to do, but crypto is now more-or-less
fully merged into the base NetBSD distribution.
2000-06-20 06:00:24 +00:00
fredb
21fcee54a9 Loosen sendmail's permission checks for building the aliases.db file
even further. Particularly, allow ${DESTDIR} to be within a world writable
directory, such as /var/tmp.
2000-06-12 06:23:21 +00:00
perry
4d477e62b7 install ttyaction if it exists 2000-06-03 23:53:17 +00:00
fvdl
02cd59a751 * Portmap is now called rpcbind.
* Add IPv6 RPC entries to inetd.conf (commented out by default, as the others)
* Add netconfig file, needed for TI-RPC code.
2000-06-02 22:54:08 +00:00
lukem
78abee064b remove netstart 2000-05-13 08:07:01 +00:00
sjg
4157176c27 Added an obj target to ensure that KERNOBJDIR exists - in case
we are using MAKEOBJDIRPREFIX.
Fixed the comment about why we grab ../Makefile.inc
2000-05-06 07:52:19 +00:00
itojun
14e9ff0043 correct typo (sendmail upgrade) 2000-05-03 11:37:16 +00:00
itojun
366bbade5a sync with sendmail upgrade.
- sendmail configuration files are in /etc/mail, not /etc.
- src/etc/aliases will be installed into /etc/mail/aliases (confusing)
- rc.d/sendmail warns if /etc/sendmail.cf exists.
2000-05-03 10:55:19 +00:00
sjg
45fb67b360 remove/change missleading comments 2000-05-03 00:10:33 +00:00
sjg
734bcf16ec Use bsd.kernobj.mk
Also if KERNELS_DONE is defined skip building kernels.  Handy if re-spinning
due to errors in distrib later on.
2000-05-02 06:41:44 +00:00
thorpej
0a43d29758 Install the localhost namedb file. 2000-05-01 05:29:34 +00:00
perry
31d7194c3f Add "make distribution" for Postfix. 2000-04-30 21:45:55 +00:00