public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: Propose PR 6160 as high priority
@ 2002-04-08 14:41 Richard Kenner
  2002-04-15 11:04 ` Brad Lucier
  0 siblings, 1 reply; 16+ messages in thread
From: Richard Kenner @ 2002-04-08 14:41 UTC (permalink / raw)
  To: lucier; +Cc: gcc

    But I'd like an answer to one question:  Is the version of gnatgcc and
    gnatbind installed on this system recent enough to build the 3.1 ada
    compiler correctly?  Here is some version information I sent to Florian
    in response to his request:

    dino01% gnatbind -v /dev/null

    GNATBIND 5.00w (20010924) Copyright 1995-2001 Free Software Foundation, Inc

Those Ada sources should be *recent* enough, but "GNAT 5" means a GNAT build
with GCC 3 and I don't remember if the sources of that date work well
enough to bootstrap.  You are supposed to use 3.14 or 3.15.

    If it should be able to compile 3.1 ada, then I might agree that it's
    misinstalled; if it's not, then the ada configure should not attempt the
    build, whether or not it's "misinstalled".

Well the error you got had nothing to do with whether the version is recent
enough: you got a mismatch error saying that your gnat1 and gnatbind were
inconsistent.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-08 14:41 Propose PR 6160 as high priority Richard Kenner
@ 2002-04-15 11:04 ` Brad Lucier
  0 siblings, 0 replies; 16+ messages in thread
From: Brad Lucier @ 2002-04-15 11:04 UTC (permalink / raw)
  To: Richard Kenner; +Cc: lucier, gcc

> 
>     But I'd like an answer to one question:  Is the version of gnatgcc and
>     gnatbind installed on this system recent enough to build the 3.1 ada
>     compiler correctly?  Here is some version information I sent to Florian
>     in response to his request:
> 
>     dino01% gnatbind -v /dev/null
> 
>     GNATBIND 5.00w (20010924) Copyright 1995-2001 Free Software Foundation, Inc
> 
> Those Ada sources should be *recent* enough, but "GNAT 5" means a GNAT build
> with GCC 3 and I don't remember if the sources of that date work well
> enough to bootstrap.  You are supposed to use 3.14 or 3.15.

OK, so I understand from your reply that the answer is "yes, no, and maybe".

It seems that there are two ways one can go:

1.  The gcc bootstrap way---write the code so it can be compiled by "any"
    "reasonable" compiler to build a first-pass compiler, then use that to
    bootstrap.

2.  The ada way---require certain compilers for the build to work.

But in 2, you should test whether the compiler you find will work.  And
the ada configure doesn't do that.

Brad

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-29  5:39       ` Florian Weimer
@ 2002-04-29  6:50         ` Joseph S. Myers
  0 siblings, 0 replies; 16+ messages in thread
From: Joseph S. Myers @ 2002-04-29  6:50 UTC (permalink / raw)
  To: Florian Weimer; +Cc: gcc

On Mon, 29 Apr 2002, Florian Weimer wrote:

> Shall I write a sed script which extracts the version identifier?

gcc_AC_CHECK_PROG_VER takes a regexp to extract the version number and a
shell case glob that matches acceptable versions - but it doesn't seem to
make the actual version numbers available for the rest of configure.  
Perhaps you could improve it to put the extracted version number in a
shell variable as well, then add checks that the Ada compiler and gnatbind
are at least 3.13, and that the versions are the same.

The minimum that ought to be done for 3.1 is a simple version check on
$ADAC.

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-28 22:27     ` Alexandre Oliva
@ 2002-04-29  5:39       ` Florian Weimer
  2002-04-29  6:50         ` Joseph S. Myers
  0 siblings, 1 reply; 16+ messages in thread
From: Florian Weimer @ 2002-04-29  5:39 UTC (permalink / raw)
  To: Alexandre Oliva; +Cc: Joseph S. Myers, Robert Dewar, kenner, lucier, gcc

Alexandre Oliva <aoliva@redhat.com> writes:

>> In order to detect such situations reliably, configure would have to
>> build a test program---not by invoking gnatmake, but using the
>> run-time library that ships the with the GCC sources.
>
> Couldn't it just test that gnatgcc and gnatbind have the same version
> identifiers?  (assuming such version identifiers exist)

Such identifiers do exist, but there doesn't seem to be an easy way to
extract them:

"gnatgcc -x ada -gnatv /dev/null" yields:

| 
| GNAT 3.14p (20010503) Copyright 1992-2001 Free Software Foundation, Inc.
| gnat1: Cannot find: null

"gnatbind -v /dev/null" yields:

| 
| GNATBIND 3.14p (20010503) Copyright 1995-2001 Free Software Foundation, Inc.
| 
| Binding: null.ali
| gnatbind: Cannot find: null.ali

Shall I write a sed script which extracts the version identifier?
Shall it include the date?

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-16 15:04   ` Florian Weimer
@ 2002-04-28 22:27     ` Alexandre Oliva
  2002-04-29  5:39       ` Florian Weimer
  0 siblings, 1 reply; 16+ messages in thread
From: Alexandre Oliva @ 2002-04-28 22:27 UTC (permalink / raw)
  To: Florian Weimer; +Cc: Joseph S. Myers, Robert Dewar, kenner, lucier, gcc

On Apr 16, 2002, Florian Weimer <fw@deneb.enyo.de> wrote:

> PR 6160 is the result of an incoherent build system (gnatgcc is
> present, but gnatbind does not match it).

> In order to detect such situations reliably, configure would have to
> build a test program---not by invoking gnatmake, but using the
> run-time library that ships the with the GCC sources.

Couldn't it just test that gnatgcc and gnatbind have the same version
identifiers?  (assuming such version identifiers exist)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist                Professional serial bug killer

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-15 13:27 ` Joseph S. Myers
@ 2002-04-16 15:04   ` Florian Weimer
  2002-04-28 22:27     ` Alexandre Oliva
  0 siblings, 1 reply; 16+ messages in thread
From: Florian Weimer @ 2002-04-16 15:04 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: Robert Dewar, kenner, lucier, gcc

"Joseph S. Myers" <jsm28@cam.ac.uk> writes:

>> Not clear what test would accomplish this.
>
> At least there should be a version check, that the version of GNAT is
> sufficiently recent (>= 3.13), so that the build doesn't fail on systems 
> (such as Debian stable) with 3.12 or older versions installed.

PR 6160 is the result of an incoherent build system (gnatgcc is
present, but gnatbind does not match it).

In order to detect such situations reliably, configure would have to
build a test program---not by invoking gnatmake, but using the
run-time library that ships the with the GCC sources.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
@ 2002-04-15 13:43 Robert Dewar
  0 siblings, 0 replies; 16+ messages in thread
From: Robert Dewar @ 2002-04-15 13:43 UTC (permalink / raw)
  To: dewar, jsm28; +Cc: gcc, kenner, lucier

yes we could check the version number easily enough.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-15 12:31 Robert Dewar
@ 2002-04-15 13:27 ` Joseph S. Myers
  2002-04-16 15:04   ` Florian Weimer
  0 siblings, 1 reply; 16+ messages in thread
From: Joseph S. Myers @ 2002-04-15 13:27 UTC (permalink / raw)
  To: Robert Dewar; +Cc: kenner, lucier, gcc

On Mon, 15 Apr 2002, Robert Dewar wrote:

> > But in 2, you should test whether the compiler you find will work.  And
> > the ada configure doesn't do that.
> 
> Not clear what test would accomplish this.

At least there should be a version check, that the version of GNAT is
sufficiently recent (>= 3.13), so that the build doesn't fail on systems 
(such as Debian stable) with 3.12 or older versions installed.

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
@ 2002-04-15 12:31 Robert Dewar
  2002-04-15 13:27 ` Joseph S. Myers
  0 siblings, 1 reply; 16+ messages in thread
From: Robert Dewar @ 2002-04-15 12:31 UTC (permalink / raw)
  To: kenner, lucier; +Cc: gcc

> But in 2, you should test whether the compiler you find will work.  And
> the ada configure doesn't do that.

Not clear what test would accomplish this.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
@ 2002-04-15 11:27 Richard Kenner
  0 siblings, 0 replies; 16+ messages in thread
From: Richard Kenner @ 2002-04-15 11:27 UTC (permalink / raw)
  To: lucier; +Cc: gcc

    1.  The gcc bootstrap way---write the code so it can be compiled by "any"
        "reasonable" compiler to build a first-pass compiler, then use that to
        bootstrap.

That's not the issue in your case.  From the error message you report,
you have an inconsistent version of GNAT installed.  The gnat1 and gnatbind
are from different versions.  That can't work.

    But in 2, you should test whether the compiler you find will work.
    And the ada configure doesn't do that.

As I said before, the requirements for a user program being properly built
are neither necessary nor sufficient for the compiler to build.

I'd still like to remove the "gnatgcc" stuff.  It seems to be causing
nothing but trouble and I suspect is what your problem is.  Most
likely the Ada compiler you get from "gcc" will work fine and is
consistent with the gnatbind you have.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
@ 2002-04-08 14:45 Richard Kenner
  0 siblings, 0 replies; 16+ messages in thread
From: Richard Kenner @ 2002-04-08 14:45 UTC (permalink / raw)
  To: lucier; +Cc: gcc

    dino01% gnatgcc --verbose -x ada /dev/null

    Reading specs from /usr/lib/gcc-lib//i386-redhat-linux/2.8.1/specs

This looks *very* suspicious: this is a 2.8.1-based GCC, but your GNATBIND
acts like it was built from a 3.1-based GCC.  So it's not surprising they
might be incompatible.

I think the real problem here is that configure should only try GNAT as "gcc",
not "gnatgcc".  None of the versions of GNAT distributed by ACT (either
public or customer versions) have ever called themselves "gnatgcc".  I have
no idea whether or not whoever put together those versions have tested
them by bootstrapping GNAT sources.

I was against allowing "gnatgcc" originally but was outvoted.  I again think
we should eliminate that option: all it seems to do is cause problems.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-08 14:31 Richard Kenner
@ 2002-04-08 14:36 ` Brad Lucier
  0 siblings, 0 replies; 16+ messages in thread
From: Brad Lucier @ 2002-04-08 14:36 UTC (permalink / raw)
  To: Richard Kenner; +Cc: lucier, gcc

> 
>     That works for me.  But *something* should be done before release.
> 
> I don't understand the issue here.  The error message in that PR is
> clear: the build was attempted with a version of GNAT that seems to
> have been mis-installed since it was producing ALI files that the
> corresponding gnatbind can't read.
> 
> It is neither practical nor necessarily desirable to test for every possible
> way in which the GNAT installed on a system might be broken.  We could
> have configure actually build and run an Ada program, but that's not necessary
> to bootstrap GNAT since it uses lots of things that aren't needed to build
> GNAT and it's not sufficient since it doesn't test the ability to properly
> link both C and Ada.

I'm in no position to argue the technical merits one way or the other.

But I'd like an answer to one question:  Is the version of gnatgcc and
gnatbind installed on this system recent enough to build the 3.1 ada
compiler correctly?  Here is some version information I sent to Florian
in response to his request:

dino01% gnatbind -v /dev/null

GNATBIND 5.00w (20010924) Copyright 1995-2001 Free Software Foundation, Inc.

Binding: null.ali
gnatbind: Cannot find: null.ali
dino01% gnatgcc --verbose -x ada /dev/null
Reading specs from /usr/lib/gcc-lib//i386-redhat-linux/2.8.1/specs
gcc version 2.8.1
 /usr/lib/gcc-lib//i386-redhat-linux/2.8.1/gnat1 -quiet -dumpbase null.ada /dev/
null -o /tmp/cc1tXseL.s
gnat1: Cannot find: null

If it should be able to compile 3.1 ada, then I might agree that it's
misinstalled; if it's not, then the ada configure should not attempt the
build, whether or not it's "misinstalled".

Brad

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
@ 2002-04-08 14:31 Richard Kenner
  2002-04-08 14:36 ` Brad Lucier
  0 siblings, 1 reply; 16+ messages in thread
From: Richard Kenner @ 2002-04-08 14:31 UTC (permalink / raw)
  To: lucier; +Cc: gcc

    That works for me.  But *something* should be done before release.

I don't understand the issue here.  The error message in that PR is
clear: the build was attempted with a version of GNAT that seems to
have been mis-installed since it was producing ALI files that the
corresponding gnatbind can't read.

It is neither practical nor necessarily desirable to test for every possible
way in which the GNAT installed on a system might be broken.  We could
have configure actually build and run an Ada program, but that's not necessary
to bootstrap GNAT since it uses lots of things that aren't needed to build
GNAT and it's not sufficient since it doesn't test the ability to properly
link both C and Ada.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-08 13:55 ` Richard Henderson
@ 2002-04-08 14:15   ` Brad Lucier
  0 siblings, 0 replies; 16+ messages in thread
From: Brad Lucier @ 2002-04-08 14:15 UTC (permalink / raw)
  To: Richard Henderson; +Cc: lucier, gcc

> 
> On Fri, Apr 05, 2002 at 02:01:25PM -0500, lucier@math.purdue.edu wrote:
> > In my opinion, PR 6160 is serious enough to cause a 3.1 release delay.
> 
> In my opinion, this shouldn't hold up the release.  Instead
> we simply disable Ada by default.

That works for me.  But *something* should be done before release.

Brad

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Propose PR 6160 as high priority
  2002-04-05 11:23 lucier
@ 2002-04-08 13:55 ` Richard Henderson
  2002-04-08 14:15   ` Brad Lucier
  0 siblings, 1 reply; 16+ messages in thread
From: Richard Henderson @ 2002-04-08 13:55 UTC (permalink / raw)
  To: lucier; +Cc: gcc

On Fri, Apr 05, 2002 at 02:01:25PM -0500, lucier@math.purdue.edu wrote:
> In my opinion, PR 6160 is serious enough to cause a 3.1 release delay.

In my opinion, this shouldn't hold up the release.  Instead
we simply disable Ada by default.


r~

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Propose PR 6160 as high priority
@ 2002-04-05 11:23 lucier
  2002-04-08 13:55 ` Richard Henderson
  0 siblings, 1 reply; 16+ messages in thread
From: lucier @ 2002-04-05 11:23 UTC (permalink / raw)
  To: gcc; +Cc: lucier

In my opinion, PR 6160 is serious enough to cause a 3.1 release delay.
It means, for example, that one cannot drop gcc 3.1 into any GNU/Linux
distribution with an old version of gnatcc and have it bootstrap with

<sourcedir>/configure --prefix=... ; make bootstrap

(Florian Weimer and I exchanged some e-mails about this; he may not
agree with my analysis, but I haven't seen any proof yet that it's wrong.)

I don't think a distribution can go out that won't bootstrap without changing
--enable-languages on a large subset of free software systems.

Brad Lucier

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2002-04-29 13:48 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-08 14:41 Propose PR 6160 as high priority Richard Kenner
2002-04-15 11:04 ` Brad Lucier
  -- strict thread matches above, loose matches on Subject: below --
2002-04-15 13:43 Robert Dewar
2002-04-15 12:31 Robert Dewar
2002-04-15 13:27 ` Joseph S. Myers
2002-04-16 15:04   ` Florian Weimer
2002-04-28 22:27     ` Alexandre Oliva
2002-04-29  5:39       ` Florian Weimer
2002-04-29  6:50         ` Joseph S. Myers
2002-04-15 11:27 Richard Kenner
2002-04-08 14:45 Richard Kenner
2002-04-08 14:31 Richard Kenner
2002-04-08 14:36 ` Brad Lucier
2002-04-05 11:23 lucier
2002-04-08 13:55 ` Richard Henderson
2002-04-08 14:15   ` Brad Lucier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).