> > 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.

Reply via email to