[Top][All Lists]

[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 
> >         
> >         
> >         _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 
-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)

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

*** Test died (features/patternrules): Can't locate in @INC (@INC 
contains: /usr/lib/perl-5.005/lib/5.00503/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 before the vendor make would accept the Makefile.  :-)


reply via email to

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