Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Aug 1998 17:53:53 +1000 (EST)
From:      John Birrell  <jb@cimlogic.com.au>
To:        asami@FreeBSD.ORG (Satoshi Asami)
Cc:        jb@cimlogic.com.au, ports@FreeBSD.ORG, jdp@FreeBSD.ORG
Subject:   Re: ELF transition for ports (Re: rayshade port)
Message-ID:  <199808200753.RAA05170@cimlogic.com.au>
In-Reply-To: <199808200658.XAA04044@silvia.hip.berkeley.edu> from Satoshi Asami at "Aug 19, 98 11:58:21 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Satoshi Asami wrote:
> Oh, ok.  So E-day is actually when people decide to throw the switch
> on *their* system.

Yes.

>  * This should be done by the aout->elf transition procedure.
>                                         ^^^^^^^^^^^^^^^^^^^^
> You mean the first make world with OBJFORMAT=elf?

No. I mean when they `make aout_to_elf'. It's a special upgrade that
does two buildworlds. The first is aout to get known good tools; the second
uses the aout tools in the tmp tree to build the world in elf format.
Then an aout installworld puts all the aout things in place, followed
by an elf installworld which will over write common things. For people
upgrading from 2.2.5/6/7 there is also a kernel build because without
that they're hosed.

>  * Since 2.2.X must be supported on aout and 3.0-current might not have
>  * been converted to elf, it would be best if we could find a way of making
>  * bsd.port.mk (3.0 version) OBJFORMAT aware.
> 
> Ok.  I'm not sure what bsd.port.mk has to do, though.  It's the
> individual ports that need to be OBJFORMAT (not OSREL as I said
> before) aware.

I'm not convinced that is true. 8-) I have to prove myself right or
wrong.

>  * I'm hoping that most ports build their libraries in a normal way so
>  * that with OBJFORMAT=elf automatically setting the right tools, things
>  * will not need many changes.
> 
> If you mean "using bsd.lib.mk" by "normal way", I don't think many
> ports do that.  Remember, these are not our software, porters' jobs
> are to make minimal changes to the distributed version to adapt to our
> system.  Ripping out shared library support of the original software
> and swapping it with bsd.lib.mk was *not* the recommended way of
> porting (that kind of change are very unlikely to be accepted by the
> original author, and we'll have to keep patching over and over when
> new releases come out).

By "normal", I mean do they execute cc, ld, ar, etc without specifying
the path to the executable? If they just let the user's PATH find
/usr/bin/ld, for instance, the fact that /etc/objectformat contains
the line OBJFORMAT=elf will be enough to get /usr/libexec/elf/ld as
the linker automagically.

> For consumers of libraries, no, I don't think it's too different.  I'm
> worried about ports that generate libraries.  Speaking of which, is
> XFree86 ready for FreeBSD-elf?  (Will x11/XFree86 port build elf
> libraries and binaries if OBJFORMAT=elf? :)

I doubt that anyone has asked that. I'll try building their code
and see what's involved.

> That's sort of defeating the purpose, I'm afraid.  If we're going to
> go elf for the release, we should go all the way, including ports.
> Otherwise there's no need to do it in the first place.
> 
> If it breaks a lot of ports, maybe that will give people extra
> incentives to fix them. :)

Now if I said that, I'd get yelled at! 8-)

> 
> By the way, is 3.0R going to ship with a.out shared libraries too?

Yes. Otherwise we break too many third party programs that people haven't
got the sources to rebuild.

-- 
John Birrell - jb@cimlogic.com.au; jb@freebsd.org http://www.cimlogic.com.au/
CIMlogic Pty Ltd, GPO Box 117A, Melbourne Vic 3001, Australia +61 418 353 137

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199808200753.RAA05170>