aboutsummaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorJon Lund Steffensen <jonlst@gmail.com>2009-12-25 19:43:24 +0100
committerJon Lund Steffensen <jonlst@gmail.com>2009-12-25 19:43:24 +0100
commitbb5a75db6db3f3de1290177f4bdf794360c28dd0 (patch)
treeb4cc4cb84fdc7dceb8f2e9920cbc096e29605e6b /configure.ac
parentAccept method names with different case. (diff)
downloadredshift-ng-bb5a75db6db3f3de1290177f4bdf794360c28dd0.tar.gz
redshift-ng-bb5a75db6db3f3de1290177f4bdf794360c28dd0.tar.bz2
redshift-ng-bb5a75db6db3f3de1290177f4bdf794360c28dd0.tar.xz
Allow compile time selection of which method to compile in.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac51
1 files changed, 48 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac
index 07388a5..1ce7ffd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -11,9 +11,54 @@ AM_INIT_AUTOMAKE([dist-bzip2])
AC_PROG_CC_C99
# Checks for libraries.
-PKG_CHECK_MODULES([X11], [x11])
-PKG_CHECK_MODULES([XF86VM], [xxf86vm])
-PKG_CHECK_MODULES([XCB], [xcb xcb-randr])
+PKG_CHECK_MODULES([X11], [x11], [have_x11=yes], [have_x11=no])
+PKG_CHECK_MODULES([XF86VM], [xxf86vm], [have_xf86vm=yes], [have_xf86vm=no])
+PKG_CHECK_MODULES([XCB], [xcb], [have_xcb=yes], [have_xcb=no])
+PKG_CHECK_MODULES([XCB_RANDR], [xcb-randr],
+ [have_xcb_randr=yes], [have_xcb_randr=no])
+
+# Check RANDR method
+AC_MSG_CHECKING([whether to enable RANDR method])
+AC_ARG_ENABLE([randr], [AC_HELP_STRING([--enable-randr],
+ [enable RANDR method])],
+ [enable_randr=$enableval],[enable_randr=yes])
+AS_IF([test "x$enable_randr" != xno], [
+ AS_IF([test $have_xcb = yes -a $have_xcb_randr = yes], [
+ AC_DEFINE([ENABLE_RANDR], 1,
+ [Define to 1 to enable RANDR method])
+ AC_MSG_RESULT([yes])
+ ], [
+ enable_randr=no
+ AC_MSG_RESULT([missing dependencies])
+ ])
+], [
+ AC_MSG_RESULT([no])
+])
+AM_CONDITIONAL([ENABLE_RANDR], [test "x$enable_randr" != xno])
+
+# Check VidMode method
+AC_MSG_CHECKING([whether to enable VidMode method])
+AC_ARG_ENABLE([vidmode], [AC_HELP_STRING([--enable-vidmode],
+ [enable VidMode method])],
+ [enable_vidmode=$enableval],[enable_vidmode=yes])
+AS_IF([test "x$enable_vidmode" != xno], [
+ AS_IF([test $have_x11 = yes -a $have_xf86vm = yes], [
+ AC_DEFINE([ENABLE_VIDMODE], 1,
+ [Define to 1 to enable VidMode method])
+ AC_MSG_RESULT([yes])
+ ], [
+ enable_vidmode=no
+ AC_MSG_RESULT([missing dependencies])
+ ])
+], [
+ AC_MSG_RESULT([no])
+])
+AM_CONDITIONAL([ENABLE_VIDMODE], [test "x$enable_vidmode" != xno])
+
+# Check that at least one method is enabled
+AS_IF([test "x$enable_randr" = xno -a "x$enable_vidmode" = xno], [
+ AC_MSG_ERROR([Either RANDR or VidMode must be enabled])
+])
# Checks for header files.
AC_CHECK_HEADERS([locale.h stdint.h stdlib.h string.h unistd.h])