#COMPILER CC = g++ #Compilerflags CFLAGS = -O2 -c #pfad zu os-spezifischen dateien OS = linux #Objekt-Dateien (abhängigkeiten von main) OBJ = $(TEMP_PATH)*.o #Quelltexte SRC := $(SRC_PATH)$(wildcard *.cpp) #schreibbarbeit sparen IC = include/ LB = lib/ #PFADE LIBS_PATH = libs/ SRC_PATH = ../../src/ INCLUDE_PATH = $(SRC_PATH) #INCLUDE = ../../$(IC) TOOLS = ../../tools/ #Tools ADDNEWLINE = $(TOOLS)addnewline/addnewline #muss noch überarbeitet werden BIN_PATH = bin/ TEMP_PATH = temp/ #Versionen der Bibliotheken -> pfade, unter denen libraries etc zu finden sind VER_BOX2D = box2d-svn VER_OGG = ogg-1.1.3 VER_OPENAL = openal-1.1.0 VER_SDL = sdl-1.2.13 VER_SDL_IMAGE = sdl_image-1.2.6 VER_TINYXML = tinyxml-2.5.3 VER_VORBIS = vorbis-1.2.0 #Namen der statisch zu linkenden Bibliotheken. #------------ #UGJBPIGB #(JA, HIER MUSS NOCH WAS HIN...) #Librarys (pfade) (obsolet durch statisches linken(s.o.)?) LIP_BOX2D = $(LIBS_PATH)$(VER_BOX2D)/$(LB) LIP_OGG = $(LIBS_PATH)$(VER_OGG)/$(LB) LIP_OPENAL = $(LIBS_PATH)$(VER_OPENAL)/$(LB) LIP_SDL = $(LIBS_PATH)$(VER_SDL)/$(LB) LIP_SDL_IMAGE = $(LIBS_PATH)$(VER_SDL_IMAGE)/$(LB) LIP_TINYXML = $(LIBS_PATH)$(VER_TINYXML)/$(LB) LIP_VORBIS = $(LIBS_PATH)$(VER_VORBIS)/$(LB) LIP_ALL = -L$(LIP_BOX2D) -L$(LIP_OGG) -L$(LIP_OPENAL) -L$(LIP_SDL) -L$(LIP_SDL_IMAGE) -L$(LIP_TINYXML) -L$(LIP_VORBIS) #zu linkende Libraries (obsolet durch statisches linken(s.o.)?) LINK_BOX2D = -lbox2d LINK_OGG = -logg LINK_OPENAL = -lopenal LINK_SDL = -lSDL -lSDLmain LINK_SDL_IMAGE = -lSDL_image LINK_SDL_IMAGE_FORMATS = -lpng -ltiff -ljpeg -lz LINK_TINYXML = -ltinyxml LINK_VORBIS = -lvorbisfile -lvorbis LINK_OPENGL = -lGL -lglut LINK_ALL = $(LINK_SDL) $(LINK_SDL_IMAGE) $(LINK_SDL_IMAGE_FORMATS) $(LINK_VORBIS) $(LINK_OGG) $(LINK_BOX2D) $(LINK_TINYXML) $(LINK_OPENGL) $(LINK_OPENAL) #Bibliotheken-Header (pfade) INC_BOX2D = $(LIBS_PATH)$(VER_BOX2D)/$(IC)Include/ INC_OGG = $(LIBS_PATH)$(VER_OGG)/$(IC)ogg/ INC_OPENAL = $(LIBS_PATH)$(VER_OPENAL)/$(IC) INC_SDL = $(LIBS_PATH)$(VER_SDL)/$(IC) INC_SDL_IMAGE = $(LIBS_PATH)$(VER_SDL_IMAGE)/$(IC) INC_TINYXML = $(LIBS_PATH)$(VER_TINYXML)/$(IC) INC_VORBIS = $(LIBS_PATH)$(VER_VORBIS)/$(IC) INC_ALL = -I$(INC_SDL) -I$(INC_SDL_IMAGE) -I$(INC_BOX2D) -I$(INC_TINYXML) -I$(INC_OGG) -I$(INC_VORBIS) -I$(INC_OPENAL) -I$(INCLUDE_PATH) default: all all: $(OBJ) $(CC) $(TEMP_PATH)*.o $(LIP_ALL) $(LINK_ALL) -o $(BIN_PATH)rollmorad %.o: $(SRC_PATH)%.cpp mkdir -p $(TEMP_PATH) $(ADDNEWLINE) $(SRC_PATH)*.cpp $(INCLUDE_PATH)*.h $(CC) $(CFLAGS) $(SRC_PATH)$*.cpp -o $(TEMP_PATH)$@ $(INC_ALL) clean: rm -rf $(TEMP_PATH) real_clean: clean rm -f $(BIN_PATH)* test: echo $(SRC)