Define _REENTRANT for MKSANITIZER build. This is needed for at least stdio
code. This caused new build issued with duplicated symbols in few places
and rump kernel code picking different code paths borrowed from libc.
Handle all this in one go.
Add bsd.sanitizer.mk to share common code used by programs and libraries.
Switch from realall to beforeinstall target in .syms files. This is more
reliable in MKSANITIZER.
Add various corrections mostly sourced from upstream's cvs.texinfo,
e.g., note NetBSD's local change to log admin commands in history
(subsequently added on upstream's HEAD, since it was noted in
r. 1.689), add some references to rannotate and rlog (from r. 1.686),
some amendments concerning rdiff (from r. 1.687), and miscellaneous
typo fixes.
"rtag" commands. This is taken mostly from the upstream project's
cvs.texinfo revisions 1.686 and 1.687. Additionally, I've reflected
NetBSD's local changes to log "tag" as well as "rtag" in history, and
to require admin privileges for destructive tagging commands. This
addresses PR bin/33877.
Pull over a tiny fix from pkgsrc's devel/scmcvs patch-ab to support
generating info files with newer versions of Texinfo than what's
shipped in base presently. (Should base be updated at some point, or
for those using an external toolchain here.)
Put a cross-reference to "init" back in "Creating a Repository" and
other minor formatting tweaks, and regenerate cvs.1 to reflect the
previous changes by christos@ in cvs.texinfo r. 1.7.
Add a section about the "init" command that has been missing all this
time. Part of the basic description is resurrected from r. 1.20 of
cvs.1 (in its prior incarnation in the CVS project tree under /man
rather than /doc), contributed by Tom Lees back in 1999. The caveat
about the history file is copied from elsewhere in the current
cvs.texinfo file. Additional fragments written by me. Addresses the
PR bin/45446.
flag to cvs.texinfo, so the installed man and info documentation match
here. This makes cvs.1 auto-generable from cvs.texinfo again, which I
plan to leverage with further additions later.
"remove" commands. These were never present upstream on the branch
NetBSD imported, but were subsequently added on other branches (against
upstream's HEAD: cvs.1: r. 1.53 & cvs.texinfo: r. 1.697).
XXX While cvs.texinfo is supposed to be used to auto-generate cvs.1,
that isn't safe at present, because content has been added direct to
cvs.1 in NetBSD's tree.
Replace homegrown logic of calculating alignment with alignof, a C11 header
feature.
Add a check for NetBSD >= 8.0 just in case that someone will want to build
it on older NetBSD.
Issue detected with UBSan.
There is an interface in grep: dfa.c with functions to test bit, set bit,
clear bit etc. They operate over the INT-wide mask (INTBITS). Use unsigned
shift in these interfaces to prevent UB.
Detected with MKSANITIZER with the undefined behavior sanitizer option.
Sponsored by <The NetBSD Foundation>
programs there; make all Makefiles that use bsd.hostprog.mk include it.
Namely turn off MKREPRO and don't make lint, man pages, info files etc.
Remove the Makefile.inc files that contained these same settings, and
remove the settings from Makefile.host
- HAVE_GCC=5 is now the default (vs. HAVE_GCC=53 we've been using for
GCC 5.4 and GCC 5.5.)
- remove some more GCC 4.8 code. we don't support GCC 4 here.
- adjust set lists to gcc=5 from gcc=53.
add some basic HAVE_GCC=6 handling (totally unused so far.)