Razvan,
You're somewhat misinterpreting the GPL license. Using binutils as a
dependency of LLVM does not require that they be linked into any
distributable that might contain proprietary code. They can be
shipped as separate, purely-GPL'd executables that are called via the
command line, thereby avoiding the whole "infection" problem.
This is, for instance, how Apple's developer tools can include a non-
open source IDE like XCode which can still invoke gas.
--Owen
On May 13, 2008, at 7:59 AM, Razvan Aciu wrote:
> Yes, you are right. During my testings, I tried the llvm produced .S
> files
> with the gcc frontend and it compiled and linked them to the final
> executable.
>
> The problem is with the gcc and binutils licence. This is GPL and
> while this
> is ok for open source or for academic purposes, it can't be used on
> commercial projects. In fact one of the strong points of llvm (and
> clang) is
> its BSD like license. To quote from (
> http://clang.llvm.org/features.html#enduser ):
>
> "We actively indend for clang (and a LLVM as a whole) to be used for
> commercial projects, and the BSD license is the simplest way to
> allow this.
> We feel that the license encourages contributors to pick up the
> source and
> work with it, and believe that those individuals and organizations
> will
> contribute back their work if they do not want to have to maintain a
> fork
> forever (which is time consuming and expensive when merges are
> involved).
> Further, nobody makes money on compilers these days, but many people
> need
> them to get bigger goals accomplished: it makes sense for everyone
> to work
> together."
>
> To design the native code generators of llvm to work only with
> software
> under much more restrictive licenses like GPL or the MASM license,
> means to
> throw away this goal and simply make llvm and clang only another
> open source
> project, not suitable for many commercial applications (the ones who
> can't
> use the JIT interpreter).
>
> There is also another licensing issue: there are some discussions
> what means
> for GPL "work based on project" or "work derived from
project". The
> tendency
> is that if an independent project fully depends for its work on a GPL
> project (like a code generator which only generates code for GAS) to
> be
> considered a "work based on project" or even "work derived
from
> project", so
> the intent is to also apply the GPL license to it, even this means
> lawsuits.
>
> Even if right now the need for a native code generator for a *free
> as llvm*
> assembler maybe is not really perceived, I think it will arise
> sharply when
> the clang will be production ready. In that respect, if someone can
> adapt
> the MASM templates to produce NASM directives (it is the only thing
> that
> needs to be changed), these updates will be more than welcome.
>
> Razvan
>
>
> ----- Original Message -----
> From: "Anton Korobeynikov" <asl at math.spbu.ru>
> To: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu>
> Sent: Tuesday, May 13, 2008 8:19 AM
> Subject: Re: [LLVMdev] win32 assemblers and linkers for llvm
>
>
>>> There's also then entire GNU toolchain, through MinGW and/or
Cygwin.
>> Which works perfectly right now without any extra tweaking :)
>>
>> --
>> With best regards, Anton Korobeynikov.
>>
>> Faculty of Mathematics & Mechanics, Saint Petersburg State
>> University.
>>
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4260 bytes
Desc: not available
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20080513/dc934c92/attachment.bin>