Skip to content

Commit

Permalink
Despite the fact that it is documented in the handbook, the release n…
Browse files Browse the repository at this point in the history
…otes,

and UPDATING and has been posted to both freebsd-current and
freebsd-stable, users are still not adding the required smmsp user and
group before doing an installworld.  Therefore, don't let users do an
installworld unless they have followed directions.

Add a new installcheck Makefile target which installworld runs before
actually starting the installation.  This target can be used by other parts
of userland as well.  The first addition to the target is to check for the
smmsp user and group if NO_SENDMAIL isn't defined.

Others may add checks to this target as they see fit.

MFC after:	1 week


git-svn-id: svn+ssh://svn.freebsd.org/base/head@95146 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
  • Loading branch information
gshapiro committed Apr 20, 2002
1 parent 82ca254 commit 2d8bce3
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 4 deletions.
6 changes: 3 additions & 3 deletions Makefile
Expand Up @@ -84,9 +84,9 @@
#
TGTS= afterdistribute all all-man buildkernel buildworld checkdpadd clean \
cleandepend cleandir depend distribute distribworld everything \
hierarchy includes install installkernel kernel reinstallkernel \
installmost installworld libraries lint maninstall mk most obj \
objlink regress rerelease tags update
hierarchy includes install installcheck installkernel kernel \
reinstallkernel installmost installworld libraries lint maninstall \
mk most obj objlink regress rerelease tags update

PATH= /sbin:/bin:/usr/sbin:/usr/bin
MAKE= PATH=${PATH} make -m ${.CURDIR}/share/mk -f Makefile.inc1
Expand Down
19 changes: 18 additions & 1 deletion Makefile.inc1
Expand Up @@ -312,12 +312,29 @@ everything:
@echo "--------------------------------------------------------------"
cd ${.CURDIR}; ${WMAKE} all

#
# installcheck
#
# Checks to be sure system is ready for installworld
#
installcheck:
.if !defined(NO_SENDMAIL)
@if ! `grep -q '^smmsp:' /etc/passwd`; then \
echo "ERROR: Required smmsp user is missing, see /usr/src/UPDATING."; \
false; \
fi
@if ! `grep -q '^smmsp:' /etc/group`; then \
echo "ERROR: Required smmsp group is missing, see /usr/src/UPDATING."; \
false; \
fi
.endif

#
# installworld
#
# Installs everything compiled by a 'buildworld'.
#
installworld:
installworld: installcheck
mkdir -p ${INSTALLTMP}
for prog in [ awk cat chflags chmod chown date echo egrep find grep \
ln make makewhatis mkdir mtree mv perl rm sed sh sysctl \
Expand Down

0 comments on commit 2d8bce3

Please sign in to comment.