|
| 1 | +# Makefile for Irrlicht Examples |
| 2 | +# It's usually sufficient to change just the target name and source file list |
| 3 | +# and be sure that CXX is set to a valid compiler |
| 4 | +TARGET = test |
| 5 | +SOURCE_FILES = 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 |
| 6 | +SOURCES = $(addprefix src/, $(SOURCE_FILES)) |
| 7 | +OBJECTS = $(SOURCES:.cpp=.o) |
| 8 | +FASTTARGET = fasttest |
| 9 | + |
| 10 | +IRRLICHTPATH = ../irrlicht/irrlicht-1.7.1 |
| 11 | +JTHREADPATH = ../jthread/jthread-1.2.1 |
| 12 | + |
| 13 | +CPPFLAGS = -I$(IRRLICHTPATH)/include -I/usr/X11R6/include -I$(JTHREADPATH)/src |
| 14 | + |
| 15 | +#CXXFLAGS = -O2 -ffast-math -Wall -fomit-frame-pointer -pipe |
| 16 | +CXXFLAGS = -O2 -ffast-math -Wall -g |
| 17 | +#CXXFLAGS = -O1 -ffast-math -Wall -g |
| 18 | +#CXXFLAGS = -Wall -g -O0 |
| 19 | + |
| 20 | +#CXXFLAGS = -O3 -ffast-math -Wall |
| 21 | +#CXXFLAGS = -O3 -ffast-math -Wall -g |
| 22 | +#CXXFLAGS = -O2 -ffast-math -Wall -g |
| 23 | + |
| 24 | +#FASTCXXFLAGS = -O3 -ffast-math -Wall -fomit-frame-pointer -pipe -funroll-loops -mtune=pentium3 |
| 25 | +FASTCXXFLAGS = -O3 -ffast-math -Wall -fomit-frame-pointer -pipe -funroll-loops -mtune=i686 |
| 26 | + |
| 27 | +#Default target |
| 28 | + |
| 29 | +all: all_linux |
| 30 | + |
| 31 | +ifeq ($(HOSTTYPE), x86_64) |
| 32 | +LIBSELECT=64 |
| 33 | +endif |
| 34 | + |
| 35 | +# Target specific settings |
| 36 | + |
| 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 |
| 38 | +all_linux fast_linux clean_linux: SYSTEM=Linux |
| 39 | + |
| 40 | +all_win32: LDFLAGS = -L$(IRRLICHTPATH)/lib/Win32-gcc -L$(JTHREADPATH)/Debug -lIrrlicht -lopengl32 -lm -ljthread |
| 41 | +all_win32 clean_win32: SYSTEM=Win32-gcc |
| 42 | +all_win32 clean_win32: SUF=.exe |
| 43 | + |
| 44 | +# Name of the binary - only valid for targets which set SYSTEM |
| 45 | + |
| 46 | +DESTPATH = bin/$(TARGET)$(SUF) |
| 47 | +FASTDESTPATH = bin/$(FASTTARGET)$(SUF) |
| 48 | + |
| 49 | +# Build commands |
| 50 | + |
| 51 | +all_linux all_win32: $(DESTPATH) |
| 52 | + |
| 53 | +fast_linux: $(FASTDESTPATH) |
| 54 | + |
| 55 | +$(FASTDESTPATH): $(SOURCES) |
| 56 | + $(CXX) -o $(FASTDESTPATH) $(SOURCES) $(CPPFLAGS) $(FASTCXXFLAGS) $(LDFLAGS) -DUNITTEST_DISABLE |
| 57 | + |
| 58 | +$(DESTPATH): $(OBJECTS) |
| 59 | + $(CXX) -o $@ $(OBJECTS) $(LDFLAGS) |
| 60 | + |
| 61 | +.cpp.o: |
| 62 | + $(CXX) -c -o $@ $< $(CPPFLAGS) $(CXXFLAGS) |
| 63 | + |
| 64 | +clean: clean_linux clean_win32 clean_fast_linux |
| 65 | + |
| 66 | +clean_linux clean_win32: |
| 67 | + @$(RM) $(OBJECTS) $(DESTPATH) |
| 68 | + |
| 69 | +clean_fast_linux: |
| 70 | + @$(RM) $(FASTDESTPATH) |
| 71 | + |
| 72 | +.PHONY: all all_win32 clean clean_linux clean_win32 |
0 commit comments