Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Jul 2000 14:42:31 -0700
From:      Marcel Moolenaar <marcel@cup.hp.com>
To:        Andreas Klemm <andreas@klemm.gtn.com>
Cc:        freebsd-stable@FreeBSD.ORG
Subject:   Re: how to update from FreeBSD 2.2.8 to RELENG_4
Message-ID:  <396E37C7.2720BB80@cup.hp.com>
References:  <20000713091845.A2997@titan.klemm.gtn.com> <396E020E.D959D41E@cup.hp.com> <20000713201100.A5192@titan.klemm.gtn.com> <396E12A9.9767CC6F@cup.hp.com> <20000713230410.A3158@titan.klemm.gtn.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Andreas Klemm wrote:
> 
> On Thu, Jul 13, 2000 at 12:04:09PM -0700, Marcel Moolenaar wrote:
> > reply your other mail at the same time]) and do a buildworld. It will
> > probably fail early. When you see a failure, identify it. If we have a
> > fix, restart the build and watch it fail or complete. It might be a
> > time-consuming task...
> 
> First experiences with FreeBSD 2.2.7 RELEASE and -current sources of today:
> 
> 1. USA_RESIDENT has to be set to YES or NO
> 2. when building the
>         >>> stage 1: bootstrap tools
>    the compilation stops very early in gperf ...
>    do you have an idea what might needed here ?
> 
> --- new.o ---
> c++ -I/usr/obj/i386/usr/src/ibm-pc/usr/include/g++ -O -pipe   -I/usr/obj/i386/usr/src/ibm-pc/usr/include -I/usr/src/gnu/usr.bin/gperf/../../../contrib/gperf/lib -I/usr/src/gnu/usr.bin/gperf -c /usr/src/gnu/usr.bin/gperf/../../../contrib/gperf/src/new.cc
> /usr/src/gnu/usr.bin/gperf/../../../contrib/gperf/src/new.cc:80: warning: `catch', `throw', and `try' are all C++ reserved words
> /usr/src/gnu/usr.bin/gperf/../../../contrib/gperf/src/new.cc: In function `void operator delete(void *)':
> /usr/src/gnu/usr.bin/gperf/../../../contrib/gperf/src/new.cc:82: declaration of `operator delete(void *)' throws different exceptions...
> <internal>:82: ...from previous declaration here
> *** Error code 1

This looks like a compiler problem. IIRC, the GNU C++ we had for a long
time was not that good for C++ (bootstrap-tools are build with the
compiler installed on the system). I looks like C++ programs will be a
problem. I didn't know we had any C++ sources in the bootstrap phase.

Can someone enlighten me why we have gperf in the bootstrap-tools phase?

The solution here is to either remove gperf from the bootstrap-tools
phase, but I assume it's there for a reason, so that probably won't be
possible or, otherwise, we need to add gcc itself to the bootstrap-tools
phase, hoping of course that gcc will compile (gcc has some
dependencies, which means that we have to add other tools as well). The
latter implies that we're building gcc 3 times during a buildworld:
bootstrap-tools (for compatibility reasons), cross-tools (for
cross-building) and for the normal target build. For non cross-builds we
can probably optimize this...

-- 
Marcel Moolenaar
  mail: marcel@cup.hp.com / marcel@FreeBSD.org
  tel:  (408) 447-4222


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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?396E37C7.2720BB80>