NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
toolchain/60468: external/mpl/bind/lib: misuse of build_install, missing MKBIND conditionals
>Number: 60468
>Category: toolchain
>Synopsis: external/mpl/bind/lib: misuse of build_install, missing MKBIND conditionals
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: toolchain-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jul 20 13:25:00 +0000 2026
>Originator: Taylor R Campbell
>Release: current, 11, 10, 9, ...
>Organization:
The NotBIND Foundation
>Environment:
>Description:
external/mpl/bind/lib/Makefile has included
<bsd.buildinstall.mk> since 2022, but it doesn't actually do
anything unless you use the `build_install' target, which
nothing does.
3 SUBDIR+= libisc .WAIT libdns libisccc .WAIT libisccfg
4 SUBDIR+= libns .WAIT plugins
5
6 .include <bsd.buildinstall.mk>
7 .include <bsd.subdir.mk>
https://nxr.NetBSD.org/xref/src/external/mpl/bind/lib/Makefile?r=1.5
Instead, lib/Makefile descends into it with dependall and
install _via_ the build_install target _of lib/Makefile_ like
every other library:
279 SUBDIR+= ../crypto/external/bsd/netpgp/bindings/lua # depends on netpgp/lib
=> 280 SUBDIR+= ../external/mpl/bind/lib # depends on heimdal, libcrypto
281 # libuv, userspace-rcu
282 .if ${MKUNBOUND} != "no"
283 SUBDIR+= ../external/bsd/unbound/lib # depends on libcrypto
284 .endif
https://nxr.NetBSD.org/xref/src/lib/Makefile?r=1.316#280
Also, it's missing a test for MKBIND, as a result of which we
ship all the BIND libraries in MKBIND=no builds, as you can see
from the set lists, comparing base/mi (conditional on `bind')
to base/shl.mi (not conditional on `bind'):
597 ./usr/bin/dig base-netutil-bin bind
https://nxr.netbsd.org/xref/src/distrib/sets/lists/base/mi?r=1.1387#597
400 ./usr/lib/libisc.so base-bind-shlib compatfile
https://nxr.netbsd.org/xref/src/distrib/sets/lists/base/shl.mi?r=1.1046#400
>How-To-Repeat:
code inspection, and/or build MKBIND=no
>Fix:
Makefile.subdir like external/bsd/libevent/lib uses
Home |
Main Index |
Thread Index |
Old Index