]> git.tdb.fi Git - gldbg.git/blob - Makefile
Enhance the object-orientedness of genwrap.py
[gldbg.git] / Makefile
1 # $Id$
2
3 CFLAGS = -Igensrc -ggdb
4 CXXFLAGS = -Igensrc -ggdb
5
6 PACKAGES_gldbg = mspcore mspstrings mspio mspfs
7 CXXFLAGS_gldbg = $(shell pkg-config --cflags $(PACKAGES_gldbg))
8 LIBS_gldbg = $(shell pkg-config --libs $(PACKAGES_gldbg)) -lreadline
9
10 all: glwrap.so gldump gldbg
11
12 glwrap.so: source/glwrap.o
13         $(CC) -shared -o $@ $^ $(LIBS) $(LDFLAGS)
14
15 gldump: source/gldecoder.o source/gldump.o source/glprint.o source/enums.o
16         $(CC) -o $@ $^ $(LIBS) $(LDFLAGS)
17
18 gldbg: source/gldbg.o source/gldecoder.o source/glprint.o source/commandinterpreter.o source/tracer.o source/process.o source/enums.o
19         $(CXX) -o $@ $^ $(LIBS_gldbg) $(LIBS) $(LDFLAGS)
20
21 source/glwrap.o: source/functions.h gensrc/functions.enum gensrc/glwrap.funcs
22 source/gldecoder.o: source/functions.h gensrc/gldecoder.struct gensrc/gldecoder.funcs gensrc/gldecoder.funcs
23 source/gldump.o: source/gldecoder.h gensrc/gldecoder.struct source/glprint.h
24 source/glprint.o: gensrc/glprint.funcs gensrc/gldecoder.struct
25 source/enums.o: gensrc/enums.table
26
27 source/gldbg.o: source/gldbg.cpp source/gldbg.h source/gldecoder.h source/tracer.h
28         $(CXX) -c $(CXXFLAGS) $(CXXFLAGS_gldbg) -o $@ $<
29
30 source/tracer.o: source/tracer.cpp source/gldecoder.h source/glprint.h
31         $(CXX) -c $(CXXFLAGS) $(CXXFLAGS_gldbg) -o $@ $<
32
33 source/commandinterpreter.o: source/commandinterpreter.cpp source/gldbg.h
34         $(CXX) -c $(CXXFLAGS) $(CXXFLAGS_gldbg) -o $@ $<
35
36 source/process.o: source/process.cpp source/process.h
37         $(CXX) -c $(CXXFLAGS) $(CXXFLAGS_gldbg) -o $@ $<
38
39 gensrc/%: source/%.t gensrc/.created genwrap.py gl.files gl.tm gl.io gl.spec
40         python ./genwrap.py $< gl.files >$@
41
42 gensrc/enums.table: enum.spec genenum.py
43         python ./genenum.py enum.spec >$@
44
45 gensrc/.created:
46         mkdir -p gensrc
47         touch $@