[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Config updates
From: |
Sheldon Gill |
Subject: |
Re: Config updates |
Date: |
Tue, 19 Sep 2006 08:45:39 +0800 |
User-agent: |
Thunderbird 1.5.0.7 (Windows/20060909) |
Nicola Pero wrote:
I committed some changes to gnustep-make that should fix a few remaining
issues in the config system. There are a few things worth nothing.
**1. No more need to source GNUstep.sh :-)
It works for me, might need more work to work for everyone I guess ;-)
Anyway in the standard flattened/no-multi-arch case, once I add the
gnustep dirs
to /etc/ld.so.conf and to PATH (I'm on GNU), I can now compile stuff by
just doing:
export GNUSTEP_MAKEFILES=/opt/gnustep/System/Library/Makefiles
make
No more need to source GNUstep.sh :-)
(hope it works for you as well, if not, let me know!)
I'm afraid that won't work on MS-Windows. For starters, no /etc/ld.so.conf
Also, I'm not that keen on adding all those dirs to either ld.so.conf or my
PATH.
IMHO there is a better solution for those who don't want to source GNUstep.sh
and that is to place a command on their path which sets up the environment and
evokes make.
Something like this:
-------------------------------<snip here>---------------------------------
#!/bin/sh
# Command to make GNUstep applications
# Sets up the environment correctly and then
# invokes make.
. /usr/shared/GNUstep/Makefiles/GNUstep.sh
make $@
-------------------------------<snip here>---------------------------------
That works everywhere and makes it easy to change things when needed. Doesn't
require any mods to ld.so.conf nor changes to the existing PATH
I've put mine into /usr/bin/ so things are sweet. No sourcing GNUstep.sh, no
need to mod the environment nor edit my .bashrc or profile. Nada.
Also, your solution *still* requires
export GNUSTEP_MAKEFILES=
which sort of defeats the purpose in my view because you still need a
preliminary step before you can build.
**2. Each library-combo needs to be configured separately
Second, Richard started a change to move the gnustep-make config into a
library-combo subdir,
which I've now completed ... it has a few implications:
1. you can configure different library-combos to use different compilers
with different flags;
I assume this was the main reason behind the change (presumably it helps
with apple-apple-apple
vs gnu-gnu-gnu on Mac OS X ?)
Sound in theory.
2. if you haven't configured a library-combo, you can no longer use it.
For example, if you plan on
using both gnu-gnu-gnu and gnu-ld-nil, you need to do
./configure --with-library-combo=gnu-gnu-gnu --disable-flattened
make
su -c 'make install'
./configure --with-library-combo=gnu-ld-nil --disable-flattened
make
su -c 'make install'
The second one is needed because it will install
GNUSTEP_MAKEFILES/ix86/linux-gnu/gnu-fd-nil/config.make.
If you try to compile using a library-combo that wasn't configured, it
won't work. This is because
each one has got its own CC, OPTFLAGS, etc flags now. Hmmm.
Hmm.. won't this will mean that all Headers will actually be in
$GNUSTEP_SYSTEM_ROOT/Library/Headers/${ac_cv_library_combo}
right? So we'd have like
/usr/GNUstep/System/Library/Headers/gnu-gnu-gnu/Foundation/
As long as flattened continues to be supported.
I'll have to look at the flags issue sometime.
Regards,
Sheldon
- Config updates, Nicola Pero, 2006/09/18
- Re: Config updates,
Sheldon Gill <=