#-------------------------------------------------------------------------------
# of_v0.8.0_osx_release向けMakefile
#-------------------------------------------------------------------------------
CPP           = clang -arch i386 -std=c++98 -stdlib=libstdc++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
LD            = clang++ -arch i386 -std=c++98 -stdlib=libstdc++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
CFLAGS        = -g -Wall -D__MACOSX_CORE__
LDFLAGS       = -L/usr/local/lib 
LIBS          = -lm -lstdc++
MAKEFILE_DIR  = ../../makefiles
PROGRAM       = stkExample
APPNAME       = stkExample.app
OBJ_DIR       = ./obj
APP_OBJS      = testApp.o main.o \
				ofxSimpleButton.o \
				ofxSimpleDial.o
OBJS          = $(APP_OBJS)

INCLUDE       = -I./ -I$(STKDIR)/include

# openframeworkの共通定義をインクルード
include $(MAKEFILE_DIR)/Makefile-of.mk
include $(MAKEFILE_DIR)/Makefile-addon-ofxStk.mk
#include $(MAKEFILE_DIR)/Makefile-addon-ofxMaxim.mk

# オブジェクトは$(OBJ_DIR)以下に生成
OBJS         := $(addprefix $(OBJ_DIR)/,$(OBJS))
APP_OBJS     := $(addprefix $(OBJ_DIR)/,$(APP_OBJS))

# サフィックスルール適用対象の拡張子の定義
.SUFFIXES: .c .cpp .o

# サフィックスルール
obj/%.o: %.c
	$(CC) $(CFLAGS) $(INCLUDE) $(OF_CORE_HEADERS) -c $< -o $@

obj/%.o: %.cpp
	$(CPP) $(CFLAGS) $(INCLUDE) $(OF_CORE_HEADERS) -c $< -o $@

.PHONY: directory

all:			directory $(PROGRAM)

$(PROGRAM):		$(OBJS)
				$(LD) $(LDFLAGS) $(LIBS) $(OF_LINK) $(OBJS) -o $(PROGRAM)
				mkdir -p $(APPNAME)/Contents/MacOS/
				mkdir -p $(APPNAME)/Contents/Resources/
				mkdir -p $(APPNAME)/Contents/Frameworks/
				cp -rf $(PROGRAM) $(APPNAME)/Contents/MacOS/
				cp -rf $(OF_PATH)/libs/fmodex/lib/osx/libfmodex.dylib $(APPNAME)/Contents/MacOS/
				install_name_tool -change ./libfmodex.dylib @executable_path/libfmodex.dylib $(APPNAME)/Contents/MacOS/$(PROGRAM)
				cp Info.plist $(APPNAME)/Contents/
				cp $(MAKEFILE_DIR)/PkgInfo $(APPNAME)/Contents/
				cp -rf $(MAKEFILE_DIR)/icon-debug.icns $(APPNAME)/Contents/Resources/
				cp -rf $(OF_PATH)/libs/glut/lib/osx/GLUT.framework $(APPNAME)/Contents/Frameworks/

clean_all:
	rm -rf $(OBJ_DIR)/*.o *~ $(APPNAME) $(PROGRAM)

clean:
	rm -rf $(APP_OBJS) *~ $(APPNAME) $(PROGRAM)

directory:
	mkdir -p $(OBJ_DIR)
