Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Oct 1998 12:00:45 -0700
From:      Mike Smith <mike@smith.net.au>
To:        Brett Glass <brett@lariat.org>
Cc:        Mike Smith <mike@smith.net.au>, hackers@FreeBSD.ORG
Subject:   Re: Producing non-GPLed tools for FreeBSD 
Message-ID:  <199810191900.MAA00611@dingo.cdrom.com>
In-Reply-To: Your message of "Mon, 19 Oct 1998 10:11:23 MDT." <4.1.19981019100241.0677ace0@mail.lariat.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
> At 11:37 PM 10/18/98 -0700, Mike Smith wrote:
>  
> >As has been mentioned previously, the ELF object format is copiously
> >described by the ELF documentation, sources for which have been posted 
> >here several times. 
> 
> Unfortunately, I'm not a full-time subscriber to "hackers," so I
> haven't seen them. Could you send a pointer or two off-list?

As Warner suggested, check on Sunsite.  I'm pretty sure that's where it 
was claimed to be.

> >> Unfortunately, when I looked for the source in the 3.0-current tree, I
> >> discovered, to my horror, that both programs were in the /src/gnu
> >> subdirectory. This creates a problem. Technically, if I use GPLed source, I
> >> must GPL the resulting product. And both as(1) and ld(1) are GPLed.
> >
> >Binutils uses libbfd, which unfortunately is licensed under the GPL, 
> >not the LGPL.
> 
> What sorts of routines does libbfd contain? (I'm intentionally not
> looking at stuff until I can determine that I won't be "contaminated"
> by doing so.)

libbfd is the binary file descriptor library; it contains primitives 
for reading and writing the various file formats that binutils 
supports.  as, ld and ar all use it for manipulating their files.

> >> Thus, without descriptions of the output formats that do not require me to
> >> read the source code, I can't produce tools that I am 100% sure can be
> >> licensed under the Berkeley license and/or sold as commercial products.
> >
> >Since such documentation exists, you're safe here.  You can also 
> >consult with the relevant experts, who can give you uninfected advice.
> 
> That would be useful. What about the intermediate formats, though? In
> order to link statically with library files or third party code, I'll
> need to be able to deal with the object format.

ELF objects are documented int the ELF documentation.

> >If you obtain this 
> >specification without looking at the code (eg. by conversing with 
> >someone else who has done the work) then you're almost certainly clean 
> >(this is the standrd 'clean room' methodology).
> 
> That's what I'd like to do. Better still, it'd be nice if there were
> some docs.... Even Microsoft documents things like its object format
> and register models! That's why I was so startled to find out that there 
> was no way to get this information for FreeBSD without reading GPLed code.

I suspect that Cygnus may have some documentation on the behaviour of 
GCC on the i386.  You would have to talk to them about that.

-- 
\\  Sometimes you're ahead,       \\  Mike Smith
\\  sometimes you're behind.      \\  mike@smith.net.au
\\  The race is long, and in the  \\  msmith@freebsd.org
\\  end it's only with yourself.  \\  msmith@cdrom.com



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



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