mirror of https://github.com/axmolengine/axmol.git
95 lines
3.0 KiB
Makefile
95 lines
3.0 KiB
Makefile
CC = gcc
|
|
CXX = g++
|
|
TARGET = HelloCpp
|
|
CCFLAGS = -Wall
|
|
CXXFLAGS = -Wall
|
|
VISIBILITY =
|
|
|
|
COCOS2DX_PATH = ../../../cocos2dx
|
|
INCLUDES = -I../ \
|
|
-I../Classes \
|
|
-I$(COCOS2DX_PATH) \
|
|
-I$(COCOS2DX_PATH)/platform/third_party/linux \
|
|
-I$(COCOS2DX_PATH)/platform/third_party/linux/libfreetype2 \
|
|
-I$(COCOS2DX_PATH)/cocoa \
|
|
-I$(COCOS2DX_PATH)/include \
|
|
-I$(COCOS2DX_PATH)/platform \
|
|
-I$(COCOS2DX_PATH)/platform/linux \
|
|
-I$(COCOS2DX_PATH)/platform/third_party/linux/glew-1.7.0/glew-1.7.0/include/ \
|
|
-I$(COCOS2DX_PATH)/kazmath/include \
|
|
-I$(COCOS2DX_PATH)/platform/third_party/linux/libxml2 \
|
|
-I$(COCOS2DX_PATH)/platform/third_party/linux/libjpeg \
|
|
|
|
|
|
DEFINES = -DLINUX
|
|
|
|
OBJECTS = ./main.o \
|
|
../Classes/AppDelegate.o \
|
|
../Classes/HelloWorldScene.o
|
|
|
|
LBITS := $(shell getconf LONG_BIT)
|
|
ifeq ($(LBITS),64)
|
|
STATICLIBS_DIR = ../../../cocos2dx/platform/third_party/linux/libraries/lib64
|
|
else
|
|
STATICLIBS_DIR = ../../../cocos2dx/platform/third_party/linux/libraries
|
|
endif
|
|
STATICLIBS =
|
|
STATICLIBS = $(STATICLIBS_DIR)/libfreetype.a \
|
|
$(STATICLIBS_DIR)/libxml2.a \
|
|
$(STATICLIBS_DIR)/libpng.a \
|
|
$(STATICLIBS_DIR)/libjpeg.a \
|
|
$(STATICLIBS_DIR)/libtiff.a \
|
|
# $(STATICLIBS_DIR)/libGLEW.a \
|
|
|
|
SHAREDLIBS =
|
|
ifeq ($(LBITS),64)
|
|
SHAREDLIBS_DIR = ../../../CocosDenshion/third_party/fmod/lib64/api/lib
|
|
SHAREDLIBS = -L$(SHAREDLIBS_DIR) -lfmodex64
|
|
else
|
|
SHAREDLIBS_DIR = ../../../CocosDenshion/third_party/fmod/api/lib
|
|
SHAREDLIBS = -L$(SHAREDLIBS_DIR) -lfmodex
|
|
endif
|
|
|
|
SHAREDLIBS += -lglfw -lGL
|
|
#SHAREDLIBS += -L../../../lib/linux/Debug -lcocos2d -lrt -lz -lcocosdenshion -Wl,-rpath,../../../../lib/linux/Debug/
|
|
SHAREDLIBS += -Wl,-rpath,../../$(SHAREDLIBS_DIR)
|
|
#SHAREDLIBS += -Wl,-rpath,../../../../cocos2dx/platform/third_party/linux/glew-1.7.0/glew-1.7.0/lib
|
|
SHAREDLIBS += -L../../../cocos2dx/platform/third_party/linux/glew-1.7.0/glew-1.7.0/lib -lGLEW
|
|
SHAREDLIBS += -Wl,-rpath,../../../../../cocos2dx/platform/third_party/linux/glew-1.7.0/glew-1.7.0/lib
|
|
|
|
#$(shell ../../build-linux.sh $<)
|
|
|
|
BIN_DIR_ROOT=bin
|
|
BIN_DIR = $(BIN_DIR_ROOT)
|
|
|
|
debug: BIN_DIR = $(BIN_DIR_ROOT)/debug
|
|
debug: CCFLAGS += -g3 -O0
|
|
debug: CXXFLAGS += -g3 -O0
|
|
debug: SHAREDLIBS += -L../../../lib/linux/Debug -lcocos2d -lrt -lz -lcocosdenshion
|
|
debug: SHAREDLIBS += -Wl,-rpath,../../../../../lib/linux/Debug/
|
|
debug: DEFINES += -DDEBUG -DCOCOS2D_DEBUG=1
|
|
debug: $(TARGET)
|
|
|
|
release: BIN_DIR = $(BIN_DIR_ROOT)/release
|
|
release: CCFLAGS += -O3
|
|
release: CXXFLAGS += -O3
|
|
release: SHAREDLIBS += -L../../../lib/linux/Release -lcocos2d -lrt -lz -lcocosdenshion
|
|
release: SHAREDLIBS += -Wl,-rpath,../../../../../lib/linux/Release/
|
|
release: DEFINES += -DNDEBUG
|
|
release: $(TARGET)
|
|
|
|
####### Build rules
|
|
$(TARGET): $(OBJECTS)
|
|
mkdir -p $(BIN_DIR)
|
|
$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(OBJECTS) -o $(BIN_DIR)/$(TARGET) $(SHAREDLIBS) $(STATICLIBS)
|
|
|
|
####### Compile
|
|
%.o: %.cpp
|
|
$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY) -c $< -o $@
|
|
|
|
%.o: %.c
|
|
$(CC) $(CCFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY) -c $< -o $@
|
|
|
|
clean:
|
|
rm -f $(OBJECTS) $(TARGET) core
|