Date: | Tue, 09 Jan 2018 12:49:31 +0000 |
To: | dhcp-public@isc.org |
From: | tmark@isc.org |
Subject: | OpenBSD fails to build with BIND9.11.2 missing enumtype.h and enumclass.h |
Because of changes made to build with 9.11, we have run afoul of an issue in BIND9's Makefile.
Michal (BIND9 team) suggests the following changed:
+++ b//bind/Makefile.in Tue Jan 9 13:02:38 2018
@@ -80,7 +80,7 @@
for libdir in ${bindlibs} ; do \
(cd ${bindsrcdir}/lib/$$libdir ; \
echo Building $$libdir library in `pwd` ; \
- $(MAKE) >> ${binddir}/build.log) ; \
+ $(MAKE) all >> ${binddir}/build.log) ; \
done ; \
\
echo Installing BIND libraries to ${binddir}. ; \
and explanation:
"The root cause is that openbsd's make does not like .NO_PARALLEL/.NOTPARALLEL, which is the first target it finds in lib/*/Makefile and it attempts to use the first target because you use a plain `make` (vs. e.g. `make all`). Older isc dhcp versions built bind "export" libs, which are no longer a thing, and the commands for building them used explicit target names, so it worked. This would explain why you're only having problems with openbsd (its make is the culprit) with the patch above applied, the compilation process moves on to actual dhcp code -- then barfs out on common/parse.c, but that's out of bailiwick for me ;)"
This change needs to be made in <dhcp>/util/Makefile.bind.in