Lists Home |
Date Index |
Dear XML-DEV list.
I am posting this message to you about a sore point
in the GPL : Linkage.
XML has brought in a way to represent data in such a
way that it undermines the way that the GPL contract
is written :
XML can be used to replace the linker.
XML-RPC and Soap are just two ways to invoke remotely.
Currently I am using a patched version of the GNU C
Compiler that streams the XML into a perl script via a
PIPE using POPEN.
This causes all types of problems with the GPL and I
just wanted to bring that up here and see if you have
anything to say.
Following is my message to the GCC mailling list.
--- James Michael DuPont <email@example.com> wrote:
> From James Michael DuPont Thu Feb 28 02:21:14 2002
> Date: Thu, 28 Feb 2002 02:21:14 -0800 (PST)
> From: James Michael DuPont <firstname.lastname@example.org>
> Subject: Linkage of GPLed GCC to Closed Source via
> XML or Perl
> To: email@example.com
> Dear GCC Developers,
> For the past three years, I have been working on a
> project to create a object oriented interface to the
> GCC compiler, the GCC Node Introspector
> This turned from a c++ into a Perl project after
> realising the power of Perl for handling strings and
> complex data structures.
> Currently I am using a modified version of c-dump.c
> like done in CPPX
> output the tree nodes into a XML form that is very
> similar to the tree dump, just with xml syntax.
> is streamed into a Perl program via popen and
> to a Postgres database.
> Also the number of tools that link into perl are
> The linkage of Perl is permissive, but I think that
> the linking of programs can to GPL code can be very
> tricky, and full of problems as a detailed review of
> the GPL and LGPL can point out.
> In this article :
> >> CL: Would you give us an example of cultural
> >>Larry Wall: Ten years ago or so, we had Richard
> Stallman's GPL, and Perl was licensed under that.
> I discovered
> >> that that worked fine for the hacker community,
> the geeks, but it prevented Perl from being used in
> >> commercial environment. So I wrote my own
> But I didn't want to offend the free software, the
> >> people.
> >>So, rather than switching licenses, I said "Well,
> let's have both licenses and you may distribute Perl
> under >>either of them at the same time." And that
> way, the computer crowd, they had their insurance
> their rights >>would not be taken away, and the
> companies had some insurances that their rights
> not be taken away, and >>everyone was happy. That's
> sort of cultural hack that I'm talking about.
> Does that mean that via perl a company can create a
> close-source gcc backend?
> Without external representation via XML?
> Let us review the the GPL and its implications for
> linking to Perl :
> Lets look at the GPL :
> >This General Public License does not permit
> incorporating your program into proprietary
> >If your program is a subroutine library, you may
> consider it more useful to permit linking
> >applications with the library.
> >If this is what you want to do, use the GNU Library
> General Public License instead of this License.
> My GPL Comment:
> incorporating is a term that implies to me
> If I write a proprietary program that uses the
> of the GPL Code is that containment?
> If I open the a pipe to another program, and call
> functions in it using data from a GPL program, is
> not what a linker does, but via a different method?
> Lets look at the LGPL 2.1
> > We use this license for certain libraries in order
> to permit linking those libraries into non-free
> > When a program is linked with a library, whether
> statically or using a shared library, the
> of the two is legally speaking a combined work, a
> derivative of the original library.
> >The ordinary General Public License therefore
> such linking only if the entire combination fits its
> criteria of freedom.
> > The Lesser General Public License permits more lax
> criteria for linking other code with the library.
> LGPL Comment :
> Now this does not cover linking via RPC/IPC or
> Memory or File.
> Let alone CORBA or XML-RPC/SOAP.
> This comes done to the definition of linking, is
> linking only with the linker, or is linking a method
> of passing data between function calls?
> Can I call a GPLed Function in GIMP via a perl
> webpage, but I cannot link to it?
> LGPL part 2 :
> >14. If you wish to incorporate parts of the Library
> into other free programs whose distribution
> are >incompatible with these, write to the author to
> ask for permission. For software which is
> by the Free Software Foundation, write to the Free
> Software Foundation; we sometimes make exceptions
> >Our decision will be guided by the two goals of
> preserving the free status of all derivatives of our
> free software and of promoting the sharing and reuse
> of software generally.
> LGPL Comment part 2 :
> "distribution conditions are incompatible with
> Does that cover PAL which gives you more freedom?
> Can I link via Perl and all of a sudden, there is no
> more GPL?
> By these terms, would every Perl script which links
> with GPLed GIMP via script would require such
> permission to be asked?
> The perl script is called from an apache server,
> across all types of close-source maybe even patented
> software sitting on routers and switches, and then
> gets displayed in a microsoft browser, only to call
> draw on some graphic card.
> As you can see, the network has changed the meaning
> linking. Perl has changed it as well.
> Also see the discussion of this subject on perl
> James Michael DuPont
> James Michael DuPont
> Do You Yahoo!?
> Yahoo! Greetings - Send FREE e-cards for every
James Michael DuPont
Do You Yahoo!?
Yahoo! Greetings - Send FREE e-cards for every occasion!