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