50 lines
946 B
Makefile
50 lines
946 B
Makefile
|
CXX ?= clang++
|
||
|
SRCDIR ?= FM
|
||
|
INCDIR += -I${SRCDIR}
|
||
|
OBJDIR ?= FM
|
||
|
BINDIR ?= bin
|
||
|
INSTALLDIR ?= /usr/local/bin
|
||
|
|
||
|
TARGET ?= synththing
|
||
|
|
||
|
CFLAGS += -std=c++11
|
||
|
#CFLAGS += `pkg-config --cflags portaudio-2.0`
|
||
|
#LDFLAGS += `pkg-config --libs portaudio-2.0`
|
||
|
|
||
|
UNAME=$(shell uname -s)
|
||
|
ifeq (${UNAME},FreeBSD)
|
||
|
INCDIR += -I/sys/
|
||
|
endif
|
||
|
|
||
|
SHELL=/bin/sh
|
||
|
SRC = $(wildcard ${SRCDIR}/*.cpp ${SRCDIR}/*/*.cpp)
|
||
|
OBJ = ${SRC:${SRCDIR}/%.cpp=${OBJDIR}/%.o}
|
||
|
|
||
|
|
||
|
all: fmtest
|
||
|
|
||
|
${OBJ}: $(OBJDIR)/%.o : $(SRCDIR)/%.cpp
|
||
|
@echo CXX $<
|
||
|
${CXX} -o $@ ${INCDIR} -c ${CFLAGS} ${DEFINES} $<
|
||
|
|
||
|
fmtest: ${OBJ}
|
||
|
@echo CXX -o ${BINDIR}/fmtest
|
||
|
@mkdir -p ${BINDIR}
|
||
|
${CXX} ${INCDIR} -o ${BINDIR}/fmtest ${OBJ} ${LDFLAGS} ${CFLAGS} ${DEFINES}
|
||
|
|
||
|
clean:
|
||
|
@echo cleaning
|
||
|
@rm -f ${OBJ}
|
||
|
|
||
|
remove: clean
|
||
|
@echo deleting binary
|
||
|
@rm -f ${BINDIR}/${TARGET}
|
||
|
@rm -r ${BINDIR}
|
||
|
|
||
|
install: fmtest
|
||
|
mkdir -p ${INSTALLDIR}
|
||
|
cp ${BINDIR}/${TARGET} ${INSTALLDIR}/${TARGET}
|
||
|
chmod 4555 ${INSTALLDIR}/${TARGET}
|
||
|
|
||
|
|