autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Question on Tru64 compiler options


From: Ralf Wildenhues
Subject: Re: Question on Tru64 compiler options
Date: Tue, 11 Aug 2009 20:01:26 +0200
User-agent: Mutt/1.5.20 (2009-08-09)

Hello Paul,

* Paul Smith wrote on Tue, Aug 11, 2009 at 03:06:39PM CEST:
> > Hi all; I have a bug filed with GNU make that says:
> > 
> >         Building GNU Make on Tru64 requires 
> >         
> >         CPPFLAGS = -D_XOPEN_SOURCE_EXTENDED -D_OSF_SOURCE 
> >         
> >         _XOPEN* is needed to get the prototype for bsd_signal(), and
> >         _OSF* to typedef u_long and friends, which is used in some
> >         system headers pulled in by getloadavg.c (and without said
> >         typedefs, the build breaks when compiling that file). I've
> >         confirmed that neither of these flags is made redundant by the
> >         other. 
> >         
> >         Please make a note of this in the documentation, or add
> >         appropriate logic to the configure script. I was able to
> >         determine the need for these flags, but other users might not.
> > 
> > Of these options of course I'd prefer to do something in autoconf that
> > would do this automatically.  Does anyone have any ideas on this, short
> > of checking the host/os explicitly?
> > 
> > I already have an AC_CHECK_FUNCS() for bsd_signal but I guess this isn't
> > good enough to get the prototype?
> > 
> > I'm not sure what the deal is with u_long; I certainly don't use it
> > myself so I can only assume there's an error in the Tru64 headers that
> > needs to be worked around somehow...?

> Anyone have any thoughts on this?

Not really.  Recent Autoconf has AC_USE_SYSTEM_EXTENSIONS which helps to
enable all those extensions that ought to be unproblematic to have in
parallel, but I don't think _OSF_SOURCE fits that category, and
_XOPEN_SOURCE_EXTENDED probably doesn't either.

Other than that, I've just successfully built the CVS version of GNU
make on Tru64 5.1, with a plain "configure -C", seeing a few warnings of
this kind but no other issues:

  source='../make/main.c' object='main.o' libtool=no  DEPDIR=.deps 
depmode=tru64 /bin/ksh ../make/config/depcomp  cc 
-DLOCALEDIR=\"/home/rwild/local/alphaev67-dec-osf5.1/share/locale\" 
-DLIBDIR=\"/home/rwild/local/alphaev67-dec-osf5.1/lib\" 
-DINCLUDEDIR=\"/home/rwild/local/alphaev67-dec-osf5.1/include\" -DHAVE_CONFIG_H 
-I. -I../make  -I../make/glob     -g -c ../make/main.c
  cc: Warning: ../make/main.c, line 987: In this statement, "bsd_signal(...)" 
of type "int", is being converted to "pointer to function (int) returning 
void". (cvtdiftypes)
    FATAL_SIG (SIGHUP);
  --^

The test suite passes, except for those tests that fail due to missing
Cwd.pm in the Perl installation, for example:

*** Test died (features/patternrules): Can't locate Cwd.pm in @INC (@INC 
contains: /usr/lib/perl-5.005/lib/5.00503/alpha-dec_osf 
/usr/lib/perl-5.005/lib/5.00503 
/usr/lib/perl-5.005/lib/site_perl/5.005/alpha-dec_osf 
/usr/lib/perl-5.005/lib/site_perl/5.005 .) at scripts/features/patternrules 
line 7.
BEGIN failed--compilation aborted at scripts/features/patternrules line 7.


Tru64 4.0D gives a similar experience, but completely passes with the
working Perl installation I used there.

Of course, I did have to remove the @MAINT_MAKEFILE@ line from
Makefile.in before the vendor make would accept the Makefile.  :-)

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]