aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/mergemaster
diff options
context:
space:
mode:
authorSimon J. Gerraty <sjg@FreeBSD.org>2014-04-28 07:50:45 +0000
committerSimon J. Gerraty <sjg@FreeBSD.org>2014-04-28 07:50:45 +0000
commit3b8f08459569bf0faa21473e5cec2491e95c9349 (patch)
tree80f45dd81ca716bcd7ca9674581e1fc40b93cd34 /usr.sbin/mergemaster
parent9d2ab4a62d6733c45958627ac113bdbd818d1e2a (diff)
parentb2ba55951383498f252746f618d513139da06e8e (diff)
downloadsrc-3b8f08459569bf0faa21473e5cec2491e95c9349.tar.gz
src-3b8f08459569bf0faa21473e5cec2491e95c9349.zip
Merge head
Notes
Notes: svn path=/projects/bmake/; revision=265044
Diffstat (limited to 'usr.sbin/mergemaster')
-rwxr-xr-xusr.sbin/mergemaster/mergemaster.sh13
1 files changed, 10 insertions, 3 deletions
diff --git a/usr.sbin/mergemaster/mergemaster.sh b/usr.sbin/mergemaster/mergemaster.sh
index 361cef9146fa..a200088b1194 100755
--- a/usr.sbin/mergemaster/mergemaster.sh
+++ b/usr.sbin/mergemaster/mergemaster.sh
@@ -492,8 +492,14 @@ MM_MAKE="make ${ARCHSTRING} -m ${SOURCEDIR}/share/mk"
# files the user changed from the reference files.
#
if [ -n "${AUTO_UPGRADE}" -a -s "${MTREEFILE}" ]; then
+ # Force FreeBSD 9 compatible output when available.
+ if mtree -F freebsd9 -c -p /var/empty/ > /dev/null 2>&1; then
+ MTREE_FLAVOR="-F freebsd9"
+ else
+ MTREE_FLAVOR=
+ fi
CHANGED=:
- for file in `mtree -eqL -f ${MTREEFILE} -p ${DESTDIR}/ \
+ for file in `mtree -eqL ${MTREE_FLAVOR} -f ${MTREEFILE} -p ${DESTDIR}/ \
2>/dev/null | awk '($2 == "changed") {print $1}'`; do
if [ -f "${DESTDIR}/$file" ]; then
CHANGED="${CHANGED}${DESTDIR}/${file}:"
@@ -693,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
@@ -702,7 +709,7 @@ case "${RERUN}" in
# and to make the actual comparison faster.
find ${TEMPROOT}/usr -type l -delete 2>/dev/null
find ${TEMPROOT} -type f -size 0 -delete 2>/dev/null
- find -d ${TEMPROOT} -type d -empty -delete 2>/dev/null
+ find -d ${TEMPROOT} -type d -empty -mindepth 1 -delete 2>/dev/null
# Build the mtree database in a temporary location.
case "${PRE_WORLD}" in