summaryrefslogtreecommitdiff
path: root/Makefile
blob: 1f3971c41d2439753829a16790e925ec89269bd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# See LICENSE file for copyright and license details.
# rg - random string generator

include config.mk

SRC = rg.c
OBJ = ${SRC:.c=.o}

all: options rg${EXE}

options:
	@echo rg build options:
	@echo "CFLAGS   = ${CFLAGS}"
	@echo "LDFLAGS  = ${LDFLAGS}"
	@echo "CC       = ${CC}"

config.h:
	cp config.def.h $@

.c.o:
	${CC} -c ${CFLAGS} $<

${OBJ}: arg.h config.h config.mk

rg${EXE}: ${OBJ}
	${CC} -o $@ ${OBJ} ${LDFLAGS}

clean:
	-${RM} rg rg.exe ${OBJ} rg-${VERSION}.tar.gz

dist: clean
	mkdir -p rg-${VERSION}
	cp -R LICENSE Makefile README arg.h config.def.h config.mk \
		rg.c rg.1 rg-${VERSION}
	tar -cf - rg-${VERSION} | gzip -c > rg-${VERSION}.tar.gz
	rm -rf rg-${VERSION}

ifeq ($(OS),Windows_NT)
install: all
	-mkdir "$(subst /,\,${DESTDIR}${BINDIR})"
	copy /Y rg${EXE} "$(subst /,\,${DESTDIR}${BINDIR}/rg${EXE})"
	@echo installed to ${DESTDIR}${BINDIR}/rg${EXE}

uninstall:
	-${RM} "$(subst /,\,${DESTDIR}${BINDIR}/rg.exe)"
else
install: all
	mkdir -p ${DESTDIR}${BINDIR}
	cp -f rg${EXE} ${DESTDIR}${BINDIR}
	chmod 755 ${DESTDIR}${BINDIR}/rg${EXE}
	mkdir -p ${DESTDIR}${MANPREFIX}/man1
	sed "s/VERSION/${VERSION}/g" < rg.1 > ${DESTDIR}${MANPREFIX}/man1/rg.1
	chmod 644 ${DESTDIR}${MANPREFIX}/man1/rg.1
	@echo installed to ${DESTDIR}${BINDIR}/rg${EXE}

uninstall:
	rm -f ${DESTDIR}${BINDIR}/rg \
		${DESTDIR}${BINDIR}/rg.exe \
		${DESTDIR}${MANPREFIX}/man1/rg.1
endif

.PHONY: all options clean dist install uninstall