| Summary: | 'make buildworld': unbound build failure on 12.1-RELEASE-p7 | ||
|---|---|---|---|
| Product: | Base System | Reporter: | oz42 |
| Component: | gnu | Assignee: | freebsd-bugs (Nobody) <bugs> |
| Status: | Closed Works As Intended | ||
| Severity: | Affects Only Me | CC: | des, gordon, igor.polovykh, markj, sega01, so |
| Priority: | --- | ||
| Version: | 12.1-RELEASE | ||
| Hardware: | Any | ||
| OS: | Any | ||
|
Description
oz42
2020-07-16 10:29:45 UTC
make.conf:
.if ${.CURDIR:M*/ports/devel/ccache}
NO_CCACHE=yes
.endif
NO_CCACHE=yes
.if !defined(NO_CCACHE)
CC=/usr/local/libexec/ccache/world/cc
CXX=/usr/local/libexec/ccache/world/c++
.endif
KERNCONFDIR=/root
KERNCONF=BETSY
MODULES_OVERRIDE=mac_ntpd filemon accf_http accf_data
#
OPTIONS_UNSET= NIS
OPTIONS_UNSET+= X11
OPTIONS_UNSET+= DOCS
OPTIONS_UNSET+= DEBUG
OPTIONS_UNSET+= WAYLAND
#
DEFAULT_VERSIONS+= ssl=libressl
src.conf: WITH_BSD_GREP=YES WITH_CCACHE_BUILD=YES WITH_LLD_IS_LD=YES WITH_SHARED_TOOLCHAIN=YES WITH_SORT_THREADS=YES # WITHOUT_CLANG_FULL=YES WITHOUT_LLVM_TARGET_ALL=YES # WITHOUT_ACCT=YES WITHOUT_AMD=YES WITHOUT_AT=YES WITHOUT_ATM=YES WITHOUT_ASSERT_DEBUG=YES WITHOUT_AUDIT=YES WITHOUT_AUTHPF=YES WITHOUT_AUTOFS=YES WITHOUT_BHYVE=YES WITHOUT_BLACKLIST=YES WITHOUT_BLUETOOTH=YES WITHOUT_BOOTPARAMD=YES WITHOUT_BOOTPD=YES WITHOUT_BSDINSTALL=YES WITHOUT_BSNMP=YES WITHOUT_CALENDAR=YES WITHOUT_CAPSICUM=YES WITHOUT_CASPER=YES WITHOUT_CCD=YES WITHOUT_CDDL=YES # includes WITHOUT_CTF WITHOUT_ZFS # WITHOUT_CRYPT=YES WITHOUT_CTM=YES WITHOUT_CUSE=YES WITHOUT_CXGBETOOL=YES WITHOUT_DEBUG_FILES=YES WITHOUT_DICT=YES WITHOUT_DMAGENT=YES WITHOUT_EXAMPLES=YES WITHOUT_FINGER=YES WITHOUT_FLOPPY=YES WITHOUT_FORTH=YES WITHOUT_FTP=YES WITHOUT_GAMES=YES WITHOUT_GCOV=YES WITHOUT_GDB=YES WITHOUT_GOOGLETEST=YES WITHOUT_GPIO=YES WITHOUT_GSSAPI=YES WITHOUT_HAST=YES WITHOUT_HTML=YES WITHOUT_HYPERV=YES WITHOUT_INETD=YES WITHOUT_IPFILTER=YES WITHOUT_IPSEC_SUPPORT=YES WITHOUT_ISCSI=YES WITHOUT_JAIL=YES WITHOUT_KDUMP=YES WITHOUT_KERBEROS=YES WITHOUT_KERNEL_SYMBOLS=YES WITHOUT_KVM=YES WITHOUT_LEGACY_CONSOLE=YES WITHOUT_LIB32=YES WITHOUT_LLDB=YES WITHOUT_LLVM_COV=YES WITHOUT_LOADER_ZFS=YES WITHOUT_LPR=YES WITHOUT_LS_COLORS=YES WITHOUT_MAIL=YES WITHOUT_MLX5TOOL=YES WITHOUT_MODULE_DRM=YES WITHOUT_MODULE_DRM2=YES WITHOUT_NDIS=YES WITHOUT_NETGRAPH=YES WITHOUT_NIS=YES WITHOUT_OPENSSH=YES WITHOUT_PC_SYSINSTALL=YES WITHOUT_PPP=YES WITHOUT_PROFILE=YES WITHOUT_QUOTAS=YES WITHOUT_RADIUS_SUPPORT=YES WITHOUT_RBOOTD=YES WITHOUT_REPRODUCIBLE_BUILD=YES WITHOUT_RESCUE=YES WITHOUT_ROUTED=YES WITHOUT_SENDMAIL=YES WITHOUT_SHAREDOCS=YES WITHOUT_SOURCELESS=YES WITHOUT_SVNLITE=YES # WITHOUT_SYMVER=YES WITHOUT_TALK=YES WITHOUT_TCP_WRAPPERS=YES WITHOUT_TESTS=YES # includes WITHOUT_DTRACE_TESTS WITHOUT_TESTS_SUPPORT WITHOUT_TFTP=YES WITHOUT_TIMED=YES WITHOUT_USB=YES WITHOUT_USB_GADGET_EXAMPLES=YES WITHOUT_WIRELESS=YES # includes WITHOUT_WIRELESS_SUPPORT=YES WITHOUT_WPA_SUPPLICANT_EAPOL=YES WITHOUT_ZFS=YES I'm having issues with the SA-20:19 Unbound patch as well, even on a fresh install applying all given patches. https://www.freebsd.org/security/advisories/FreeBSD-SA-20:19.unbound.asc bash# pwd /usr/src/usr.sbin/unbound bash# make ===> daemon (all) cc -O2 -pipe -I/usr/src/contrib/unbound -I/usr/src/contrib/ldns -I/usr/src/usr.sbin/unbound -I/usr/src/usr.sbin/unbound/daemon -g -MD -MF.depend.acl_list.o -MTacl_list.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/contrib/unbound/daemon/acl_list.c -o acl_list.o In file included from /usr/src/contrib/unbound/daemon/acl_list.c:43: In file included from /usr/src/contrib/unbound/daemon/acl_list.h:45: In file included from /usr/src/contrib/unbound/util/storage/dnstree.h:45: /usr/src/contrib/unbound/util/rbtree.h:65:2: error: unknown type name 'uint8_t' uint8_t color; ^ /usr/src/contrib/unbound/util/rbtree.h:81:2: error: unknown type name 'size_t' size_t count; ^ In file included from /usr/src/contrib/unbound/daemon/acl_list.c:43: In file included from /usr/src/contrib/unbound/daemon/acl_list.h:45: /usr/src/contrib/unbound/util/storage/dnstree.h:61:2: error: unknown type name 'uint8_t' uint8_t* name; ^ /usr/src/contrib/unbound/util/storage/dnstree.h:63:2: error: unknown type name 'size_t' size_t len; ^ /usr/src/contrib/unbound/util/storage/dnstree.h:67:2: error: unknown type name 'uint16_t' uint16_t dclass; ^ /usr/src/contrib/unbound/util/storage/dnstree.h:83:26: error: field has incomplete type 'struct sockaddr_storage' struct sockaddr_storage addr; ^ /usr/src/contrib/unbound/util/storage/dnstree.h:83:9: note: forward declaration of 'struct sockaddr_storage' struct sockaddr_storage addr; ^ /usr/src/contrib/unbound/util/storage/dnstree.h:85:2: error: unknown type name 'socklen_t' socklen_t addrlen; ^ /usr/src/contrib/unbound/util/storage/dnstree.h:109:2: error: unknown type name 'uint8_t' uint8_t* name, size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:109:17: error: unknown type name 'size_t' uint8_t* name, size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:109:39: error: unknown type name 'uint16_t' uint8_t* name, size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:127:58: error: unknown type name 'uint8_t' struct name_tree_node* name_tree_find(rbtree_type* tree, uint8_t* name, ^ /usr/src/contrib/unbound/util/storage/dnstree.h:128:2: error: unknown type name 'size_t' size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:128:24: error: unknown type name 'uint16_t' size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:139:60: error: unknown type name 'uint8_t' struct name_tree_node* name_tree_lookup(rbtree_type* tree, uint8_t* name, ^ /usr/src/contrib/unbound/util/storage/dnstree.h:140:2: error: unknown type name 'size_t' size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:140:24: error: unknown type name 'uint16_t' size_t len, int labs, uint16_t dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:148:44: error: unknown type name 'uint16_t' int name_tree_next_root(rbtree_type* tree, uint16_t* dclass); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:167:33: error: unknown type name 'socklen_t' struct sockaddr_storage* addr, socklen_t addrlen, int net); ^ /usr/src/contrib/unbound/util/storage/dnstree.h:191:33: error: unknown type name 'socklen_t' struct sockaddr_storage* addr, socklen_t addrlen); ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. *** Error code 1 Stop. make[1]: stopped in /usr/src/usr.sbin/unbound/daemon *** Error code 1 Stop. make: stopped in /usr/src/usr.sbin/unbound Would it be possible to checkout the tip of the releng/12.1 and diff the two trees to see if there are any differences? I have releng/12.1 tree and get the same error while buildworld. (In reply to Teran McKinney from comment #3) trying to apply this (https://www.freebsd.org/security/advisories/FreeBSD-SA-20:19.unbound.asc) patch: Unable to find file config.orig ............... Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- contrib/unbound/config.h.orig |+++ contrib/unbound/config.h -------------------------- ............... if I skip it I get error while compilation: /usr/src/usr.sbin/unbound ] # make ===> daemon (all) rm -f .depend echo local-unbound.full: /usr/lib/libc.a /usr/lib/libprivateunbound.a /usr/lib/libutil.a /usr/lib/libssl.a /usr/lib/libcrypto.a /usr/lib/libpthread.a >> .depend clang -O2 -pipe -I/usr/src/contrib/unbound -I/usr/src/contrib/ldns -g -MD -MF.depend.acl_list.o -MTacl_list.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/contrib/unbound/daemon/acl_list.c -o acl_list.o /usr/src/contrib/unbound/daemon/acl_list.c:42:10: fatal error: 'config.h' file not found #include "config.h" ^~~~~~~~~~ 1 error generated. *** Error code 1 Stop. make[1]: stopped in /usr/src/usr.sbin/unbound/daemon *** Error code 1 Stop. make: stopped in /usr/src/usr.sbin/unbound (In reply to igor.polovykh from comment #6) Sounds like the tree did not patch correctly. contrib/unbound/config.h was moved to usr.sbin/unbound/config.h with this update. That said, it is odd that the compilation could not find it. I recommend checking out a fresh releng/12.1 tree and comparing that to your working state. If you can send along reproduction steps showing the error you are citing, I'll be happy to take a look at it. (In reply to Gordon Tetlow from comment #7) [ /usr/src ] # rm -r ./* [ /usr/src ] # git checkout --force releng/12.1 Updating files: 100% (78826/78826), done. Already on 'releng/12.1' Your branch is up to date with 'origin/releng/12.1'. # fetch https://security.FreeBSD.org/patches/SA-20:19/unbound.12.1.patch unbound.12.1.patch ] # patch -p0 < unbound.12.1.patch .............. Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- contrib/unbound/config.h.orig |+++ contrib/unbound/config.h -------------------------- File to patch: No file found--skip this patch? [y] (In reply to Gordon Tetlow from comment #7) /usr/src ] # usr.sbin/unbound/ [ /usr/src/usr.sbin/unbound ] # make ===> daemon (all) rm -f .depend echo local-unbound.full: /usr/lib/libc.a /usr/lib/libprivateunbound.a /usr/lib/libutil.a /usr/lib/libssl.a /usr/lib/libcrypto.a /usr/lib/libpthread.a >> .depend clang -O2 -pipe -I/usr/src/contrib/unbound -I/usr/src/contrib/ldns -g -MD -MF.depend.acl_list.o -MTacl_list.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/contrib/unbound/daemon/acl_list.c -o acl_list.o /usr/src/contrib/unbound/daemon/acl_list.c:42:10: fatal error: 'config.h' file not found #include "config.h" ^~~~~~~~~~ 1 error generated. *** Error code 1 Stop. make[1]: stopped in /usr/src/usr.sbin/unbound/daemon *** Error code 1 Stop. make: stopped in /usr/src/usr.sbin/unbound Apologies, if you take the tip of releng/12.1, it will already have the patches applied, no need to download and apply the patch. I tested this by checking out releng/12.1 to r360979 and was able to apply the patch without issue. I'm doing a test build now to see if it errors. (In reply to Gordon Tetlow from comment #11) I got the latest releng/12.1 [/usr/src ] # git log commit b7709c88b8566fb73b274f8b7af31575d228a932 (HEAD -> releng/12.1, origin/releng/12.1) Author: gordon <gordon@FreeBSD.org> Date: Wed Sep 2 16:29:40 2020 +0000 Add UPDATING entries and bump version. Approved by: so commit 3b898882e4cbfebdcea41d46603b5495ae83f434 Author: gordon <gordon@FreeBSD.org> Date: Wed Sep 2 16:25:31 2020 +0000 Fix dhclient heap overflow. Approved by: so Security: FreeBSD-SA-20:26.dhclient Security: CVE-2020-7461 .... when I try to patch I get the same question from patch [/usr/src ] # patch -p0 < unbound.12.1.patch .......... Hmm... The next patch looks like a unified diff to me... The text leading up to this was: -------------------------- |--- contrib/unbound/config.h.orig |+++ contrib/unbound/config.h -------------------------- File to patch: contrib/unbound/config.h.orig No file found--skip this patch? [n] ^Z zsh: suspended patch -p0 < unbound.12.1.patch [ /usr/src ] # l contrib/unbound/config.h.orig ls: contrib/unbound/config.h.orig: No such file or directory [ /usr/src ] # l contrib/unbound/config* -rwxr-xr-x 1 root wheel 43K 2020.09.08 18:53:34 contrib/unbound/config.guess* -rwxr-xr-x 1 root wheel 43K 2020.09.08 14:47:31 contrib/unbound/config.guess.orig* -rw-r--r-- 1 root wheel 34K 2020.09.08 14:47:31 contrib/unbound/config.h.in -rwxr-xr-x 1 root wheel 35K 2020.09.08 14:47:31 contrib/unbound/config.sub* -rwxr-xr-x 1 root wheel 657K 2020.09.08 14:47:31 contrib/unbound/configure* -rw-r--r-- 1 root wheel 63K 2020.09.08 14:47:31 contrib/unbound/configure.ac patch tries to find contrib/unbound/config.h.orig file to process it but it can not do it. You can see listing of files in directory contrib/unbound/ (In reply to igor.polovykh from comment #12) Right, the patch is already incorporated. No need to apply it. (In reply to Gordon Tetlow from comment #13) yes. And I get the same error when buildworld --- local-unbound.full --- clang -O2 -pipe -I/usr/src/contrib/unbound -I/usr/src/contrib/ldns -I/usr/src/usr.sbin/unbound -I/usr/src/usr.sbin/unbound/daemon -g -std=gnu99 $ ld: error: undefined symbol: listen_sslctx_delete_ticket_keys >>> referenced by daemon.c:765 (/usr/src/contrib/unbound/daemon/daemon.c:765) >>> daemon.o:(daemon_delete) ld: error: undefined symbol: rpz_action_to_string >>> referenced by remote.c:1056 (/usr/src/contrib/unbound/daemon/remote.c:1056) >>> remote.o:(do_stats) ld: error: undefined symbol: tcp_req_info_get_stream_buffer_size >>> referenced by stats.c:337 (/usr/src/contrib/unbound/daemon/stats.c:337) >>> stats.o:(server_stats_compile) ld: error: undefined symbol: log_ident_set_default >>> referenced by unbound.c:724 (/usr/src/contrib/unbound/daemon/unbound.c:724) >>> unbound.o:(main) ld: error: undefined symbol: listen_sslctx_setup_ticket_keys >>> referenced by unbound.c:452 (/usr/src/contrib/unbound/daemon/unbound.c:452) >>> unbound.o:(main) ld: error: undefined symbol: log_ident_set_or_default >>> referenced by unbound.c:281 (/usr/src/contrib/unbound/daemon/unbound.c:281) >>> unbound.o:(main) ld: error: undefined symbol: log_query_in >>> referenced by worker.c:1227 (/usr/src/contrib/unbound/daemon/worker.c:1227) >>> worker.o:(worker_handle_request) ld: error: undefined symbol: rpz_apply_qname_trigger >>> referenced by worker.c:1381 (/usr/src/contrib/unbound/daemon/worker.c:1381) >>> worker.o:(worker_handle_request) etc..... does git remote repository have proper settings?
are you sure that you made changes exactly in GIT repository on github.com ?
[remote "origin"]
url = https://github.com/freebsd/freebsd.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "releng/12.1"]
remote = origin
merge = refs/heads/releng/12.1
This is a support issue, not a bug. |