A patch for g77spec.c

Jeffrey A Law law@cygnus.com
Sun Jun 21 22:29:00 GMT 1998


  In message < 199806220424.AAA26163@melange.gnu.org >you write:
  > >From the g77 documentation *in egcs*:
Then I would claim your documentation is in error as is your goal of
trying to provide version information for things external to the driver.

To get information about the backend and libraries you're going to
have to find another way.  What you're doing is simply wrong.

You could embed the strings you need, or find some way to run the
sub-tools *without* attempting to actually compile, assemble and
link code.



  > End of search list.
  >  ./f771 -fnull-version -quiet -dumpbase g77-version.f -version @dots{}
  > GNU F77 version @value{version-gcc} (alpha-linux) compiled @dots{}
  > GNU Fortran Front End version @value{version-g77}
  >  as -nocpp -o /tmp/cca14485.o /tmp/cca14485.s
  >  ld -m elf64alpha -G 8 -O1 -dynamic-linker /lib/ld-linux.so.2 @dots{}
  >  /tmp/cca14485
Note that you're trying to perform a link.  This is *bad, bad bad*.
It is 100% wrong.

  > In short, that info *is* obtained, by, as you put it, "running the
  > backend...and other crud".  Dunno about running collect2 -- because
  > I don't know whether that's an issue for g77.
It's an issue.

  > Yes, but installers shouldn't be required to first write a Fortran
  > program; and, further, that info won't include the library version
  > info that `g77 -v' does from an installed g77.
Then you'll have to embed the strings into the g77 driver or find some
other way to run the tools, but make absolutely sure they they do nothing
except print version information.  I believe that is impossible since
you don't have control over the assembler & linker for example.


  > I believe, in every case, I've sent email to gcc2 explaining the need
  > for more version info, support for --help, etc., and gotten little or
  > no constructive response.  But that doesn't mean we didn't put the
  > appropriate facilities in g77 to make things work.
Well, you're getting responses now.  What you're trying to do is wrong.
 
jef



More information about the Gcc-patches mailing list