Warning: long post.  Here's a short synopsis:

 o You do not have to licence your code under the GPL unless you 
   intend to distribute it as a package that includes GPL'd code.

 o The GPL grants you the right to use and the code as you please.
   You can mix GPL'd libraries and non-GPL'd code in-house or in a
   bespoke application done as work for hire.  This is effectively
   the same situation as you are not releasing the software to third
   parties as a package that includes the GPL code (i.e you can 
   release code of your own and the client can obtain the GPL bits
   by themselves).  Typically you are not actually modifying the GPL
   libraries.

 o Most application development work is done in-house or as bespoke 
   for hire work .  Typically (at least in my experience) the client
   usually owns the IP rights for bespoke software.

 o Therefore, the GPL does not appreciably affect the relationship
   between most bespoke developers (and by implication the majority
   of developers oversll) and their clients as the software is
   not being distributed as a package that includes the GPL software

 o The GPL is problematic if (as the previous poster appears to be)
   you want to distribute a non-GPL application in a package with
   GPL'd libraries.  

 o I'm arguing that this happens with only a small minority of software 
   as most software (90%+ - see my previous posting) is written as 
   one-off custom apps where packaged distribution is not an issue.
   (note: embedded software is a seperate issue and I haven't gone into
   that here)



>>Nigel Campbell (DSL AK) wrote:
>> The GPL really only gets underfoot if you want to ship binary-
>> only packaged software derived from GPL'd code.
>
>No, the GPL means that if you link any non-GPL software to a GPL 
>piece of software then you need to license your non-GPL software 
>so it's not more restrictive than the GPL.

Nothing in the GPL prevents you from doing this in-house or as 
a contractor engaged in bespoke work, nor in fact in in any 
circumstances except those where you want to ship a packaged 
product that includes the GPL code in the package.  The one exception 
to this is where the non-GPL component has licence terms that 
prohibit it from being linked to GPL code (as in the case of MS's 
Mobile toolkit).

What you seem to be saying is that it doesn't work for *you* as 
you sell a software product you want to release under a non-GPL 
compatible licence.  It's reasonable to be pissed off with SAP 
for changing the licence of the perl libs you worked on in ways 
that cause you hassle.  That does not in any way conflict with 
what I said in my previous posting.


>That means that if a liberary, eg. the sapdb client lib is 
>being linked to a non-GPL application then you are in violation of 
>the license if you do not distribute the source for your application 
>to your customers.

Again, this is germane to the case where you are shipping a shrink-
wrap application as a product.  If the work is a bespoke product,
the conditions of distribution are somewhat different anyway.

What I'm saying is that the GPL is not usually a hardship for 
people doing bespoke work.  If you're getting a client to pay for
development of a (say) vertical-market product that you want to
go on to sell as a product, you're really in the packaged soft-
ware game anyway.

Most bespoke softare is quite specific to a client, so they have
no particular reason to on-sell or otherwise redistribute the
software.  In the company I work for (a large solution provider
in the NZ market), it's standard procedure that the client owns 
the IP rights for the software.  This is very common (although 
not universal) practice in this market.  In this case, the GPL 
does not materially affect the relationship as the client is free 
to do what they want with the software anyway.  

If you want to do something in-house, redistribution doesn't even 
come into it and the GPL merely grants you the right to use and/or
modify the software as you please.

In the cases where the client is uncomfortable with the GPL, they 
can just buy a non-free licence anyway.  MySQL (and presumably the
upcoming MySQL-branded SAP-DB product) cost peanuts in comparison
to an even moderately-sized bespoke development job.  

In the case where the software needs to be linked to non-GPL 
components, the client merely needs to licence those components
seperately (which they probably need to do anyway).  The GPL
doesn't prevent you from linking GPL code to non-GPL components
in-house, to quote the GPL section 0:

    Activities other than copying, distribution and modification 
    are not covered by this License; they are outside its scope. 
    The act of running the Program is not restricted, and the output 
    from the Program is covered only if its contents constitute a 
    work based on the Program (independent of having been made by 
    running the Program). Whether that is true depends on what the 
    Program does. 

... and section 2:
    These requirements apply to the modified work as a whole. If 
    identifiable sections of that work are not derived from the 
    Program, and can be reasonably considered independent and 
    separate works in themselves, then this License, and its terms, 
    do not apply to those sections when you distribute them as 
    separate works. But when you distribute the same sections as 
    part of a whole which is a work based on the Program, the 
    distribution of the whole must be on the terms of this License, 
    whose permissions for other licensees extend to the entire whole, 
    and thus to each and every part regardless of who wrote it. 

What this is saying is that merely linking to libraries does not 
require your work to be GPL'd unless you wish to distribute the 
GPL'd components as a part of a package.  It is a considerable 
stretch to claim that a seperately distributed (say) web shopfront 
program is in fact a modified version of a database interface library.  
If a client can obtain the database manager and the web shopfront as 
distinct bodies of code, they can mix and match to their heart's 
delight.  

I'm arguing that most development work is done on one-off jobs and
the GPL usually does not change the relationship in this sort of
work unless for some reason you want to restrict the client from
redistributing some portion of the work.  There are some cases where
you might want this for bespoke work, but I would expect them to be
in a minority.  

Nigel.
_______________________________________________
sapdb.general mailing list
[EMAIL PROTECTED]
http://listserv.sap.com/mailman/listinfo/sapdb.general

Reply via email to