gnustep-dev
[Top][All Lists]
Advanced

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

Re: Upcoming releases


From: David Ayers
Subject: Re: Upcoming releases
Date: Tue, 29 Jul 2003 16:06:42 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4b) Gecko/20030507

Alexander Malmberg wrote:

Nicola Pero wrote:
As far as I am aware, we have reached a complete decision already (except
for some details).
[snip list of changes]

One big detail that's missing is the organization of headers _before_
installation. Fixing the huge discrepancy between header location before
and after installation is, at least imho, a fairly big part of the
improvements of these changes.

So, I propose (iirc, this is what's been discussed, though I'm not sure
that there was an actual decision about this), before installation:

Headers installed in Foundation/ are stored in
core/base/Headers/Foundation/
Headers installed in GNUstepBase/ are stored in
core/base/Headers/GNUstepBase/

Headers installed in AppKit/ are stored in core/gui/Headers/AppKit/
Headers installed in GNUstepGUI/ are stored in
core/gui/Headers/GNUstepGUI/
http://mail.gnu.org/archive/html/gnustep-dev/2003-07/msg00014.html

Actually we decided on the following Source structure:
Headers/Foundation
Headers/Additions/GNUstepBase
Headers/Additions/GNUstepBase/unicode

Headers/AppKit
Headers/Additions/GNUstepGUI

This allows us to build -base with -I../Headers -I../Headers/Additions and to build -baseadd with -I../Headers/Additions. If Foundation and GNUstepBase were on the same level in the Source, then we'd always include our Foundation headers, even when trying to build for apple-apple-apple.

I'll leave the -back headers alone for now, I just won't install them.

Adding to the list of changes:

3.-2. Modify -base and -gui to not create header directory symlinks in
the source tree anymore.
Yes.

3.-1. For each header, figure out where it should be installed and move
it to the corresponding directory in the source tree.
I think we've done that before, but I'll post the structure again once I'm finished.

[snip]
   The very quick fix is just to modify the libraries to install headers
   in {header dir}/{name} rather than {header dir}/gnustep/{name}.

   That might be enough for some of the core libraries; but in general,
   it might be a good occasion to update names too, switching from a
   short-name form ("guile", "java", "x11", "xlib") to a long-name form
   ("GNUstepGuile", "GNUstepJava", "GNUstepBack/X11",
   "GNUstepBack/XLib"), installing headers in {Headers}/{LongName}/
   rather than {Headers}/gnustep/{short-name}, and updating all
   #includes.

These changes really must be done together. It's not acceptable to have
GNUstep install it's own headers in top-level directories with names
like "guile", "java", and "x11", as these collide (or have a large risk
of colliding) with other headers.

Well almost. This is the next step [superflous comment ommited] These other projects won't build until they are updated anyway. But I don't want to make the commit any larger that it already will be. The first step is gnuste/core then comes usr-apps / dev-libs / dev-apps and hopefully by Thursday evening we will have successfully bOrken everything ;-)

Cheers,
David






reply via email to

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