35 lines
682 B
Makefile
35 lines
682 B
Makefile
OBJECTS = ${SOURCES:%.c=${OBJPATH}/%.o}
|
|
|
|
ifeq (${BUILDMODE},debug)
|
|
CC_FLAGS += -g -pg
|
|
CC_LDFLAGS += -g -pg
|
|
endif
|
|
ifeq (${BUILDMODE},release)
|
|
CC_FLAGS += -O3 -DNDEBUG -Wno-unused-variable -Wno-unused-but-set-variable
|
|
endif
|
|
|
|
ifneq (,${LIBS})
|
|
CC_FLAGS += $(shell pkg-config --cflags ${LIBS})
|
|
CC_LDFLAGS += $(shell pkg-config --libs ${LIBS})
|
|
endif
|
|
|
|
CC_FLAGS += -fPIC -Wall -I${PROJECT_PATH}/src
|
|
CC_LDFLAGS += -fPIC -lm
|
|
|
|
all:prepare ${RESULT}
|
|
|
|
prepare:
|
|
mkdir -p ${BUILDPATH}
|
|
|
|
clean:
|
|
rm -f ${OBJECTS}
|
|
rm -f ${RESULT}
|
|
|
|
${OBJPATH}/%.o:%.c ${HEADERS}
|
|
mkdir -p `dirname $@`
|
|
${CC} -c ${CC_FLAGS} $< -o $@
|
|
|
|
${RESULT}:${OBJECTS}
|
|
${CC} $^ ${CC_LDFLAGS} -o $@
|
|
|
|
.PHONY:all clean prepare
|