summaryrefslogtreecommitdiff
path: root/configure.in
blob: 85ca12254a96ca3f3ba044d9e3da291c77e34b8c (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
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.3-GIT)

AM_MAINTAINER_MODE

AM_CONFIG_HEADER(src/config.h)

AC_CANONICAL_HOST
AC_SUBST(host_os)

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 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)