DJJP coff

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
Astrid

DJJP coff

Post by Astrid »

I'm intend to use coff for my binaries.
I get the coff data structures from Delorie.
It will be a copyright problem if I use them in a header file?
AR

Re:DJJP coff

Post by AR »

If you copy and paste the code then you are subject to the DJGPP licence which is probably GPL as GCC is. If your code is GPL then there isn't a problem, if it isn't then you'll have to create your own implementation.
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re:DJJP coff

Post by Solar »

From DJGPP/includes/coff.h:
/* Copyright (C) 2003 DJ Delorie, see COPYING.DJ for details */
From DJGPP/copying.dj:
Source code copyright DJ Delorie is distributed under the terms of the GNU General Public Licence, with the following exceptions:
  • Sources used to build crt0.o, gcrt0.o, libc.a, libdbg.a, and libemu.a are distributed under the terms of the GNU Library General Public License, rather than the GNU GPL.
  • Any existing copyright or authorship information in any given source file must remain intact. If you modify a source file, a notice to that effect must be added to the authorship information in the source file.
  • Runtime binaries, as provided by DJ in DJGPP, may be distributed without sources ONLY if the recipient is given sufficient information to obtain a copy of djgpp themselves. This primarily applies to go32-v2.exe, emu387.dxe, and stubedit.exe.
  • Runtime objects and libraries, as provided by DJ in DJGPP, when linked into an application, may be distributed without sources ONLY if the recipient is given sufficient information to obtain a copy of djgpp themselves. This primarily applies to crt0.o and libc.a.
That means you're basically stuck with the GPL - which is great if you want your OS to be GPL, which is s****y if you don't.

You can, of course, take the information on the COFF structures from the DJGPP sources, and implement your own includes. You stand a fair chance of not getting into troubles that way, but me not being a lawyer I won't give you any guarantees on that.
Every good solution is obvious once you've found it.
Post Reply