Makefile (707B)
1 # 2 # Makefile -- build system 3 # 4 5 SRCS := slash.c cli.c stat.c lex.c pipeline.c 6 DEPS != echo *.d 7 OBJS := ${SRCS:.c=.o} 8 9 CC ?= cc 10 CFLAGS := -Wall -Werror -pipe -std=c99 -MMD -MP 11 CPPFLAGS := -DVERSION='"0.1.0 DEV"' -DIN_SLASH 12 LDFLAGS ?= 13 LIBS ?= -lm 14 15 TARG ?= slash 16 17 DESTDIR ?= / 18 BINDIR ?= usr/local/bin 19 20 .SUFFIXES: .c .o 21 22 .c.o: 23 ${CC} ${CFLAGS} ${CPPFLAGS} -c $< -o $@ 24 25 all: ${TARG} 26 27 ${TARG}: ${OBJS} 28 ${CC} ${OBJS} -o ${TARG} ${LDFLAGS} ${LIBS} 29 30 clean: 31 rm -f ${TARG} ${OBJS} ${DEPS} 32 33 install: all 34 install -d ${DESTDIR}${BINDIR} 35 install -m 755 ${TARG} ${DESTDIR}${BINDIR} 36 37 uninstall: 38 rm -f ${DESTDIR}${BINDIR}/${TARG} 39 40 -include "${DEPS}" 41 42 .PHONY: all clean install uninstall 43