Initial import from RCS
[greylag.git] / Makefile
blob5f901a074fc1c77c6e6823be73a74e999b175d9f
1 # Makefile for cgreylag module
3 # $Id: Makefile,v 1.6 2006/09/29 19:58:41 mkc Exp $
6 # SWIG is still experiencing rapid development--1.3.28 or better is required.
7 # A reasonably recent g++/libstdc++ may also be required. Python 2.4 or
8 # better is assumed.
10 # Developed (on devel01) with swig 1.3.28, g++ 4.1.2, libstdc++.so.6 (ld 2.16.91)
13 .PHONY: all clean
14 .DELETE_ON_ERROR:
16 # for debugging (extra checking, slow)
17 #CXXFLAGS = -Wall -g3 -O0 -D_GLIBCXX_DEBUG
19 # for speed (fastest?, fewest checks)
20 #CXXFLAGS = -Wall -g -O3 -DNDEBUG
22 # reasonably fast
23 CXXFLAGS = -Wall -g -O2
25 SWIGCXXFLAGS = $(CXXFLAGS) -fno-strict-aliasing -Wno-unused-function -fPIC \
26 -I$(PYTHON_I)
29 # Generally, this is where the 'Python.h' corresponding to your 'python' lives.
30 #PYTHON_I = /n/site/inst/Linux-i686/sys/include/python2.4
31 PYTHON_I = /usr/include/python2.4
33 MODULE = cgreylag
35 all :: _$(MODULE).so
37 $(MODULE)_wrap.cpp : $(MODULE).i $(MODULE).hpp
38 swig -c++ -python -o $@ $<
40 $(MODULE)_wrap.o : $(MODULE)_wrap.cpp $(MODULE).hpp
41 g++ $(SWIGCXXFLAGS) -c $<
43 $(MODULE).o : $(MODULE).cpp $(MODULE).hpp
45 _$(MODULE).so : $(MODULE).o $(MODULE)_wrap.o
46 g++ $(CXXFLAGS) -shared $^ -o $@
49 clean::
50 @rm -f $(MODULE).py $(MODULE)_wrap.cpp $(MODULE).o $(MODULE)_wrap.o \
51 _$(MODULE).so *.py[co]