| 1 | #NAME: Project name |
|---|
| 2 | #OBJDIR: Directory to put object files |
|---|
| 3 | #CC: C/C++ compiler to be used |
|---|
| 4 | #CFLAGS: Flags for the compiler |
|---|
| 5 | #LD: Linker to use |
|---|
| 6 | #LDFLAGS: Flags for linker |
|---|
| 7 | |
|---|
| 8 | NAME = mmpong |
|---|
| 9 | SVN_REV = $(shell svnversion -n .) |
|---|
| 10 | # Only client-gl uses resources at the moment (all the others default to empty string) |
|---|
| 11 | CLIENT_GL_RES_PATH = resources\/ |
|---|
| 12 | OBJDIR = ./build |
|---|
| 13 | |
|---|
| 14 | CC = gcc |
|---|
| 15 | CXX = g++ |
|---|
| 16 | LD = gcc |
|---|
| 17 | # Beware: Some shell built-in echoes lack support of the -e parameter |
|---|
| 18 | ECHO = /bin/echo |
|---|
| 19 | RST = $(ECHO) -ne '\033[0m' |
|---|
| 20 | FAIL = /bin/false |
|---|
| 21 | |
|---|
| 22 | SERVER_PKGS := |
|---|
| 23 | CLIENT_CACA_PKGS := caca |
|---|
| 24 | CLIENT_GL_PKGS := sdl CEGUI-OPENGL |
|---|
| 25 | LIB_PKGS := |
|---|
| 26 | COMMON_CXXFLAGS := $(CFLAGS) -I. -Wall -fPIC -fpic -g |
|---|
| 27 | COMMON_CFLAGS := $(COMMON_CXXFLAGS) -std=gnu99 |
|---|
| 28 | |
|---|
| 29 | SERVER_CFLAGS := $(COMMON_CFLAGS) |
|---|
| 30 | SERVER_LDLIBS := -Wl,-rpath,. |
|---|
| 31 | SERVER_LDSTAT := -lpthread |
|---|
| 32 | ifneq ("$(strip $(SERVER_PKGS))","") |
|---|
| 33 | SERVER_CFLAGS := $(SERVER_CFLAGS) `pkg-config --cflags $(SERVER_PKGS)` |
|---|
| 34 | SERVER_LDLIBS := $(SERVER_LDLIBS) `pkg-config --libs $(SERVER_PKGS)` |
|---|
| 35 | endif |
|---|
| 36 | |
|---|
| 37 | CLIENT_CACA_CFLAGS := $(COMMON_CFLAGS) |
|---|
| 38 | CLIENT_CACA_LDLIBS := -Wl,-rpath,. |
|---|
| 39 | CLIENT_CACA_LDSTAT := |
|---|
| 40 | ifneq ("$(strip $(CLIENT_CACA_PKGS))","") |
|---|
| 41 | CLIENT_CACA_CFLAGS := $(CLIENT_CACA_CFLAGS) `pkg-config --cflags $(CLIENT_CACA_PKGS)` |
|---|
| 42 | CLIENT_CACA_LDLIBS := $(CLIENT_CACA_LDLIBS) `pkg-config --libs $(CLIENT_CACA_PKGS)` |
|---|
| 43 | endif |
|---|
| 44 | |
|---|
| 45 | CLIENT_GL_CFLAGS := $(COMMON_CFLAGS) |
|---|
| 46 | CLIENT_GL_CXXFLAGS := $(COMMON_CXXFLAGS) |
|---|
| 47 | CLIENT_GL_LDLIBS := -lGL -lGLU -lSDL_image -lSDL_mixer -Wl,-rpath,. |
|---|
| 48 | CLIENT_GL_LDSTAT := |
|---|
| 49 | ifneq ("$(strip $(CLIENT_GL_PKGS))","") |
|---|
| 50 | CLIENT_GL_CFLAGS := $(CLIENT_GL_CFLAGS) `pkg-config --cflags $(CLIENT_GL_PKGS)` |
|---|
| 51 | CLIENT_GL_CXXFLAGS := $(CLIENT_GL_CXXFLAGS) `pkg-config --cflags $(CLIENT_GL_PKGS)` |
|---|
| 52 | CLIENT_GL_LDLIBS := $(CLIENT_GL_LDLIBS) `pkg-config --libs $(CLIENT_GL_PKGS)` |
|---|
| 53 | endif |
|---|
| 54 | |
|---|
| 55 | LIB_CFLAGS := $(COMMON_CFLAGS) |
|---|
| 56 | LIB_LDLIBS := -lm |
|---|
| 57 | LIB_LDSTAT := |
|---|
| 58 | ifneq ("$(strip $(LIB_PKGS))","") |
|---|
| 59 | LIB_CFLAGS := $(LIB_CFLAGS) `pkg-config --cflags $(LIB_PKGS)` |
|---|
| 60 | LIB_LDLIBS := $(LIB_LDLIBS) `pkg-config --libs $(LIB_PKGS)` |
|---|
| 61 | endif |
|---|
| 62 | |
|---|
| 63 | ALL_CFLAGS := $(LIB_CFLAGS) $(SERVER_CFLAGS) $(CLIENT_GL_CFLAGS) $(CLIENT_CACA_CFLAGS) |
|---|
| 64 | ALL_CXXFLAGS := $(LIB_CXXFLAGS) $(SERVER_CXXFLAGS) $(CLIENT_GL_CXXFLAGS) $(CLIENT_CACA_CXXFLAGS) |
|---|