|
Boost-Build : |
Subject: Re: [Boost-build] acc and address-model
From: Vladimir Prus (ghost_at_[hidden])
Date: 2009-03-31 15:31:21
On Tuesday 31 March 2009 23:26:29 Jim Gallagher wrote:
> >
> >Hi Jim,
> >
> >it's not very surprising -- I don't think any Boost.Build developer
> >uses acc daily, or even have access to it, so the only fixes that get
> >added are those where a user told what to do.
> >
>
> Volodya,
>
> I guess I was surprised because HP touts that they test aCC by building
> boost, and contribute back as appropriate. Either they are not testing 64
> bit builds, or they are not contributing back to boost-build as they should
> :-)
They might be testing in 32-bit mode, but I don't know any details.
> >While I was adding this I've noticed commented-out line to add -Z option
> >when building shared libraries. Do you happen to know if that option
> >is needed or desirable?
> >
> >- Volodya
> >
>
> I think the option is really +Z. This is required when compiling code for
> shared libraries on PA-RISC. I believe I was the one asking about this last
> year. PA-RISC is dying; HP no longer sells PA-RISC Unix boxes, only Itanium.
> Recent PA-RISC boxes leave HP's normal support window in 2013.
>
> Here is the excerpt from 'man aCC' on a PA-RISC box regarding +Z:
> +z,+Z Cause the compiler to generate position independent
> code (PIC) for use in building shared libraries. The
> option -G is ignored if used when generating PIC.
> Normally, +z should be used to generate PIC; however,
> when certain limits are exceeded, +Z is required to
> generate PIC. The linker ld(1) issues the error
> indicating when +Z is required. The default is +Z when
> +DA2.0W is specified. If both +z and +Z are specified,
> only the last one encountered applies. For a more
> complete discussion regarding PIC and these options,
> see HP-UX Linker and Libraries Online User's Guide and
> the manual Programming on HP-UX.
>
> I've never hit a snag using +Z instead of +z.
>
> The -Z option allows dereferencing of null pointers.
>
> aCC on Itanium does not support +Z. All objects appear to be PIC.
>
> One other thing that was a problem on PA-RISC with respect to boost-build is
> that shared libraries have a .sl extension, as opposed to .so. If I remember
> correctly, I hacked in support for the .sl extension, but we never exercised
> it.
>
> We have since moved to Itanium servers, so the +Z and .sl issues are
> probably moot.
Ok, less work for me. Just to clarify -- is PIC the default on Itanium? If
not, I guess we still have to add +Z
- Volodya
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk