Bug 226053

Summary: sysutils/pcbsd-utils parallel build failure + chown failures when building as !root
Product: Ports & Packages Reporter: Don Lewis <truckman>
Component: Individual Port(s)Assignee: Kris Moore <kmoore>
Status: New ---    
Severity: Affects Only Me Flags: bugzilla: maintainer-feedback? (kmoore)
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   

Description Don Lewis freebsd_committer 2018-02-20 00:02:45 UTC
I attempted to do a parallel build of pcbsd-utils and observed this failure:

--- pc-krbconf.o ---
--- krb5-lexer.lex.c ---
--- krb5-parser.tab.c ---
--- pc-krbconf.o ---
cc -O2 -pipe  -fstack-protector -fno-strict-aliasing   -I. -I/wrkdirs/usr/ports/sysutils/pcbsd-utils/work/pcbsd-3c4d2b/src-sh/pcbsd-utils/pc-adct
l/pc-krbconf -MD  -MF.depend.pc-krbconf.o -MTpc-krbconf.o -std=gnu99 -fstack-protector-strong    -Qunused-arguments  -c pc-krbconf.c -o pc-krbcon
f.o
pc-krbconf.c:10:10: fatal error: 'krb5-parser.tab.h' file not found
#include "krb5-parser.tab.h"
         ^~~~~~~~~~~~~~~~~~~
1 error generated.
*** [pc-krbconf.o] Error code 1

make[3]: stopped in /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/pcbsd-3c4d2b/src-sh/pcbsd-utils/pc-adctl/pc-krbconf
--- krb5-lexer.lex.c ---
lex  -okrb5-lexer.lex.c krb5-lexer.l
--- krb5-parser.tab.c ---
yacc -okrb5-parser.tab.c -d krb5-parser.y
yacc: 1 rule never reduced
yacc: 10 shift/reduce conflicts, 4 reduce/reduce conflicts.
1 error

make[3]: stopped in /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/pcbsd-3c4d2b/src-sh/pcbsd-utils/pc-adctl/pc-krbconf


It is attempting to use a .h file generated by yacc before running yacc to generate the .h file.  Either the source Makefile should be patched to add the necessary dependency so that make runs the commands in the necessary order, or the MAKE_JOBS_UNSAFE=yes should be added to the port Makefile to force a single threaded build.

Also poudriere builds ports as the user nobody by default.  That causes these errors when building pcbsd-utils:

x ./bin/enable-tor-mode
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/.: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./bin: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./bin/restamp-grub: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./bin/disable-tor-mode: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./bin/enable-tor-mode: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/iso-mirror: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/pbi-mirror: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/smb4.conf: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/freebsd-update.conf: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/loader.conf.pcbsd: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/update-mirror: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/rc.conf.pcbsd: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/torrc: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/pcbsd-mirrors: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/pkg-mirror: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/loader.conf.trueos: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/conf/ntpd.conf: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/scripts: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/scripts/mkzfsdir.sh: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/scripts/sys-init.sh: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/scripts/rmzfsdir.sh: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/scripts/reset-firewall: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./share/pcbsd/scripts/reset-firewall-tor: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./etc: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./etc/fonts: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./etc/fonts/local.conf: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./etc/sudoers.d: Operation not permitted
chown: /wrkdirs/usr/ports/sysutils/pcbsd-utils/work/stage/usr/local/./etc/sudoers.d/pcbsd: Operation not permitted
cp -f install.sh install
chmod a+x install

Changing file ownership should be done using the knobs available in pkg-plist.