[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNUstep.sh
From: |
Richard Frith-Macdonald |
Subject: |
Re: GNUstep.sh |
Date: |
Tue, 26 Feb 2002 20:15:16 +0000 |
On Tuesday, February 26, 2002, at 07:57 PM, M. Grabert wrote:
Hi all,
I'm running Debian GNU/Linux (woody) and I'm
using GNUstep (CVS of today, 19:00 UTC) with gcc-3.0.4.
I have following problem (I've also seen this in
the CVS of last month):
$GNUSTEP_USER_ROOT is defined as "~$LOGNAME/GNUstep"
in $GNUSTEP_ROOT/System/Makefiles/GNUstep.sh and .csh
I did alot of bash/tcsh/sh/ksh programming in former times
(on several Unix flavours), and all I can tell is that this isn't
very portable.
Well, ~ won't be expanded by all shells.
Besides that if $HOME isn't defined, ~ won't expand either (at
least on most systems).
I know that there may be some systems that don't use $HOME,
but these are very rare.
Moreover on some rare systems even $USER/$LOGNAME isn't defined
but $HOME is.
So it would be better (IMHO) to use $HOME instead of $LOGNAME
$GNUSTEP_USER_ROOT=${HOME}/GNUstep
which will work at least on more systems.
IMHO this is not a "theoretical" problem since this happens to
me all the time with a standard configuration (using bash-2.05a as sh).
Well I did make the change on purpose, but that doesn't mean I'm sure
it's
the best thing to do.
I am pretty sure that the path used by the makefiles system to find a
users
files should be the same as the path returned by the
NSHomeDirectoryForUser()
function in the base library, and I changed the makefiles system to try
to
do that ... but it may make more sense to change the base library.
A while back, I posted an email to the developers list suggesting making
the
GNUSTEP_USER_ROOT and GNUSTEP_DEFAULTS_ROOT values fixed at configure
time
as templates, but only got feedback from one person.
If we fixed this stuff when the make package was configured, we could
ensure
that the make system and the gnustep base library used the same paths,
and
try to pick the best option.
Comments?