Hi,
I recently encounter the following problem by using bsd.prog.mk in a
Makefile (from a directory totally unrelated to /usr/src tree):
$ cd /tmp/test
$ ls
Makefile test.c
$ cat Makefile
PROG= test
.include <bsd.prog.mk>
$ make obj
making /tmp/test/obj
chown: /tmp/test/obj: Operation not permitted
*** Error 1 in /tmp/test (<bsd.obj.mk>:63 'obj': @cd /tmp/test; umask 007;
here=`/bin/pwd`; bsdsrcdir=`cd /usr/src; /bin/pwd`; subdir=${h...)
I do some testing by adding "set -x" to bsd.obj.mk.
$ make obj
+ cd /tmp/test
+ umask 007
+ /bin/pwd
+ here=/tmp/test
+ cd /usr/src
+ /bin/pwd
+ bsdsrcdir=/home/semarie/repos/openbsd/src
+ subdir=/tmp/test
+ id -u
+ SETOWNER=chown :wobj
+ MKDIRS=mkdir -p
+ test /tmp/test != /tmp/test
+ true
+ dest=/tmp/test/obj
+ test ! -d obj
+ echo making /tmp/test/obj
making /tmp/test/obj
+ mkdir -p /tmp/test/obj
+ chown :wobj /tmp/test/obj
chown: /tmp/test/obj: Operation not permitted
*** Error 1 in /tmp/test (<bsd.obj.mk>:63 'obj': @set -x; cd /tmp/test; umask
007; here=`/bin/pwd`; bsdsrcdir=`cd /usr/src; /bin/pwd`; su...)
The chown(1) error is due to my user (semarie) isn't member of wobj group
(I only use snapshot on this host for upgrading).
This requirement for a build outside /usr/src seems a bit odd to me.
Do I miss something ?
Thanks.
--
Sebastien Marie