1dnl Process this file with autoconf to create configure.
2
3AC_PREREQ([2.57])
4AC_INIT(vtwm,[5.5.0], [mailto:vtwm-hackers@lists.sandelman.ca],vtwm)
5AM_INIT_AUTOMAKE([dist-bzip2])
6AM_MAINTAINER_MODE
7AC_PREFIX_DEFAULT([/usr])
8
9AM_CONFIG_HEADER(config.h)
10
11AC_PATH_PROG(BOURNE_SHELL, sh)
12AC_PATH_PROG(LN, ln)
13AC_PATH_PROG(CP, cp)
14AC_PATH_PROG(RM, rm)
15AC_PROG_CC
16AC_PROG_INSTALL
17AC_PROG_YACC
18AC_PROG_LEX
19if test "x$LEX" = x:; then
20  echo "Missing required program lex (or flex)!"
21  exit 1
22fi
23
24AC_CHECK_FUNC([mkstemp],
25   AC_DEFINE(HAS_MKSTEMP,1,[Define to 1 if you have the `mkstemp' function.]))
26
27dnl setpgid support
28AC_CHECK_FUNC([setpgid],
29   AC_DEFINE(HAS_SETPGID,1,[Define to 1 if you have the `setpgid' function.]))
30
31dnl setsid support
32AC_CHECK_FUNC([setsid],
33   AC_DEFINE(HAS_SETSID,1,[Define to 1 if you have the `setsid' function.]))
34
35dnl setpgrp support
36AC_CHECK_FUNC([setpgrp],
37   AC_DEFINE(HAS_SETPGRP,1,[Define to 1 if you have the `setpgrp' function.]))
38
39dnl AC_FUNC_SETPGRP does not work if cross compiling
40dnl Instead, assume we will have a prototype for setpgrp if cross compiling.
41if test "$cross_compiling" = no; then
42  AC_FUNC_SETPGRP
43else
44  AC_CACHE_CHECK([whether setpgrp takes no argument], ac_cv_func_setpgrp_void,
45    [AC_TRY_COMPILE([
46#include <unistd.h>
47], [
48  if (setpgrp(1,1) == -1)
49    exit (0);
50  else
51    exit (1);
52], ac_cv_func_setpgrp_void=no, ac_cv_func_setpgrp_void=yes)])
53if test $ac_cv_func_setpgrp_void = yes; then
54  AC_DEFINE(SETPGRP_VOID, 1)
55fi
56fi
57
58dnl Check for sound support
59AC_ARG_ENABLE(sound,AC_HELP_STRING([--disable-sound],[Turn off sound support]),[if test "$enable_sound" = "no"; then SOUND_SUPPORT=; fi ])
60if test "x$enable_sound" != "xno"; then
61
62  AC_ARG_ENABLE(oss-sound,AC_HELP_STRING([--disable-oss-sound],[Turn off oss sound support]))
63  if test "x$enable_oss_sound" != "xno"; then
64    AC_CHECK_FILE(/dev/dsp,SOUND_SUPPORT=-DHAVE_OSS)
65  fi
66
67  AC_ARG_ENABLE(rplay-sound,AC_HELP_STRING([--disable-rplay-sound],[Turn off rplay sound support]))
68  if test "x$enable_rplay_sound" != "xno"; then
69    AC_CHECK_LIB(rplay,rplay_create)
70    AC_CHECK_LIB(rplay,rplay_create,SOUND_SUPPORT="${SOUND_SUPPORT} -DHAVE_RPLAY")
71  fi
72
73  AC_ARG_ENABLE(esd-sound,AC_HELP_STRING([--disable-esd-sound],[Turn off esd sound support]))
74  if test "x$enable_esd_sound" != "xno"; then
75    AC_CHECK_LIB(esd,esd_audio_open)
76    AC_CHECK_LIB(esd,esd_audio_open,SOUND_SUPPORT="${SOUND_SUPPORT} -DHAVE_ESD")
77  fi
78fi
79AC_SUBST(SOUND_SUPPORT)
80
81dnl Checks for pkg-config packages
82PKG_CHECK_MODULES(VTWM, x11 xext xt xmu)
83
84dnl Xpm library checks
85AC_ARG_ENABLE(xpm,AC_HELP_STRING([--disable-xpm],[Turn off libXpm rendering]))
86if test "x$enable_xpm" != "xno"; then
87  PKG_CHECK_EXISTS(xpm,[PKG_CHECK_MODULES(xpm, xpm)],[xpm_CFLAGS=-DNO_XPM_SUPPORT])
88  AC_SUBST(xpm_CFLAGS)
89  AC_SUBST(xpm_LIBS)
90fi
91
92AC_ARG_ENABLE(nexpm,AC_HELP_STRING([--disable-nexpm],[Turn off nexpm building]))
93if test "x$enable_xpm" != "xno" -a "x$enable_nexpm" != "xno"; then
94  ENABLE_NEXPM=yes;
95fi
96AC_SUBST(ENABLE_NEXPM)
97AM_CONDITIONAL(ENABLE_NEXPM, test x$ENABLE_NEXPM = xyes)
98
99dnl png library checks
100AC_ARG_ENABLE(png,AC_HELP_STRING([--disable-png],[Turn off png support]))
101if test "x$enable_png" != "xno"; then
102  PKG_CHECK_EXISTS(libpng,[PKG_CHECK_MODULES(png, libpng)],[png_CFLAGS=-DNO_PNG_SUPPORT])
103  AC_SUBST(png_CFLAGS)
104  AC_SUBST(png_LIBS)
105fi
106
107dnl regexp library checks
108AC_SEARCH_LIBS(regcomp,regex c,[regex_LIBS=$LIBS;regex_CFLAGS=],[regex_CFLAGS=-DNO_REGEX_SUPPORT])
109AC_SUBST(regex_CFLAGS)
110AC_SUBST(regex_LIBS)
111
112dnl Xft Font rendering
113AC_ARG_ENABLE(xft,AC_HELP_STRING([--disable-xft],[Turn off libXft rendering]))
114if test "x$enable_xft" != "xno"; then
115  PKG_CHECK_EXISTS(xft,[PKG_CHECK_MODULES(xft, xft);xft_AUX_CFLAGS=-DTWM_USE_XFT])
116  AC_SUBST(xft_CFLAGS)
117  AC_SUBST(xft_AUX_CFLAGS)
118  AC_SUBST(xft_LIBS)
119fi
120
121dnl Font height dependent text layout spacing
122AC_ARG_ENABLE(spacing,AC_HELP_STRING([--disable-spacing],[Turn off font height dependent text layout spacing]),[if test "$enable_spacing" = "yes"; then TWM_USE_SPACING=-DTWM_USE_SPACING; fi ],[TWM_USE_SPACING=-DTWM_USE_SPACING])
123AC_SUBST(TWM_USE_SPACING)
124
125dnl Opacity
126AC_ARG_ENABLE(opacity,AC_HELP_STRING([--disable-opacity],[Turn off _NET_WM_WINDOW_OPACITY client window property support]),[if test "$enable_opacity" = "yes"; then TWM_USE_OPACITY=-DTWM_USE_OPACITY; fi ],[TWM_USE_OPACITY=-DTWM_USE_OPACITY])
127AC_SUBST(TWM_USE_OPACITY)
128
129dnl Sloppy focus
130AC_ARG_ENABLE(sloppyfocus,AC_HELP_STRING([--disable-sloppyfocus],[Turn off sloppy window focus]),[if test "$enable_sloppyfocus" = "yes"; then TWM_USE_SLOPPYFOCUS=-DTWM_USE_SLOPPYFOCUS; fi ],[TWM_USE_SLOPPYFOCUS=-DTWM_USE_SLOPPYFOCUS])
131AC_SUBST(TWM_USE_SLOPPYFOCUS)
132
133dnl Version window build information
134AC_ARG_ENABLE(buildinfo,AC_HELP_STRING([--disable-build-info],[Prevent version window from having build information]),[if test "$enable_build_info" = "no"; then NO_BUILD_INFO=-DNO_BUILD_INFO; fi ])
135AC_SUBST(NO_BUILD_INFO)
136
137dnl nsl library checks
138AC_SEARCH_LIBS(gethostbyname,nsl)
139
140dnl xrandr library checks
141AC_ARG_ENABLE(xrandr,AC_HELP_STRING([--disable-xrandr],[Turn off Xrandr support]))
142if test "x$enable_xrandr" != "xno"; then
143  PKG_CHECK_EXISTS(xrandr,[PKG_CHECK_MODULES(xrandr, xrandr);xrandr_AUX_CFLAGS=-DTWM_USE_XRANDR])
144  AC_SUBST(xrandr_CFLAGS)
145  AC_SUBST(xrandr_AUX_CFLAGS)
146  AC_SUBST(xrandr_LIBS)
147fi
148
149dnl xinerama library checks
150AC_ARG_ENABLE(xinerama,AC_HELP_STRING([--disable-xinerama],[Turn off Xinerama support]))
151if test "x$enable_xinerama" != "xno"; then
152  PKG_CHECK_EXISTS(xinerama,[PKG_CHECK_MODULES(xinerama, xinerama);xinerama_AUX_CFLAGS=-DTWM_USE_XINERAMA])
153  AC_SUBST(xinerama_CFLAGS)
154  AC_SUBST(xinerama_AUX_CFLAGS)
155  AC_SUBST(xinerama_LIBS)
156fi
157
158AC_CHECK_HEADER(sys/select.h,NEED_SELECT_H=-DNEED_SELECT_H)
159AC_SUBST(NEED_SELECT_H)
160AC_CHECK_HEADER(process.h,NEED_PROCESS_H=-DNEED_PROCESS_H)
161AC_SUBST(NEED_PROCESS_H)
162
163AC_CHECK_FUNC(putenv,,NEED_PUTENV_F=-DNEED_PUTENV_F)
164AC_SUBST(NEED_PUTENV_F)
165
166dnl M4
167AC_ARG_ENABLE(m4,AC_HELP_STRING([--disable-m4],[Turn off m4 vtwmrc processing]),[if test "$enable_m4" = "no"; then NO_M4_SUPPORT=-DNO_M4_SUPPORT; fi ])
168AC_PATH_PROG(M4_BIN, m4)
169if test -z "$M4_BIN"; then NO_M4_SUPPORT=-DNO_M4_SUPPORT; fi
170AC_SUBST(NO_M4_SUPPORT)
171
172dnl DEBUG
173AC_ARG_ENABLE(debug,AC_HELP_STRING([--enable-debug],[Turn on value added debugging]),[if test "$enable_debug" = "yes"; then DDEBUG=-DDEBUG; fi ])
174AC_ARG_ENABLE(debug-events,AC_HELP_STRING([--enable-debug-events],[Turn on value added debugging of events]),[if test "$enable_debug_events" = "yes"; then DDEBUG="$DDEBUG -DDEBUG_EVENTS"; fi ])
175AC_ARG_ENABLE(debug-autoraisedelay,AC_HELP_STRING([--enable-debug-autoraisedelay],[Turn on value added debugging]),[if test "$enable_debug_autoraisedelay" = "yes"; then DDEBUG="$DDEBUG -DDEBUG_AUTORAISEDELAY"; fi ])
176AC_ARG_ENABLE(debug-stolenfocus,AC_HELP_STRING([--enable-debug-stolenfocus],[Turn on value added debugging]),[if test "$enable_debug_stolenfocus" = "yes"; then DDEBUG="$DDEBUG -DDEBUG_STOLENFOCUS"; fi ])
177AC_ARG_ENABLE(debug-iconmgr,AC_HELP_STRING([--enable-debug-iconmgr],[Turn on value added debugging]),[if test "$enable_debug_iconmgr" = "yes"; then DDEBUG="$DDEBUG -DDEBUG_ICONMGR"; fi ])
178AC_ARG_ENABLE(debug-warpclass,AC_HELP_STRING([--enable-debug-warpclass],[Turn on value added debugging]),[if test "$enable_debug_warpclass" = "yes"; then DDEBUG="$DDEBUG -DDEBUG_WARPCLASS"; fi ])
179AC_ARG_ENABLE(debug-trace,AC_HELP_STRING([--enable-debug-trace],[Turn on value added X event tracing]),[if test "$enable_debug_trace" = "yes"; then DDEBUG="$DDEBUG -DTRACE"; fi ])
180AC_SUBST(DDEBUG)
181
182AC_SUBST(VTWM_CFLAGS)
183AC_SUBST(VTWM_LIBS)
184
185AC_ARG_WITH([SYS_VTWMRC_LOOK], AC_HELP_STRING([--disable-3dlook],['2D' or '3D' (3D default) look and feel]), [SYS_VTWMRC_LOOK=$withval],[SYS_VTWMRC_LOOK=3D])
186AC_SUBST(SYS_VTWMRC_LOOK)
187
188AC_OUTPUT([Makefile])
189