bug-gnustep
[Top][All Lists]
Advanced

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

Re: [RFC/make] Extend Framework support II


From: Nicola Pero
Subject: Re: [RFC/make] Extend Framework support II
Date: Fri, 12 Mar 2004 12:18:19 +0000 (GMT)

> > > > >>OK, so here's my second try :-)
> > What I meant was much more radical than this though. :-)
> >
> > I don't think GNUSTEP_SYSTEM_ROOT, GNUSTEP_NETWORK_ROOT,
> > GNUSTEP_LOCAL_ROOT make any sense on apple-apple-apple.
> 
> Hmm... sort of. They make sense in terms of places in the file system. 
> They're 
> just not purely GNUstep.

I'm not sure what that means.  I think the following setup is the ideal 
one -

 * keep GNUSTEP_*_ROOT and Apple's directories separate by default.  You
can change that if you want and merge the concepts - it's your choice and
you take the risk of installing gnustep-make over your Apple's system
directories.  But by default, I'd keep them separate and use gnustep-make
only as a building system, usually in your own directory. :-)

 * default GNUSTEP_INSTALLATION_DIR to / (or to GNUSTEP_LOCAL_ROOT for 
libraries, because they can't be installed into Apple's directories)

That works really well for me.  If part of the stuff is not updated to
compile as frameworks on Apple, maybe that part could be still built as a
library and installed into gnustep-make's installation dirs for the time
being, until you update it.


> > On apple-apple-apple, you just use your Apple.  You have no GNUstep
> > installed.  There is no GNUstep installation.
> 
> No, but there are GNUmakefiles around and some of them will be defined to 
> install to places in LOCAL or SYSTEM.

That's a bug in the GNUmakefiles.  GNUmakefiles should not hardcode a
GNUSTEP_INSTALLATION_DIR, but use by default the default installation dir
on the platform, unless override by the user on the command line.

If they want to install things in special places, they should specify the
special places relative to GNUSTEP_INSTALLATION_DIR - otherwise the user
can't change the GNUSTEP_INSTALLATION_DIR on the command line, and the
user is king and his wish is our command.

The safest thing to do in a GNUmakefile is to use the
GNUSTEP_APPLICATION_SUPPORT etc variables to install stuff which goes in
slightly unusual places.

I can't think of a good reason to reference the GNUSTEP_LOCAL_ROOT or
GNUSTEP_SYSTEM_ROOT variables in a GNUmakefile.


> > Of course the catch is that you shouldn't compile anything as a library,
> > everything should be an apple framework, even stuff which would be a
> > library normally on GNUstep.  For example, -baseadd should be a framework.
> > The natural thing to do this is to use native-library.make btw.
> >
> > So the only default I would change is GNUSTEP_INSTALLATION_DIR, which I'd
> > point to '/' on apple-apple-apple.
> 
> > The rest is irrelevant, as it's your own gnustep-make installation which
> > you can put wherever you want, and unless you're compiling stuff from
> > sources using GNUmakefiles, you don't need gnustep-make at all.
> 
> Yet if you are using GNUmakefiles, things need to be defined appropriately 
> for 
> them and I believe that SYSTEM and LOCAL roots are needed for this purpose. 

Why ?  I don't see any reason.  If you're building on Apple, you could
point SYSTEM and LOCAL into whatever empty directories you want, and if
you ignore a few meaningless compile/link flags, it should all work all
right whatever their value is.  Anyway, we're probably using a different
language to say similar things, so let's leave it.


> I think we're actually in complete conceptual agreement and just need to iron 
> out a few details which are quite minor in the scheme of things.

Good :-)





reply via email to

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