summaryrefslogtreecommitdiff
path: root/configure.in
blob: c85057538095f6a236591a7807af21369cf3c134 (plain)
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
dnl Process this file with autoconf to produce a configure script.
dnl Copyright (C) 2000, 2001, 2002, 2003, 2004 Shawn Betts <sabetts@vcn.bc.ca>
dnl
dnl This file is part of ratpoison.
dnl
dnl ratpoison is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.
dnl
dnl ratpoison is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
dnl GNU General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
dnl
dnl $Id: configure.in,v 1.54 2006/12/19 22:13:07 sabetts Exp $

AC_INIT(src/main.c)
AM_INIT_AUTOMAKE(ratpoison, 1.4.4-GIT)

AM_MAINTAINER_MODE

AM_CONFIG_HEADER(src/config.h)

dnl by default turn off debugging
AC_MSG_CHECKING(whether to enable debugging)
AC_ARG_ENABLE(debug,
	[  --enable-debug          build with extra debugging messages],
	[if test "x$enableval" != "xno"; then
		AC_DEFINE_UNQUOTED(DEBUG, 1, Define this to enable debugging messages)
		AC_MSG_RESULT(yes)
		CFLAGS="$CFLAGS -g"
	else
		AC_MSG_RESULT(no)
	fi],[AC_MSG_RESULT(no)])

AC_ARG_WITH(xterm, [ --with-xterm=PROG        set the x terminal emulator used by ratpoison ],
term_prog=$withval, term_prog="xterm")
AC_DEFINE_UNQUOTED(TERM_PROG, "$term_prog", X terminal emulator to use)

dnl Use the Xft library if desired.
AC_MSG_CHECKING(whether to use Xft)
AC_ARG_WITH(xft,
       AC_HELP_STRING([--with-xft], [use the Xft library for fonts]),
       [if test "x$withval" != "xno"; then
               AC_DEFINE_UNQUOTED(USE_XFT_FONT, 1, [Define this to use Xft])
               CFLAGS="$CFLAGS `pkg-config --cflags xft`"
               LDFLAGS="$LDFLAGS `pkg-config --libs xft`"
               AC_MSG_RESULT(yes)
       else
               AC_MSG_RESULT(no)
       fi],
       [AC_MSG_RESULT(no)])

dnl Checks for programs.
AC_CHECK_TOOL(CC, gcc)
AC_PROG_CC

if test "x$CC" = "xgcc"; then
	CFLAGS="$CFLAGS -Wall -O2"
fi

dnl check for an x terminal emulator
AC_MSG_CHECKING(terminal emulator)
AC_MSG_RESULT($term_prog)

dnl Check for the X libs
AC_PATH_X
AC_PATH_XTRA

if test "x$no_x" = "xyes"; then
	AC_MSG_ERROR([*** Can't find X11 headers and libs])
fi


dnl Those who do not learn the lessons of history
dnl are doomed to delete it...  yuk yuk.  --ttn
AC_ARG_ENABLE(history,
  [  --disable-history       ignore libhistory (default: use it)],
  [ if test x${enableval} = xyes ; then
        check_for_libhistory=yes
    else
        check_for_libhistory=no
    fi],[check_for_libhistory=yes])

if test x$check_for_libhistory = xyes ; then
  AC_CHECK_HEADERS([readline/history.h],
    AC_CHECK_LIB(history, add_history,
      [LIBS="$LIBS -lhistory"
       AC_DEFINE_UNQUOTED(HAVE_HISTORY, 1, Define this to enable history)],
      AC_MSG_WARN([*** Can't find History lib. Install readline dev libs for history.])),
    AC_MSG_WARN([*** Can't find History header. Install readline dev libs for history.]))
fi

LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS $X_EXTRA_LIBS"
CFLAGS="$CFLAGS $X_CFLAGS"

AC_CHECK_LIB(X11, XOpenDisplay,,
	AC_MSG_ERROR([*** Can't find libX11]))

AC_CHECK_HEADERS([X11/extensions/Xinerama.h], [], [], [
#include <X11/Xlib.h>
])
AC_CHECK_LIB(Xext, XMissingExtension, [LIBS="-lXext $LIBS"],, $CFLAGS $LDFLAGS)
AC_CHECK_LIB(Xinerama, XineramaQueryScreens, [LIBS="-lXinerama $LIBS"; AC_DEFINE(HAVE_LIBXINERAMA,1,[Xinerama])],, $CFLAGS $LDFLAGS)
AC_CHECK_LIB(Xtst, XTestFakeButtonEvent, [LIBS="-lXtst $LIBS"; AC_DEFINE(HAVE_LIBXTST,1,[Xtst])],, $CFLAGS $LDFLAGS)


dnl Check for electric fence library
dnl AC_CHECK_LIB(efence,malloc,,)

dnl Checks for header files.
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(unistd.h stdarg.h)

dnl Checks for typedefs, structures, and compiler characteristics.

dnl Checks for library functions.
AC_CHECK_FUNCS(getopt getopt_long setsid setpgid setpgrp putenv vsnprintf usleep)

AC_TYPE_SIGNAL

AC_OUTPUT(Makefile doc/Makefile src/Makefile contrib/Makefile)