# $Id: Makefile,v 1.80.2.3 2006/02/13 09:14:01 chfreund Exp $ TARGET = ../bin/wop DBG_LEVEL = 4 LOG_LEVEL = 4 COLORED_TEXT = yes ################################################################################ HEADER_FILES = $(wildcard *.hpp) SOURCE_FILES = $(wildcard *.cpp) OBJECT_FILES = $(patsubst %.cpp,%.o, $(SOURCE_FILES)) CXXFLAGS ?= -Wall -Wshadow -Wsign-compare -Wparentheses -Wconversion -O3 -ansi CXXFLAGS += -fno-exceptions -fno-strict-aliasing -ffloat-store \ -DDBG_LEVEL=$(DBG_LEVEL) -DLOG_LEVEL=$(LOG_LEVEL) \ -DUSE_SDL -DNEW=new\(std::nothrow\) \ -I../sdlwidgets \ $(shell /usr/local/bin/sdl-config --cflags) # -g LDFLAGS = -L../sdlwidgets -lsdlwidgets -lz \ -lm -lSDL_net -lSDL_mixer -lSDL_ttf -lSDL_image \ $(shell /usr/local/bin/sdl-config --libs) # -g WOPFLAGS = data=../data DOXYGENFLAGS = ../doc/doxygen.rc CXX = g++ DOXYGEN = doxygen UNISON_SOURCE = ssh://131.188.67.22//homes/staff/pohlt/wop/.unison_data sinclude Makefile.local ################################################################################ ifneq "$(COLORED_TEXT)" "yes" CXXFLAGS += -DSUPPRESS_COLORED_OUTPUT endif ################################################################################ .PHONY: all runc runs clean info unison gunison doc checkreal .SECONDARY: .SUFFIXES: all: $(TARGET) runc: all ../bin/$(TARGET) mode=client $(WOPFLAGS) runs: all ../bin/$(TARGET) mode=server $(WOPFLAGS) ../sdlwidgets/libsdlwidgets.a: $(wildcard ../sdlwidgets/*.cpp) $(wildcard ../sdlwidgets/*.h) +cd ../sdlwidgets; gmake $(TARGET): $(OBJECT_FILES) Makefile ../sdlwidgets/libsdlwidgets.a -mkdir ../bin $(CXX) $(OBJECT_FILES) -o $(TARGET) $(LDFLAGS) %.o: %.cpp Makefile $(CXX) $(CXXFLAGS) -c $< -o $@ clean: -rm -f $(TARGET) *.o Makefile.depend* info: @echo -e "\033[1mTARGET:\033[0m $(TARGET)" @echo -e "\033[1mSOURCE_FILES:\033[0m\n`ls -C $(SOURCE_FILES)`" @echo -e "\033[1mHEADER_FILES:\033[0m\n`ls -C $(HEADER_FILES)`" @echo -en "\033[1mChecking compiler:\033[0m " @echo -e "`$(CXX) --version | head -n 1 2>&1`" @#echo -en "\033[1mChecking valgrind:\033[0m " @#echo -e "`$(VALGRIND) --version | head -n 1 2>&1`" Makefile.depend: $(SOURCE_FILES) $(HEADER_FILES) @touch Makefile.depend makedepend -f Makefile.depend -Y -- $(CXXFLAGS) -- $(SOURCE_FILES) >/dev/null 2>&1 unison: @echo "#################### Setting g+w #####################" -chmod -R g+rw ../data/* @echo "#################### Syncing images #####################" -unison ../data/images $(UNISON_SOURCE)/images @echo "#################### Syncing sound ######################" -unison ../data/sound $(UNISON_SOURCE)/sound @echo "#################### Syncing develop ####################" -unison ../data/develop $(UNISON_SOURCE)/develop @echo "#################### Syncing miscconfig ####################" -unison ../data/miscconf $(UNISON_SOURCE)/miscconf gunison: -unison-gtk ../data/images $(UNISON_SOURCE)/images -unison-gtk ../data/sound $(UNISON_SOURCE)/sound -unison-gtk ../data/develop $(UNISON_SOURCE)/develop -unison-gtk ../data/miscconf $(UNISON_SOURCE)/miscconf doc: $(DOXYGEN) $(DOXYGENFLAGS) checkreal: -@egrep '(cos|sin|acos|asin|fabs|tan|atan|atan2|sqrt)f? *\(' *.?pp && echo 'ERROR: found forbidden function calls' include Makefile.depend