SOUND ?= 1
DEBUG ?= 0
CPP = g++ $(CPPFLAGS) $(INCLUDES) $(DEFINES)
CPPFLAGS = ${CXXFLAGS}
DEFINES = -DDATA_DIR='""' -DUNIX=1 -DSOUND=$(SOUND) -DDEBUG=$(DEBUG)
INCLUDES = -I/usr/include -I/usr/include/GL -I/usr/X11R6/include -I/usr/X11R6/include/GL
LIBPATHS = -L/usr/X11R6/lib -L/usr/lib
LIBRARIES = -pthread -lglfw -lGL -lX11 -lXxf86vm -lGLU -lXext -lfmod
OBJECTS = doalloc.o doberon.o dobuildings.o docomputer.o doconfig.o dodata.o dodepend.o dodraw.o doengine.o doevents.o dofactories.o dofight.o dofile.o dofollower.o doforces.o dohost.o doipc.o dolayout.o doleader.o dologs.o domap.o domapunits.o domouse.o donet.o doperceptron.o doplayers.o doraces.o doschemes.o doselection.o dosimpletypes.o dosound.o dosources.o dounits.o dowalk.o doworkers.o glfont.o glgui.o tga.o utils.o
TARGETS = ../doberon
all: tags ../doberon checking
checking: .checking
.checking: *.h *.cpp
@echo Checking format of source files...
@if egrep -l "`printf '\t'`|`printf '\r'`" *.cpp *.h; then echo "Error: Previous listed files contain illegal characters (tabs or ^M)"; false; fi
@echo OK
@touch .checking
clean:
rm -f $(OBJECTS) $(TARGETS) *core core.* tags
tags: *.h *.cpp
-exctags * 2> /dev/null || ctags * 2> /dev/null
docs:
rm -rf ../docs/documentation/html_local
doxygen .doxygen.conf 2>&1 | tee .doxygen.log
../doberon: $(OBJECTS)
$(CPP) $(OBJECTS) $(LIBPATHS) $(LIBRARIES) -o ../doberon
doalloc.o: doalloc.cpp cfg.h doalloc.h dologs.h
$(CPP) -c doalloc.cpp
doberon.o: doberon.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doberon.cpp
dobuildings.o: dobuildings.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dobuildings.cpp
docomputer.o: docomputer.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c docomputer.cpp
doconfig.o: doconfig.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doconfig.cpp
dodata.o: dodata.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h tga.h
$(CPP) -c dodata.cpp
dodepend.o: dodepend.cpp cfg.h doalloc.h dodepend.h
$(CPP) -c dodepend.cpp
dodraw.o: dodraw.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dodraw.cpp
doengine.o: doengine.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dofollower.h dohost.h doipc.h dolayout.h doleader.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doengine.cpp
doevents.o: doevents.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doevents.cpp
dofactories.o: dofactories.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dofactories.cpp
dofight.o: dofight.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dofight.cpp
dofile.o: dofile.cpp cfg.h doalloc.h dodata.h dofile.h doipc.h dologs.h dosimpletypes.h dosound.h glfont.h glgui.h
$(CPP) -c dofile.cpp
dofollower.o: dofollower.cpp cfg.h doalloc.h dofollower.h dohost.h doipc.h dologs.h donet.h dopool.h dosimpletypes.h
$(CPP) -c dofollower.cpp
doforces.o: doforces.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doforces.cpp
dohost.o: dohost.cpp cfg.h doalloc.h dohost.h doipc.h dologs.h donet.h dopool.h dosimpletypes.h
$(CPP) -c dohost.cpp
doipc.o: doipc.cpp cfg.h doalloc.h doipc.h dologs.h
$(CPP) -c doipc.cpp
dolayout.o: dolayout.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dolayout.cpp
doleader.o: doleader.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h doleader.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doleader.cpp
dologs.o: dologs.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dologs.cpp
domap.o: domap.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c domap.cpp
domapunits.o: domapunits.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c domapunits.cpp
domouse.o: domouse.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c domouse.cpp
donet.o: donet.cpp cfg.h doalloc.h doipc.h dologs.h donet.h dopool.h dosimpletypes.h utils.h
$(CPP) -c donet.cpp
doperceptron.o: doperceptron.cpp cfg.h doalloc.h dologs.h doperceptron.h
$(CPP) -c doperceptron.cpp
doplayers.o: doplayers.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doplayers.cpp
doraces.o: doraces.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doraces.cpp
doschemes.o: doschemes.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doschemes.cpp
doselection.o: doselection.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doselection.cpp
dosimpletypes.o: dosimpletypes.cpp cfg.h doalloc.h dosimpletypes.h
$(CPP) -c dosimpletypes.cpp
dosound.o: dosound.cpp cfg.h doalloc.h dologs.h dosimpletypes.h dosound.h
$(CPP) -c dosound.cpp
dosources.o: dosources.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dosources.cpp
dounits.o: dounits.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doengine.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dounits.cpp
dowalk.o: dowalk.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h doipc.h dolayout.h dologs.h domap.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c dowalk.cpp
doworkers.o: doworkers.cpp cfg.h doalloc.h doconfig.h dodata.h dodraw.h doevents.h dofight.h dofile.h dohost.h doipc.h dolayout.h dologs.h domap.h domouse.h donet.h doperceptron.h doplayers.h dopool.h doraces.h doschemes.h doselection.h dosimpletypes.h dosound.h dothreadpool.h dounits.h dowalk.h glfont.h glgui.h
$(CPP) -c doworkers.cpp
glfont.o: glfont.cpp glfont.h
$(CPP) -c glfont.cpp
glgui.o: glgui.cpp cfg.h doipc.h glfont.h glgui.h
$(CPP) -c glgui.cpp
tga.o: tga.cpp tga.h
$(CPP) -c tga.cpp
utils.o: utils.cpp cfg.h doalloc.h utils.h
$(CPP) -c utils.cpp
DEVELOPERS = crazych index jojolase libertik martinpp peterpp
devel_stats.html: *.cpp *.h
@echo "Running annotate..." >&2
@cvs annotate *.h *.cpp > annotate.out 2> /dev/null
echo " #### DO NOT EDIT ! #### ?>" > devel_stats.html
echo " #### If you want to change this file, edit src/create_makefile.sh #### ?>" >> devel_stats.html
echo "" >> devel_stats.html
echo "
All lines
" >> devel_stats.html
echo " | lines | words | chars |
|---|
" >> devel_stats.html
for developer in $(DEVELOPERS) ; do \
echo -n "$$developer " ; \
cat annotate.out | grep "($$developer" | sed 's/^[^:]*: //' | grep -v '^ *$$' | wc ; \
done | sort -n -r -k 2 | \
sed 's: *:| :g' | sed 's:^: |
| :' | sed 's:$$: |
:' >> devel_stats.html
echo "
" >> devel_stats.html
echo "" >> devel_stats.html
echo "Lines without comments
" >> devel_stats.html
echo " | lines | words | chars |
|---|
" >> devel_stats.html
for developer in $(DEVELOPERS) ; do \
echo -n "$$developer " ; \
cat annotate.out | grep "($$developer" | sed 's/^[^:]*: //' | grep -v '^ *$$' | grep -v '^ *\(//\|/\*\|\*\)' | wc ; \
done | sort -n -r -k 2 | \
sed 's: *:| :g' | sed 's:^: |
| :' | sed 's:$$: |
:' >> devel_stats.html
echo "
" >> devel_stats.html
echo "" >> devel_stats.html
echo "Comment lines
" >> devel_stats.html
echo " | lines | words | chars |
|---|
" >> devel_stats.html
for developer in $(DEVELOPERS) ; do \
echo -n "$$developer" ; \
cat annotate.out | grep "($$developer" | sed 's/^[^:]*: //' | grep '^ *\(//\|/\*\|\*\)' | wc ; \
done | sort -n -r -k 2 | \
sed 's: *:| :g' | sed 's:^: |
| :' | sed 's:$$: |
:' >> devel_stats.html
echo "
" >> devel_stats.html
echo "" >> devel_stats.html
date "+Last update: %Y-%m-%d %H:%M
" >> devel_stats.html
sed 's/jojolase/jojolaser/' devel_stats.html > ,,devel_stats.html
mv ,,devel_stats.html devel_stats.html
rm annotate.out
update_web: devel_stats.html
scp devel_stats.html user.sf.net:/home/groups/d/da/dark-oberon/htdocs/stats.php
scp -r ../docs/documentation/html_local user.sf.net:/home/groups/d/da/dark-oberon/htdocs/documentation/