8 def CreateLibMakefile(lib_number
, classes
):
9 os
.chdir(cppcodebase
.lib_name(lib_number
))
10 handle
= file("Makefile", "w");
11 handle
.write ("""COMPILER = g++
13 CCFLAGS = -g -Wall $(INC)
19 handle
.write ("lib = lib_" + str(lib_number
) + ".a\n")
20 handle
.write ("src = \\\n")
21 for i
in xrange(classes
):
22 handle
.write('class_' + str(i
) + '.cpp \\\n')
26 objects = $(patsubst %.cpp, %.o, $(src))
35 $(COMPILER) $(CCFLAGS) -c $<
38 @rm $(objects) $(lib) 2> /dev/null
41 @$(DEPEND) $(INC) $(src)
47 def CreateFullMakefile(libs
):
48 handle
= file("Makefile", "w")
50 handle
.write('subdirs = \\\n')
51 for i
in xrange(libs
):
52 handle
.write('lib_' + str(i
) + '\\\n')
56 @for i in $(subdirs); do \
57 $(MAKE) -C $$i all; done
60 @for i in $(subdirs); do \
61 (cd $$i; $(MAKE) clean); done
64 @for i in $(subdirs); do \
65 (cd $$i; $(MAKE) depend); done
68 def CreateCodebase(libs
, classes
, internal_includes
, external_includes
):
69 cppcodebase
.SetDir('make')
70 cppcodebase
.CreateSetOfLibraries(libs
, classes
, internal_includes
, external_includes
, CreateLibMakefile
)
71 CreateFullMakefile(libs
)