> > bash-4.4# export DESTDIR=/dest; export RELEASEDIR=/export/releasedir > > bash-4.4# cd /usr/src/etc && make release > > sh /usr/src/sys/conf/newvers.sh > > touch: version: Permission denied > > /usr/src/sys/conf/newvers.sh[84]: cannot create version: Permission denied > > *** Error 1 in /usr/src/sys/arch/amd64/compile/GENERIC.MP (Makefile:897 > > 'vers.o') > > *** Error 1 in . (Makefile:20 'bsd.mp') > > *** Error 1 in . (Makefile:267 'release-sets') > > *** Error 1 in . (Makefile:260 'do-release') > > *** Error 1 in /usr/src/etc (Makefile:244 'release') > > This indicates permission problems below /usr/obj (nothing to do with > noperm).
I'm still travelling, so I can't test myself, but my suspicion is that you haven't started 'make build' with an empty /usr/obj, as release(8) indicates (note that building a kernel creates the /usr/obj/sys tree). The build process will place the object files in a tree under /usr/obj. This directory should be empty and owned by build:wobj with mode 770. ^^^^^^^^^^^^^^^ This is not strictly needed after the first successful 'make release' (as the kernel obj/vers* files will have permissions at least 660), but the first time around it is necessary, unfortunately (unless you built the kernel with umask 007). > What is the output of > > # ls -al /usr/obj /usr/obj/sys/arch/amd64/compile/{,GENERIC.MP/vers*} I'd still be interested in seeing the output of this for anyone who ran into this problem.