discuss-gnustep
[Top][All Lists]
Advanced

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

Re: Building in a separate build directory


From: Nicola Pero
Subject: Re: Building in a separate build directory
Date: Fri, 17 May 2002 13:07:02 +0100 (BST)

Hi Andreas,

yes separate build dirs are not supported yet.  a lot of people are asking
for it, so as soon as I am able to allocate a reasonable amount of hacking
time again (very few time recently ... but will change ;-), I'll likely
try to implement it.

you can do without them and still be very happy though :-)


> > Instead of 'gmake clean' use 'gmake distclean'. This will do exactly 
> > what you want it to do. ;-)
> 
> Yes, but I will also have to go into each subdirectory (project 
> directory) of the tree and call "make distclean", won't I_ Or can I 
> issue "make distclean" when in directory ./Development and the object 
> files of in project directories get wiped out?

If you can compile everything from the top-level directory by typing
'make', then you can also clean everything from the top-level directory by
typing 'make distclean'.

If you can't compile everything from the top-level directory by typing
'make', then maybe that's something worth adding :-)

Once you can compile with a single 'make' command in the top-level
directory (which is normally nice to have), then you can also

 * make clean (removes object files, that is the fat files which take up a
lot of space :-) but not all the little dirs)

 * make distclean (removes everything and leaves the source tree
completely clean from anything build during building)

 * make dist (you must add 'PACKAGE_NAME' and 'VERSION' to the top-level
GNUmakefile for this to work; it first runs 'make distclean', then
automatically creates a .tgz of all the sources in the parent directory).

To have 'make' in the top-level dir work, and have 'make dist' etc work,
you need to add to the top-level dir a GNUmakefile which says something
like -


include $(GNUSTEP_MAKEFILES)/common.make

PACKAGE_NAME = HelloWorld
VERSION = 5.3

SUBPROJECTS = Directory1 Directory2 Directory3 Directory4

include $(GNUSTEP_MAKEFILES)/aggregate.make


Try then typing 'make dist'; you should find in ../ a
HelloWorld-5.3.tar.gz which contains all your sources distcleaned and
ready for backup/distribution.




reply via email to

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