53 lines
1.1 KiB
Makefile
53 lines
1.1 KiB
Makefile
|
|
# Use ?= to allow overriding from the env or command-line, e.g.
|
|
#
|
|
# make CXXFLAGS="-O3 -fPIC" install
|
|
#
|
|
# Package managers will override many of these variables automatically, so
|
|
# this is aimed at making it easy to create packages (Debian packages,
|
|
# FreeBSD ports, MacPorts, pkgsrc, etc.)
|
|
|
|
CXX ?= g++
|
|
CXXFLAGS ?= -w -O3 -pipe -fomit-frame-pointer -ffast-math
|
|
AR ?= ar
|
|
MKDIR ?= mkdir
|
|
STRIP ?= strip
|
|
DESTDIR ?= stage
|
|
PREFIX ?= /usr/local
|
|
|
|
BIN = fsom
|
|
LIB = libfsom.a
|
|
OBJS = fsom.o split.o
|
|
MAIN = main.o
|
|
|
|
all: ${BIN} ${LIB}
|
|
|
|
${BIN}: ${OBJS} ${MAIN}
|
|
${CXX} -o fsom ${OBJS} ${MAIN} -lm
|
|
|
|
${LIB}: ${OBJS}
|
|
${AR} -rs ${LIB} ${OBJS}
|
|
|
|
fsom.o: fsom.c
|
|
${CXX} ${CXXFLAGS} -c fsom.c
|
|
|
|
split.o: split.cpp
|
|
${CXX} ${CXXFLAGS} -c split.cpp
|
|
|
|
main.o: main.cpp
|
|
${CXX} ${CXXFLAGS} -c main.cpp
|
|
|
|
install: all
|
|
${MKDIR} -p ${DESTDIR}${PREFIX}/bin
|
|
${MKDIR} -p ${DESTDIR}${PREFIX}/include/fsom
|
|
${MKDIR} -p ${DESTDIR}${PREFIX}/lib
|
|
${INSTALL} ${BIN} ${DESTDIR}${PREFIX}/bin
|
|
${INSTALL} -m644 *.h ${DESTDIR}${PREFIX}/include/fsom
|
|
${INSTALL} -m644 ${LIB} ${DESTDIR}${PREFIX}/lib
|
|
|
|
install-strip: install
|
|
${STRIP} ${DESTDIR}${PREFIX}/bin/${BIN}
|
|
|
|
clean:
|
|
rm -rf *.o ${BIN} ${LIB} ${DESTDIR}
|