Date: Wed, 6 Jun 2001 09:23:27 -0700 From: "David O'Brien" <obrien@freebsd.org> To: Chris Casey <chriss@phys.ksu.edu> Cc: alpha@freebsd.org Subject: Re: ccc Message-ID: <20010606092327.C96129@dragon.nuxi.com> In-Reply-To: <Pine.SOL.3.96L.1010606104236.537E-100000@schottky.phys.ksu.edu>; from chriss@phys.ksu.edu on Wed, Jun 06, 2001 at 10:46:59AM -0500 References: <20010605170010.A95616@dragon.nuxi.com> <Pine.SOL.3.96L.1010606104236.537E-100000@schottky.phys.ksu.edu>
index | next in thread | previous in thread | raw e-mail
[ freebsd-alpha added as this may be of interest to others ]
On Wed, Jun 06, 2001 at 10:46:59AM -0500, Chris Casey wrote:
> I cleaned everything out, installed the ccc port which worked fine, then
> installed linux_devtools and it cought fire finding the includes etc in
> /compat/linux/. Removing the linux_devtools returns ccc to sanity. If you
> have time can you give me a overview of what the ccc port does to make it
> produce native binaries? I'm a bit tangled up in this mess. Thanks
Mainly I replaced the use of Linux cpp, gas and ld with our own. The ELF
file format is luckly quite standard and both Linux and FreeBSD follow
the ELF/SVR4 ABI suffiently close that the assembly output from `ccc'
could be fed into our assembler and linker which would DTRT and use
FreeBSD syscalls and ABI. Beyond that, Drew and I tweaked some headers,
and other minor stuff.
In the compaq-cc port's Makefile, you'll see that I moved the included
AlphaLinux cpp and ld off to the side, and put a symlinks in place to use
the FreeBDS versions of these tools (as was already pointing at
/usr/bin/as). Since `ccc' is a Linux binary, /compat/linux/{bin,usr/bin}
is searched first, before any FreeBSD paths. So either `ccc' is somehow
finding the `ld' or `cpp' in the [Linux] path, or there is a another tool
`ccc' uses that I need to replace(symlink) with the FreeBSD version.
BTW, if anyone has time to play with this, I would love for the port to
use PREFIX rather than install into /usr/lib.
--
-- David (obrien@FreeBSD.org)
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010606092327.C96129>
