[GRASS5] Re: [GRASSLIST:1299] Re: Grass 5b10 make clean

Eric Mitchell emitchell at altaira.com
Thu Dec 21 11:29:22 EST 2000


Justin, 

I started on this a while ago, but Real Life (tm) has 
left me with less than no free time available.  Here's 
how far I got (only works for now on Linux, needs some
configure.in work for other platforms, etc.)  Actually,
I think I started on some of the executables, but I'd 
have to check my source tree.  Let me know what you
think of it.

Justin Hickey wrote:
> 
> My proposal switches the Makefile to the GNU method of doing things
> where the build directories are under the source directory. Then "make"
> will build the executables in the build directories which will be stored
> under the source directory, in your case /usr/local/src/grass/. Then
> "make install" will copy the files to the installation directories, in
> your case /usr/local/grass5/. And "make clean" will remove the
> executables and libraries from the build directories under
> /usr/local/src/grass/. Finally, "make uninstall" will remove the
> executables from the installation directory /usr/local/grass5/
> 
> So you have a choice for the source and install directories, but the
> build directory is dependent on how the Makefile is written. All I'm
> doing is rewriting the Makefile so the build directory is in the usual
> place.
> 
> Are we understanding each other now? I was confused as to what you were
> trying to point out. Sorry.

-- ebm
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=+
| Eric B. Mitchell         mailto:emitchell at altaira.com |
| tel: (301) 809 - 3534    Altair Aerospace Corporation |
| tel: (800) 7 - ALTAIR    4201 Northview Dr. Suite 410 |
| fax: (301) 805 - 8122    Bowie, MD  20716             |
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=+
              ,___
          /"\  / o=\  /"""---===/
         /   \_/  \__/   ---===/ 
         |    //\   || /""TT""/ //\   || ||""\
         |   //  \  ||    ||   //  \  || ||__/
         |  //--==\ |L--/ ||  //--==\ || || "=,
          \      ---===/
           \____---===/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: grass.remake.tgz
Type: application/octet-stream
Size: 14957 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/grass-dev/attachments/20001221/05d4c4c1/grass.remake.obj
-------------- next part --------------

currently generated files
	- Makefile
	- src/CMD/head/head
	- src/scripts/shells/create_fifos.sh
	- src/include/config.h
	- src/include/config.h is unchanged



#####################################################################
# sample Makefile

MODULE_TOPDIR = ../..[/..[...]]
include $(MODULE_TOPDIR)/include/Make/GrassTop.make

# GrassTop.make includes (in order):
# 	Grass.make: 	prefix, exec_prefix, common includes, cleans, etc.
# 	Platform.make: 	copy from src/CMD/head/head, CC=, LD=, etc.
# 	Rules.make	how to combine the two to compile generic targets

targets: { libs | shlibs | progs | scripts }

$(TARGETS): ...

include { Lib.make | Shlib.make | Doc.make | Recursive.make | etc.make }

./grass5.0beta/src
./grass5.0beta/src/libes
./grass5.0beta/src/libes/lib1
./grass5.0beta/src/libes/lib2
./grass5.0beta/src/prog1/...
./grass5.0beta/src/prog2/...

# distribute as:
	GrassBase	- basic environment)
	GrassStandard 	- "standard" set of stable supporting programs
	GrassNviz	- separate for OpenGL considerations?
	GrassContrib	- src.contrib stuff
	GrassGarden	- ???

# try to build as shared libraries where possible
	- better disk cache hits


More information about the grass-dev mailing list