blob: 1381567af4ab80eabb229aefbc03dd51a66d8be0 (
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
|
# paths
PREFIX = /usr/local
MANPREFIX = ${PREFIX}/share/man
# libs
LIBS = -lX11 -lXinerama -lXcursor
# flags
CPPFLAGS = -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=700
CFLAGS = -std=c99 -pedantic -Wall -Wextra -Os ${CPPFLAGS} -fdiagnostics-color=always
LDFLAGS = ${LIBS}
# uncomment this block for OpenBSD
# CFLAGS += -I/usr/X11R6/include
# LDFLAGS += -L/usr/X11R6/lib
# tools
CC = cc
# files
SRC = src/sxwm.c src/parser.c
OBJ = build/sxwm.o build/parser.o
all: sxwm
# rules
build/sxwm.o: src/sxwm.c
mkdir -p build
${CC} -c ${CFLAGS} src/sxwm.c -o build/sxwm.o
build/parser.o: src/parser.c
mkdir -p build
${CC} -c ${CFLAGS} src/parser.c -o build/parser.o
sxwm: ${OBJ}
${CC} -o sxwm ${OBJ} ${LDFLAGS}
clean:
rm -rf build sxwm
install: all
mkdir -p ${DESTDIR}${PREFIX}/bin
cp -f sxwm ${DESTDIR}${PREFIX}/bin/
chmod 755 ${DESTDIR}${PREFIX}/bin/sxwm
mkdir -p ${DESTDIR}${MANPREFIX}/man1
cp -f docs/sxwm.1 ${DESTDIR}${MANPREFIX}/man1/
chmod 644 ${DESTDIR}${MANPREFIX}/man1/sxwm.1
mkdir -p ${DESTDIR}${PREFIX}/share
cp -f default_sxwmrc ${DESTDIR}${PREFIX}/share/sxwmrc
uninstall:
rm -f ${DESTDIR}${PREFIX}/bin/sxwm \
${DESTDIR}${MANPREFIX}/man1/sxwm.1 \
${DESTDIR}${PREFIX}/share/sxwmrc
clangd:
rm -f compile_flags.txt
for f in ${CFLAGS}; do echo $$f >> compile_flags.txt; done
.PHONY: all clean install uninstall clangd
|