forums.ps2dev.org Forum Index forums.ps2dev.org
Homebrew PS2, PSP & PS3 Development Discussions
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

AFL vs. GPL

 
Post new topic   Reply to topic    forums.ps2dev.org Forum Index -> General Discussion
View previous topic :: View next topic  
Author Message
mharris



Joined: 25 Jan 2004
Posts: 155
Location: Annapolis, MD, USA

PostPosted: Tue Mar 30, 2004 4:52 am    Post subject: AFL vs. GPL Reply with quote

I really don't want to start a religious war, but what is the problem with GPL code vs. AFL code? I've seen posted here on a couple of occasions "we can't accept that code because it's licensed under the GPL."

What are the main distinctions between the GPL and the AFL, and why is the AFL chosen over the GPL? I think I understand the GPL fairly well (for a non-lawyer, at least), but I'll admit to being pretty ignorant about the AFL.

Thanks for any enlightenment you can offer. And like I said, I don't want to upset anyone -- I know this is an issue people get all bothered about, my interest here is purely academic (hehe)....

mharris
Back to top
View user's profile Send private message AIM Address
Oobles
Site Admin


Joined: 17 Jan 2004
Posts: 362
Location: Melbourne, Australia

PostPosted: Tue Mar 30, 2004 6:28 pm    Post subject: Reply with quote

There is one very basic difference between GPL and AFL. GPL requires that any program that you link with the code must also be GPL and have the source code available. AFL allows commercial companies to use the code without providing their source code. AFL only requires that the usage of the code be credited in the distribution. AFL is considered the better written version of the BSD license.

As you can probably understand, AFL is chosen so that people can actually use libraries in their demos and are not required to release source code.

In my view GPL is useful for tools such as GCC which only the output is released and is not covered by a license and you want to encourage people to use the tool. I won't touch libraries released under GPL as it has the effect of requiring me to release my programs under GPL aswell.

As most people who have put projects in the CVS repository here know, I am very stuborn about having a license of some kind associated with all code. Choices are generally...

public domain: I give it away.. it's yours.
AFL/BSD: I/we retain copyright, but you can use it for whatever you want.
GPL: I/we retain copyright, and if you use it.. you have to release code.
Non-Commercial: I retain copyright.. and you can use it for non-commercial use only. Contact me and we can discuss commercial use.

Hope that helps.
Oobles.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger
mrbrown



Joined: 17 Jan 2004
Posts: 1536

PostPosted: Tue Mar 30, 2004 9:07 pm    Post subject: Reply with quote

Pretty much what Oobles said. In my opinion, the GPL places enough restrictions on the code where it's no longer Free or Open. Forcing someone to retain the same license that you use that requires them to publish their source code (whether or not they made any modifications to your code) is not my idea of Free. To me Open Source means giving your source away and retaining copyright, where the licensee has pretty much free reign of what they do with your code (having your cake and eating it too). If you don't want your code open, then use a proprietary license, or heaven forbid, the GPL.

The AFL is BSD with clearer legal text. It specifies the licensee's options in case there is a patent dispute, provides a clear disclaimer, and has the hotly-debated (in GPL-land at least) "no advertising" clause. For me, having my work attributed with the original copyright notice is the only "restriction" I'm willing to place on my work. Other than that, you are free to do whatever you want with the code.

I could go into a long rant about why I disagree with the GPL and the practices of those who enforce it, but there's plenty of that on the Web anyhow :). Let me just say, unlike Oobles, I don't think the GPL has a place in any tool or software, and I grow warier of the FSF's true intentions every time I see them strongarm a company using the GPL.

Cheers.
Back to top
View user's profile Send private message
Drakonite
Site Admin


Joined: 17 Jan 2004
Posts: 989

PostPosted: Wed Mar 31, 2004 3:57 am    Post subject: Reply with quote

Linking to a GPL'd library does not force your app to be GPL'd.
_________________
Shoot Pixels Not People!
Makeshift Development
Back to top
View user's profile Send private message Visit poster's website
pixel



Joined: 30 Jan 2004
Posts: 791

PostPosted: Wed Mar 31, 2004 4:17 am    Post subject: Reply with quote

Linking to a dynamical GPL library doesn't. Linking to a statical GPL library does. Linking to a statical LGPL library doesn't. As far as I know :-P
_________________
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
Back to top
View user's profile Send private message
misfire



Joined: 06 Sep 2004
Posts: 120
Location: Germany

PostPosted: Thu Jul 30, 2009 11:32 pm    Post subject: Reply with quote

Hi, I'm currently working on a PS2 project which is licensed under the GPL. Apart from the philosophical reasons, the ELF is statically linked to two LGPL libraries leaving me no other choice.

According to this list, GPL is incompatible with AFL which is the license used by the PS2SDK.

I don't know if this is a problem on the binary level (linking PS2SDK libraries), but on the source level it certainly is (I cannot incorporate any PS2SDK source code directly).

Please give me some legal advice. Does this really mean that I cannot use the PS2SDK for the project at all?


EDIT: This is giving me headache. How could you ever use the GPL-licensed PS2SDK ports when you're not allowed to link them to the AFL-licensed PS2SDK? Also, ps2link is violating the GPL by statically linking in ps2smap.irx.

Why doesn't PS2SDK use the 3-clause BSD license like PSPSDK? At least dual licensing would be helpful. IMHO, using AFL only was a big mistake.
Back to top
View user's profile Send private message
J.F.



Joined: 22 Feb 2004
Posts: 2906

PostPosted: Fri Jul 31, 2009 2:58 am    Post subject: Reply with quote

It's not a problem. If you had bothered to look closer at the GPL FAQ, you would have seen:

Quote:
What legal issues come up if I use GPL-incompatible libraries with GPL software?

Both versions of the GPL have an exception to their copyleft, commonly called the system library exception. If the GPL-incompatible libraries you want to use meet the criteria for a system library, then you don't have to do anything special to use them; the requirement to distribute source code for the whole program does not include those libraries, even if you distribute a linked executable containing them.


That's why you can do things like run GPL programs compiled with DirectX and the like.
Back to top
View user's profile Send private message AIM Address
misfire



Joined: 06 Sep 2004
Posts: 120
Location: Germany

PostPosted: Fri Jul 31, 2009 3:20 am    Post subject: Reply with quote

Thank you for pointing this out.

If I understood it correctly, it is still not possible to take portions of the PS2SDK source code, improve it, and directly include it into GPL-licensed software? Because then, it would be part of the "Major Component".

From GPLv3:
Code:
  The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form.
Back to top
View user's profile Send private message
J.F.



Joined: 22 Feb 2004
Posts: 2906

PostPosted: Sat Aug 01, 2009 12:59 am    Post subject: Reply with quote

misfire wrote:
Thank you for pointing this out.

If I understood it correctly, it is still not possible to take portions of the PS2SDK source code, improve it, and directly include it into GPL-licensed software? Because then, it would be part of the "Major Component".


No, you have to leave it as part of the SDK and not incorporate it into the program. That's the point of the difference in the license - if you could take portions of the SDK, make a few changes, then require people to GPL it, it would be going against the author's wish to AFL it instead. So you take portions, improve it, then put it back in the original SDK so that everyone can enjoy the improvements with the same license the original had.
Back to top
View user's profile Send private message AIM Address
Display posts from previous:   
Post new topic   Reply to topic    forums.ps2dev.org Forum Index -> General Discussion All times are GMT + 10 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group