On 05/ 2/12 07:23 PM, Glenn Fowler wrote:
On Wed, 2 May 2012 18:25:25 +0100 Edwin Beasant wrote:
Hello there to all members!
As you may or may not be aware, after the Oracle acquisition of Sun,
many things changed, and I have ended up dealing extensively with ksh93 on
Solaris 11.
This used to be part of the more internal OS/network consolidation of code, but
recently i have moved it to the more third-party-friendly Userland code
consolidation. This code consolidation does things a little bit differently to
ON, with the result that it is much easier to work with and contribute to the
open-source community:
We have, over time, amassed a number of bug fixes for the 2011 release
of ast-base, some of which have been addressed in the 2012 release of the
ast-base package. I would like to be able to contribute any that you may
consider useful for integration into the codebase, if that is at all possible.
all patches and bug fixes are welcome
especially the ones that have been redacted since the oracle transition
I'll send them in, with the bug description: I'll leave out the ones
that have been fixed in the 2012 release?
I would also like to ask if it would be possible to get some pointers
for porting the ast-base package more properly to compile in 64 bit mode under
Solaris 11: Solaris 11 no longer boots a 32 bit kernel, and although it can
easily run the 32-bit version, a matching 64 bit version would be more elegant
and simpler to maintain long term - It would probably need a compiler wrapper
similar to the sgi platform to correctly compile with the Studio compiler, and
as a starter, I would love to know how I would set about integrating one to the
INIT package and the appropriate probes?
have you tried to build it using a cc that defaults to 64 bit objects?
we try to coax the right thing out of cc without wrappers
if it didn't work where did it fall short?
I believe its a combination of things:
uname on solaris doesn't cleanly distinguish between 64 bit and 32 bit
architectures:
x86:
ebeasant@dellboy:~$ uname -a
SunOS dellboy 5.11 11.1 i86pc i386 i86pc
-bash-4.1$ uname -a
SunOS grinah 5.11 11.1 sun4v sparc sun4v
Additionally, bitness has to be explicitly specified to the compiler
with -32 or -64 as appropriate (default 32, yes, that probably needs
fixing ;-)
if that doesn't work to your satisfaction a cc wrapper is probably the way to go
first make sure
bin/package
lists an appropriate ast hosttype
probably something like
sol11.i386-64
bin/package uses cc along with uname to determine the hosttype
(ast hosttypes do not get as detailed as say gcc host identifiers)
Thats where I think we get the issues (see above)...
x86:
# bin/package
sol11.i386
sparc:
# bin/package
sol11.sun4
So, I'm not entirely certain exactly how it can determine its
64-bit-ness, except by explicitly specifying it to bin/package as a
HOSTTYPE?
then create a wrapper script
src/cmd/INIT/cc.sol11.i386-64
use one of the other cc.* wrappers as a starting point
in general they use ancient sh constructs to avoid portability problems
I think the SGI wrapper is closest to what I really needed, but I was
having trouble getting it triggered with an explicitly specified
HOSTTYPE: I'll pull the latest source package and give it a whirl again?
We're interested in supporting ksh93 (primarily) and the ast-base
package in general, and indeed it is our default scripting shell under Solaris
11 :-)
the more heavy users the better
thanks
Believe me, its getting serious punishment ;-)
Thanks for the swift replies,
Cheers,
Edwin
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers