discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CoreBase parse errors with ARC enabled


From: Stefan Bidigaray
Subject: Re: CoreBase parse errors with ARC enabled
Date: Wed, 28 Jan 2015 17:31:14 -0600

Jens,
GNUstep is officially developed using GNA's SVN repository.  A link to the browseable repository is http://svn.gna.org/viewcvs/gnustep.  CoreBase is under libs/corebae/trunk.  To checkout the latest version you would use:
$ svn co svn://svn.gna.org/svn/gnustep/libs/corebase/trunk corebase

The information from the website is correct, 0.1 is the latest release, but the code has moved on since then.  I have personally made hundreds of commits since then.

The reason for not using Apple's CF-Lite is historic and technical.  First, CoreBase was originally implemented completely on top of Base, making it essentially a C wrapper around Objective-C code.  The original goal of the project was to provide the easiest path possible to port WebKit to GNUstep.  This is still a major goal for the project, but due to some of the inherit characteristics of CF objects I've decided to implement everything in pure C to reduce overhead and allow more flexibility.

Second, CF-Lite only supports a very narrow superset of C.  For example, Blocks are required and GCC does not provide it.  Additionally, CoreBase needs to be portable to more platforms than CF-Lite.  I've tried compiling CF-Lite on a few different platforms (Windows and Linux to be specific) in the past and it was disastrous.

Third, Apple license is not compatible with the GPL, and GNUstep being a GNU project, this become a bit of a problem (https://www.gnu.org/licenses/license-list.html#apsl2).  Base and CoreBase share quite a bit of code, as I was the one who wrote some of the ICU dependent portions of Base and later ported it to CoreBase.

Lastly, Apple has full control of CF-Lite, making it a huge risk to the GNUstep project and projects dependent on it.

Individually, all these "problems" aren't really problems, but together, they make CF-Lite unfeasible, from my point of view, at least.

On Wed, Jan 28, 2015 at 5:00 PM, Jens Alfke <jens@couchbase.com> wrote:

On Jan 28, 2015, at 9:19 AM, Stefan Bidigaray <stefanbidi@gmail.com> wrote:

Hi Jens,
I'm the (somewhat part-time) maintainer of CoreBase, so I can best speak to it.  Your best bet would be to use the current SVN code, as version 0.1 is sorely outdated.

Ah, thanks. I did not know there were more recent changes. The CoreBase page on gnustep.org only points to the download of 0.1, and the only repo for CoreBase that shows up in Google searches is one on Github whose last commit is circa 2012.

…OK, just figured out that there is one monolithic SVN repo for all of GNUstep, and am checking it out now.

BTW, why is this a re-implementation of CF, when Apple's CF is open source? Couldn't you just use that?

—Jens



reply via email to

[Prev in Thread] Current Thread [Next in Thread]