Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Dec 1998 12:02:41 -0800 (PST)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG
Subject:   Re: cvs commit: src Makefile.inc1
Message-ID:  <199812212002.MAA47149@apollo.backplane.com>
References:   <199812211533.CAA13838@godzilla.zeta.org.au>

next in thread | previous in thread | raw e-mail | index | archive | help
:>  Modified files:
:>    .                    Makefile.inc1 
:>  Log:
:>      Elf (and a.out?) rebuild of bootstrap tools appeared to be broken due to
:>      some tools requiring header files, such as errno.h, that are softlinks.
:>      The mini installation of include files in Makefile.inc1 wasn't doing
:>      the job, so it has been ripped out and replaced with a true make of the
:>      /usr/src/include/ directory (make all and make beforeinstall).  I think
:>      the original idea was to save time by not installing unnecessary header
:>      files, but it doesn't really save all that much time.
:
:The original idea was to make the bootstrap actually work -- `make all'
:can't be run in src/include because relevant tools like rpcgen haven't
:been built yet.

    I don't think a complete bootstrap would work anyway... we already depend
    on the compiler and various utilities being properly installed prior to 
    the tools build :-)  rpcgen hasn't changed in ages, it's probably *more*
    stable then gcc right now.

:The problem seems to be that cpio creates bogus links and there aren't
:enough fixups.  The correct fix may be to back out the large but
:incomplete fixups in rev.1.185-1.186 of src/Makefile.  I've never used
:it, and the mtree breakage that inspired it (following symlinks) seems
:to be fixed in another way (nochange directives in BSD.usr.dist).

    The problem is not cpio, it's the fact that it's trying to duplicate 
    the tree from /usr/src/include and that tree is missing a huge number of
    header files which are copied or softlinked in /usr/src/include's Makefile.

:>      Also, I have moved a NOCLEAN conditional to cover rebuilding the object
:>      tree 'Rebuilding the ${OBJFORMAT} obj tree' section.  This may or may not
:>      be correct but it appears to function properly.  If it is not correct we
:>      need to find another way to avoid scanning every single file in the
:>      entire source hierarchy for make restarts.
:
:This is not correct.  It breaks the initial build of the obj tree (if NOCLEAN
:is set initially).
:
:Bruce

    Hmm.. you can actually run the initial buildworld with -DNOCELAN set ?
    I suppose we can add a new -D directive.  In fact, it would be nice if
    we could also avoid rebuilding the tools every time we try to start up
    a make from where it died but that is less critical (it doesn't take very
    much time to rebuild the tools).

    How about a NOREBUILD directive to replace the NOCLEAN extension I did.
    Any objections?  NOREBUILD would automatically set NOCLEAN and NOTOOLS
    as well as surpress the rebuilding of the object tree.

						-Matt

    Matthew Dillon  Engineering, HiWay Technologies, Inc. & BEST Internet 
                    Communications & God knows what else.
    <dillon@backplane.com> (Please include original email in any response)    

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812212002.MAA47149>