diff --git a/juce/Makefile b/juce/Makefile index c6f71e7..3438d79 100644 --- a/juce/Makefile +++ b/juce/Makefile @@ -1,6 +1,6 @@ CONFIG ?= release -BUILD_DIR := ./build/${CONFIG} -JUCE_ROOT=./JUCE-3.1.1 +JUCE_VER := JUCE-3.1.1 + SRCS := modules/juce_core/juce_core.cpp SRCS += modules/juce_data_structures/juce_data_structures.cpp SRCS += modules/juce_events/juce_events.cpp @@ -8,31 +8,6 @@ SRCS += modules/juce_graphics/juce_graphics.cpp SRCS += modules/juce_gui_basics/juce_gui_basics.cpp SRCS += modules/juce_gui_extra/juce_gui_extra.cpp SRCS += modules/juce_opengl/juce_opengl.cpp -OBJS := $(addprefix ${BUILD_DIR}/, $(subst .cpp,.o,$(SRCS))) - -all: ${JUCE_ROOT} ${BUILD_DIR}/libjuce.a -prepare: ${JUCE_ROOT} -CXXFLAGS += -std=c++11 -CXXFLAGS_debug := ${CXXFLAGS} -O0 -g -CXXFLAGS_release := ${CXXFLAGS} -O2 - -INCLUDES := -I./ -I/usr/include/freetype2 - -${OBJS}: $(BUILD_DIR)/%.o : ${JUCE_ROOT}/%.cpp - mkdir -p $(dir $@) - g++ ${CXXFLAGS_${CONFIG}} ${DEFINES} ${INCLUDES} -o $@ -c $< - -${BUILD_DIR}/libjuce.a: ${OBJS} - ar -q $@ ${OBJS} - -${JUCE_ROOT}: - unzip JUCE-3.1.1.zip - -clean: - rm -rf ${BUILD_DIR}/* - -distclean: - rm -rf ${BUILD_DIR} - rm -rf ${JUCE_ROOT} +include juce.mk diff --git a/juce/juce.mk b/juce/juce.mk new file mode 100644 index 0000000..d9a56e2 --- /dev/null +++ b/juce/juce.mk @@ -0,0 +1,38 @@ +BUILD_DIR := ./build/${CONFIG} +JUCE_ROOT=./${JUCE_VER} +OBJS := $(addprefix ${BUILD_DIR}/, $(subst .cpp,.o,$(SRCS))) + +.PHONY: ${JUCE_VER}.patch +all: ${JUCE_ROOT} ${BUILD_DIR}/libjuce.a +prepare: ${JUCE_ROOT} +patch: ${JUCE_VER}.patch + +${JUCE_VER}.patch: + @unzip ${JUCE_VER}.zip -d temp >/dev/null + @diff -r ${JUCE_VER} temp/${JUCE_VER} > ${JUCE_VER}.patch + @rm -rf temp + @echo "Created" ${JUCE_VER}.patch + +CXXFLAGS += -std=c++11 +CXXFLAGS_debug := ${CXXFLAGS} -O0 -g +CXXFLAGS_release := ${CXXFLAGS} -O2 + +INCLUDES := -I./ -I/usr/include/freetype2 + +${OBJS}: $(BUILD_DIR)/%.o : ${JUCE_ROOT}/%.cpp + mkdir -p $(dir $@) + g++ ${CXXFLAGS_${CONFIG}} ${DEFINES} ${INCLUDES} -o $@ -c $< + +${BUILD_DIR}/libjuce.a: ${OBJS} + ar -q $@ ${OBJS} + +${JUCE_ROOT}: + unzip ${JUCE_VER}.zip + +clean: + rm -rf ${BUILD_DIR}/* + +distclean: + rm -rf ${BUILD_DIR} + rm -rf ${JUCE_ROOT} +