Makefile: bikesheddingly replace ${} with $() 0b574802
Quentin Rameau · 2018-03-22 11:18 2 file(s) · +43 −43
Makefile +36 −36
4 4
include config.mk
5 5
6 6
SRC = drw.c dmenu.c stest.c util.c
7 -
OBJ = ${SRC:.c=.o}
7 +
OBJ = $(SRC:.c=.o)
8 8
9 9
all: options dmenu stest
10 10
11 11
options:
12 12
	@echo dmenu build options:
13 -
	@echo "CFLAGS   = ${CFLAGS}"
14 -
	@echo "LDFLAGS  = ${LDFLAGS}"
15 -
	@echo "CC       = ${CC}"
13 +
	@echo "CFLAGS   = $(CFLAGS)"
14 +
	@echo "LDFLAGS  = $(LDFLAGS)"
15 +
	@echo "CC       = $(CC)"
16 16
17 17
.c.o:
18 18
	@echo CC $<
19 -
	@${CC} -c ${CFLAGS} $<
19 +
	@$(CC) -c $(CFLAGS) $<
20 20
21 21
config.h:
22 22
	@echo creating $@ from config.def.h
23 23
	@cp config.def.h $@
24 24
25 -
${OBJ}: arg.h config.h config.mk drw.h
25 +
$(OBJ): arg.h config.h config.mk drw.h
26 26
27 27
dmenu: dmenu.o drw.o util.o
28 28
	@echo CC -o $@
29 -
	@${CC} -o $@ dmenu.o drw.o util.o ${LDFLAGS}
29 +
	@$(CC) -o $@ dmenu.o drw.o util.o $(LDFLAGS)
30 30
31 31
stest: stest.o
32 32
	@echo CC -o $@
33 -
	@${CC} -o $@ stest.o ${LDFLAGS}
33 +
	@$(CC) -o $@ stest.o $(LDFLAGS)
34 34
35 35
clean:
36 36
	@echo cleaning
37 -
	@rm -f dmenu stest ${OBJ} dmenu-${VERSION}.tar.gz
37 +
	@rm -f dmenu stest $(OBJ) dmenu-$(VERSION).tar.gz
38 38
39 39
dist: clean
40 40
	@echo creating dist tarball
41 -
	@mkdir -p dmenu-${VERSION}
41 +
	@mkdir -p dmenu-$(VERSION)
42 42
	@cp LICENSE Makefile README arg.h config.def.h config.mk dmenu.1 \
43 -
		drw.h util.h dmenu_path dmenu_run stest.1 ${SRC} \
44 -
		dmenu-${VERSION}
45 -
	@tar -cf dmenu-${VERSION}.tar dmenu-${VERSION}
46 -
	@gzip dmenu-${VERSION}.tar
47 -
	@rm -rf dmenu-${VERSION}
43 +
		drw.h util.h dmenu_path dmenu_run stest.1 $(SRC) \
44 +
		dmenu-$(VERSION)
45 +
	@tar -cf dmenu-$(VERSION).tar dmenu-$(VERSION)
46 +
	@gzip dmenu-$(VERSION).tar
47 +
	@rm -rf dmenu-$(VERSION)
48 48
49 49
install: all
50 -
	@echo installing executables to ${DESTDIR}${PREFIX}/bin
51 -
	@mkdir -p ${DESTDIR}${PREFIX}/bin
52 -
	@cp -f dmenu dmenu_path dmenu_run stest ${DESTDIR}${PREFIX}/bin
53 -
	@chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu
54 -
	@chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu_path
55 -
	@chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu_run
56 -
	@chmod 755 ${DESTDIR}${PREFIX}/bin/stest
57 -
	@echo installing manual pages to ${DESTDIR}${MANPREFIX}/man1
58 -
	@mkdir -p ${DESTDIR}${MANPREFIX}/man1
59 -
	@sed "s/VERSION/${VERSION}/g" < dmenu.1 > ${DESTDIR}${MANPREFIX}/man1/dmenu.1
60 -
	@sed "s/VERSION/${VERSION}/g" < stest.1 > ${DESTDIR}${MANPREFIX}/man1/stest.1
61 -
	@chmod 644 ${DESTDIR}${MANPREFIX}/man1/dmenu.1
62 -
	@chmod 644 ${DESTDIR}${MANPREFIX}/man1/stest.1
50 +
	@echo installing executables to $(DESTDIR)$(PREFIX)/bin
51 +
	@mkdir -p $(DESTDIR)$(PREFIX)/bin
52 +
	@cp -f dmenu dmenu_path dmenu_run stest $(DESTDIR)$(PREFIX)/bin
53 +
	@chmod 755 $(DESTDIR)$(PREFIX)/bin/dmenu
54 +
	@chmod 755 $(DESTDIR)$(PREFIX)/bin/dmenu_path
55 +
	@chmod 755 $(DESTDIR)$(PREFIX)/bin/dmenu_run
56 +
	@chmod 755 $(DESTDIR)$(PREFIX)/bin/stest
57 +
	@echo installing manual pages to $(DESTDIR)$(MANPREFIX)/man1
58 +
	@mkdir -p $(DESTDIR)$(MANPREFIX)/man1
59 +
	@sed "s/VERSION/$(VERSION)/g" < dmenu.1 > $(DESTDIR)$(MANPREFIX)/man1/dmenu.1
60 +
	@sed "s/VERSION/$(VERSION)/g" < stest.1 > $(DESTDIR)$(MANPREFIX)/man1/stest.1
61 +
	@chmod 644 $(DESTDIR)$(MANPREFIX)/man1/dmenu.1
62 +
	@chmod 644 $(DESTDIR)$(MANPREFIX)/man1/stest.1
63 63
64 64
uninstall:
65 -
	@echo removing executables from ${DESTDIR}${PREFIX}/bin
66 -
	@rm -f ${DESTDIR}${PREFIX}/bin/dmenu
67 -
	@rm -f ${DESTDIR}${PREFIX}/bin/dmenu_path
68 -
	@rm -f ${DESTDIR}${PREFIX}/bin/dmenu_run
69 -
	@rm -f ${DESTDIR}${PREFIX}/bin/stest
70 -
	@echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
71 -
	@rm -f ${DESTDIR}${MANPREFIX}/man1/dmenu.1
72 -
	@rm -f ${DESTDIR}${MANPREFIX}/man1/stest.1
65 +
	@echo removing executables from $(DESTDIR)$(PREFIX)/bin
66 +
	@rm -f $(DESTDIR)$(PREFIX)/bin/dmenu
67 +
	@rm -f $(DESTDIR)$(PREFIX)/bin/dmenu_path
68 +
	@rm -f $(DESTDIR)$(PREFIX)/bin/dmenu_run
69 +
	@rm -f $(DESTDIR)$(PREFIX)/bin/stest
70 +
	@echo removing manual page from $(DESTDIR)$(MANPREFIX)/man1
71 +
	@rm -f $(DESTDIR)$(MANPREFIX)/man1/dmenu.1
72 +
	@rm -f $(DESTDIR)$(MANPREFIX)/man1/stest.1
73 73
74 74
.PHONY: all options clean dist install uninstall
config.mk +7 −7
3 3
4 4
# paths
5 5
PREFIX = /usr/local
6 -
MANPREFIX = ${PREFIX}/share/man
6 +
MANPREFIX = $(PREFIX)/share/man
7 7
8 8
X11INC = /usr/X11R6/include
9 9
X11LIB = /usr/X11R6/lib
16 16
FREETYPELIBS = -lfontconfig -lXft
17 17
FREETYPEINC = /usr/include/freetype2
18 18
# OpenBSD (uncomment)
19 -
#FREETYPEINC = ${X11INC}/freetype2
19 +
#FREETYPEINC = $(X11INC)/freetype2
20 20
21 21
# includes and libs
22 -
INCS = -I${X11INC} -I${FREETYPEINC}
23 -
LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS} ${FREETYPELIBS}
22 +
INCS = -I$(X11INC) -I$(FREETYPEINC)
23 +
LIBS = -L$(X11LIB) -lX11 $(XINERAMALIBS) $(FREETYPELIBS)
24 24
25 25
# flags
26 -
CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 -D_POSIX_C_SOURCE=200809L -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
27 -
CFLAGS   = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
28 -
LDFLAGS  = -s ${LIBS}
26 +
CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 -D_POSIX_C_SOURCE=200809L -DVERSION=\"$(VERSION)\" $(XINERAMAFLAGS)
27 +
CFLAGS   = -std=c99 -pedantic -Wall -Os $(INCS) $(CPPFLAGS)
28 +
LDFLAGS  = -s $(LIBS)
29 29
30 30
# compiler and linker
31 31
CC = cc