Hi!

I always thought that ``obj'', ``all'' and ``install'' should be
executed in sequence, not together.  Hey, this even does not work
for bin/cat:

$ uname -a
FreeBSD dev.lan.Awfulhak.org 5.0-CURRENT FreeBSD 5.0-CURRENT #7: Wed Apr 18 14:07:56 
BST 2001     [EMAIL PROTECTED]:/usr/obj/usr/src/sys/DEV  i386
$ make obj
/usr/obj/net/gate/home/ru/cat created for /net/gate/home/ru/cat
$ make -j32 all install -DNOMAN DESTDIR=/tmp/1 BINDIR=/bin BINOWN=ru
cc -O -pipe    -I/tmp/1/usr/include -c /net/gate/home/ru/cat/cat.c
install -c -s -o ru -g wheel -m 555   cat /tmp/1/bin
install: cat: No such file or directory
*** Error code 71
1 error
$ make -j32 all install -DNOMAN DESTDIR=/tmp/1 BINDIR=/bin BINOWN=ru
install -c -s -o ru -g wheel -m 555   cat /tmp/1/bin
install: cat: No such file or directory
*** Error code 71
cc -O -pipe    -I/tmp/1/usr/include  -o cat cat.o
1 error
$ make -j32 all install -DNOMAN DESTDIR=/tmp/1 BINDIR=/bin BINOWN=ru
install -c -s -o ru -g wheel -m 555   cat /tmp/1/bin
$

OTOH, this seems like a bug in make(1), as the following patch makes
-j32 bootstrap-tools happy in gnu/usr.bin/groff/tmac:

Index: Makefile
===================================================================
RCS file: /home/ncvs/src/gnu/usr.bin/groff/tmac/Makefile,v
retrieving revision 1.27
diff -u -r1.27 Makefile
--- Makefile    2001/04/17 12:37:18     1.27
+++ Makefile    2001/04/19 08:01:52
@@ -58,6 +58,7 @@
        cd ${.CURDIR}; \
            ${INSTALL} ${COPY} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
            hyphen.us-ru ${DESTDIR}${TMACDIR}
+       cd ${.OBJDIR}
 .for f in ${STRIPFILES} ${SPECIALFILES}
        ${INSTALL} ${COPY} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
            $f-s ${DESTDIR}${TMACDIR}/$f

On Thu, Apr 19, 2001 at 10:22:08AM +0700, [EMAIL PROTECTED] wrote:
> In <[EMAIL PROTECTED]> Steve Kargl wrote:
>       ........
> > install -C -c -s -o root -g wheel -m 555   tfmtodit /usr/obj/usr/src/i386/usr/bin
> > ===> tmac
> > install -C -c -o root -g wheel -m 444  e.tmac-s 
>/usr/obj/usr/src/i386/usr/share/tmac/e.tmac
> > install: e.tmac-s: No such file or directory
> > *** Error code 71
> > 1 error
> > 
> > A standard "make buildworld" appears to work.
> > 
> > troutmask:kargl[351] grep FreeBSD /usr/src/Makefile.inc1
> > # $FreeBSD: src/Makefile.inc1,v 1.197 2001/04/18 12:20:28 ru Exp $
> 
>       The next patch allows me to 'make -j32 all install' in
> 'src/gnu/usr.bin/groff/tmac'.
> 
>       N.Dudorov
> 
> Index: Makefile
> ===================================================================
> RCS file: /scratch/CVS/src/gnu/usr.bin/groff/tmac/Makefile,v
> retrieving revision 1.27
> diff -b -u -r1.27 Makefile
> --- Makefile  2001/04/17 12:37:18     1.27
> +++ Makefile  2001/04/19 03:14:14
> @@ -37,7 +37,7 @@
>  STRIPFILES=  e.tmac doc.tmac mdoc.local
>  MDOCFILES=   doc-common doc-ditroff doc-nroff doc-syms koi8-r
>  
> -all: ${MDOCFILES:S/$/-s/} ${STRIPFILES:S/$/-s/} ${SPECIALFILES:S/$/-s/}
> +all: ${MDOCFILES:S/$/-s/} ${STRIPFILES:S/$/-s/} ${SPECIALFILES:S/$/-s/} ${MAN}
>  
>  .for f in ${MDOCFILES} ${STRIPFILES}
>  $f-s: $f
> @@ -51,6 +51,8 @@
>               ${.ALLSRC} > ${.TARGET}
>  .endfor
>  
> +.ORDER: all beforeinstall
> +
>  beforeinstall:
>       cd ${DIST_DIR}; \
>           ${INSTALL} -c -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
> @@ -59,14 +61,17 @@
>           ${INSTALL} ${COPY} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
>           hyphen.us-ru ${DESTDIR}${TMACDIR}
>  .for f in ${STRIPFILES} ${SPECIALFILES}
> +     cd ${.OBJDIR}; \
>       ${INSTALL} ${COPY} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
>           $f-s ${DESTDIR}${TMACDIR}/$f
>  .endfor
>  .for f in ${MDOCFILES}
> +     cd ${.OBJDIR}; \
>       ${INSTALL} ${COPY} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
>           $f-s ${DESTDIR}${MDOCDIR}/$f
>  .endfor
>  .if !exists(${DESTDIR}${TMACDIR}/man.local)
> +     cd ${.OBJDIR}; \
>       ${INSTALL} -c -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \
>           ${DIST_DIR}/man.local ${DESTDIR}${TMACDIR}
>  .endif
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message

-- 
Ruslan Ermilov          Oracle Developer/DBA,
[EMAIL PROTECTED]           Sunbay Software AG,
[EMAIL PROTECTED]          FreeBSD committer,
+380.652.512.251        Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to