diff options
| author | Alexander Pickering <alex@cogarr.net> | 2018-06-23 06:52:55 -0600 |
|---|---|---|
| committer | Alexander Pickering <alex@cogarr.net> | 2018-06-23 06:52:55 -0600 |
| commit | e6faff1394864a1fe0d517584d1c104997dff39f (patch) | |
| tree | d7956fc8aabef903f354578d69d4d7fdf64ec928 /Makefile | |
| parent | 1aaa348ac080c97c0aeb0a02146ae26b74add5a1 (diff) | |
| parent | 9fa5dcc9310a8c6ff8c77a47a86303f7b950dcf3 (diff) | |
| download | brokengine-e6faff1394864a1fe0d517584d1c104997dff39f.tar.gz brokengine-e6faff1394864a1fe0d517584d1c104997dff39f.tar.bz2 brokengine-e6faff1394864a1fe0d517584d1c104997dff39f.zip | |
Merge branch 'master' of ssh://cogarr.net:43/home/git/brokengine
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 64 |
1 files changed, 50 insertions, 14 deletions
@@ -1,10 +1,33 @@ + +#Detect what kind of system we're on +ifeq ($(OS), Windows_NT) + UNAME:=Windows +else + UNAME:=$(shell uname -s) +endif + +ifeq ($(UNAME), Windows) + EXE_EXT=.exe + STA_LIB_EXT=.lib + DYN_LIB_EXT=.dll +endif + +ifeq ($(UNAME), Linux) + EXE_EXT= + STA_LIB_EXT=.a + DYN_LIB_EXT=.so +endif + + #Run with mingw32-make -CLIENT_EXE=borkengin.exe +CLIENT_NAME=brokengine +CLIENT_EXE=$(CLIENT_NAME)$(EXE_EXT) CLIENT_PATH=bin/client/bin/$(CLIENT_EXE) CLIENT_SRC=src/client/ CLIENT_BUILD=build/client/ -SERVER_EXE=borkserver.exe +SERVER_NAME=brokeserver +SERVER_EXE=$(SERVER_NAME)$(EXE_EXT) SERVER_PATH=bin/server/bin/$(SERVER_EXE) SERVER_SRC=src/server/ SERVER_BUILD=build/server/ @@ -27,7 +50,8 @@ ILUADIR=./lib/luajit/lua-5.1.5/src IIRRDIR=./lib/irrlicht/irrlicht-1.8.4/include IBULDIR=./lib/bullet/bullet3-2.86.1/bullet3-2.86.1/src INANDIR=./lib/nanomsg/nanomsg-1.0.0/src -INCLUDES=-I$(ILUADIR) -I$(IIRRDIR) -I$(IBULDIR) -I$(INANDIR) +ISHADIR=./src +INCLUDES=-I$(ILUADIR) -I$(IIRRDIR) -I$(IBULDIR) -I$(INANDIR) -I$(ISHADIR) #library directories LLUADIR=lib/luajit @@ -43,27 +67,39 @@ LIBBCO=$(LBULDIR)/libBulletCollision.a LIBBDY=$(LBULDIR)/libBulletDynamics.a LIBBLM=$(LBULDIR)/libLinearMath.a LIBNAN=$(LNANDIR)/libnanomsg.dll.a +LIBIRR=$(LIRRDIR)/libIrrlicht.a DLLIRR=$(LIRRDIR)/Irrlicht.dll -DYNAMIC_LIBS = -llua -lnanomsg.dll -lIrrlicht +DYNAMIC_LIBS = -lnanomsg.dll #-lIrrlicht #order matters! -STATIC_LIBS = -lBulletDynamics -lBulletCollision -lLinearMath +STATIC_LIBS = -lBulletDynamics -lBulletCollision -lLinearMath -lIrrlicht -llua LIBS=-Bstatic $(STATIC_LIBS) -Bdynamic $(DYNAMIC_LIBS) -SLIBS=$(LIBLUA) $(LIBIRR) $(LIBBDY) $(LIBBCO) $(LIBBLM) $(LIBNAN) $(DLLIRR) +SLIBS=$(LIBLUA) $(LIBIRR) $(LIBBDY) $(LIBBCO) $(LIBBLM) $(LIBNAN) -#can't compile with -std=c++11 because irrlicht will complain -CFLAGS=-Wall -g -static $(INCLUDES) -LDFLAGS=-mwindows + +#can't compile with -std=c++11 because irrlicht will complain +CFLAGS=-Wall -static $(INCLUDES) +LDFLAGS= +ifeq ($(UNAME),Windows) + LDFLAGS+=-mwindows -Wl,-subsystem,windows +endif + +ifeq ($(DEBUG),true) + CFLAGS+=-g -O0 +else + CFLAGS+=-O3 + #LDFLAGS+=--strip-all +endif all : $(CLIENT_PATH) $(SERVER_PATH) client : $(CLIENT_PATH) server : $(SERVER_PATH) #Compile the client $(CLIENT_PATH) : $(CLIENT_BUILD)main.o $(CLIENT_BUILD)initdevice.o $(CLIENT_BUILD)menuhandeler.o $(CLIENT_BUILD)load_gui.o $(CLIENT_BUILD)callbackhandeler.o $(CLIENT_BUILD)load_game.o $(CLIENT_BUILD)load_scene.o $(CLIENT_BUILD)load_phys.o $(CLIENT_BUILD)common.o $(CLIENT_BUILD)load_net.o $(CLIENT_BUILD)physcommon.o $(SLIBS) $(CLIENT_BUILD)load_video.o - $(CC) -o $(CLIENT_PATH) -static $(CLIENT_BUILD)*.o $(LIBRARIES) $(DYNAMIC_LIBS) $(STATIC_LIBS) $(SLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $(CLIENT_PATH) $(CLIENT_BUILD)*.o $(LIBRARIES) $(DYNAMIC_LIBS) $(STATIC_LIBS) $(SLIBS) $(CLIENT_BUILD)main.o : $(CLIENT_SRC)main.cpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)main.o $(CLIENT_SRC)main.cpp @@ -89,7 +125,7 @@ $(CLIENT_BUILD)menuhandeler.o : $(CLIENT_SRC)menuhandeler.cpp $(CLIENT_SRC)menuh $(CLIENT_BUILD)load_game.o : $(CLIENT_SRC)lua_api/load_game.cpp $(CLIENT_SRC)lua_api/load_game.hpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)load_game.o $(CLIENT_SRC)lua_api/load_game.cpp -$(CLIENT_BUILD)load_gui.o : $(CLIENT_BUILD)iguibutton.o $(CLIENT_BUILD)iguilabel.o $(CLIENT_BUILD)iguielement.o $(CLIENT_BUILD)iguigeneric.o $(CLIENT_BUILD)iguiwindow.o $(CLIENT_BUILD)iguiskin.o $(CLIENT_BUILD)iguicheckbox.o $(CLIENT_BUILD)common.o $(CLIENT_BUILD)iguiimage.o $(CLIENT_SRC)lua_api/load_gui.cpp $(CLIENT_SRC)lua_api/load_gui.hpp +$(CLIENT_BUILD)load_gui.o : $(CLIENT_BUILD)iguibutton.o $(CLIENT_BUILD)iguilabel.o $(CLIENT_BUILD)iguielement.o $(CLIENT_BUILD)iguiwindow.o $(CLIENT_BUILD)iguiskin.o $(CLIENT_BUILD)iguicheckbox.o $(CLIENT_BUILD)common.o $(CLIENT_BUILD)iguiimage.o $(CLIENT_SRC)lua_api/load_gui.cpp $(CLIENT_SRC)lua_api/load_gui.hpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)load_gui.o $(CLIENT_SRC)lua_api/load_gui.cpp $(CLIENT_BUILD)iguiimage.o : $(CLIENT_SRC)lua_api/gui/iguiimage.cpp $(CLIENT_SRC)lua_api/gui/iguiimage.hpp @@ -113,16 +149,16 @@ $(CLIENT_BUILD)itexture.o : $(CLIENT_SRC)lua_api/video/itexture.cpp $(CLIENT_SRC $(CLIENT_BUILD)iimage.o : $(CLIENT_SRC)lua_api/video/iimage.cpp $(CLIENT_SRC)lua_api/video/iimage.hpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)iimage.o $(CLIENT_SRC)lua_api/video/iimage.cpp -$(CLIENT_BUILD)load_phys.o : $(CLIENT_BUILD)cbphysbox.o $(CLIENT_BUILD)bphysmodel.o +$(CLIENT_BUILD)load_phys.o : $(CLIENT_BUILD)cbphysbox.o $(CLIENT_BUILD)bphysmodel.o $(CLIENT_SRC)lua_api/load_phys.cpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)load_phys.o $(CLIENT_SRC)lua_api/load_phys.cpp -$(CLIENT_BUILD)load_scene.o : $(CLIENT_BUILD)icamera.o $(CLIENT_BUILD)ilight.o $(CLIENT_BUILD)imesh.o $(CLIENT_BUILD)cbphysbox.o +$(CLIENT_BUILD)load_scene.o : $(CLIENT_BUILD)icamera.o $(CLIENT_BUILD)ilight.o $(CLIENT_BUILD)imesh.o $(CLIENT_BUILD)cbphysbox.o $(CLIENT_SRC)/lua_api/load_scene.cpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)load_scene.o $(CLIENT_SRC)lua_api/load_scene.cpp $(CLIENT_BUILD)ilight.o : $(CLIENT_SRC)lua_api/scene/ilight.cpp $(CLIENT_SRC)lua_api/scene/ilight.hpp $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)ilight.o $(CLIENT_SRC)lua_api/scene/ilight.cpp -$(CLIENT_BUILD)iguibutton.o : $(CLIENT_SRC)lua_api/gui/iguibutton.cpp $(CLIENT_SRC)lua_api/gui/iguibutton.hpp $(CLIENT_SRC)lua_api/guiparts.hpp $(CLIENT_SRC)callbackhandeler.hpp $(CLIENT_SRC)util/hashmap.h +$(CLIENT_BUILD)iguibutton.o : $(CLIENT_SRC)lua_api/gui/iguibutton.cpp $(CLIENT_SRC)lua_api/gui/iguibutton.hpp $(CLIENT_SRC)lua_api/guiparts.hpp $(CLIENT_SRC)callbackhandeler.hpp $(CLIENT_SRC)util/hashmap.h $(SHARED_SRC)lua_api/common.c $(SHARED_SRC)lua_api/common.h $(CC) $(CFLAGS) -c -o $(CLIENT_BUILD)iguibutton.o $(CLIENT_SRC)lua_api/gui/iguibutton.cpp $(CLIENT_BUILD)iguilabel.o : $(CLIENT_SRC)lua_api/gui/iguilabel.cpp $(CLIENT_SRC)lua_api/gui/iguilabel.hpp |
