array size in one place
[mobr.lz77.git] / Makefile
blobedd6b61a408dc056a33fbbf5066700b05c29ea0f
1 # lz77
3 include config.mk
5 SRC = lz77.c
6 OBJ = ${SRC:.c=.o}
7 TARGET = lz77
9 all: options ${TARGET}
11 options:
12 @echo dices build options
13 @echo "CFLAGS = ${CFLAGS}"
14 @echo "LDFLAGS = ${LDFLAGS}"
15 @echo "CC = ${CC}"
16 @echo "LD = ${LD}"
18 %.o: %.c
19 @echo CC $<
20 @${CC} ${CFLAGS} -c $<
22 ${TARGET}: ${OBJ}
23 @echo LD $@
24 @${LD} ${LDFLAGS} -o $@ ${OBJ}
26 ${OBJ}: config.mk
28 clean:
29 @echo cleaning
30 @rm -f ${TARGET} ${OBJ} ${TARGET}-${VERSION}.tar.gz
32 dist: clean
33 @echo creating dist tarball
34 @mkdir ${TARGET}-${VERSION}
35 @cp LICENSE Makefile config.mk lz77.1 ${SRC} ${TARGET}-${VERSION}
36 @tar cf ${TARGET}-${VERSION}.tar ${TARGET}-${VERSION}
37 @gzip ${TARGET}-${VERSION}.tar
38 @rm -r ${TARGET}-${VERSION}
40 install: all
41 @echo "installing executable file to ${PREFIX}/bin"
42 @mkdir -p ${DESTDIR}${PREFIX}/bin
43 @cp -f ${TARGET} ${DESTDIR}${PREFIX}/bin
44 @chmod 755 ${DESTDIR}${PREFIX}/bin/${TARGET}
45 @echo "installing manual page to ${MANPREFIX}/man1"
46 @mkdir -p ${DESTDIR}${MANPREFIX}/man1
47 @cp lz77.1 ${DESTDIR}${MANPREFIX}/man1/
48 @chmod 644 ${DESTDIR}${MANPREFIX}/man1/lz77.1
50 uninstall:
51 @echo "removing executable file from ${DESTDIR}${PREFIX}/bin"
52 @rm -f ${DESTDIR}${PREFIX}/bin/${TARGET}
53 @echo "removing manual page from ${DESTDIR}${MANPREFIX}/man1"
54 @rm -f ${DESTDIR}${MANPREFIX}/man1/lz77.1
56 .PHONY: all options clean dist install uninstall