jcs ratpoison hax
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at jcs 233 lines 8.0 kB view raw
1dnl Process this file with autoconf to produce a configure script. 2dnl Copyright (C) 2000, 2001, 2002, 2003, 2004 Shawn Betts <sabetts@vcn.bc.ca> 3dnl 4dnl This file is part of ratpoison. 5dnl 6dnl ratpoison is free software; you can redistribute it and/or modify 7dnl it under the terms of the GNU General Public License as published by 8dnl the Free Software Foundation; either version 2 of the License, or 9dnl (at your option) any later version. 10dnl 11dnl ratpoison is distributed in the hope that it will be useful, 12dnl but WITHOUT ANY WARRANTY; without even the implied warranty of 13dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14dnl GNU General Public License for more details. 15dnl 16dnl You should have received a copy of the GNU General Public License 17dnl along with this program; if not, write to the Free Software 18dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 20AC_INIT([ratpoison], [1.4.9], [ratpoison-devel@nongnu.org]) 21AC_CONFIG_AUX_DIR([build-aux]) 22AC_CONFIG_MACRO_DIR([m4]) 23AC_CONFIG_SRCDIR([src/main.c]) 24AM_INIT_AUTOMAKE([-Wall -Werror gnu]) 25 26AM_MAINTAINER_MODE([enable]) 27 28AC_CONFIG_HEADER(src/config.h) 29 30dnl by default turn off debugging 31AC_MSG_CHECKING([whether to enable debugging]) 32AC_ARG_ENABLE([debug], 33 [AS_HELP_STRING([--enable-debug],[build with extra debugging messages])], 34 [], [enable_debug=no]) 35AS_CASE([$enable_debug], 36 [yes], [AC_MSG_RESULT([yes]) 37 AC_DEFINE([DEBUG], 1, [Define this to enable debugging messages])], 38 [no], [AC_MSG_RESULT([no])], 39 [AC_MSG_ERROR([invalid --enable-debug="$enable_debug" parameter])]) 40 41AC_ARG_WITH([electric-fence], 42 [AS_HELP_STRING([--with-electric-fence], 43 [Use the Electric Fence library (memory allocation debugging).])]) 44 45AC_ARG_WITH([xterm], 46 [AS_HELP_STRING([--with-xterm=PROG], 47 [set the x terminal emulator used by ratpoison])], 48 [term_prog=$withval], 49 [term_prog=xterm]) 50AC_DEFINE_UNQUOTED([TERM_PROG], ["$term_prog"], [X terminal emulator to use]) 51 52XFT_CFLAGS= 53XFT_LIBS= 54AC_ARG_WITH(xft,AS_HELP_STRING([--without-xft],[Don't use the Xft library even if available]), 55 xft=$withval, xft=default) 56if test "x$xft" != "xno"; then 57 dnl Configure Xft. 58 PKG_CHECK_MODULES([XFT], [xft],,[noop=noop]) 59 AC_MSG_CHECKING(whether to use Xft) 60 echo "pkg_failed is $pkg_failed" >&5 61dnl pkg_failed can be yes, no or untried (if there is no pkg-config or that does not work). 62 if test "$pkg_failed" = "no" ; then 63 AC_DEFINE_UNQUOTED(USE_XFT_FONT, 1, [Define this to use Xft]) 64 AC_MSG_RESULT(yes) 65 elif test "x$xft" != "xdefault" ; then 66dnl if explicitly requested but not found, bail out: 67 AC_MSG_RESULT(no) 68 if test "$pkg_failed" = "untried" ; then 69 AC_MSG_ERROR([Not Xft library found (this needs a working pkg-config)!]) 70 else 71 AC_MSG_ERROR([No Xft library found!]) 72 fi 73 else 74 AC_MSG_RESULT(no) 75 fi 76else 77 AC_MSG_CHECKING(whether to use Xft) 78 AC_MSG_RESULT(no) 79fi 80AC_SUBST(XFT_CFLAGS) 81AC_SUBST(XFT_LIBS) 82 83AC_ARG_WITH([xkb], 84 [AS_HELP_STRING([--without-xkb], [Don't build XKB support for keyboard input.])], 85 [xkb=$withval], 86 [xkb=yes]) 87AS_IF([test "X$xkb" = "Xyes"], 88 [AC_DEFINE([WANT_XKB], 1, 89 [Define to 1 if you want to build XKB support for keyboard input.])]) 90 91AC_MSG_CHECKING([manpage format]) 92AC_ARG_ENABLE([mdoc], 93 [AS_HELP_STRING([--disable-mdoc], 94 [install man(7) manpages, useful if you don't have a mdoc(7) formatter\ 95 such as mandoc(1) or groff(1)])], 96 [], [enable_mdoc=yes]) 97AS_CASE([$enable_mdoc], 98 [yes], [manpage_format=mdoc], 99 [no], [manpage_format=man], 100 [AC_MSG_ERROR([invalid --enable-mdoc="$enable_mdoc" parameter])]) 101AC_MSG_RESULT([$manpage_format]) 102AC_SUBST([manpage_format]) 103 104AC_MSG_CHECKING([Xrandr support]) 105AC_ARG_WITH([xrandr], 106 [AS_HELP_STRING([--without-xrandr], 107 [Build without Xrandr support, default is to require and use it.])], 108 [with_xrandr=$withval], 109 [with_xrandr=check]) 110AC_MSG_RESULT([$with_xrandr]) 111 112dnl Checks for programs. 113AC_PROG_CC 114AM_MISSING_PROG([MANDOC], [mandoc]) 115AC_ARG_VAR([MANDOC], 116 [path to mandoc(1), only used when regenerating doc/ratpoison.man.1 \ 117 after editing doc/ratpoison.mdoc.1]) 118 119AX_CHECK_COMPILE_FLAG([-Wall], [CFLAGS="-Wall $CFLAGS"], [], [], []) 120 121dnl check for an x terminal emulator 122AC_MSG_CHECKING(terminal emulator) 123AC_MSG_RESULT($term_prog) 124 125dnl Check for the X libs 126AC_PATH_X 127AC_PATH_XTRA 128 129if test "x$no_x" = "xyes"; then 130 AC_MSG_ERROR([*** Can't find X11 headers and libs]) 131fi 132 133 134dnl Those who do not learn the lessons of history 135dnl are doomed to delete it... yuk yuk. --ttn 136AC_ARG_ENABLE([history], 137 AS_HELP_STRING([--enable-history], 138 [Link with libhistory (default: disabled. Note: only used for ! expansion)]), 139 [], [enable_history=no]) 140 141HISTORY_LIBS= 142have_history=no 143AS_CASE([$enable_history], 144 [no], [], 145 [yes], 146 [AC_CHECK_HEADERS([readline/history.h], 147 [AC_CHECK_LIB([history], [add_history], [have_history=yes], [])], 148 [])], 149 [AC_MSG_ERROR([invalid --disable-history="$enable_history" parameter])]) 150 151AC_MSG_CHECKING([whether to use libhistory]) 152AS_CASE([$enable_history:$have_history], 153 [yes:no], [AC_MSG_ERROR([Can't find history headers/lib. \ 154Install readline dev libs for history expansion.])], 155 [no:*], [AC_MSG_RESULT([no])], 156 [yes:yes], [AC_MSG_RESULT([yes]) 157 AC_DEFINE_UNQUOTED(HAVE_HISTORY, 1, Define this to enable history) 158 HISTORY_LIBS="-lhistory"]) 159 160AC_SUBST(HISTORY_LIBS) 161 162AC_CHECK_LIB(X11, XOpenDisplay, [X_LIBS="-lX11 $X_LIBS"], 163 AC_MSG_ERROR([*** Can't find libX11]),$X_LIBS $X_EXTRA_LIBS) 164 165mysavedCPPFLAGS="$CPPFLAGS" 166CPPFLAGS="$CPPFLAGS $X_CFLAGS" 167AC_CHECK_HEADERS([X11/XKBlib.h], [], [], [ 168#include <X11/Xlib.h> 169]) 170CPPFLAGS="$mysavedCPPFLAGS" 171 172AC_CHECK_LIB(Xtst, XTestFakeButtonEvent, [X_LIBS="-lXtst $X_LIBS"; AC_DEFINE(HAVE_LIBXTST,1,[Xtst])],,$X_LIBS $X_EXTRA_LIBS) 173AC_CHECK_LIB([X11], [XkbKeycodeToKeysym], 174 [AC_DEFINE(HAVE_XKBKEYCODETOKEYSYM, 1, 175 [Define to 1 if you have the `XkbKeycodeToKeysym' function.])], 176 [], [$X_LIBS $X_EXTRA_LIBS]) 177 178mysavedCPPFLAGS="$CPPFLAGS" 179CPPFLAGS="$CPPFLAGS $X_CFLAGS" 180AC_CHECK_HEADERS([X11/extensions/Xrandr.h], [xrandr_h=yes], [xrandr_h=no], [ 181#include <X11/Xlib.h> 182]) 183CPPFLAGS="$mysavedCPPFLAGS" 184 185AC_CHECK_LIB(Xrandr, XRRGetScreenResources, [libxrandr=yes], [libxrandr=no], [$X_LIBS $X_EXTRA_LIBS]) 186 187AS_CASE(["$with_xrandr:$xrandr_h:$libxrandr"], 188 [yes:no:*], [AC_MSG_ERROR([*** Can't enable Xrandr support, header Xrandr.h not found.])], 189 [yes:*:no], [AC_MSG_ERROR([*** Can't enable Xrandr support, libXrandr not found.])], 190 [check:no:*], [AC_MSG_ERROR([*** Header Xrandr.h not found, use ./configure --without-xrandr to build without multiple screens support.])], 191 [check:*:no], [AC_MSG_ERROR([*** libXrandr not found, use ./configure --without-xrandr to build without multiple screens support.])], 192 [yes:yes:yes|check:yes:yes], [X_LIBS="-lXrandr $X_LIBS" 193 AC_DEFINE(HAVE_XRANDR, 1, [Define to 1 if you want Xrandr support.])]) 194 195AC_SUBST(X_LIBS) 196AC_SUBST(X_EXTRA_LIBS) 197AC_SUBST(X_CFLAGS) 198 199AS_IF([test "$with_electric_fence" = yes], 200 [AC_CHECK_LIB([efence], [malloc], [], 201 [AC_MSG_ERROR([Couldn't find the Electric Fence library (-lefence)])])]) 202 203dnl Checks for header files. 204AC_HEADER_STDC 205AC_CHECK_HEADERS([pwd.h sys/ioctl.h sys/stat.h]) 206 207dnl Checks for typedefs, structures, and compiler characteristics. 208AC_C_TYPEOF 209 210AH_TEMPLATE([HAVE___BUILTIN_PREFETCH], 211 [Define to 1 if your compiler supports the `__builtin_prefetch' function.]) 212AC_MSG_CHECKING([for __builtin_prefetch()]) 213AC_LINK_IFELSE([AC_LANG_PROGRAM([], 214 [ 215 int a = 9; 216 __builtin_prefetch(&a); 217 return 0; 218 ])], 219 [AC_DEFINE([HAVE___BUILTIN_PREFETCH], 1) 220 AC_MSG_RESULT(yes)], 221 [AC_MSG_RESULT(no)]) 222 223dnl Checks for library functions. 224AC_CHECK_FUNCS(getline getopt_long getpwuid setenv setpgid setpgrp setsid) 225AC_CHECK_FUNCS(unsetenv vsnprintf) 226 227AM_LANGINFO_CODESET 228 229lispdir='${datarootdir}/emacs/site-lisp' 230AC_SUBST([lispdir]) 231 232AC_CONFIG_FILES([Makefile doc/Makefile src/Makefile contrib/Makefile]) 233AC_OUTPUT