the diffs and possibly install the new version of file.
(Based on sshd_config munging code in do_ssh())
* Use modify_file() in do_hosts() and do_ssh().
* Be more specific in do_x11() about what needs to occur.
(This could still be improved).
* Minor sh cleanups. ("sh is not C")
(based on the guts of do_obsolete().
* Implement obsolete_libs() to print a list of obsolete minor/teeny
shared libraries in the provided directory.
The implementation supports removing old major libraries similar to
src/lib/checkoldvers (except this correctly matches more stuff), but
there's no way to enable that at this time.
* do_rc(): convert to obsolete_paths() to remove old rc.d scripts.
* do_obsolete(): convert to obsolete_paths(). add obsolete_libs() for
/lib and /usr/lib to remove old minor/teeny shared libraries.
* Clean up the usage.
/etc/X11/<foo>, where <foo> is one of:
fs lbxproxy proxymngr rstart twm xdm xinit xserver xsm
(I haven't implemented automatic migration at this time; it's too fragile
given that /etc/X11 may already exist on some systems)
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.
* Restore previous functionality which supported running postinstall
with an extracted etc.tgz set as the "source" directory (i.e,
/usr/src isn't available). We do this by generating the MAKEDEV
to ${SCRATCHDIR} if the real source is available, and leverage off
the compare_dir() code that the rest of postinstall uses to support
this functionality.
* Don't special case MACHINE_ARCH==arm; the MAKEDEV.awk should
be doing that since etc/Makefile doesn't have similar special
case code. In any case, AFAICT the only MACHINE_ARCHs are
"arm" and "armeb"; there is no "armel" in NetBSD.
to generate the MAKEDEV to scratch dir and compare that with the currently
installed /dev/MAKEDEV; also add -a MACHINE_ARCH option to explicitly
set machine architecture for non-native builds
problem with postinstall pointed out by Patrick Welche and Hubert Feyrer
in private e-mails
incase an obsolete directory appeared in a setfile whose filename
alphasorted before another setfile with obsolete "children" of that directory.
fixes [install/21348] from Rob Quinn.
sendmail 8.12.8. Some of the same machinery (in shorter form) is in
the additions to rc.d/sendmail. Also, add a smmsp startup script for
the sendmail client queue runner.
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.
* 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.