It seems that buildworld depends on the existence of /usr/bin/compile_et if one wants to build WITH_KERBEROS on a system that has never had Kerberos support. I discovered this issue when des_at_ removed the NOFOO and NO_FOO options, and the NO_KERBEROS="YES" in my /etc/make.conf was neutered. The system in question has never had kerneros installed. One can emulate the problem as follows: % mv /usr/bin/compile_et /usr/bin/compile_et.old % cd /usr/src % make buildworld (a few hours later ... boom) ===> kerberos5/lib/libasn1 (buildincludes) compile_et /usr/src/kerberos5/lib/libasn1/../../../crypto/heimdal/lib/asn1/asn1_err.et compile_et: No such file or directory *** [asn1_err.h] Error code 1 Stop in /usr/src/kerberos5/lib/libasn1. *** [buildincludes] Error code 1 Stop in /usr/src/kerberos5/lib. *** [buildincludes] Error code 1 Stop in /usr/src/kerberos5. *** [includes] Error code 1 Stop in /usr/src/kerberos5. *** [kerberos5.includes__D] Error code 1 Stop in /usr/src. *** [_includes] Error code 1 Stop in /usr/src. *** [buildworld] Error code 1 Stop in /usr/src. The obvious step of installing compile_et gives % cd /usr/src/usr.bin/compile_et % make depend yacc -d -o parse.c /usr/src/usr.bin/compile_et/../../contrib/com_err/parse.y lex -t /usr/src/usr.bin/compile_et/../../contrib/com_err/lex.l > lex.c rm -f .depend mkdep -f .depend -a -I. -I/usr/src/usr.bin/compile_et/../../contrib/com_err -std=gnu99 /usr/src/usr.bin/compile_et/../../contrib/com_err/compile_et.c parse.c lex.c /usr/src/usr.bin/compile_et/../../contrib/com_err/compile_et.c:39:20: error: getarg.h: No such file or directory /usr/src/usr.bin/compile_et/../../contrib/com_err/compile_et.c:41:19: error: roken.h: No such file or directory mkdep: compile failed *** [.depend] Error code 1 so it appears that I need to build and install libroken to get the headers getarg.h and roken.h installed in /usr/include. % cd /usr/src/kerberos5/lib/libroken % make depend make-roken > roken.h make-roken: not found *** [roken.h] Error code 127 Stop in /usr/src/kerberos5/lib/libroken. Ok. Let's try building make-roken. % cd /usr/src/kerberos5/tools/make-roken % make depend && make && make install Hooray, that worked. % cd /usr/src/kerberos5/lib/libroken % make depend Hooray, again. % make (boom) cc -O2 -pipe -march=opteron -I/usr/src/kerberos5/lib/libroken/../../../crypto/heimdal/lib/roken -I. -DHAVE_CONFIG_H -I/usr/src/kerberos5/lib/libroken/../../include -std=gnu99 -fstack-protector -c /usr/src/kerberos5/lib/libroken/../../../crypto/heimdal/lib/roken/copyhostent.c -o copyhostent.o /usr/src/kerberos5/lib/libroken/../../../crypto/heimdal/lib/roken/copyhostent.c:42: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'struct' *** [copyhostent.o] Error code 1 Stop in /usr/src/kerberos5/lib/libroken. :( % make clean && make depend % make && make install That worked! (Apparently, something in the previous buildworld made cc unhappy.) % cd /usr/src/usr.bin/compile_et % make (boom) cc -O2 -pipe -march=opteron -I. -I/usr/src/usr.bin/compile_et/../../contrib/com_err -std=gnu99 -fstack-protector -Wno-pointer-sign -o compile_et compile_et.o parse.o lex.o -lroken /usr/obj/usr/src/usr.bin/compile_et/../../kerberos5/lib/libvers/libvers.a cc: /usr/obj/usr/src/usr.bin/compile_et/../../kerberos5/lib/libvers/libvers.a: No such file or directory *** [compile_et] Error code 1 % cd /usr/src/kerberos5/lib/libvers % make depend && make && make install Ok. % cd /usr/src/usr.bin/compile_et % make clean && make depend && make && make install % cd /usr/src % make buildenv Entering world for amd64:amd64 # which compile_et /usr/bin/compile_et # exit Whoops. That can't be right. % make -DNO_CLEAN buildworld and buildworld seems to be back on-track. -- SteveReceived on Tue Jan 15 2013 - 22:35:31 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:34 UTC