Source upgrade 12.0-STABLE to 12.1-RELEASE fails

Attempting to buildworld of 12.1-RELEASE under 12.0-STABLE (r348286) fails with a compile error.

Source was fetched via SVN, https://svn.freebsd.org/base/releng/12.1

I've tried make cleanworld, rm /usr/obj, single threaded make (no -jX) ... same error each time.

Unsure whether config.h is supposed to be part of FreeBSD 12, or it's generated during buildworld [edit: based on the lex and yacc calls, possibly the latter]. Either way, it doesn't exist.

I guess one other thing to try is updating the STABLE src, then attempting to compile RELEASE again, but failing that... any ideas?

Thanks.

Code:
# make buildworld
[...]

===> lib/libunbound (all)
cp -f /usr/src/contrib/unbound/util/configlexer.lex configlexer.l
lex -Pub_c_ -oconfiglexer.c configlexer.l
yacc -pub_c_ -d -o configparser.c /usr/src/contrib/unbound/util/configparser.y
echo libprivateunbound.so.5.full: /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libssl.a /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libcrypto.a /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libpthread.a >> .depend
cc -target x86_64-unknown-freebsd12.1 --sysroot=/usr/obj/usr/src/amd64.amd64/tmp -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin  -O2 -pipe -I/usr/src/contrib/unbound -I/usr/src/contrib/ldns -I/usr/obj/usr/src/amd64.amd64/lib/libunbound -I/usr/src/usr.sbin/unbound   -g -MD  -MF.depend.alloc.o -MTalloc.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter  -Qunused-arguments  -c /usr/src/contrib/unbound/util/alloc.c -o alloc.o
/usr/src/contrib/unbound/util/alloc.c:42:10: fatal error: 'config.h' file not found
#include "config.h"
         ^~~~~~~~~~
1 error generated.
*** Error code 1

Stop.
make[5]: stopped in /usr/src/lib/libunbound
 
All I know is that /usr/src/contrib/unbound/config.h is generated by autoconf with /usr/src/contrib/unbound/configure.ac as argument (I read that in the sources). Is autoconf present on your system? Well, I suppose it isn't that simple but...
 
Hi

what is contents of src.conf and make.conf.

Also did you wipe /usr/obj and before you started.

Also made sure /usr/src clean before new source downloaded?
 
LATER EDIT: Despite saying I had a clean /usr/src, it looks like I may have missed usr.sbin - which is where unbound lives. I'll try again.

*****


To answer the subsequent questions:

- autoconf is present and appears to be working.

- config.h does not exist referencing unbound anywhere under /usr/src/

- /usr/obj was deleted before each buildworld attempt (tried both make cleanworld and rm -R /usr/obj)

- /usr/src was clean before the SVN download (but I'm going to try again, just in case)

- src.conf does not exist.

- make.conf has only the line "DEFAULT_VERSIONS+=ssl=base"

I also tried env -i make buildworld (on a clean world) as suggested in UPDATING, but that makes no difference.

----

The current 12.0-STABLE version was (obviously) compiled from source, without any issues, but that was last year. The only system level stuff that has changed since then should be package upgrades.
 
(Sheepish look) Missing the stale user.sbin from the delete was the problem. A buildworld has now successfully completed. Sorry for wasting everyone's time.
 
Back
Top