-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.mk
68 lines (52 loc) · 2.05 KB
/
config.mk
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
63
64
65
66
67
68
# dwm version
ifndef VERSION
DATE = $(shell git log -1 --format='%cd' --date=format:'%F')
DATE_TIME = $(DATE) 00:00
COMMIT_COUNT = $(shell git rev-list --count HEAD --since="$(DATE_TIME)")
VERSION = 6.2.$(shell date -d "$(DATE)" +'%Y%m%d')_$(COMMIT_COUNT)
endif
# Customize below to fit your system
# paths
DESTDIR ?=
PREFIX ?= /usr/local
MANPREFIX = $(PREFIX)/share/man
MODE ?= RELEASE
# Optional dependencies:
# libxinerama
# libasound
# st
# Will be included if installed
XINERAMAFLAGS = $(shell pkg-config xinerama --cflags --silence-errors && echo "-DXINERAMA")
XINERAMALIBS = $(shell pkg-config xinerama --libs --silence-errors)
ASOUNDFLAGS = $(shell pkg-config alsa --cflags --silence-errors && echo -DASOUND)
ASOUNDLIBS = $(shell pkg-config alsa --libs --silence-errors)
STFLAGS = $(shell command -v st >/dev/null && echo -DST_INTEGRATION)
# Optional features:
# Setting backlight with X
# Deprecated. Uncomment to reenable
# XBACKLIGHTLIBS = `pkg-config xcb xcb-randr xcb-util --cflags --silence-errors && echo "-DXBACKLIGHT"`
# XBACKLIGHTFLAGS = `pkg-config xcb xcb-randr xcb-util --libs --silence-errors`
REQ_LIBS = x11 x11-xcb xcb-res xft fontconfig
# includes and libs
LIBFLAGS = $(XINERAMAFLAGS) $(ASOUNDFLAGS) $(XBACKLIGHTFLAGS) `pkg-config $(REQ_LIBS) --cflags`
LIBS = $(XINERAMALIBS) $(ASOUNDLIBS) $(XBACKLIGHTLIBS) `pkg-config $(REQ_LIBS) --libs`
RELEASE_CPPFLAGS = -DNDEBUG
DEBUG_CPPFLAGS =
TRACE_CPPFLAGS = $(DEBUG_CPPFLAGS) -DDWM_TRACE_EVENTS
# flags
CPPFLAGS = -D_DEFAULT_SOURCE \
-D_GNU_SOURCE \
-D_POSIX_C_SOURCE=200809L \
-DVERSION=\"$(VERSION)\" \
$(STFLAGS) \
$($(MODE)_CPPFLAGS)
RELEASE_CFLAGS = -Os -flto
DEBUG_CFLAGS = -Og -g -fsanitize=address
TRACE_CFLAGS = $(DEBUG_CFLAGS)
RELEASE_LDFLAGS = -flto
DEBUG_LDFLAGS = -lg -fsanitize=address
TRACE_LDFLAGS = $(DEBUG_LDFLAGS)
CFLAGS = -std=c23 -Wpedantic -Wall -Werror $($(MODE)_CFLAGS) $(LIBFLAGS) $(CPPFLAGS)
LDFLAGS = $($(MODE)_LDFLAGS) $(LIBS)
# compiler and linker
CC ?= gcc