summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJérémie Courrèges-Anglas <jca@wxcvbn.org>2016-11-23 09:55:43 +0100
committerJérémie Courrèges-Anglas <jca@wxcvbn.org>2016-11-23 10:48:58 +0100
commitbba8ecc0f678b50f521ca06c69a88b7c9f0dc15c (patch)
treec06b50deeb6c5062a1a6a01f88fc9f8168883afe
parent0e31e477e5eedff5a87d01b39dc75d381f55e43a (diff)
downloadratpoison-bba8ecc0f678b50f521ca06c69a88b7c9f0dc15c.zip
define HAVE_XRANDR/link with libXrandr when we actually want to
-rw-r--r--configure.ac13
-rw-r--r--src/Makefile.am2
-rw-r--r--src/events.c2
-rw-r--r--src/main.c2
-rw-r--r--src/screen.c6
5 files changed, 13 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac
index ef44eb3..63ee565 100644
--- a/configure.ac
+++ b/configure.ac
@@ -184,18 +184,19 @@ AC_CHECK_HEADERS([X11/extensions/Xrandr.h], [], [], [
])
CPPFLAGS="$mysavedCPPFLAGS"
-AC_CHECK_LIB(Xrandr, XRRGetScreenResources,
- [X_LIBS="-lXrandr $X_LIBS"
- AC_DEFINE(HAVE_LIBXRANDR, 1, [Xrandr])],
- [], [$X_LIBS $X_EXTRA_LIBS])
+# XXX Find out why ":" is so important below, with no argument
+# half of config.h ends up #undef'd
+AC_CHECK_LIB(Xrandr, XRRGetScreenResources, [: nothing], [], [$X_LIBS $X_EXTRA_LIBS])
compile_xrandr=no
AS_CASE(["$with_xrandr:$ac_cv_header_X11_extensions_Xrandr_h:$ac_cv_lib_Xrandr_XRRGetScreenResources"],
[yes:no:*], [AC_MSG_ERROR([*** Can't enable Xrandr support, header Xrandr.h not found.])],
[yes:*:no], [AC_MSG_ERROR([*** Can't enable Xrandr support, libXrandr not found.])],
- [yes:yes:yes|check:yes:yes], [compile_xrandr=yes])
+ [yes:yes:yes|check:yes:yes], [X_LIBS="-lXrandr $X_LIBS"
+ AC_DEFINE(HAVE_XRANDR, 1, [Xrandr])
+ compile_xrandr=yes])
-AM_CONDITIONAL(HAVE_LIBXRANDR, [test "$compile_xrandr" = yes])
+AM_CONDITIONAL(HAVE_XRANDR, [test "$compile_xrandr" = yes])
AC_SUBST(X_LIBS)
AC_SUBST(X_EXTRA_LIBS)
diff --git a/src/Makefile.am b/src/Makefile.am
index 0daf587..bc27439 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -72,6 +72,6 @@ ratpoison_SOURCES = actions.c \
window.c \
window.h
-if HAVE_LIBXRANDR
+if HAVE_XRANDR
ratpoison_SOURCES += xrandr.c xrandr.h
endif
diff --git a/src/events.c b/src/events.c
index b31a194..5e1013a 100644
--- a/src/events.c
+++ b/src/events.c
@@ -785,7 +785,7 @@ static void
delegate_event (XEvent *ev)
{
-#ifdef HAVE_LIBXRANDR
+#ifdef HAVE_XRANDR
if (rp_have_xrandr)
xrandr_notify (ev);
#endif
diff --git a/src/main.c b/src/main.c
index f5b5972..ca5ebc8 100644
--- a/src/main.c
+++ b/src/main.c
@@ -727,7 +727,7 @@ main (int argc, char *argv[])
init_groups ();
init_window_stuff ();
-#ifdef HAVE_LIBXRANDR
+#ifdef HAVE_XRANDR
init_xrandr ();
#endif
diff --git a/src/screen.c b/src/screen.c
index ea00262..240b876 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -239,7 +239,7 @@ init_screens (void)
/* Get the number of screens */
if (rp_have_xrandr) {
-#ifdef HAVE_LIBXRANDR
+#ifdef HAVE_XRANDR
rr_outputs = xrandr_query_screen (&screen_count);
#endif
} else {
@@ -256,7 +256,7 @@ init_screens (void)
screen = xmalloc (sizeof(*screen));
list_add (&screen->node, &rp_screens);
-#ifdef HAVE_LIBXRANDR
+#ifdef HAVE_XRANDR
if (rp_have_xrandr)
xrandr_fill_screen (rr_outputs[i], screen);
#endif
@@ -574,7 +574,7 @@ screen_add (int rr_output)
change_windows_screen (NULL, screen);
-#ifdef HAVE_LIBXRANDR
+#ifdef HAVE_XRANDR
if (rp_have_xrandr)
xrandr_fill_screen (rr_output, screen);
#endif