Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 May 2002 13:59:53 +0300
From:      Ruslan Ermilov <ru@FreeBSD.org>
To:        "David O'Brien" <obrien@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src Makefile.inc1 src/gnu/lib Makefile src/gnu/usr.bin Makefile src/gnu/usr.bin/cc Makefile
Message-ID:  <20020517105953.GC75925@sunbay.com>
In-Reply-To: <20020516115207.B67791@dragon.nuxi.com>
References:  <200205151629.g4FGTj062213@freefall.freebsd.org> <20020515150513.A14077@dragon.nuxi.com> <20020516055741.GA26715@sunbay.com> <20020516014650.A41621@dragon.nuxi.com> <20020516103848.GA65503@sunbay.com> <20020516115207.B67791@dragon.nuxi.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--pAwQNkOnpTn9IO2O
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, May 16, 2002 at 11:52:07AM -0700, David O'Brien wrote:
> On Thu, May 16, 2002 at 01:38:48PM +0300, Ruslan Ermilov wrote:
> > > Yes I did look at the diffs.  What C++ compiler do we have that is na=
med=20
> > > "c++" other than the system one?  Certainly none of the GCC ports I
> > >=20
> > Obviously I just added _more_ variants for the external C++ compiler.
>=20
> Tell me which compiler?  I don't want "in theory", I want "real world".
>=20
> 1. You are backing out my changeds from only 5 days ago w/o asking me to
>    explain them. =20
>   =20
> 2. The bit you show as an example is only part of your change.  You
>    totally backed out some of my changes:
>=20
>    +# $FreeBSD: /c/ncvs/src/Makefile.inc1,v 1.277 2002/05/15 16:29:44 ru =
Exp $
>    -.if ${CXX} =3D=3D "c++"
>    -NO_CXX=3D        yes
>    -.endif
>=20
>    +# $FreeBSD: /c/ncvs/src/gnu/lib/Makefile,v 1.37 2002/05/15 16:29:45 r=
u Exp $
>    -.if ${CXX:T} =3D=3D "c++"
>    -NO_CXX=3D        yes
>    -.endif
>=20
>    +# $FreeBSD: /c/ncvs/src/gnu/usr.bin/cc/Makefile,v 1.30 2002/05/15 16:=
29:45 ru Exp $
>    [you removed c++, c++filt, and doc from the build]
>    =20
>=20
> I do not think you understand the issues here.  Since discussing things
> is now dangerous as hell around here.  I am going to simply ask core to
> have you back out your commit under "Big List of Rules" #6.
>=20
If anyone really listens to this, we're currently working with -core on
resolving the issue.

> > > > in a normal bootstrapping sequence no special hacks are necessary.
> > >=20
> > > Gperf is written in C++.  If you have no system C++ compiler and CXX =
is
> > > set to its stock value; how are you going to build gperf?  We experie=
nce
> > > this in the Sparc64 world where we never had a 2.95 system compiler.
> >=20
> > If that's the case, you want to cross-compile the sparc64 world (or only
> > gperf) using say i386 version of the sparc64 cross-compiler. =20
>=20
> How is that going to help??  A C++ support libraries that does not exist
> on the i386 or sparc64 natively, will some how pop out of the build?
>=20
They _do_ exist on 4.x.  A 4.x i386 host can build "gperf" that can later
be used to build cc1plus for sparc64.

> > I fail to
> > see how the check of whether "gperf" is in the PATH (the check is as
> > simple as for kldxref(8) in sys/modules/Makefile) helps you to proceed.
>=20
> Because if gperf is not in the path, cc1plus should not be built.
> I could just disconnect cc1plus from the build, but then it could
> atrophy.
>=20
Fine, then it would be logical to use the same test in cc/Makefile as
in Makefile.inc1.  Specifically:

%%%
Index: Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /home/ncvs/src/gnu/usr.bin/cc/Makefile,v
retrieving revision 1.32
diff -u -r1.32 Makefile
--- Makefile	17 May 2002 05:41:47 -0000	1.32
+++ Makefile	17 May 2002 08:44:49 -0000
@@ -10,7 +10,10 @@
 .endif
=20
 .if !defined(NO_CXX)
-SUBDIR+=3D cc1plus c++ c++filt
+.if ${CXX} !=3D "c++"		# gperf is not built by Makefile.inc1
+SUBDIR+=3D cc1plus
+.endif
+SUBDIR+=3D c++ c++filt
 .if !defined(NO_COLLECT2)
 #SUBDIR+=3D collect2
 .endif
%%%

> > "Cross compiling is next step to porting", to quote Terry.
>=20
> We are *ALREADY* self hosting.  On your i386 box "rm /usr/bin/gperf",
> remove any CXX settings you have; and try to build world.
>=20
This will now break buildworld, as you have requested me to back out
gnu/usr.bin/cc/Makefile,v 1.30 changes.  :-)


Cheers,
--=20
Ruslan Ermilov		Sysadmin and DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

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

--pAwQNkOnpTn9IO2O
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (FreeBSD)

iD8DBQE85OKpUkv4P6juNwoRAiEAAKCD7Feunztehbq0KMFQN1vMyOUvrgCfYDtT
5HupuRkHss5//2s5VovqOQk=
=7rYw
-----END PGP SIGNATURE-----

--pAwQNkOnpTn9IO2O--

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?20020517105953.GC75925>