update makefile
parent
694eab3b7c
commit
f71d3be387
26
Makefile
26
Makefile
|
@ -1,10 +1,11 @@
|
|||
CXX ?= clang++
|
||||
SRCDIR ?= src
|
||||
INCDIR += -I${SRCDIR}
|
||||
OBJDIR ?= build
|
||||
BINDIR ?= bin
|
||||
LIBDIR ?= lib
|
||||
INSTALLDIR ?= /usr/local/bin
|
||||
SRCDIR ?= src
|
||||
INCDIR += -I${SRCDIR}
|
||||
OBJDIR ?= build/obj
|
||||
BINDIR ?= build/bin
|
||||
LIBDIR ?= build/lib
|
||||
BINCDIR ?= build/include
|
||||
INSTALLDIR ?= /usr/local/
|
||||
|
||||
TARGET ?= amalgam
|
||||
|
||||
|
@ -23,7 +24,7 @@ OBJ = ${SRC:${SRCDIR}/%.cpp=${OBJDIR}/%.o}
|
|||
BINS = $(wildcard ${SRCDIR}/*.cpp)
|
||||
ALLOBJ = ${SRC:${SRCDIR}/%.cpp=${OBJDIR}/%.o} ${BINS:${SRCDIR}/%.cpp=${OBJDIR}/%.o}
|
||||
INCLUDES = ${wildcard ${SRCDIR}/*/*.h}
|
||||
INC = ${INCLUDES:${SRCDIR}/%.h=${LIBDIR}/include/%.h}
|
||||
INC = ${INCLUDES:${SRCDIR}/%.h=${BINCDIR}/%.h}
|
||||
all: fmtest wavtest amalgam
|
||||
|
||||
${ALLOBJ}: $(OBJDIR)/%.o : $(SRCDIR)/%.cpp
|
||||
|
@ -40,9 +41,11 @@ wavtest: ${ALLOBJ}
|
|||
${CXX} ${INCDIR} -o ${BINDIR}/wavtest ${OBJDIR}/wavtest.o ${OBJ} ${LDFLAGS} ${CFLAGS} ${DEFINES}
|
||||
|
||||
libamalgam.so: ${OBJ} ${INC}
|
||||
@mkdir -p ${LIBDIR}
|
||||
${CXX} ${INCDIR} -o ${LIBDIR}/lib${TARGET}.so ${OBJ} --shared -fPIC ${LDFLAGS} ${CFLAGS} ${DEFINES}
|
||||
|
||||
libamalgam.dylib: ${OBJ} ${INC}
|
||||
@mkdir -p ${LIBDIR}
|
||||
${CXX} ${INCDIR} -o ${LIBDIR}/lib${TARGET}.dylib ${OBJ} -dynamiclib ${LDFLAGS} ${CFLAGS} ${DEFINES}
|
||||
|
||||
ifeq (${UNAME},Darwin)
|
||||
|
@ -51,12 +54,12 @@ else
|
|||
amalgam: libamalgam.so
|
||||
endif
|
||||
|
||||
${INC}: $(LIBDIR)/include/%.h : $(SRCDIR)/%.h
|
||||
${INC}: $(BINCDIR)/%.h : $(SRCDIR)/%.h
|
||||
@mkdir -p $(dir $@)
|
||||
cp $< $@
|
||||
clean:
|
||||
@echo cleaning
|
||||
@rm -f ${OBJ}
|
||||
@rm -f build/
|
||||
|
||||
remove: clean
|
||||
@echo deleting binary
|
||||
|
@ -65,7 +68,8 @@ remove: clean
|
|||
|
||||
install: ${TARGET}
|
||||
mkdir -p ${INSTALLDIR}
|
||||
cp ${BINDIR}/${TARGET} ${INSTALLDIR}/${TARGET}
|
||||
chmod 4555 ${INSTALLDIR}/${TARGET}
|
||||
cp -a ${BINCDIR} ${INSTALLDIR}
|
||||
cp -a ${BINDIR} ${INSTALLDIR}
|
||||
cp -a ${LIBDIR} ${INSTALLDIR}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue