diff options
author | jhb <jhb@FreeBSD.org> | 2014-01-22 16:59:53 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2014-01-22 16:59:53 +0000 |
commit | 08c2799ac32bcfa927afad09c3fd080204c2fca2 (patch) | |
tree | 8ef7f4c487980321f126092e56db4386567ccc57 | |
parent | ada0e25d918f99abb6bf16ddd3802b8b28a5c935 (diff) | |
download | FreeBSD-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.inc1 | 2 | ||||
-rw-r--r-- | etc/Makefile | 2 | ||||
-rwxr-xr-x | usr.sbin/etcupdate/etcupdate.sh | 3 | ||||
-rwxr-xr-x | usr.sbin/mergemaster/mergemaster.sh | 3 |
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 |