Bug 194899 - Build world failure at /usr/src/lib/libc/gen/cap_sandboxed.c: fatal error: 'sys/capsicum.h' file not found
Summary: Build world failure at /usr/src/lib/libc/gen/cap_sandboxed.c: fatal error: 's...
Status: Closed Unable to Reproduce
Alias: None
Product: Base System
Classification: Unclassified
Component: misc (show other bugs)
Version: CURRENT
Hardware: i386 Any
: --- Affects Only Me
Assignee: freebsd-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-11-08 14:40 UTC by Juan Ramón Molina Menor
Modified: 2015-10-15 18:35 UTC (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Juan Ramón Molina Menor 2014-11-08 14:40:49 UTC
On a recently build 10-STABLE i386 system with unmodified sources, I svn switch to /usr/src to 11-CURRENT r274278 and make buildworld, which fails with:

/usr/src/lib/libc/gen/cap_sandboxed.c:33:10: fatal error: 'sys/capsicum.h' file not found
#include <sys/capsicum.h>
         ^
1 error generated.
/usr/src/lib/libc/../../sys/kern/subr_capability.c:38:10: fatal error: 'sys/capsicum.h' file not found
#include <sys/capsicum.h>
         ^
1 error generated.
mkdep: compile failed
*** Error code 1

Stop.
make[4]: stopped in /usr/src/lib/libc
*** Error code 1

Stop.
make[3]: stopped in /usr/src
*** Error code 1

Stop.
make[2]: stopped in /usr/src
*** Error code 1

Stop.
make[1]: stopped in /usr/src
*** Error code 1

Stop.
make: stopped in /usr/src

# uname -a
FreeBSD Marianne.Juan.home 10.1-PRERELEASE FreeBSD 10.1-PRERELEASE #0 r274026 Mon Nov  3 16:20:52 CET 2014     root@Marianne.Juan.home:/usr/obj/usr/src/sys/GENERIC  i386

# cat /etc/make.conf
.if (!empty(.CURDIR:M/usr/src*) || !empty(.CURDIR:M/usr/obj*))
.if !defined(NOCCACHE) && exists(/usr/local/libexec/ccache/world/cc)
CC:=${CC:C,^cc,/usr/local/libexec/ccache/world/cc,1}
CXX:=${CXX:C,^c\+\+,/usr/local/libexec/ccache/world/c++,1}
.endif
.endif
WITH_CCACHE_BUILD=yes
SVN_UPDATE=

# cat /etc/src.conf
cat: /etc/src.conf: No such file or directory
Comment 1 Juan Ramón Molina Menor 2014-12-07 09:33:29 UTC
I have tried again today with a fresh checkout of HEAD after having deleted /usr/obj and /usr/src and make buildworld fails at the same place.
Comment 2 Anton 2014-12-16 12:18:24 UTC
Same to me. I have the same situation with these files too when trying to compile nanobsd buildworld. One funny thing is that this file, sys/capsicum.h, actually exist in the directory /usr/src/sys/ along with cdefs.h which is also included in cap_sandboxed.c. Why is compiler finds one .h file and can't find another, if I could know..

The system is:

FreeBSD 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 22:51:51 UTC 2014 root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC i386
Comment 3 diaren 2015-03-21 22:15:43 UTC
Try a slightly different make.conf:

.if (!empty(.CURDIR:M/usr/src*) || !empty(.CURDIR:M/usr/obj*))
.if !defined(NOCCACHE) && exists(/usr/local/libexec/ccache/world/cc)
PATH=/usr/local/libexec/ccache/world:/sbin:/bin:/usr/sbin:/usr/bin
#CC:=${CC:C,^cc,/usr/local/libexec/ccache/world/cc,1}
#CXX:=${CXX:C,^c\+\+,/usr/local/libexec/ccache/world/c++,1}
.endif
.endif
Comment 4 diaren 2015-03-21 22:26:32 UTC
Actually that doesn't work :)
Comment 5 Ed Maste freebsd_committer freebsd_triage 2015-07-07 20:02:43 UTC
Does it happen only with ccache?
Comment 6 Juan Ramón Molina Menor 2015-07-09 20:40:14 UTC
(In reply to Ed Maste from comment #5)

This error seems to be gone with an updated source (as of today, rev. 285321).

make buildworld still fails with ccache enabled, but works without it, so I think we could close this PR.

Thanks for your work!
Juan
Comment 7 Ed Maste freebsd_committer freebsd_triage 2015-10-15 18:35:55 UTC
Submitter reports this specific issue is no longer reproducible.