This directory contains series of patches that are required (but not sufficient) to build NetBSD's mtree on FreeBSD and which add all FreeBSD features. Most are generally applicable, but some bits are FreeBSD specific. All diffs are svn diffs so diffs involving multiple revs touch the same file multiple times and thus may not apply cleanly. All this work was performed in the FreeBSD svn repository in the projects/mtree area. These diff are to http://svn.freebsd.org/base/projects/mtree/compat/mtree. Changes to libc as well as a set of compatibility headers and an alternative make file are required to make the build work. The headers and makefile can be found at http://svn.freebsd.org/base/projects/mtree/usr.sbin/nmtree. 00-basic-build-r240706.diff The set of changes I needed to make to build mtree after shimming as many incompatibilities as I could with headers. Some might make sense to commit, others should probably live in the FreeBSD tree. 01-ripemd160-r240746-r240766-r240795.diff Add support for the ripemd160digest keyword and abstract the name that is output for each digest function to choose the FreeBSD defaults on FreeBSD and retain existing behavior elsewhere. I changed approach so the diff is a little hard to read. 02-disable-comments-r240748.diff Implement the FreeBSD option -n to suppress comments in output. 03-no-directory-warnings-r240749.diff Implement the FreeBSD option -q to silence some directory warnings. 04-ignore-w-r240751.diff Ignore the -w option as the NetBSD default is close and the FreeBSD version is risky. 05-4space-indent-r240756-r240765.diff Implement the FreeBSD -i option as -j to indent the output four spaces per level. 06-freebsd-output-compat-r240766.diff A couple somewhat dubious output diff reductions to FreeBSD. 07-nanosecond-format-r240767.diff Fix a bug where nanoseconds were misformatted. 08-xname-and-xid-r240785.diff Allow gname and gid or uname and uid to both be output when requested. 09-f-spec1-f-spec2-r240786-r240788-r240791-r240794.diff Implement FreeBSD's "-f spec1 -f spec2" spec comparison feature. 10-encode-globs-r240789.diff Encode glob characters to avoid surprises when using the resulting spec to update a tree. 11-update-mtime-r240790-r240792.diff Make the -t option default on FreeBSD to match current behavior and add -T to disable it. 12-nochange-r240796.diff Implement FreeBSD's nochange keyword.