gnustep-dev
[Top][All Lists]
Advanced

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

Re: Removing all remaining distinction between shared, debug, profile an


From: Nicola Pero
Subject: Re: Removing all remaining distinction between shared, debug, profile and static libs/executables
Date: Thu, 7 Sep 2006 22:08:59 +0200 (CEST)

>>  1. remove the difference between shared_obj, shared_debug_obj,
>> static_profile_obj, etc. too.  Just use './obj' for everything
>> (this is kind of a no-brainer, now that there is no longer any
difference in the
>> installed libraries, can't see any reason to keep a difference while
>> building!).  Another advantage is we no longer need a symlink here :-)
>
> This is probably best for simplification as you say but it will
> impose a cost to switching back and forth between, e.g., profiled and
> non-profiled versions.  With the final library names merged you can
> still switch between them by doing a new "make install" (which will
> not require any compilation once you've built both), but merging
> these build directories means a full recompilation is needed to make
> the switch.  Correct me if I'm missing something.  Maybe it's not a
> big deal since one can do a manual work-around.

This is a very good and valid point :-)

A good way of managing this after the simplification would be to use
GNUSTEP_BUILD_DIR, which
is already implemented, I'm just not sure how well it works across all
project types (anyway
it can be made to work).

If we had a well-working GNUSTEP_BUILD_DIR, you could easily keep multiple
builds of your source
in different directories ... eg

Eg,

make GNUSTEP_BUILD_DIR=./non-debug
make GNUSTEP_BUILD_DIR=./debug debug=yes
make GNUSTEP_BUILD_DIR=./profile profile=yes
make GNUSTEP_BUILD_DIR=./Experiment [...my flags...]

That should work.

GNUSTEP_BUILD_DIR works that if you don't specify a GNUSTEP_BUILD_DIR,
everything is build
by default in '.' (with the object files in './obj').  If you specify a
GNUSTEP_BUILD_DIR, everything
is built wherever you specify (eg, in ./non-debug, so you end up with
./non-debug/obj/libmystuff.so,
./non-debug/Gorm.app, ./non-debug/MyBundle.bundle, etc).

Well, I guess we really need to get GNUSTEP_BUILD_DIR working properly for
all projects ...
another thing to do ;-)

Thanks







reply via email to

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