3 ms·
Isn't that true? A compiler's output does include many portions which include creative effort of the compiler writers. Licenses for compilers thereby explicit
by alok-g 10y ago
Isn't that true? A compiler's output does include many portions which include creative effort of the compiler writers. Licenses for compilers thereby explicitly include a clause on giving up that ownership over the output of the compiler. In other words, the line of reasoning has always been true; perhaps you were unaware like most people who never actually read the license text.
- vertex-four 10y agoGCC does not have such a clause. What it does have is a clause allowing a small library - the GCC Runtime Library - to be linked to and included in its output, provided certain conditions are met. The library is separate from the compiler input and not a result of it - it contains some core functions involving things like exception handling, arithmetic on some architectures, etc. It's held to be self-evident that compiler output that is a direct result of compiler input does not come under the license of the compiler.
- macmac 10y agoThis just to point out that it is considered self-evident in respect of GCC. This is based on how GCC works specifically, not compilers in general. There are certainly compilers/transpilers etc. and similar kinds of software out there where it is not self evident that the output is not a derivative of the tool, and some where the output very clearly is.
- bonzini 10y agoGCC does not, but Autoconf and Bison for example do. GCC's templates are a handful of instructions long (at most) and are subject to plenty of transformations before they end up in assembly code; Autoconf and Bison literally copy hundreds of lines of code verbatim. You need a license that is separate from the GPL to use that output in a non-GPL-compatible derivative work.
- vertex-four 10y agoThat makes sense - if autoconf source is closer to a set of instructions "please include library functions A, E and G in this order" than C source, it's obvious that each function is under copyright and so the output would come under the terms of the license covering those functions.