Subject: Re: pkgsrc/bootstrap/bootstrap (solaris ABI 64)
To: None <jschauma@netmeister.org>
From: Gilles Dauphin <Gilles.Dauphin@enst.fr>
List: tech-pkg
Date: 11/24/2006 16:47:07
> From: Jan Schaumann <jschauma@netmeister.org>
> 
> Hubert Feyrer <hubert@feyrer.de> wrote:
> > On Wed, 22 Nov 2006, Gilles Dauphin wrote:
> > >What is the problem?
> > 
> > It usually helps to explain what the idea behind the patch is - what is 
> > the problem, how does it manifest, etc.
> 
> Also, if you have already submitted this patch, please include a pointer
> to the PR and previous discussion.

I did not, was a discus with Joerg in teck-pkg and private mail some month ago.

> 
> Looking at your patch, I notice that you use
> 
> ${CC:-gcc} -E - -dM
> 
> Does Solaris's native compiler accept "-E - -dM"?

Yes and no !!! here is a correct line (gcc and sunpro) to detect 
what kind of binary your compiler make. (32 or 64?)

lp64_def=`${CC:-gcc} -E - -dM -# </dev/null 2>&1 | egrep '__sparcv9|__x86_64__'`

(see previous mail in teck-pkg and gcc wrapper part in this mail)

> Also, do we already have the necessary other bits to make use of ABI=64
> on Solaris in mk/* ?  Or would stuff break due to how libraries are
> searched for if ABI is set?
> 

Yes we need the use of ABI=64 because of Solaris Xwindows libs and maybe other lib's path.
I don't patch mk/... but,
I patch  pkgtools/x11-links/openwin.mk:

diff -r pkgtools//x11-links/openwin.mk ../../cvshead/pkgsrc/pkgtools//x11-links/openwin.mk
5,13d4
< .if ${OS_VERSION} == "5.10"
<   FILES_LIST=     ${FILESDIR}/openwin.510.common
< .  if defined(ABI) && ${ABI} == "64"
<      FILES_LIST+=     ${FILESDIR}/openwin.510.64
< .  else
<      FILES_LIST+=     ${FILESDIR}/openwin.510.32
< .  endif
< .endif
< 
28,32d18
<               lib/64/*)                                               \
<                       dest=`echo $$dest | ${SED} -e 's/\/64\//\//'` ; \
<                       ${LN} -s $$src $$dest;                          \
<                       file=`echo $$file | ${SED} -e 's/\/64\//\//'` ; \
<                       ;;  

I need also to remember also all the work i did...

Gilles