Attempting to compile stable/10 from svn rev 296969: > angst(/usr/src) # svn info > Path: . > Working Copy Root Path: /usr/src > URL: http://svn0.us-east.freebsd.org/base/stable/10 > Revision: 296969 > Last Changed Rev: 296969 > Last Changed Date: 2016-03-16 20:32:29 -0400 (Wed, 16 Mar 2016) > > angst(/usr/src) # uname -a > FreeBSD angst.csh.rit.edu 10.2-STABLE FreeBSD 10.2-STABLE #3 r290239: Sun Nov 1 19:42:14 EST 2015 antiduh@angst.csh.rit.edu:/space/obj/space/src/sys/ANGST64 amd64 `make buildworld` fails while compiling libc: > --- acl_support_nfs4.po --- > cc -pg -O2 -pipe -I/usr/src/lib/libc/include -I/usr/src/lib/libc/../../include -I/usr/src/lib/libc/amd64 -DNLS -D__DBINTERFACE_PRIVATE -I/usr/src/lib/libc/../../contrib/gdtoa -I/usr/src/lib/libc/../../contrib/libc-vis -DINET6 -I/usr/obj/usr/src/lib/libc -I/usr/src/lib/libc/resolv -D_ACL_PRIVATE -DPOSIX_MISTAKE -I/usr/src/lib/libc/../libmd -I/usr/src/lib/libc/../../contrib/jemalloc/include -I/usr/src/lib/libc/../../contrib/tzcode/stdtime -I/usr/src/lib/libc/stdtime -I/usr/src/lib/libc/locale -DBROKEN_DES -DPORTMAP -DDES_BUILTIN -I/usr/src/lib/libc/rpc -DYP -DNS_CACHING -DSYMBOL_VERSIONING -DSYSCALL_COMPAT -std=gnu99 -Qunused-arguments -fstack-protector -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-switch -Wno-switch-enum -Wno-knr-promoted-parameter -c /usr/src/lib/libc/posix1e/acl_to_text_nfs4.c -o acl_to_text_nfs4.po > > --- acl_support_nfs4.po --- > /usr/src/lib/libc/posix1e/acl_support_nfs4.c:51:8: error: use of undeclared identifier 'ACL_ENTRY_INHERITED' > { ACL_ENTRY_INHERITED, "inherited", 'I' } `ACL_ENTRY_INHERITED` is defined in /usr/src/sys/sys/acl.h, which acl_support_nfs4.c attempts to include: > #include <stdio.h> > #include <stdlib.h> > #include <string.h> > #include <assert.h> > #include <err.h> > #include <sys/acl.h> > #include "acl_support.h" The problem is that the compilation flags don't have the right include flags. Here are the ones that are present: > -I/usr/obj/usr/src/lib/libc > -I/usr/src/lib/libc/../../contrib/gdtoa > -I/usr/src/lib/libc/../../contrib/jemalloc/include > -I/usr/src/lib/libc/../../contrib/libc-vis > -I/usr/src/lib/libc/../../contrib/tzcode/stdtime > -I/usr/src/lib/libc/../../include > -I/usr/src/lib/libc/../libmd > -I/usr/src/lib/libc/amd64 > -I/usr/src/lib/libc/include > -I/usr/src/lib/libc/locale > -I/usr/src/lib/libc/resolv > -I/usr/src/lib/libc/rpc > -I/usr/src/lib/libc/stdtime Missing from that list: `-I/usr/src/sys/`. The following patch fixes the problem: > angst(/usr/src/lib/libc) # svn diff > Index: Makefile > =================================================================== > --- Makefile (revision 296968) > +++ Makefile (working copy) > @@ -27,6 +27,7 @@ > WARNS?= 2 > CFLAGS+=-I${.CURDIR}/include -I${.CURDIR}/../../include > CFLAGS+=-I${.CURDIR}/${LIBC_ARCH} > +CFLAGS+=-I${.CURDIR}/../../sys > .if ${MK_NLS} != "no" > CFLAGS+=-DNLS > .endif This issue was noticed here: https://lists.freebsd.org/pipermail/freebsd-stable/2016-February/084205.html The poster seems to have fixed the problem by compiling 10.3 beta 2 while already on 10.3 beta 2. Perhaps the fact that I'm compiling on 10.2-stable is relevant?
That would not be correct, no. The buildworld process creates a new /usr/include tree that is populated with headers from the source tree. The implicit -I /usr/include added by the C compiler is redirected to that path which is why you don't see it via -I. Something else must have been out of whack in your environment. You can try blowing /usr/obj away entirely.