- refactored Makefile

git-svn-id: http://moon:8086/svn/software/trunk/projects/Rbm@809 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2022-01-15 06:47:44 +00:00
parent a5bed3157a
commit 5b38cbfa3a
+19 -16
View File
@@ -1,6 +1,6 @@
PRJ ?= TEST
CONFIG ?= release
BUILD_DIR := ./build/${CONFIG}
JUCE_ROOT := juce/JUCE-3.1.1
JUCE_LIB := juce/build/${CONFIG}/libjuce.a
@@ -17,18 +17,21 @@ POET_GCC_SRCS := noise.c
CXX_OBJS := $(addprefix ${BUILD_DIR}/, $(subst .cpp,.o,$(${PRJ}_CXX_SRCS)))
GCC_OBJS := $(addprefix ${BUILD_DIR}/, $(subst .c,.o,$(${PRJ}_GCC_SRCS)))
CXXFLAGS += -std=c++11 -L juce/build/${CONFIG}
CXXFLAGS_debug := ${CXXFLAGS} -O0 -g
CXXFLAGS_release := ${CXXFLAGS} -O2 -g
CXXFLAGS_common := -std=c++11 -L juce/build/${CONFIG} -g
CXXFLAGS_debug := -O0
CXXFLAGS_release := -O2
CXXFLAGS = ${CXXFLAGS_common} ${CXXFLAGS_${CONFIG}}
LFLAGS := -L juce/build/${CONFIG}
LFLAGS_release := ${LFLAGS}
LFLAGS_debug := ${LFLAGS}
CFLAGS_common := -g
CFLAGS_debug := -O0
CFLAGS_release :=- O2
CFLAGS := ${CFLAGS_common} ${CFLAGS_${CONFIG}}
LFLAGS_common := -L juce/build/${CONFIG}
LFLAGS_release :=
LFLAGS_debug :=
LFLAGS := ${LFLAGS_common} ${LFLAGS_${CONFIG}} -g
CFLAGS :=
CFLAGS_debug := ${CFLAGS} -O0 -g
CFLAGS_release := ${CFLAGS} -O2 -g
INCLUDES := -I${JUCE_ROOT} -Ijuce
LIBS := -lstdc++ -lm -larmadillo -ljsoncpp -ljuce -lfreetype -lpthread -ldl -lrt -lX11 -lGL -lXinerama -lXext
DEFINES := -DARMA_OPENMP_THREADS=1
@@ -45,22 +48,22 @@ install: ${BUILD_DIR}/rbm.elf
${CXX_OBJS}: $(BUILD_DIR)/%.o : source/%.cpp
@mkdir -p $(dir $@)
g++ -MMD ${CXXFLAGS_${CONFIG}} ${DEFINES} ${INCLUDES} -o $@ -c $<
g++ -MMD ${CXXFLAGS} ${DEFINES} ${INCLUDES} -o $@ -c $<
${GCC_OBJS}: $(BUILD_DIR)/%.o : source/%.c
@mkdir -p $(dir $@)
gcc -MMD ${CFLAGS_${CONFIG}} ${DEFINES} ${INCLUDES} -o $@ -c $<
gcc -MMD ${CFLAGS} ${DEFINES} ${INCLUDES} -o $@ -c $<
-include $(BUILD_DIR)/*.d
${BUILD_DIR}/rbm.elf: ${CXX_OBJS} ${GCC_OBJS} juce/build/${CONFIG}/libjuce.a
gcc ${LFLAGS_${CONFIG}} ${CXX_OBJS} ${GCC_OBJS} ${LIBS} -o $@
gcc ${LFLAGS} ${CXX_OBJS} ${GCC_OBJS} ${LIBS} -o $@
${BUILD_DIR}/test.elf: ${CXX_OBJS} ${GCC_OBJS}
gcc ${LFLAGS_${CONFIG}} ${CXX_OBJS} ${GCC_OBJS} ${LIBS} -o $@
gcc ${LFLAGS} ${CXX_OBJS} ${GCC_OBJS} ${LIBS} -o $@
${BUILD_DIR}/poet.elf: ${CXX_OBJS} ${GCC_OBJS}
gcc ${LFLAGS_${CONFIG}} ${CXX_OBJS} ${GCC_OBJS} ${LIBS} -o $@
gcc ${LFLAGS} ${CXX_OBJS} ${GCC_OBJS} ${LIBS} -o $@
${JUCE_LIB}:
make -C juce