program/tool from "FOO" to "TOOL_FOO". The new variables are:
TOOL_ASN1_COMPILE TOOL_CAP_MKDB TOOL_CAT TOOL_CKSUM TOOL_COMPILE_ET
TOOL_CONFIG TOOL_CRUNCHGEN TOOL_CTAGS TOOL_DB TOOL_EQN TOOL_FGEN
TOOL_GENCAT TOOL_GROFF TOOL_HEXDUMP TOOL_INDXBIB TOOL_INSTALLBOOT
TOOL_INSTALL_INFO TOOL_M4 TOOL_MAKEFS TOOL_MAKEINFO TOOL_MAKEWHATIS
TOOL_MDSETIMAGE TOOL_MENUC TOOL_MKCSMAPPER TOOL_MKESDB
TOOL_MKLOCALE TOOL_MKMAGIC TOOL_MKTEMP TOOL_MSGC TOOL_MTREE
TOOL_PAX TOOL_PIC TOOL_PREPMKBOOTIMAGE TOOL_PWD_MKDB TOOL_REFER
TOOL_ROFF_ASCII TOOL_ROFF_DVI TOOL_ROFF_HTML TOOL_ROFF_PS
TOOL_ROFF_RAW TOOL_RPCGEN TOOL_SOELIM TOOL_SUNLABEL TOOL_TBL
TOOL_UUDECODE TOOL_VGRIND TOOL_ZIC
For each, provide default in <bsd.sys.mk> of the form:
TOOL_FOO?= foo
and for the ${USETOOLS}=="yes" case in <bsd.own.mk>, provide override:
TOOL_FOO= ${TOOLDIR}/bin/${_TOOL_PREFIX}foo
Document all of these in bsd.README.
This cleans up a chunk of potential (and actual) namespace collision
within our build infrastructure, as well as improves consistency in
the share/mk documentation and provision of appropriate defaults for
each of these variables.
This is a know bug (see our libc sha1 implementation and the associated
doc/hacks entry) with the toolchain used on sparc64 currently.
XXX - somebody please check/fix OBJDIR handling for this
XXX - somebody please fix the ****** toolchain
- resolve conflicts (there are many conflicts with $NetBSD$ tags -
dunno why they happen).
- type pedant (couple of typecasts).
correct yacc-generated file handling. remove bin/named/ns_parser.h,
use the header yacc generates at compilation time.
a static once-generated version instead. We know we have IPv6
headers available here.
The probing was problematical for several reasons:
o it probed the host headers, not the headers in the build or DESTDIR
tree (could be fixed in another way)
o the probe_ipv6 script mucks with PATH, which would be problematical
for cross compilation.
dig/host/whatever assumes that it is using BIND8 code. mixing BIND4 in
libc with BIND8 code will result in very strange behavior, or program panics.
it is not necessary for dig/host/whatever to obey /etc/nsswitch.conf, actually
dig(1) is explicit about it.
now dist/bind is almost clean BIND822p5, with the following exception:
- /etc/irs.conf will never be visited when running BIND8 toolchain,
to make it less complex. the search order for BIND8 toolchain is
defined in dist/bind/lib/irs/gen.c:default_map_rules().
and usr.sbin/bind compiles them in BSD make framework, with no tricks at all.
"make build" from the top).
XXX
if you do "make obj", you have to reference:
bind/named/obj/pathnames.h
from either of them by using relative path:
${.OBJDIR} = bind/named-xfer/obj or
${.CURDIR} = bind/named-xfer
-I${.OBJDIR}/../named was included but is not the correct one.
I used -I${.CURDIR}/../named/obj, but I'm not sure if it is the right way.
sizeof(_res) must be the same for libc, libresolv and libbind.
libc and libresolve uses bind4 while libbind seems to use bind8.
complete fix would be to share the same codebase among libc and libbind,
but I don't know if importing bind8 into libc/libresolv (or bind9 to
all the places) is the right answer. it involves a big change.
PR: 7966