Page 1 of 1

Is the GNU Multiboot header GPL code?

Posted: Thu Dec 22, 2016 10:17 am
by Primis
Title says most of it, I want to use it, but my code isn't GPL. Curious if anyone knows the answer.

Re: Is the GNU Multiboot header GPL code?

Posted: Thu Dec 22, 2016 10:23 am
by ~
No, if you implement it is your code implementing a standard for being able to work, just like Linux implemented UNIX with its own code.

Re: Is the GNU Multiboot header GPL code?

Posted: Thu Dec 22, 2016 10:27 am
by klange
Did you read it? The header has the following MIT-style license at the top.

Code: Select all

     /* multiboot.h - Multiboot header file. */
     /* Copyright (C) 1999,2003,2007,2008,2009  Free Software Foundation, Inc.
      *
      *  Permission is hereby granted, free of charge, to any person obtaining a copy
      *  of this software and associated documentation files (the "Software"), to
      *  deal in the Software without restriction, including without limitation the
      *  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
      *  sell copies of the Software, and to permit persons to whom the Software is
      *  furnished to do so, subject to the following conditions:
      *
      *  The above copyright notice and this permission notice shall be included in
      *  all copies or substantial portions of the Software.
      *
      *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
      *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
      *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL ANY
      *  DEVELOPER OR DISTRIBUTOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
      *  WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
      *  IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
      */


You can also write your own compatible header - the layout of the structs themselves is not subject to the same copyright rules.

Re: Is the GNU Multiboot header GPL code?

Posted: Thu Dec 22, 2016 10:54 am
by Schol-R-LEA
I know this has already been stated, but I think that it could use some clarification.

There are actually two different questions hidden inside the OP's question, because it relates to two separate things: the MultiBoot standard specification, and the particular implementation that they happen to be looking at.

The specification itself (in any of its versions) is an open standard, and the specification document (that is, the actual document in which the standard is laid out) is not under any particular license. Some specification documents, such as the ISO standards, are copyrighted or under some form of license, but that license only applies to the document itself - programs implementing the standard are not enjoined to that license, though the people who write the implementations might be liable for violating those licenses in some other ways (for example, using an internal spec that is a trade secret which was obtained through illegal means, or failing to uphold an NDA license about the contents of a licensed specification). None of that applies here, so your use of the MB spec is not encumbered in any way (AFAICT, IANAL).

The question of the specific implementation you were looking at has already been answered by Klange - it is under an MIT style license, not a GNU GPL license. However, even if it were encumbered in some manner, you don't have any real need to use that particular implementation - you can write your own version of the header based on the specification, without any need to use or reference the GNU implementation.