Re: Buildworld /rescue failures in 5.1

From: Garance A Drosihn <drosih_at_rpi.edu>
Date: Wed, 23 Jul 2003 19:41:18 -0400
At 6:41 PM -0400 7/23/03, Garance A Drosihn wrote:
>Where that error is:
>
>make: don't know how to make 
>/usr/obj/usr/src/rescue/rescue//usr/src/sbin/dhclient/client/clparse.o. 
>Stop
>*** Error code 2
>1 error
>*** Error code 2
>1 error

Well, that isn't always the error message, but it's always
something similar to that.

Now that it takes me only a few minutes to test things, I
think I'm making some kind of headway.  I redid the making
of rescue with '-j2', and got the error

make: don't know how to make 
/usr/obj/usr/src/rescue/rescue//usr/src/gnu/usr.bin/tar/addext.o. Stop

I then compared the files in the directory
    /usr/obj/usr/src/.../usr.bin/tar
between the attempt which worked, and the attempt which failed.
The attempt which worked had a '.depend' file which did not
exist in the attempt which failed.

Ie, make trying to build addext.o before the .depend file has
shown up for anything in 'tar'.  In the attempt which works,
that .depend file includes:

addext.o: /usr/src/contrib/tar/lib/addext.c \
   /usr/src/gnu/usr.bin/tar/config.h /usr/include/paths.h \
   /usr/include/sys/cdefs.h /usr/include/limits.h \
   /usr/include/sys/limits.h /usr/include/machine/_limits.h \
   /usr/include/sys/syslimits.h /usr/include/sys/types.h \
   /usr/include/machine/endian.h /usr/include/sys/_types.h \
   /usr/include/machine/_types.h /usr/include/sys/select.h \
   /usr/include/sys/_sigset.h /usr/include/sys/_timeval.h \
   /usr/include/sys/timespec.h /usr/include/string.h \
   /usr/include/strings.h /usr/include/unistd.h /usr/include/sys/unistd.h \     
   /usr/include/errno.h /usr/src/contrib/tar/lib/backupfile.h \
   /usr/src/contrib/tar/lib/dirname.h

So it is easy to image that this .depend file is crucial to
successfully making addext.o.

The .depend file is apparently created by
     /usr/obj/usr/src/rescue/rescue/rescue.mk

and that in turn says it is generated from rescue.conf
by crunchgen 0.2.  The rescue.mk file includes the rule:

tar_make:
         (cd $(tar_SRCDIR) && \
                 $(MAKE) $(BUILDOPTS) $(tar_OPTS) depend &&\
                 $(MAKE) $(BUILDOPTS) $(tar_OPTS) $(tar_OBJS))

and my guess is that construct is not '-j' safe.

I have no idea how to fix that, or even if I'm on the right
track, but perhaps the above will be useful to someone who
understands parallel makes more than I do...

-- 
Garance Alistair Drosehn            =   gad_at_gilead.netel.rpi.edu
Senior Systems Programmer           or  gad_at_freebsd.org
Rensselaer Polytechnic Institute    or  drosih_at_rpi.edu
Received on Wed Jul 23 2003 - 14:41:23 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:16 UTC