[Top][All Lists]

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

Re: [swarm-hackers] header directory structure

From: Bill Northcott
Subject: Re: [swarm-hackers] header directory structure
Date: Tue, 8 Jul 2008 10:38:39 +1000

On 08/07/2008, at 3:25 AM, Scott Christley wrote:
True but then why use the framework architecture only to circumvent it. If I'm gonna go through the effort to build a framework, I want end-users to use it just like any other framework and not have to do any special.

The Mac might be my platform of choice but I still don't think the rest of the world should be changed to conform to MacOS conventions<g>. If our built framework can be used in Xcode by just adding it to a project. That is enough for me.

So I think the best option then comes down to keeping the GNU/Linux directory structure and moving it one level down into a Swarm directory, then add a -I flag to Makefile.appl so that existing code works without changes. They can use the <Swarm/defobj.h> format if they want, but they are not required to change their source code. Mac apps will have to use the <Swarm/defobj.h> format.

As I intend to do a final? X11, fat Leopard build as a framework, I would like to be really clear about the file layout you propose. So we can not confuse the users with two different hierarchies.

Mine looks like this:

Swarm.framework  /    Versions       /      2.2???   /
/ Swarm # symlink to Versions/Current/lib/libswarm.dylib / Headers # symlink to Versions/Current/Headers / PrivateHeaders # symlink to Versions/Current/PrivateHeaders / Resources # symlink to Versions/Current/Resources / Current # symlink to 2.2 / bin # contains swarm executables (symlinked from /usr/local?) / etc # as per standard Swarm / include # contains swarm headers in conventional layout / info # as per standard Swarm / lib # contains Swarm libraries with UNIX names libswarm.dylib etc / info # as per standard Swarm / Headers # symlinks at top level to public headers in include / PrivateHeaders # symlinks at top level to private headers in include / Resources # Apple localisation stuff

This sort of layout is easy to build, compatible with makefile build methods and usable in Xcode drag and drop style. The existing configure machinery will do the right stuff in the Makefiles.

We could symlink selected files into /usr/local or perhaps have one symlink /usr/local/swarm -> Swarm.framework/Versions/Current

Thought: Do we have any architecture dependent headers?? Yes right now. Will we have them in the new build Scott is doing? If so, how do we arrange them?


reply via email to

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