Make selecting which multi-monitor selection to use simpler
Use a single MULTIMON variable which can be set to either xrandr, xinerama or none and replace the previous system which used 2 variables for each extension which were then added to CFLAGS and instead append xrandr or xinerama respectively to pkg_config_packs so their availability can be checked with pkg-config. The main advantage of this is that the extension can now be set from the command like like so 'MULTIMON=xinerama make'
This commit is contained in:
parent
43b4d4bb41
commit
3357743210
29
config.mk
29
config.mk
@ -8,13 +8,14 @@ ifeq ('',$(VERSION))
|
||||
VERSION := $(shell git describe --tags)
|
||||
endif
|
||||
|
||||
# Xinerama, comment if you don't want it
|
||||
#XINERAMALIBS = -lXinerama
|
||||
#XINERAMAFLAGS = -DXINERAMA
|
||||
|
||||
# RANDR, comment if you don't want it
|
||||
XRANDRLIBS = -lXrandr
|
||||
XRANDRFLAGS = -DXRANDR
|
||||
# Specifies which X extension dunst should use for multi monitor support
|
||||
# Possible values are randr, xinerama or none
|
||||
# * xrandr is the recommended/default value and should be the best option in most cases
|
||||
# * xinerama is the legacy equivalent to randr but does not support some more
|
||||
# advanced features like per-monitor dpi calculation it should probably one
|
||||
# be used if xrandr cannot be used for some reason.
|
||||
# * none disables multi-monitor support and dunst will assume only one monitor.
|
||||
MULTIMON ?= xrandr
|
||||
|
||||
# uncomment to disable parsing of dunstrc
|
||||
# or use "CFLAGS=-DSTATIC_CONFIG make" to build
|
||||
@ -26,13 +27,21 @@ ifeq (${PKG_CONFIG}, ${EMPTY})
|
||||
endif
|
||||
|
||||
# flags
|
||||
CPPFLAGS += -D_DEFAULT_SOURCE -DVERSION=\"${VERSION}\" ${XRANDRFLAGS} ${XINERAMAFLAGS} ${INIFLAGS}
|
||||
CFLAGS += -g --std=gnu99 -pedantic -Wall -Wno-overlength-strings -Os ${STATIC} ${CPPFLAGS} ${EXTRACFLAGS}
|
||||
CPPFLAGS += -D_DEFAULT_SOURCE -DVERSION=\"${VERSION}\"
|
||||
CFLAGS += -g --std=gnu99 -pedantic -Wall -Wno-overlength-strings -Os ${STATIC} ${CPPFLAGS}
|
||||
|
||||
pkg_config_packs := dbus-1 x11 xscrnsaver \
|
||||
"glib-2.0 >= 2.36" gio-2.0 \
|
||||
pangocairo gdk-2.0
|
||||
|
||||
ifeq ($(MULTIMON), xrandr)
|
||||
pkg_config_packs += xrandr
|
||||
CFLAGS += -DXRANDR
|
||||
else ifeq ($(MULTIMON), xinerama)
|
||||
pkg_config_packs += xinerama
|
||||
CFLAGS += -DXINERAMA
|
||||
endif
|
||||
|
||||
# check if we need libxdg-basedir
|
||||
ifeq (,$(findstring STATIC_CONFIG,$(CFLAGS)))
|
||||
pkg_config_packs += libxdg-basedir
|
||||
@ -41,7 +50,7 @@ endif
|
||||
# includes and libs
|
||||
INCS := $(shell ${PKG_CONFIG} --cflags ${pkg_config_packs})
|
||||
CFLAGS += ${INCS}
|
||||
LDFLAGS += -lm -L${X11LIB} -lXss ${XRANDRLIBS} ${XINERAMALIBS} $(shell ${PKG_CONFIG} --libs ${pkg_config_packs})
|
||||
LDFLAGS += -lm -L${X11LIB} -lXss $(shell ${PKG_CONFIG} --libs ${pkg_config_packs})
|
||||
|
||||
# only make this an fatal error when where not cleaning
|
||||
ifneq (clean, $(MAKECMDGOALS))
|
||||
|
Loading…
x
Reference in New Issue
Block a user