Makefile (1062B)
1 .POSIX: 2 .SUFFIXES: 3 4 PREFIX = /usr/local 5 MANPREFIX = ${PREFIX}/man 6 7 CFLAGS = -std=c99 -Wall -Wextra -Wpedantic -pedantic-errors 8 CFLAGS_DEBUG = -g3 -O0 9 LDLIBS = -lm -lncurses 10 11 SRC = fun_menu.c cycle.c richwin.c stack.c utils.c 12 OBJ = ${SRC:.c=.o} 13 OBJ_DEBUG = ${SRC:.c=.odebug} 14 15 all: fun_menu 16 17 fun_menu: ${OBJ} 18 ${CC} ${LDFLAGS} -o $@ ${CFLAGS} ${OBJ} ${LDLIBS} 19 20 debug: ${OBJ_DEBUG} 21 ${CC} ${LDFLAGS} -o fun_menu.debug ${CFLAGS} ${CFLAGS_DEBUG} ${OBJ_DEBUG} \ 22 ${LDLIBS} 23 24 .SUFFIXES: .c .o .odebug 25 .c.o: 26 ${CC} -c ${CFLAGS} $< 27 .c.odebug: 28 ${CC} -c -o ${<:.c=.odebug} ${CFLAGS} ${DEBUG} $< 29 30 deps: 31 # TODO 32 33 install: all 34 mkdir -p ${DESTDIR}${PREFIX}/bin 35 cp -f fun_menu ${DESTDIR}${PREFIX}/bin 36 chmod 755 ${DESTDIR}${PREFIX}/bin/fun_menu 37 cp fun_menu.1 ${DESTDIR}${MANPREFIX}/man1 38 mkdir -p ${DESTDIR}${MANPREFIX}/man1 39 chmod 644 ${DESTDIR}${MANPREFIX}/man1/fun_menu.1.gz 40 41 uninstall: 42 rm -f ${DESTDIR}${PREFIX}/bin/fun_menu\ 43 ${DESTDIR}${MANPREFIX}/man1/dwm.1 44 45 clean: 46 rm -fr fun_menu fun_menu.debug ${OBJ} ${OBJ_DEBUG} 47 48 .PHONY: all install uninstall debug clean