gnustep-dev
[Top][All Lists]
Advanced

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

Re: Env variables (was Re: Build Process using MingW32)


From: Richard Frith-Macdonald
Subject: Re: Env variables (was Re: Build Process using MingW32)
Date: Wed, 8 Feb 2006 05:25:40 +0000


On 8 Feb 2006, at 00:27, Derek Zhou wrote:


I am a little puzzled about the the relationship between
'GNUstep.conf' and the GNUSTEP_* env variables.

Pretty simple in theory ...
If we are talking about path variables, the make package sets the env variables from GNUstep.conf for internal use, and nothing else uses them. If we are talking about other environment variables, they have nothing to do with GNUstep.confat the moment (though I guess that might change).

I think the goal is to
be able to run apps without setting any special env variables;

Yes.

also
being able to changes default stuff with the env varibles.

Not sure what you mean here ... but environment variables are indeed used to provide optional control of a few things such as timezone, character encoding, debugging etc.

However,
the current 1.11.2 gnustep

I don't know about 1.11.2 on mingw specifically ... consider it a snapshot of development at some point ... so I'll answer as if you were talking about more or less up to date cvs/svn code ...

does not honor env varibles by default,

I think you are talking about paths ... and
1. make generates th4e env variables from GNUstep.conf
2. base uses GNUstep.conf directly and never looks at env variables for paths. Actually, there is a small exception to this ... if (and only if) configured with the option to do so, base will allow an env variable to be used to override the location it is to find GNUstep.conf in.

and
insists on the hardcoded "/etc/GNUstep/GNUstep.conf" even being
configured to use a different path. I don't think this is right. At
least, config.h for base should point GNUSTEP_CONFIG_FILE to the path
specified at config time.

On mingw we have two different configuration files ... one with unix- style paths for the make system (/c/GNUstep/GNUstep.conf-dev by default) and one with windows-style paths for the base library (the default location is now the same directory that the base library dll is in: ./GNUstep.conf)

Also, it used to be that one only need to do a "./configure
--prefix=$HOME" to make a local gnustep (just like any other gnu
software) Now I have to do something like: "./configure --prefix=$HOME
--enable-environment-config-file
--with-config-file=$HOME/etc/GNUstep.conf"

I think you mean "./configure --prefix=$HOME --with-config-file=$HOME/ etc/GNUstep.conf"

The idea is that the config file can be found in a standard/fixed location and it tells you where to find everything else ... hopefully the simplest and most reliable setup for most users. With the uncommon setup of multiple copies of GNUstep on one system, it also means you can edit it to switch between the different installed copies of GNUstep.

I'm not sure why the make package does not use --prefix for the config file ... it might be an oversight, or it might be intentional based on the idea of using a standard location for switching between multiple systems.






reply via email to

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