]> git.lizzy.rs Git - dragonfireclient.git/blob - Makefile
license stuff
[dragonfireclient.git] / Makefile
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 TARGET = test\r
5 SOURCE_FILES = 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
6 SOURCES = $(addprefix src/, $(SOURCE_FILES))\r
7 OBJECTS = $(SOURCES:.cpp=.o)\r
8 FASTTARGET = fasttest\r
9 \r
10 IRRLICHTPATH = ../irrlicht/irrlicht-1.7.1\r
11 JTHREADPATH = ../jthread/jthread-1.2.1\r
12 \r
13 CPPFLAGS = -I$(IRRLICHTPATH)/include -I/usr/X11R6/include -I$(JTHREADPATH)/src\r
14 \r
15 #CXXFLAGS = -O2 -ffast-math -Wall -fomit-frame-pointer -pipe\r
16 CXXFLAGS = -O2 -ffast-math -Wall -g -pipe\r
17 #CXXFLAGS = -O1 -ffast-math -Wall -g\r
18 #CXXFLAGS = -Wall -g -O0\r
19 \r
20 #CXXFLAGS = -O3 -ffast-math -Wall\r
21 #CXXFLAGS = -O3 -ffast-math -Wall -g\r
22 #CXXFLAGS = -O2 -ffast-math -Wall -g\r
23 \r
24 FASTCXXFLAGS = -O3 -ffast-math -Wall -fomit-frame-pointer -pipe -funroll-loops -mtune=i686\r
25 #FASTCXXFLAGS = -O3 -ffast-math -Wall -fomit-frame-pointer -pipe -funroll-loops -mtune=i686 -fwhole-program\r
26 \r
27 #Default target\r
28 \r
29 all: all_linux\r
30 \r
31 ifeq ($(HOSTTYPE), x86_64)\r
32 LIBSELECT=64\r
33 endif\r
34 \r
35 # Target specific settings\r
36 \r
37 all_linux fast_linux: LDFLAGS = -L/usr/X11R6/lib$(LIBSELECT) -L$(IRRLICHTPATH)/lib/Linux -L$(JTHREADPATH)/src/.libs -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -ljthread\r
38 all_linux fast_linux clean_linux: SYSTEM=Linux\r
39 \r
40 all_win32: LDFLAGS = -L$(IRRLICHTPATH)/lib/Win32-gcc -L$(JTHREADPATH)/Debug -lIrrlicht -lopengl32 -lm -ljthread\r
41 all_win32 clean_win32: SYSTEM=Win32-gcc\r
42 all_win32 clean_win32: SUF=.exe\r
43 \r
44 # Name of the binary - only valid for targets which set SYSTEM\r
45 \r
46 DESTPATH = bin/$(TARGET)$(SUF)\r
47 FASTDESTPATH = bin/$(FASTTARGET)$(SUF)\r
48 \r
49 # Build commands\r
50 \r
51 all_linux all_win32: $(DESTPATH)\r
52 \r
53 fast_linux: $(FASTDESTPATH)\r
54 \r
55 $(FASTDESTPATH): $(SOURCES)\r
56         $(CXX) -o $(FASTDESTPATH) $(SOURCES) $(CPPFLAGS) $(FASTCXXFLAGS) $(LDFLAGS) -DUNITTEST_DISABLE\r
57         @# Errno doesn't work ("error: ‘__errno_location’ was not declared in this scope")\r
58         @#cat $(SOURCES) | $(CXX) -o $(FASTDESTPATH) -x c++ - -Isrc/ $(CPPFLAGS) $(FASTCXXFLAGS) $(LDFLAGS) -DUNITTEST_DISABLE -DDISABLE_ERRNO\r
59 \r
60 $(DESTPATH): $(OBJECTS)\r
61         $(CXX) -o $@ $(OBJECTS) $(LDFLAGS)\r
62 \r
63 .cpp.o:\r
64         $(CXX) -c -o $@ $< $(CPPFLAGS) $(CXXFLAGS)\r
65 \r
66 clean: clean_linux clean_win32 clean_fast_linux\r
67 \r
68 clean_linux clean_win32:\r
69         @$(RM) $(OBJECTS) $(DESTPATH)\r
70 \r
71 clean_fast_linux:\r
72         @$(RM) $(FASTDESTPATH)\r
73 \r
74 .PHONY: all all_win32 clean clean_linux clean_win32\r