BUG 11929: Build 'bind'-binaries dynamically and install needed libraries (V1 - TESTING VERSION)

Message ID 20181111194336.938-1-matthias.fischer@ipfire.org
State Superseded
Headers
Series BUG 11929: Build 'bind'-binaries dynamically and install needed libraries (V1 - TESTING VERSION) |

Commit Message

Matthias Fischer Nov. 12, 2018, 6:43 a.m. UTC
  Hi,

To save space linking the 'bind'-binaries was changed from statically to dynamically.

Package shrinked from ~4800K to ~1700K. Needs testing and confirmation!

Best,
Matthias

Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
---
 config/rootfiles/common/bind | 369 +++++++++++++++++++++++++++++++++++
 lfs/bind                     |  18 +-
 2 files changed, 378 insertions(+), 9 deletions(-)
  

Comments

Michael Tremer Nov. 14, 2018, 2:02 a.m. UTC | #1
Hey,

On Sun, 2018-11-11 at 20:43 +0100, Matthias Fischer wrote:
> Hi,
> 
> To save space linking the 'bind'-binaries was changed from statically to
> dynamically.
> 
> Package shrinked from ~4800K to ~1700K. Needs testing and confirmation!
> 
> Best,
> Matthias
> 
> Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
> ---
>  config/rootfiles/common/bind | 369 +++++++++++++++++++++++++++++++++++
>  lfs/bind                     |  18 +-
>  2 files changed, 378 insertions(+), 9 deletions(-)
> 
> diff --git a/config/rootfiles/common/bind b/config/rootfiles/common/bind
> index 303c5b828..a9b4d7b64 100644
> --- a/config/rootfiles/common/bind
> +++ b/config/rootfiles/common/bind
> @@ -3,7 +3,376 @@ usr/bin/dig
>  usr/bin/host
>  usr/bin/nslookup
>  usr/bin/nsupdate
> +#usr/include/bind9
> +#usr/include/bind9/check.h
> +#usr/include/bind9/getaddresses.h
> +#usr/include/bind9/version.h
> +#usr/include/dns
> +#usr/include/dns/acache.h
> +#usr/include/dns/acl.h
> +#usr/include/dns/adb.h
> +#usr/include/dns/badcache.h
> +#usr/include/dns/bit.h
> +#usr/include/dns/byaddr.h
> +#usr/include/dns/cache.h
> +#usr/include/dns/callbacks.h
> +#usr/include/dns/catz.h
> +#usr/include/dns/cert.h
> +#usr/include/dns/client.h
> +#usr/include/dns/clientinfo.h
> +#usr/include/dns/compress.h
> +#usr/include/dns/db.h
> +#usr/include/dns/dbiterator.h
> +#usr/include/dns/dbtable.h
> +#usr/include/dns/diff.h
> +#usr/include/dns/dispatch.h
> +#usr/include/dns/dlz.h
> +#usr/include/dns/dlz_dlopen.h
> +#usr/include/dns/dns64.h
> +#usr/include/dns/dnssec.h
> +#usr/include/dns/dnstap.h
> +#usr/include/dns/ds.h
> +#usr/include/dns/dsdigest.h
> +#usr/include/dns/dyndb.h
> +#usr/include/dns/ecdb.h
> +#usr/include/dns/edns.h
> +#usr/include/dns/enumclass.h
> +#usr/include/dns/enumtype.h
> +#usr/include/dns/events.h
> +#usr/include/dns/fixedname.h
> +#usr/include/dns/forward.h
> +#usr/include/dns/geoip.h
> +#usr/include/dns/ipkeylist.h
> +#usr/include/dns/iptable.h
> +#usr/include/dns/journal.h
> +#usr/include/dns/keydata.h
> +#usr/include/dns/keyflags.h
> +#usr/include/dns/keytable.h
> +#usr/include/dns/keyvalues.h
> +#usr/include/dns/lib.h
> +#usr/include/dns/log.h
> +#usr/include/dns/lookup.h
> +#usr/include/dns/master.h
> +#usr/include/dns/masterdump.h
> +#usr/include/dns/message.h
> +#usr/include/dns/name.h
> +#usr/include/dns/ncache.h
> +#usr/include/dns/nsec.h
> +#usr/include/dns/nsec3.h
> +#usr/include/dns/nta.h
> +#usr/include/dns/opcode.h
> +#usr/include/dns/order.h
> +#usr/include/dns/peer.h
> +#usr/include/dns/portlist.h
> +#usr/include/dns/private.h
> +#usr/include/dns/rbt.h
> +#usr/include/dns/rcode.h
> +#usr/include/dns/rdata.h
> +#usr/include/dns/rdataclass.h
> +#usr/include/dns/rdatalist.h
> +#usr/include/dns/rdataset.h
> +#usr/include/dns/rdatasetiter.h
> +#usr/include/dns/rdataslab.h
> +#usr/include/dns/rdatastruct.h
> +#usr/include/dns/rdatatype.h
> +#usr/include/dns/request.h
> +#usr/include/dns/resolver.h
> +#usr/include/dns/result.h
> +#usr/include/dns/rootns.h
> +#usr/include/dns/rpz.h
> +#usr/include/dns/rriterator.h
> +#usr/include/dns/rrl.h
> +#usr/include/dns/sdb.h
> +#usr/include/dns/sdlz.h
> +#usr/include/dns/secalg.h
> +#usr/include/dns/secproto.h
> +#usr/include/dns/soa.h
> +#usr/include/dns/ssu.h
> +#usr/include/dns/stats.h
> +#usr/include/dns/tcpmsg.h
> +#usr/include/dns/time.h
> +#usr/include/dns/timer.h
> +#usr/include/dns/tkey.h
> +#usr/include/dns/tsec.h
> +#usr/include/dns/tsig.h
> +#usr/include/dns/ttl.h
> +#usr/include/dns/types.h
> +#usr/include/dns/update.h
> +#usr/include/dns/validator.h
> +#usr/include/dns/version.h
> +#usr/include/dns/view.h
> +#usr/include/dns/xfrin.h
> +#usr/include/dns/zone.h
> +#usr/include/dns/zonekey.h
> +#usr/include/dns/zt.h
> +#usr/include/dst
> +#usr/include/dst/dst.h
> +#usr/include/dst/gssapi.h
> +#usr/include/dst/lib.h
> +#usr/include/dst/result.h
> +#usr/include/isc
> +#usr/include/isc/aes.h
> +#usr/include/isc/app.h
> +#usr/include/isc/assertions.h
> +#usr/include/isc/atomic.h
> +#usr/include/isc/backtrace.h
> +#usr/include/isc/base32.h
> +#usr/include/isc/base64.h
> +#usr/include/isc/bind9.h
> +#usr/include/isc/boolean.h
> +#usr/include/isc/buffer.h
> +#usr/include/isc/bufferlist.h
> +#usr/include/isc/commandline.h
> +#usr/include/isc/condition.h
> +#usr/include/isc/counter.h
> +#usr/include/isc/crc64.h
> +#usr/include/isc/deprecated.h
> +#usr/include/isc/dir.h
> +#usr/include/isc/entropy.h
> +#usr/include/isc/errno.h
> +#usr/include/isc/error.h
> +#usr/include/isc/event.h
> +#usr/include/isc/eventclass.h
> +#usr/include/isc/file.h
> +#usr/include/isc/formatcheck.h
> +#usr/include/isc/fsaccess.h
> +#usr/include/isc/hash.h
> +#usr/include/isc/heap.h
> +#usr/include/isc/hex.h
> +#usr/include/isc/hmacmd5.h
> +#usr/include/isc/hmacsha.h
> +#usr/include/isc/ht.h
> +#usr/include/isc/httpd.h
> +#usr/include/isc/int.h
> +#usr/include/isc/interfaceiter.h
> +#usr/include/isc/iterated_hash.h
> +#usr/include/isc/json.h
> +#usr/include/isc/keyboard.h
> +#usr/include/isc/lang.h
> +#usr/include/isc/lex.h
> +#usr/include/isc/lfsr.h
> +#usr/include/isc/lib.h
> +#usr/include/isc/likely.h
> +#usr/include/isc/list.h
> +#usr/include/isc/log.h
> +#usr/include/isc/magic.h
> +#usr/include/isc/md5.h
> +#usr/include/isc/mem.h
> +#usr/include/isc/meminfo.h
> +#usr/include/isc/msgcat.h
> +#usr/include/isc/msgs.h
> +#usr/include/isc/mutex.h
> +#usr/include/isc/mutexblock.h
> +#usr/include/isc/net.h
> +#usr/include/isc/netaddr.h
> +#usr/include/isc/netdb.h
> +#usr/include/isc/netscope.h
> +#usr/include/isc/offset.h
> +#usr/include/isc/once.h
> +#usr/include/isc/ondestroy.h
> +#usr/include/isc/os.h
> +#usr/include/isc/parseint.h
> +#usr/include/isc/platform.h
> +#usr/include/isc/pool.h
> +#usr/include/isc/portset.h
> +#usr/include/isc/print.h
> +#usr/include/isc/queue.h
> +#usr/include/isc/quota.h
> +#usr/include/isc/radix.h
> +#usr/include/isc/random.h
> +#usr/include/isc/ratelimiter.h
> +#usr/include/isc/refcount.h
> +#usr/include/isc/regex.h
> +#usr/include/isc/region.h
> +#usr/include/isc/resource.h
> +#usr/include/isc/result.h
> +#usr/include/isc/resultclass.h
> +#usr/include/isc/rwlock.h
> +#usr/include/isc/safe.h
> +#usr/include/isc/serial.h
> +#usr/include/isc/sha1.h
> +#usr/include/isc/sha2.h
> +#usr/include/isc/sockaddr.h
> +#usr/include/isc/socket.h
> +#usr/include/isc/stat.h
> +#usr/include/isc/stats.h
> +#usr/include/isc/stdio.h
> +#usr/include/isc/stdlib.h
> +#usr/include/isc/stdtime.h
> +#usr/include/isc/strerror.h
> +#usr/include/isc/string.h
> +#usr/include/isc/symtab.h
> +#usr/include/isc/syslog.h
> +#usr/include/isc/task.h
> +#usr/include/isc/taskpool.h
> +#usr/include/isc/thread.h
> +#usr/include/isc/time.h
> +#usr/include/isc/timer.h
> +#usr/include/isc/tm.h
> +#usr/include/isc/types.h
> +#usr/include/isc/util.h
> +#usr/include/isc/version.h
> +#usr/include/isc/xml.h
> +#usr/include/isccc
> +#usr/include/isccc/alist.h
> +#usr/include/isccc/base64.h
> +#usr/include/isccc/cc.h
> +#usr/include/isccc/ccmsg.h
> +#usr/include/isccc/events.h
> +#usr/include/isccc/lib.h
> +#usr/include/isccc/result.h
> +#usr/include/isccc/sexpr.h
> +#usr/include/isccc/symtab.h
> +#usr/include/isccc/symtype.h
> +#usr/include/isccc/types.h
> +#usr/include/isccc/util.h
> +#usr/include/isccc/version.h
> +#usr/include/isccfg
> +#usr/include/isccfg/aclconf.h
> +#usr/include/isccfg/cfg.h
> +#usr/include/isccfg/dnsconf.h
> +#usr/include/isccfg/grammar.h
> +#usr/include/isccfg/log.h
> +#usr/include/isccfg/namedconf.h
> +#usr/include/isccfg/version.h
> +#usr/include/lwres
> +#usr/include/lwres/context.h
> +#usr/include/lwres/int.h
> +#usr/include/lwres/ipv6.h
> +#usr/include/lwres/lang.h
> +#usr/include/lwres/list.h
> +#usr/include/lwres/lwbuffer.h
> +#usr/include/lwres/lwpacket.h
> +#usr/include/lwres/lwres.h
> +#usr/include/lwres/net.h
> +#usr/include/lwres/netdb.h
> +#usr/include/lwres/platform.h
> +#usr/include/lwres/result.h
> +#usr/include/lwres/stdlib.h
> +#usr/include/lwres/string.h
> +#usr/include/lwres/version.h
> +#usr/include/pk11
> +#usr/include/pk11/constants.h
> +#usr/include/pk11/internal.h
> +#usr/include/pk11/pk11.h
> +#usr/include/pk11/result.h
> +#usr/include/pk11/site.h
> +#usr/include/pkcs11
> +#usr/include/pkcs11/cryptoki.h
> +#usr/include/pkcs11/eddsa.h
> +#usr/include/pkcs11/pkcs11.h
> +#usr/include/pkcs11/pkcs11f.h
> +#usr/include/pkcs11/pkcs11t.h
> +#usr/lib/libbind9.la
> +usr/lib/libbind9.so
> +usr/lib/libbind9.so.161
> +usr/lib/libbind9.so.161.0.0

There is no need to package the .so files. We only need the .so.* files.

> +#usr/lib/libdns.la
> +usr/lib/libdns.so
> +usr/lib/libdns.so.1104
> +usr/lib/libdns.so.1104.0.0
> +#usr/lib/libisc.la
> +usr/lib/libisc.so
> +usr/lib/libisc.so.1100
> +usr/lib/libisc.so.1100.0.0
> +#usr/lib/libisccc.la
> +usr/lib/libisccc.so
> +usr/lib/libisccc.so.161
> +usr/lib/libisccc.so.161.0.0
> +#usr/lib/libisccfg.la
> +usr/lib/libisccfg.so
> +usr/lib/libisccfg.so.163
> +usr/lib/libisccfg.so.163.0.0
> +#usr/lib/liblwres.la
> +usr/lib/liblwres.so
> +usr/lib/liblwres.so.161
> +usr/lib/liblwres.so.161.0.0
>  #usr/share/man/man1/dig.1
>  #usr/share/man/man1/host.1
>  #usr/share/man/man1/nslookup.1
>  #usr/share/man/man1/nsupdate.1
> +#usr/share/man/man3/lwres.3
> +#usr/share/man/man3/lwres_addr_parse.3
> +#usr/share/man/man3/lwres_buffer.3
> +#usr/share/man/man3/lwres_buffer_add.3
> +#usr/share/man/man3/lwres_buffer_back.3
> +#usr/share/man/man3/lwres_buffer_clear.3
> +#usr/share/man/man3/lwres_buffer_first.3
> +#usr/share/man/man3/lwres_buffer_forward.3
> +#usr/share/man/man3/lwres_buffer_getmem.3
> +#usr/share/man/man3/lwres_buffer_getuint16.3
> +#usr/share/man/man3/lwres_buffer_getuint32.3
> +#usr/share/man/man3/lwres_buffer_getuint8.3
> +#usr/share/man/man3/lwres_buffer_init.3
> +#usr/share/man/man3/lwres_buffer_invalidate.3
> +#usr/share/man/man3/lwres_buffer_putmem.3
> +#usr/share/man/man3/lwres_buffer_putuint16.3
> +#usr/share/man/man3/lwres_buffer_putuint32.3
> +#usr/share/man/man3/lwres_buffer_putuint8.3
> +#usr/share/man/man3/lwres_buffer_subtract.3
> +#usr/share/man/man3/lwres_conf_clear.3
> +#usr/share/man/man3/lwres_conf_get.3
> +#usr/share/man/man3/lwres_conf_init.3
> +#usr/share/man/man3/lwres_conf_parse.3
> +#usr/share/man/man3/lwres_conf_print.3
> +#usr/share/man/man3/lwres_config.3
> +#usr/share/man/man3/lwres_context.3
> +#usr/share/man/man3/lwres_context_allocmem.3
> +#usr/share/man/man3/lwres_context_create.3
> +#usr/share/man/man3/lwres_context_destroy.3
> +#usr/share/man/man3/lwres_context_freemem.3
> +#usr/share/man/man3/lwres_context_initserial.3
> +#usr/share/man/man3/lwres_context_nextserial.3
> +#usr/share/man/man3/lwres_context_sendrecv.3
> +#usr/share/man/man3/lwres_endhostent.3
> +#usr/share/man/man3/lwres_endhostent_r.3
> +#usr/share/man/man3/lwres_freeaddrinfo.3
> +#usr/share/man/man3/lwres_freehostent.3
> +#usr/share/man/man3/lwres_gabn.3
> +#usr/share/man/man3/lwres_gabnrequest_free.3
> +#usr/share/man/man3/lwres_gabnrequest_parse.3
> +#usr/share/man/man3/lwres_gabnrequest_render.3
> +#usr/share/man/man3/lwres_gabnresponse_free.3
> +#usr/share/man/man3/lwres_gabnresponse_parse.3
> +#usr/share/man/man3/lwres_gabnresponse_render.3
> +#usr/share/man/man3/lwres_gai_strerror.3
> +#usr/share/man/man3/lwres_getaddrinfo.3
> +#usr/share/man/man3/lwres_getaddrsbyname.3
> +#usr/share/man/man3/lwres_gethostbyaddr.3
> +#usr/share/man/man3/lwres_gethostbyaddr_r.3
> +#usr/share/man/man3/lwres_gethostbyname.3
> +#usr/share/man/man3/lwres_gethostbyname2.3
> +#usr/share/man/man3/lwres_gethostbyname_r.3
> +#usr/share/man/man3/lwres_gethostent.3
> +#usr/share/man/man3/lwres_gethostent_r.3
> +#usr/share/man/man3/lwres_getipnode.3
> +#usr/share/man/man3/lwres_getipnodebyaddr.3
> +#usr/share/man/man3/lwres_getipnodebyname.3
> +#usr/share/man/man3/lwres_getnamebyaddr.3
> +#usr/share/man/man3/lwres_getnameinfo.3
> +#usr/share/man/man3/lwres_getrrsetbyname.3
> +#usr/share/man/man3/lwres_gnba.3
> +#usr/share/man/man3/lwres_gnbarequest_free.3
> +#usr/share/man/man3/lwres_gnbarequest_parse.3
> +#usr/share/man/man3/lwres_gnbarequest_render.3
> +#usr/share/man/man3/lwres_gnbaresponse_free.3
> +#usr/share/man/man3/lwres_gnbaresponse_parse.3
> +#usr/share/man/man3/lwres_gnbaresponse_render.3
> +#usr/share/man/man3/lwres_herror.3
> +#usr/share/man/man3/lwres_hstrerror.3
> +#usr/share/man/man3/lwres_inetntop.3
> +#usr/share/man/man3/lwres_lwpacket_parseheader.3
> +#usr/share/man/man3/lwres_lwpacket_renderheader.3
> +#usr/share/man/man3/lwres_net_ntop.3
> +#usr/share/man/man3/lwres_noop.3
> +#usr/share/man/man3/lwres_nooprequest_free.3
> +#usr/share/man/man3/lwres_nooprequest_parse.3
> +#usr/share/man/man3/lwres_nooprequest_render.3
> +#usr/share/man/man3/lwres_noopresponse_free.3
> +#usr/share/man/man3/lwres_noopresponse_parse.3
> +#usr/share/man/man3/lwres_noopresponse_render.3
> +#usr/share/man/man3/lwres_packet.3
> +#usr/share/man/man3/lwres_resutil.3
> +#usr/share/man/man3/lwres_sethostent.3
> +#usr/share/man/man3/lwres_sethostent_r.3
> +#usr/share/man/man3/lwres_string_parse.3
> diff --git a/lfs/bind b/lfs/bind
> index d0fcfeda0..c2530b174 100644
> --- a/lfs/bind
> +++ b/lfs/bind
> @@ -76,16 +76,16 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>  	cd $(DIR_APP) && STD_CDEFINES="$(CPPFLAGS)" \
>  		./configure \
>  			--prefix=/usr \
> -			--disable-static \
> -			--disable-openssl-version-check
> -	cd $(DIR_APP) && make -C lib/dns
> -	cd $(DIR_APP) && make -C lib/isc
> -	cd $(DIR_APP) && make -C lib/bind9
> -	cd $(DIR_APP) && make -C lib/isccfg
> -	cd $(DIR_APP) && make -C lib/lwres
> -	cd $(DIR_APP) && make -C bin/dig
> +			--enable-threads \
> +			--with-libtool \
> +			--disable-static
> +	cd $(DIR_APP) && make -C lib/isc install
> +	cd $(DIR_APP) && make -C lib/dns install
> +	cd $(DIR_APP) && make -C lib/isccc install
> +	cd $(DIR_APP) && make -C lib/isccfg install
> +	cd $(DIR_APP) && make -C lib/bind9 install
> +	cd $(DIR_APP) && make -C lib/lwres install
>  	cd $(DIR_APP) && make -C bin/dig install
> -	cd $(DIR_APP) && make -C bin/nsupdate
>  	cd $(DIR_APP) && make -C bin/nsupdate install
>  
>  	install -v -m 644 $(DIR_SRC)/config/bind/trusted-key.key \

-Michael
  
Matthias Fischer Nov. 14, 2018, 4:54 a.m. UTC | #2
On 13.11.2018 16:02, Michael Tremer wrote:
> Hey,
> 
> On Sun, 2018-11-11 at 20:43 +0100, Matthias Fischer wrote:
>> Hi,
>> 
>> To save space linking the 'bind'-binaries was changed from statically to
>> dynamically.
>> 
>> Package shrinked from ~4800K to ~1700K. Needs testing and confirmation!
>> 
>> Best,
>> Matthias
>> 
>> Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
>> ---
>>  config/rootfiles/common/bind | 369 +++++++++++++++++++++++++++++++++++
>>  lfs/bind                     |  18 +-
>>  2 files changed, 378 insertions(+), 9 deletions(-)
>> 
>> diff --git a/config/rootfiles/common/bind b/config/rootfiles/common/bind
>> index 303c5b828..a9b4d7b64 100644
>> --- a/config/rootfiles/common/bind
>> +++ b/config/rootfiles/common/bind
>> @@ -3,7 +3,376 @@ usr/bin/dig
>>  usr/bin/host
>>  usr/bin/nslookup
>>  usr/bin/nsupdate
>> ...
>> +#usr/include/pkcs11/pkcs11t.h
>> +#usr/lib/libbind9.la
>> +usr/lib/libbind9.so
>> +usr/lib/libbind9.so.161
>> +usr/lib/libbind9.so.161.0.0
> 
> There is no need to package the .so files. We only need the .so.* files.
> 
>> +#usr/lib/libdns.la
>> +usr/lib/libdns.so
>> +usr/lib/libdns.so.1104
>> +usr/lib/libdns.so.1104.0.0
>> +#usr/lib/libisc.la
>> +usr/lib/libisc.so
>> +usr/lib/libisc.so.1100
>> +usr/lib/libisc.so.1100.0.0
>> +#usr/lib/libisccc.la
>> +usr/lib/libisccc.so
>> +usr/lib/libisccc.so.161
>> +usr/lib/libisccc.so.161.0.0
>> +#usr/lib/libisccfg.la
>> +usr/lib/libisccfg.so
>> +usr/lib/libisccfg.so.163
>> +usr/lib/libisccfg.so.163.0.0
>> +#usr/lib/liblwres.la
>> +usr/lib/liblwres.so
>> +usr/lib/liblwres.so.161
>> +usr/lib/liblwres.so.161.0.0
>>  #usr/share/man/man1/dig.1
>>  ...

Made a V2 patch and installed the compiled 'package' for Core 124. Running.

=> https://patchwork.ipfire.org/patch/1984/

Best,
Matthias
  

Patch

diff --git a/config/rootfiles/common/bind b/config/rootfiles/common/bind
index 303c5b828..a9b4d7b64 100644
--- a/config/rootfiles/common/bind
+++ b/config/rootfiles/common/bind
@@ -3,7 +3,376 @@  usr/bin/dig
 usr/bin/host
 usr/bin/nslookup
 usr/bin/nsupdate
+#usr/include/bind9
+#usr/include/bind9/check.h
+#usr/include/bind9/getaddresses.h
+#usr/include/bind9/version.h
+#usr/include/dns
+#usr/include/dns/acache.h
+#usr/include/dns/acl.h
+#usr/include/dns/adb.h
+#usr/include/dns/badcache.h
+#usr/include/dns/bit.h
+#usr/include/dns/byaddr.h
+#usr/include/dns/cache.h
+#usr/include/dns/callbacks.h
+#usr/include/dns/catz.h
+#usr/include/dns/cert.h
+#usr/include/dns/client.h
+#usr/include/dns/clientinfo.h
+#usr/include/dns/compress.h
+#usr/include/dns/db.h
+#usr/include/dns/dbiterator.h
+#usr/include/dns/dbtable.h
+#usr/include/dns/diff.h
+#usr/include/dns/dispatch.h
+#usr/include/dns/dlz.h
+#usr/include/dns/dlz_dlopen.h
+#usr/include/dns/dns64.h
+#usr/include/dns/dnssec.h
+#usr/include/dns/dnstap.h
+#usr/include/dns/ds.h
+#usr/include/dns/dsdigest.h
+#usr/include/dns/dyndb.h
+#usr/include/dns/ecdb.h
+#usr/include/dns/edns.h
+#usr/include/dns/enumclass.h
+#usr/include/dns/enumtype.h
+#usr/include/dns/events.h
+#usr/include/dns/fixedname.h
+#usr/include/dns/forward.h
+#usr/include/dns/geoip.h
+#usr/include/dns/ipkeylist.h
+#usr/include/dns/iptable.h
+#usr/include/dns/journal.h
+#usr/include/dns/keydata.h
+#usr/include/dns/keyflags.h
+#usr/include/dns/keytable.h
+#usr/include/dns/keyvalues.h
+#usr/include/dns/lib.h
+#usr/include/dns/log.h
+#usr/include/dns/lookup.h
+#usr/include/dns/master.h
+#usr/include/dns/masterdump.h
+#usr/include/dns/message.h
+#usr/include/dns/name.h
+#usr/include/dns/ncache.h
+#usr/include/dns/nsec.h
+#usr/include/dns/nsec3.h
+#usr/include/dns/nta.h
+#usr/include/dns/opcode.h
+#usr/include/dns/order.h
+#usr/include/dns/peer.h
+#usr/include/dns/portlist.h
+#usr/include/dns/private.h
+#usr/include/dns/rbt.h
+#usr/include/dns/rcode.h
+#usr/include/dns/rdata.h
+#usr/include/dns/rdataclass.h
+#usr/include/dns/rdatalist.h
+#usr/include/dns/rdataset.h
+#usr/include/dns/rdatasetiter.h
+#usr/include/dns/rdataslab.h
+#usr/include/dns/rdatastruct.h
+#usr/include/dns/rdatatype.h
+#usr/include/dns/request.h
+#usr/include/dns/resolver.h
+#usr/include/dns/result.h
+#usr/include/dns/rootns.h
+#usr/include/dns/rpz.h
+#usr/include/dns/rriterator.h
+#usr/include/dns/rrl.h
+#usr/include/dns/sdb.h
+#usr/include/dns/sdlz.h
+#usr/include/dns/secalg.h
+#usr/include/dns/secproto.h
+#usr/include/dns/soa.h
+#usr/include/dns/ssu.h
+#usr/include/dns/stats.h
+#usr/include/dns/tcpmsg.h
+#usr/include/dns/time.h
+#usr/include/dns/timer.h
+#usr/include/dns/tkey.h
+#usr/include/dns/tsec.h
+#usr/include/dns/tsig.h
+#usr/include/dns/ttl.h
+#usr/include/dns/types.h
+#usr/include/dns/update.h
+#usr/include/dns/validator.h
+#usr/include/dns/version.h
+#usr/include/dns/view.h
+#usr/include/dns/xfrin.h
+#usr/include/dns/zone.h
+#usr/include/dns/zonekey.h
+#usr/include/dns/zt.h
+#usr/include/dst
+#usr/include/dst/dst.h
+#usr/include/dst/gssapi.h
+#usr/include/dst/lib.h
+#usr/include/dst/result.h
+#usr/include/isc
+#usr/include/isc/aes.h
+#usr/include/isc/app.h
+#usr/include/isc/assertions.h
+#usr/include/isc/atomic.h
+#usr/include/isc/backtrace.h
+#usr/include/isc/base32.h
+#usr/include/isc/base64.h
+#usr/include/isc/bind9.h
+#usr/include/isc/boolean.h
+#usr/include/isc/buffer.h
+#usr/include/isc/bufferlist.h
+#usr/include/isc/commandline.h
+#usr/include/isc/condition.h
+#usr/include/isc/counter.h
+#usr/include/isc/crc64.h
+#usr/include/isc/deprecated.h
+#usr/include/isc/dir.h
+#usr/include/isc/entropy.h
+#usr/include/isc/errno.h
+#usr/include/isc/error.h
+#usr/include/isc/event.h
+#usr/include/isc/eventclass.h
+#usr/include/isc/file.h
+#usr/include/isc/formatcheck.h
+#usr/include/isc/fsaccess.h
+#usr/include/isc/hash.h
+#usr/include/isc/heap.h
+#usr/include/isc/hex.h
+#usr/include/isc/hmacmd5.h
+#usr/include/isc/hmacsha.h
+#usr/include/isc/ht.h
+#usr/include/isc/httpd.h
+#usr/include/isc/int.h
+#usr/include/isc/interfaceiter.h
+#usr/include/isc/iterated_hash.h
+#usr/include/isc/json.h
+#usr/include/isc/keyboard.h
+#usr/include/isc/lang.h
+#usr/include/isc/lex.h
+#usr/include/isc/lfsr.h
+#usr/include/isc/lib.h
+#usr/include/isc/likely.h
+#usr/include/isc/list.h
+#usr/include/isc/log.h
+#usr/include/isc/magic.h
+#usr/include/isc/md5.h
+#usr/include/isc/mem.h
+#usr/include/isc/meminfo.h
+#usr/include/isc/msgcat.h
+#usr/include/isc/msgs.h
+#usr/include/isc/mutex.h
+#usr/include/isc/mutexblock.h
+#usr/include/isc/net.h
+#usr/include/isc/netaddr.h
+#usr/include/isc/netdb.h
+#usr/include/isc/netscope.h
+#usr/include/isc/offset.h
+#usr/include/isc/once.h
+#usr/include/isc/ondestroy.h
+#usr/include/isc/os.h
+#usr/include/isc/parseint.h
+#usr/include/isc/platform.h
+#usr/include/isc/pool.h
+#usr/include/isc/portset.h
+#usr/include/isc/print.h
+#usr/include/isc/queue.h
+#usr/include/isc/quota.h
+#usr/include/isc/radix.h
+#usr/include/isc/random.h
+#usr/include/isc/ratelimiter.h
+#usr/include/isc/refcount.h
+#usr/include/isc/regex.h
+#usr/include/isc/region.h
+#usr/include/isc/resource.h
+#usr/include/isc/result.h
+#usr/include/isc/resultclass.h
+#usr/include/isc/rwlock.h
+#usr/include/isc/safe.h
+#usr/include/isc/serial.h
+#usr/include/isc/sha1.h
+#usr/include/isc/sha2.h
+#usr/include/isc/sockaddr.h
+#usr/include/isc/socket.h
+#usr/include/isc/stat.h
+#usr/include/isc/stats.h
+#usr/include/isc/stdio.h
+#usr/include/isc/stdlib.h
+#usr/include/isc/stdtime.h
+#usr/include/isc/strerror.h
+#usr/include/isc/string.h
+#usr/include/isc/symtab.h
+#usr/include/isc/syslog.h
+#usr/include/isc/task.h
+#usr/include/isc/taskpool.h
+#usr/include/isc/thread.h
+#usr/include/isc/time.h
+#usr/include/isc/timer.h
+#usr/include/isc/tm.h
+#usr/include/isc/types.h
+#usr/include/isc/util.h
+#usr/include/isc/version.h
+#usr/include/isc/xml.h
+#usr/include/isccc
+#usr/include/isccc/alist.h
+#usr/include/isccc/base64.h
+#usr/include/isccc/cc.h
+#usr/include/isccc/ccmsg.h
+#usr/include/isccc/events.h
+#usr/include/isccc/lib.h
+#usr/include/isccc/result.h
+#usr/include/isccc/sexpr.h
+#usr/include/isccc/symtab.h
+#usr/include/isccc/symtype.h
+#usr/include/isccc/types.h
+#usr/include/isccc/util.h
+#usr/include/isccc/version.h
+#usr/include/isccfg
+#usr/include/isccfg/aclconf.h
+#usr/include/isccfg/cfg.h
+#usr/include/isccfg/dnsconf.h
+#usr/include/isccfg/grammar.h
+#usr/include/isccfg/log.h
+#usr/include/isccfg/namedconf.h
+#usr/include/isccfg/version.h
+#usr/include/lwres
+#usr/include/lwres/context.h
+#usr/include/lwres/int.h
+#usr/include/lwres/ipv6.h
+#usr/include/lwres/lang.h
+#usr/include/lwres/list.h
+#usr/include/lwres/lwbuffer.h
+#usr/include/lwres/lwpacket.h
+#usr/include/lwres/lwres.h
+#usr/include/lwres/net.h
+#usr/include/lwres/netdb.h
+#usr/include/lwres/platform.h
+#usr/include/lwres/result.h
+#usr/include/lwres/stdlib.h
+#usr/include/lwres/string.h
+#usr/include/lwres/version.h
+#usr/include/pk11
+#usr/include/pk11/constants.h
+#usr/include/pk11/internal.h
+#usr/include/pk11/pk11.h
+#usr/include/pk11/result.h
+#usr/include/pk11/site.h
+#usr/include/pkcs11
+#usr/include/pkcs11/cryptoki.h
+#usr/include/pkcs11/eddsa.h
+#usr/include/pkcs11/pkcs11.h
+#usr/include/pkcs11/pkcs11f.h
+#usr/include/pkcs11/pkcs11t.h
+#usr/lib/libbind9.la
+usr/lib/libbind9.so
+usr/lib/libbind9.so.161
+usr/lib/libbind9.so.161.0.0
+#usr/lib/libdns.la
+usr/lib/libdns.so
+usr/lib/libdns.so.1104
+usr/lib/libdns.so.1104.0.0
+#usr/lib/libisc.la
+usr/lib/libisc.so
+usr/lib/libisc.so.1100
+usr/lib/libisc.so.1100.0.0
+#usr/lib/libisccc.la
+usr/lib/libisccc.so
+usr/lib/libisccc.so.161
+usr/lib/libisccc.so.161.0.0
+#usr/lib/libisccfg.la
+usr/lib/libisccfg.so
+usr/lib/libisccfg.so.163
+usr/lib/libisccfg.so.163.0.0
+#usr/lib/liblwres.la
+usr/lib/liblwres.so
+usr/lib/liblwres.so.161
+usr/lib/liblwres.so.161.0.0
 #usr/share/man/man1/dig.1
 #usr/share/man/man1/host.1
 #usr/share/man/man1/nslookup.1
 #usr/share/man/man1/nsupdate.1
+#usr/share/man/man3/lwres.3
+#usr/share/man/man3/lwres_addr_parse.3
+#usr/share/man/man3/lwres_buffer.3
+#usr/share/man/man3/lwres_buffer_add.3
+#usr/share/man/man3/lwres_buffer_back.3
+#usr/share/man/man3/lwres_buffer_clear.3
+#usr/share/man/man3/lwres_buffer_first.3
+#usr/share/man/man3/lwres_buffer_forward.3
+#usr/share/man/man3/lwres_buffer_getmem.3
+#usr/share/man/man3/lwres_buffer_getuint16.3
+#usr/share/man/man3/lwres_buffer_getuint32.3
+#usr/share/man/man3/lwres_buffer_getuint8.3
+#usr/share/man/man3/lwres_buffer_init.3
+#usr/share/man/man3/lwres_buffer_invalidate.3
+#usr/share/man/man3/lwres_buffer_putmem.3
+#usr/share/man/man3/lwres_buffer_putuint16.3
+#usr/share/man/man3/lwres_buffer_putuint32.3
+#usr/share/man/man3/lwres_buffer_putuint8.3
+#usr/share/man/man3/lwres_buffer_subtract.3
+#usr/share/man/man3/lwres_conf_clear.3
+#usr/share/man/man3/lwres_conf_get.3
+#usr/share/man/man3/lwres_conf_init.3
+#usr/share/man/man3/lwres_conf_parse.3
+#usr/share/man/man3/lwres_conf_print.3
+#usr/share/man/man3/lwres_config.3
+#usr/share/man/man3/lwres_context.3
+#usr/share/man/man3/lwres_context_allocmem.3
+#usr/share/man/man3/lwres_context_create.3
+#usr/share/man/man3/lwres_context_destroy.3
+#usr/share/man/man3/lwres_context_freemem.3
+#usr/share/man/man3/lwres_context_initserial.3
+#usr/share/man/man3/lwres_context_nextserial.3
+#usr/share/man/man3/lwres_context_sendrecv.3
+#usr/share/man/man3/lwres_endhostent.3
+#usr/share/man/man3/lwres_endhostent_r.3
+#usr/share/man/man3/lwres_freeaddrinfo.3
+#usr/share/man/man3/lwres_freehostent.3
+#usr/share/man/man3/lwres_gabn.3
+#usr/share/man/man3/lwres_gabnrequest_free.3
+#usr/share/man/man3/lwres_gabnrequest_parse.3
+#usr/share/man/man3/lwres_gabnrequest_render.3
+#usr/share/man/man3/lwres_gabnresponse_free.3
+#usr/share/man/man3/lwres_gabnresponse_parse.3
+#usr/share/man/man3/lwres_gabnresponse_render.3
+#usr/share/man/man3/lwres_gai_strerror.3
+#usr/share/man/man3/lwres_getaddrinfo.3
+#usr/share/man/man3/lwres_getaddrsbyname.3
+#usr/share/man/man3/lwres_gethostbyaddr.3
+#usr/share/man/man3/lwres_gethostbyaddr_r.3
+#usr/share/man/man3/lwres_gethostbyname.3
+#usr/share/man/man3/lwres_gethostbyname2.3
+#usr/share/man/man3/lwres_gethostbyname_r.3
+#usr/share/man/man3/lwres_gethostent.3
+#usr/share/man/man3/lwres_gethostent_r.3
+#usr/share/man/man3/lwres_getipnode.3
+#usr/share/man/man3/lwres_getipnodebyaddr.3
+#usr/share/man/man3/lwres_getipnodebyname.3
+#usr/share/man/man3/lwres_getnamebyaddr.3
+#usr/share/man/man3/lwres_getnameinfo.3
+#usr/share/man/man3/lwres_getrrsetbyname.3
+#usr/share/man/man3/lwres_gnba.3
+#usr/share/man/man3/lwres_gnbarequest_free.3
+#usr/share/man/man3/lwres_gnbarequest_parse.3
+#usr/share/man/man3/lwres_gnbarequest_render.3
+#usr/share/man/man3/lwres_gnbaresponse_free.3
+#usr/share/man/man3/lwres_gnbaresponse_parse.3
+#usr/share/man/man3/lwres_gnbaresponse_render.3
+#usr/share/man/man3/lwres_herror.3
+#usr/share/man/man3/lwres_hstrerror.3
+#usr/share/man/man3/lwres_inetntop.3
+#usr/share/man/man3/lwres_lwpacket_parseheader.3
+#usr/share/man/man3/lwres_lwpacket_renderheader.3
+#usr/share/man/man3/lwres_net_ntop.3
+#usr/share/man/man3/lwres_noop.3
+#usr/share/man/man3/lwres_nooprequest_free.3
+#usr/share/man/man3/lwres_nooprequest_parse.3
+#usr/share/man/man3/lwres_nooprequest_render.3
+#usr/share/man/man3/lwres_noopresponse_free.3
+#usr/share/man/man3/lwres_noopresponse_parse.3
+#usr/share/man/man3/lwres_noopresponse_render.3
+#usr/share/man/man3/lwres_packet.3
+#usr/share/man/man3/lwres_resutil.3
+#usr/share/man/man3/lwres_sethostent.3
+#usr/share/man/man3/lwres_sethostent_r.3
+#usr/share/man/man3/lwres_string_parse.3
diff --git a/lfs/bind b/lfs/bind
index d0fcfeda0..c2530b174 100644
--- a/lfs/bind
+++ b/lfs/bind
@@ -76,16 +76,16 @@  $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 	cd $(DIR_APP) && STD_CDEFINES="$(CPPFLAGS)" \
 		./configure \
 			--prefix=/usr \
-			--disable-static \
-			--disable-openssl-version-check
-	cd $(DIR_APP) && make -C lib/dns
-	cd $(DIR_APP) && make -C lib/isc
-	cd $(DIR_APP) && make -C lib/bind9
-	cd $(DIR_APP) && make -C lib/isccfg
-	cd $(DIR_APP) && make -C lib/lwres
-	cd $(DIR_APP) && make -C bin/dig
+			--enable-threads \
+			--with-libtool \
+			--disable-static
+	cd $(DIR_APP) && make -C lib/isc install
+	cd $(DIR_APP) && make -C lib/dns install
+	cd $(DIR_APP) && make -C lib/isccc install
+	cd $(DIR_APP) && make -C lib/isccfg install
+	cd $(DIR_APP) && make -C lib/bind9 install
+	cd $(DIR_APP) && make -C lib/lwres install
 	cd $(DIR_APP) && make -C bin/dig install
-	cd $(DIR_APP) && make -C bin/nsupdate
 	cd $(DIR_APP) && make -C bin/nsupdate install
 
 	install -v -m 644 $(DIR_SRC)/config/bind/trusted-key.key \