Reorganizing stuff (import from temporary git repo)
[oweals/minetest.git] / old / Makefile.bak
1 # Makefile for Irrlicht Examples\r
2 # It's usually sufficient to change just the target name and source file list\r
3 # and be sure that CXX is set to a valid compiler\r
4 SOURCE_FILES = porting.cpp guiMessageMenu.cpp materials.cpp guiTextInputMenu.cpp guiInventoryMenu.cpp irrlichtwrapper.cpp guiPauseMenu.cpp defaultsettings.cpp mapnode.cpp tile.cpp voxel.cpp mapblockobject.cpp inventory.cpp debug.cpp serialization.cpp light.cpp filesys.cpp connection.cpp environment.cpp client.cpp server.cpp socket.cpp mapblock.cpp mapsector.cpp heightmap.cpp map.cpp player.cpp utility.cpp main.cpp test.cpp\r
5 \r
6 DEBUG_TARGET = debugtest\r
7 DEBUG_SOURCES = $(addprefix src/, $(SOURCE_FILES))\r
8 DEBUG_BUILD_DIR = debugbuild\r
9 DEBUG_OBJECTS = $(addprefix $(DEBUG_BUILD_DIR)/, $(SOURCE_FILES:.cpp=.o))\r
10 \r
11 FAST_TARGET = fasttest\r
12 FAST_SOURCES = $(addprefix src/, $(SOURCE_FILES))\r
13 FAST_BUILD_DIR = fastbuild\r
14 FAST_OBJECTS = $(addprefix $(FAST_BUILD_DIR)/, $(SOURCE_FILES:.cpp=.o))\r
15 \r
16 SERVER_TARGET = server\r
17 SERVER_SOURCE_FILES = porting.cpp materials.cpp defaultsettings.cpp mapnode.cpp voxel.cpp mapblockobject.cpp inventory.cpp debug.cpp serialization.cpp light.cpp filesys.cpp connection.cpp environment.cpp server.cpp socket.cpp mapblock.cpp mapsector.cpp heightmap.cpp map.cpp player.cpp utility.cpp servermain.cpp test.cpp\r
18 SERVER_SOURCES = $(addprefix src/, $(SERVER_SOURCE_FILES))\r
19 SERVER_BUILD_DIR = serverbuild\r
20 SERVER_OBJECTS = $(addprefix $(SERVER_BUILD_DIR)/, $(SERVER_SOURCE_FILES:.cpp=.o))\r
21 \r
22 IRRLICHTPATH = ../irrlicht/irrlicht-1.7.1\r
23 JTHREADPATH = ../jthread/jthread-1.2.1\r
24 \r
25 \r
26 all: fast\r
27 \r
28 ifeq ($(HOSTTYPE), x86_64)\r
29 LIBSELECT=64\r
30 endif\r
31 \r
32 debug: CXXFLAGS = -Wall -g -O1\r
33 debug: CPPFLAGS = -I$(IRRLICHTPATH)/include -I/usr/X11R6/include -I$(JTHREADPATH)/src -DDEBUG -DRUN_IN_PLACE\r
34 debug: LDFLAGS = -L/usr/X11R6/lib$(LIBSELECT) -L$(IRRLICHTPATH)/lib/Linux -L$(JTHREADPATH)/src/.libs -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -ljthread -lz\r
35 \r
36 fast: CXXFLAGS = -O3 -ffast-math -Wall -fomit-frame-pointer -pipe -funroll-loops -mtune=i686\r
37 fast: CPPFLAGS = -I$(IRRLICHTPATH)/include -I/usr/X11R6/include -I$(JTHREADPATH)/src -DUNITTEST_DISABLE -DRUN_IN_PLACE\r
38 fast: LDFLAGS = -L/usr/X11R6/lib$(LIBSELECT) -L$(IRRLICHTPATH)/lib/Linux -L$(JTHREADPATH)/src/.libs -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -ljthread -lz\r
39 \r
40 server: CXXFLAGS = -O3 -ffast-math -Wall -fomit-frame-pointer -pipe -funroll-loops -mtune=i686\r
41 server: CPPFLAGS = -I$(IRRLICHTPATH)/include -I/usr/X11R6/include -I$(JTHREADPATH)/src -DSERVER -DUNITTEST_DISABLE -DRUN_IN_PLACE\r
42 server: LDFLAGS = -L$(JTHREADPATH)/src/.libs -ljthread -lz -lpthread\r
43 \r
44 DEBUG_DESTPATH = bin/$(DEBUG_TARGET)\r
45 FAST_DESTPATH = bin/$(FAST_TARGET)\r
46 SERVER_DESTPATH = bin/$(SERVER_TARGET)\r
47 \r
48 # Build commands\r
49 \r
50 debug: $(DEBUG_BUILD_DIR) $(DEBUG_DESTPATH)\r
51 fast: $(FAST_BUILD_DIR) $(FAST_DESTPATH)\r
52 server: $(SERVER_BUILD_DIR) $(SERVER_DESTPATH)\r
53 \r
54 $(DEBUG_BUILD_DIR):\r
55         mkdir -p $(DEBUG_BUILD_DIR)\r
56 $(FAST_BUILD_DIR):\r
57         mkdir -p $(FAST_BUILD_DIR)\r
58 $(SERVER_BUILD_DIR):\r
59         mkdir -p $(SERVER_BUILD_DIR)\r
60 \r
61 $(DEBUG_DESTPATH): $(DEBUG_OBJECTS)\r
62         $(CXX) -o $@ $(DEBUG_OBJECTS) $(LDFLAGS)\r
63 \r
64 $(FAST_DESTPATH): $(FAST_OBJECTS)\r
65         $(CXX) -o $@ $(FAST_OBJECTS) $(LDFLAGS)\r
66 \r
67 $(SERVER_DESTPATH): $(SERVER_OBJECTS)\r
68         $(CXX) -o $@ $(SERVER_OBJECTS) $(LDFLAGS)\r
69 \r
70 $(DEBUG_BUILD_DIR)/%.o: src/%.cpp\r
71         $(CXX) -c -o $@ $< $(CPPFLAGS) $(CXXFLAGS)\r
72 \r
73 $(FAST_BUILD_DIR)/%.o: src/%.cpp\r
74         $(CXX) -c -o $@ $< $(CPPFLAGS) $(CXXFLAGS)\r
75 \r
76 $(SERVER_BUILD_DIR)/%.o: src/%.cpp\r
77         $(CXX) -c -o $@ $< $(CPPFLAGS) $(CXXFLAGS)\r
78 \r
79 clean: clean_debug clean_fast clean_server\r
80 \r
81 clean_debug:\r
82         @$(RM) $(DEBUG_OBJECTS) $(DEBUG_DESTPATH)\r
83 \r
84 clean_fast:\r
85         @$(RM) $(FAST_OBJECTS) $(FAST_DESTPATH)\r
86 \r
87 clean_server:\r
88         @$(RM) $(SERVER_OBJECTS) $(SERVER_DESTPATH)\r
89 \r
90 .PHONY: all all_win32 clean clean_debug clean_win32 clean_fast clean_server\r