summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2014-01-22 16:59:53 +0000
committerjhb <jhb@FreeBSD.org>2014-01-22 16:59:53 +0000
commit08c2799ac32bcfa927afad09c3fd080204c2fca2 (patch)
tree8ef7f4c487980321f126092e56db4386567ccc57
parentada0e25d918f99abb6bf16ddd3802b8b28a5c935 (diff)
downloadFreeBSD-src-08c2799ac32bcfa927afad09c3fd080204c2fca2.zip
FreeBSD-src-08c2799ac32bcfa927afad09c3fd080204c2fca2.tar.gz
Generate /var/db/services.db during 'make distribution' so that it is
present during new installs. Update etcupdate and mergemaster to ignore the generated file. Tested by: gjb (release build) MFC after: 1 month
-rw-r--r--Makefile.inc12
-rw-r--r--etc/Makefile2
-rwxr-xr-xusr.sbin/etcupdate/etcupdate.sh3
-rwxr-xr-xusr.sbin/mergemaster/mergemaster.sh3
4 files changed, 7 insertions, 3 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index bf968a6..a06c34a 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -771,7 +771,7 @@ _nmtree_itools= nmtree
ITOOLS= [ awk cap_mkdb cat chflags chmod chown \
date echo egrep find grep id install ${_install-info} \
ln lockf make mkdir mtree ${_nmtree_itools} mv pwd_mkdb \
- rm sed sh sysctl test true uname wc ${_zoneinfo}
+ rm sed services_mkdb sh sysctl test true uname wc ${_zoneinfo}
#
# distributeworld
diff --git a/etc/Makefile b/etc/Makefile
index bcccf82..b2cf4cd 100644
--- a/etc/Makefile
+++ b/etc/Makefile
@@ -198,6 +198,8 @@ distribution:
${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
${BIN1} ${DESTDIR}/etc; \
cap_mkdb ${CAP_MKDB_ENDIAN} ${DESTDIR}/etc/login.conf; \
+ services_mkdb ${CAP_MKDB_ENDIAN} -o ${DESTDIR}/var/db/services.db \
+ ${DESTDIR}/etc/services; \
${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 \
${BIN2} ${DESTDIR}/etc; \
${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 \
diff --git a/usr.sbin/etcupdate/etcupdate.sh b/usr.sbin/etcupdate/etcupdate.sh
index addcc14..a4728fa 100755
--- a/usr.sbin/etcupdate/etcupdate.sh
+++ b/usr.sbin/etcupdate/etcupdate.sh
@@ -213,7 +213,8 @@ build_tree()
# Purge auto-generated files. Only the source files need to
# be updated after which these files are regenerated.
- rm -f $1/etc/*.db $1/etc/passwd >&3 2>&1 || return 1
+ rm -f $1/etc/*.db $1/etc/passwd $1/var/db/services.db >&3 2>&1 || \
+ return 1
# Remove empty files. These just clutter the output of 'diff'.
find $1 -type f -size 0 -delete >&3 2>&1 || return 1
diff --git a/usr.sbin/mergemaster/mergemaster.sh b/usr.sbin/mergemaster/mergemaster.sh
index f3aafae..c5ed5fd 100755
--- a/usr.sbin/mergemaster/mergemaster.sh
+++ b/usr.sbin/mergemaster/mergemaster.sh
@@ -699,7 +699,8 @@ case "${RERUN}" in
# or spwd.db. Instead, we want to compare the text versions, and run *_mkdb.
# Prompt the user to do so below, as needed.
#
- rm -f ${TEMPROOT}/etc/*.db ${TEMPROOT}/etc/passwd
+ rm -f ${TEMPROOT}/etc/*.db ${TEMPROOT}/etc/passwd \
+ ${TEMPROOT}/var/db/services.db
# We only need to compare things like freebsd.cf once
find ${TEMPROOT}/usr/obj -type f -delete 2>/dev/null
OpenPOWER on IntegriCloud