ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/configure.ac
(Generate patch)

Comparing rxvt-unicode/configure.ac (file contents):
Revision 1.104 by root, Sun Jan 6 21:34:57 2008 UTC vs.
Revision 1.161 by root, Fri Dec 30 16:51:59 2022 UTC

1dnl# 1dnl#
2dnl# Process this file with autoconf to produce a configure script. 2dnl# Process this file with autoconf to produce a configure script.
3dnl# 3dnl#
4 4
5AC_INIT 5AC_INIT
6AC_PREREQ(2.50) 6AC_PREREQ(2.71)
7AC_CONFIG_SRCDIR([src/feature.h]) 7AC_CONFIG_SRCDIR([src/feature.h])
8AC_CONFIG_HEADER(config.h:config.h.in) 8AC_CONFIG_HEADERS(config.h:config.h.in)
9
10AC_CANONICAL_HOST
11 9
12dnl RXVT version 10dnl RXVT version
13changequote(, )dnl
14VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 11VERSION=`sed -n -e 's/^.* VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
15DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 12DATE=`sed -n -e 's/^.* DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
16changequote([, ])dnl
17AC_SUBST(VERSION)dnl 13AC_SUBST(VERSION)dnl
18AC_SUBST(DATE)dnl 14AC_SUBST(DATE)dnl
19 15
20echo "" 16echo ""
21echo "configuring for rxvt $VERSION" 17echo "configuring for rxvt $VERSION"
24orig_CXXFLAGS="$CXXFLAGS" 20orig_CXXFLAGS="$CXXFLAGS"
25 21
26dnl# Checks for programs. 22dnl# Checks for programs.
27AC_PROG_CC 23AC_PROG_CC
28AC_PROG_CXX 24AC_PROG_CXX
29AC_PROG_CPP
30AC_PROG_INSTALL 25AC_PROG_INSTALL
31 26
32AC_AIX 27AC_USE_SYSTEM_EXTENSIONS
33AC_GNU_SOURCE
34AC_ISC_POSIX
35AC_LANG(C++) 28AC_LANG(C++)
36 29
30LINKER="$CXX"
37dnl check wether we can link with gcc -lsupc++ 31dnl check whether we can link with gcc -lsupc++
38if test x$GCC = xyes && test x$GXX = xyes; then 32if test x$GCC = xyes && test x$GXX = xyes; then
39 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it 33 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it
40 AC_MSG_CHECKING([for working libsupc++]) 34 AC_MSG_CHECKING([for working libsupc++])
41 save_CXX="$CXX" 35 save_CXX="$CXX"
42 save_LIBS="$LIBS" 36 save_LIBS="$LIBS"
43 CXX="$CC" 37 CXX="$CC"
44 LIBS="$LIBS -lsupc++" 38 LIBS="$LIBS -lsupc++"
45 LINKER="$CC"
46 AC_LINK_IFELSE( 39 AC_LINK_IFELSE(
47 [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])], 40 [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])],
48 [AC_MSG_RESULT(ok)], 41 [AC_MSG_RESULT(ok)
42 LINKER="$CC"],
49 [ 43 [
50 AC_MSG_RESULT([no, making everything bigger and slower]) 44 AC_MSG_RESULT([no, making everything bigger and slower])
51 LIBS="$save_LIBS" 45 LIBS="$save_LIBS"
52 LINKER="$save_CXX"
53 ] 46 ]
54 ) 47 )
55 CXX="$save_CXX" 48 CXX="$save_CXX"
56fi 49fi
57AC_SUBST(LINKER,[$LINKER]) 50AC_SUBST(LINKER,[$LINKER])
67 CXXFLAGS="-O" 60 CXXFLAGS="-O"
68 fi 61 fi
69 CFLAGS="$CXXFLAGS" 62 CFLAGS="$CXXFLAGS"
70fi 63fi
71 64
72case $host in
73 *-*-solaris* )
74 AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris)
75 ;;
76esac
77
78dnl# FreeBSD needs to link libxpg4 65dnl# FreeBSD needs to link libxpg4
79AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) 66AC_SEARCH_LIBS(setlocale, xpg4)
80 67
81dnl# solaris needs to link libnsl and socket 68dnl# solaris needs to link libnsl and socket
82AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])]) 69AC_SEARCH_LIBS(gethostbyname, nsl)
83AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])]) 70AC_SEARCH_LIBS(socket, socket)
84 71
85support_frills=yes 72support_frills=yes
86support_inheritpixmap=yes 73support_inheritpixmap=yes
87support_fading=yes 74support_fading=yes
88support_keepscrolling=yes 75support_keepscrolling=yes
92support_text_blink=yes 79support_text_blink=yes
93support_pointer_blank=yes 80support_pointer_blank=yes
94support_scroll_rxvt=yes 81support_scroll_rxvt=yes
95support_scroll_next=yes 82support_scroll_next=yes
96support_scroll_xterm=yes 83support_scroll_xterm=yes
97support_scroll_plain=yes
98support_xim=yes 84support_xim=yes
99support_afterimage=yes 85support_pixbuf=yes
100support_afterstep=yes 86support_startup_notification=yes
101support_xft=yes 87support_xft=yes
102support_unicode3=no 88support_unicode3=no
103support_combining=yes 89support_combining=yes
104support_8bitctrls=no 90support_8bitctrls=no
105support_iso14755=yes 91support_iso14755=yes
119 support_frills=no 105 support_frills=no
120 support_inheritpixmap=no 106 support_inheritpixmap=no
121 support_fading=no 107 support_fading=no
122 support_keepscrolling=no 108 support_keepscrolling=no
123 support_selectionscrolling=no 109 support_selectionscrolling=no
124 support_lastlog=no
125 support_mousewheel=no 110 support_mousewheel=no
126 support_mouseslipwheel=no 111 support_mouseslipwheel=no
127 support_text_blink=no 112 support_text_blink=no
128 support_pointer_blank=no 113 support_pointer_blank=no
129 support_scroll_rxvt=no 114 support_scroll_rxvt=no
130 support_scroll_next=no 115 support_scroll_next=no
131 support_scroll_xterm=no 116 support_scroll_xterm=no
132 support_scroll_plain=no
133 support_utmp=no
134 support_wtmp=no
135 support_xim=no 117 support_xim=no
136 support_afterimage=no 118 support_pixbuf=no
137 support_afterstep=no 119 support_startup_notification=no
138 support_xft=no 120 support_xft=no
139 support_unicode3=no 121 support_unicode3=no
140 support_combining=no 122 support_combining=no
141 support_8bitctrls=no 123 support_8bitctrls=no
142 support_iso14755=no 124 support_iso14755=no
148 support_frills=yes 130 support_frills=yes
149 support_inheritpixmap=yes 131 support_inheritpixmap=yes
150 support_fading=yes 132 support_fading=yes
151 support_keepscrolling=yes 133 support_keepscrolling=yes
152 support_selectionscrolling=yes 134 support_selectionscrolling=yes
153 support_lastlog=yes
154 support_mousewheel=yes 135 support_mousewheel=yes
155 support_mouseslipwheel=yes 136 support_mouseslipwheel=yes
156 support_text_blink=yes 137 support_text_blink=yes
157 support_pointer_blank=yes 138 support_pointer_blank=yes
158 support_scroll_rxvt=yes 139 support_scroll_rxvt=yes
159 support_scroll_next=yes 140 support_scroll_next=yes
160 support_scroll_xterm=yes 141 support_scroll_xterm=yes
161 support_scroll_plain=yes
162 support_utmp=yes
163 support_wtmp=yes
164 support_xim=yes 142 support_xim=yes
165 support_afterimage=yes
166 support_afterstep=yes 143 support_pixbuf=yes
144 support_startup_notification=yes
167 support_xft=yes 145 support_xft=yes
168 support_unicode3=yes 146 support_unicode3=yes
169 support_combining=yes 147 support_combining=yes
170 #support_8bitctrls=yes 148 #support_8bitctrls=yes
171 support_iso14755=yes 149 support_iso14755=yes
173 support_perl=yes 151 support_perl=yes
174 codesets=all 152 codesets=all
175 fi 153 fi
176 ]) 154 ])
177 155
178WARNINGS=no 156support_assertions=no
157AC_ARG_ENABLE(assert,
158 [ --enable-assert enable assertions],
159 [if test x$enableval = xyes; then
160 support_assertions=yes
161 fi])
162if test x$support_assertions = xno; then
163 AC_DEFINE(NDEBUG, 1, Disable assertions (good for debugging))
164fi
165
166support_warnings=no
179AC_ARG_ENABLE(warnings, 167AC_ARG_ENABLE(warnings,
180 [ --enable-warnings turn on g++ warnings], 168 [ --enable-warnings turn on g++ warnings],
181 [if test x$enableval = xyes; then 169 [if test x$enableval = xyes; then
182 WARNINGS=yes 170 support_warnings=yes
183 fi]) 171 fi])
184if test x$GXX = xyes; then 172if test x$GXX = xyes; then
185 if test $WARNINGS = yes; then 173 if test $support_warnings = yes; then
186 save_CXXFLAGS="$CXXFLAGS" 174 save_CXXFLAGS="$CXXFLAGS"
187 CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-non-virtual-dtor" 175 for warning in \
176 -Wall \
177 -Wno-parentheses \
178 -Wno-reorder \
179 -Wno-sign-compare \
180 -Wno-unused-value \
181 ; do
182 CXXFLAGS="$CXXFLAGS $warning"
183 done
188 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"]) 184 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"])
189 else 185 else
190 CXXFLAGS="$CXXFLAGS -w" 186 CXXFLAGS="$CXXFLAGS -w"
191 fi 187 fi
192fi 188fi
193 189
190support_256_color=no
191AC_ARG_ENABLE(256-color,
192 [ --enable-256-color enable 256-color support],
193 [if test x$enableval = xyes; then
194 support_256_color=yes
195 fi])
196if test x$support_256_color = xyes; then
197 AC_DEFINE(USE_256_COLORS, 1, Define if you want 256-color support)
198fi
199
194AC_ARG_ENABLE(unicode3, 200AC_ARG_ENABLE(unicode3,
195 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters], 201 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters],
196 [if test x$enableval = xyes -o x$enableval = xno; then 202 [if test x$enableval = xyes -o x$enableval = xno; then
197 support_unicode3=$enableval 203 support_unicode3=$enableval
198 fi]) 204 fi])
213 [ --enable-font-styles enable bold and italic support], 219 [ --enable-font-styles enable bold and italic support],
214 [if test x$enableval = xyes -o x$enableval = xno; then 220 [if test x$enableval = xyes -o x$enableval = xno; then
215 support_styles=$enableval 221 support_styles=$enableval
216 fi]) 222 fi])
217 223
218AC_ARG_ENABLE(afterimage, 224AC_ARG_ENABLE(pixbuf,
219 [ --enable-afterimage enable integration with libAfterImage for background images], 225 [ --enable-pixbuf enable integration with gdk-pixbuf for background images],
220 [if test x$enableval = xyes -o x$enableval = xno; then
221 support_afterimage=$enableval
222 fi])
223
224AC_ARG_WITH(afterimage_config,
225 [ --with-afterimage-config=DIR use libAfterImage config script in DIR],
226 [if test "x$withval" != x; then
227 afterimage_config=$withval/afterimage-config
228 fi])
229
230dnl AC_ARG_ENABLE(afterstep,
231dnl [ --enable-afterstep enable integration with AfterStep window manager],
232dnl [if test x$enableval = xyes -o x$enableval = xno; then 226 [if test x$enableval = xyes -o x$enableval = xno; then
233dnl support_afterstep=$enableval 227 support_pixbuf=$enableval
234dnl fi]) 228 fi])
229
230AC_ARG_ENABLE(startup-notification,
231 [ --enable-startup-notification enable freedesktop startup notification support],
232 [if test x$enableval = xyes -o x$enableval = xno; then
233 support_startup_notification=$enableval
234 fi])
235 235
236AC_ARG_ENABLE(transparency, 236AC_ARG_ENABLE(transparency,
237 [ --enable-transparency enable transparent backgrounds], 237 [ --enable-transparency enable transparent backgrounds],
238 [if test x$enableval = xyes -o x$enableval = xno; then 238 [if test x$enableval = xyes -o x$enableval = xno; then
239 support_inheritpixmap=$enableval 239 support_inheritpixmap=$enableval
259 259
260AC_ARG_ENABLE(xterm-scroll, 260AC_ARG_ENABLE(xterm-scroll,
261 [ --enable-xterm-scroll enable Xterm style scrollbar], 261 [ --enable-xterm-scroll enable Xterm style scrollbar],
262 [if test x$enableval = xyes -o x$enableval = xno; then 262 [if test x$enableval = xyes -o x$enableval = xno; then
263 support_scroll_xterm=$enableval 263 support_scroll_xterm=$enableval
264 fi])
265
266AC_ARG_ENABLE(plain-scroll,
267 [ --enable-plain-scroll enable plain style scrollbar],
268 [if test x$enableval = xyes -o x$enableval = xno; then
269 support_scroll_plain=$enableval
270 fi]) 264 fi])
271 265
272AC_ARG_ENABLE(perl, 266AC_ARG_ENABLE(perl,
273 [ --enable-perl enable embedded perl interpreter], 267 [ --enable-perl enable embedded perl interpreter],
274 [if test x$enableval = xyes -o x$enableval = xno; then 268 [if test x$enableval = xyes -o x$enableval = xno; then
295 [ --disable-delete-key disable handling of the delete key], 289 [ --disable-delete-key disable handling of the delete key],
296 [if test x$enableval = xno; then 290 [if test x$enableval = xno; then
297 AC_DEFINE(NO_DELETE_KEY, 1, Define if you don't want support for the (non-keypad) delete key) 291 AC_DEFINE(NO_DELETE_KEY, 1, Define if you don't want support for the (non-keypad) delete key)
298 fi]) 292 fi])
299 293
294support_resources=yes
300AC_ARG_ENABLE(resources, 295AC_ARG_ENABLE(resources,
301 [ --disable-resources disable all resource checking], 296 [ --disable-resources disable all resource checking],
302 [if test x$enableval = xno; then 297 [if test x$enableval = xno; then
303 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read) 298 support_resources=no
304 fi]) 299 fi])
305 300
306AC_ARG_ENABLE(8bitctrls, 301AC_ARG_ENABLE(8bitctrls,
307 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)], 302 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)],
308 [if test x$enableval = xyes -o x$enableval = xno; then 303 [if test x$enableval = xyes -o x$enableval = xno; then
338AC_ARG_WITH(name, 333AC_ARG_WITH(name,
339 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)], 334 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)],
340 [RXVTNAME="$withval"]) 335 [RXVTNAME="$withval"])
341AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name]) 336AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name])
342 337
343RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"`
344AC_SUBST(RXVTNAME) 338AC_SUBST(RXVTNAME)
345 339
346AC_ARG_ENABLE(swapscreen, 340AC_ARG_ENABLE(swapscreen,
347 [ --disable-swapscreen disable swap screen support], 341 [ --disable-swapscreen disable swap screen support],
348 [if test x$enableval = xno; then 342 [if test x$enableval = xno; then
396 [if test x$enableval = xyes -o x$enableval = xno; then 390 [if test x$enableval = xyes -o x$enableval = xno; then
397 support_text_blink=$enableval 391 support_text_blink=$enableval
398 fi]) 392 fi])
399 393
400AC_ARG_ENABLE(pointer-blank, 394AC_ARG_ENABLE(pointer-blank,
401 [ --enable-pointer-blank enable pointer blank when typing or inactive pointer], 395 [ --enable-pointer-blank enable pointer blanking when typing or inactive],
402 [if test x$enableval = xyes -o x$enableval = xno; then 396 [if test x$enableval = xyes -o x$enableval = xno; then
403 support_pointer_blank=$enableval 397 support_pointer_blank=$enableval
404 fi]) 398 fi])
405 399
406AC_ARG_WITH(term, 400AC_ARG_WITH(term,
413 [ --with-terminfo=PATH set the path to the terminfo tree to PATH], 407 [ --with-terminfo=PATH set the path to the terminfo tree to PATH],
414 [if test x$withval != x; then 408 [if test x$withval != x; then
415 AC_DEFINE_UNQUOTED(RXVT_TERMINFO, "$withval", Set TERMINFO value to the value given by configure) terminfo="$withval" 409 AC_DEFINE_UNQUOTED(RXVT_TERMINFO, "$withval", Set TERMINFO value to the value given by configure) terminfo="$withval"
416 fi]) 410 fi])
417 411
412if test x$support_resources = xno; then
413 if test x$support_frills = xyes || test x$support_perl = xyes; then
414 AC_MSG_ERROR([--disable-resources requires --disable-frills --disable-perl])
415 fi
416
417 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read)
418fi
419
418dnl# -------------------------------------------------------------------------- 420dnl# --------------------------------------------------------------------------
419 421
420LIBEV_M4_AVOID_LIBRT=1 422LIBEV_M4_AVOID_LIBRT=1
421m4_include([libev/libev.m4]) 423m4_include([libev/libev.m4])
422 424
424 426
425AC_PATH_PROG(TIC, tic, :) 427AC_PATH_PROG(TIC, tic, :)
426 428
427AC_PATH_XTRA 429AC_PATH_XTRA
428 430
429AFTERIMAGE_CFLAGS= 431AC_PATH_TOOL(PKG_CONFIG, pkg-config, no)
430AFTERIMAGE_LIBS=
431AFTERIMAGE_VERSION=
432 432
433RXVT_CHECK_MODULES([PTYTTY], [libptytty], [:], [
434 AC_MSG_ERROR([unable to find libptytty])
435])
436
437AC_SUBST(PTYTTY_CFLAGS)
438AC_SUBST(PTYTTY_LIBS)
439
440image_lib=none
441
442PIXBUF_CFLAGS=
443PIXBUF_LIBS=
444
445if test x$support_pixbuf = xyes; then
446 RXVT_CHECK_MODULES([PIXBUF], [gdk-pixbuf-2.0], [
447 image_lib=gdk-pixbuf
448 AC_DEFINE(HAVE_PIXBUF, 1, Define if you want to use gdk-pixbuf for image processing)
449 ], [:])
450fi
451
452AC_SUBST(PIXBUF_CFLAGS)
453AC_SUBST(PIXBUF_LIBS)
454
455STARTUP_NOTIFICATION_CFLAGS=
456STARTUP_NOTIFICATION_LIBS=
457
458if test x$support_startup_notification = xyes; then
459 RXVT_CHECK_MODULES([STARTUP_NOTIFICATION], [libstartup-notification-1.0], [
460 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, Define if freedesktop startup notifications should be supported)
461 ], [:])
462fi
463
464AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
465AC_SUBST(STARTUP_NOTIFICATION_LIBS)
466
433if test x$support_afterimage = xyes; then 467if test x$support_frills = xyes; then
434 support_afterimage=no 468 RXVT_CHECK_MODULES([XMU], [xmu], [
435 469 X_LIBS="$XMU_LIBS $X_LIBS"
436 if test "x$afterimage_config" = "x" ; then 470 CPPFLAGS="$CPPFLAGS $XMU_CFLAGS"
437 AC_PATH_PROG(afterimage_config, afterimage-config, no) 471 AC_DEFINE(HAVE_XMU, 1, Define to enable Xmu support)
438 fi 472 ], [:])
439 if test "x$afterimage_config" != "xno" ; then
440 AC_MSG_CHECKING(for libAfterImage version >= 1.15)
441 xAFTERIMAGE_VERSION=`$afterimage_config --version`
442 if test -n "$xAFTERIMAGE_VERSION" ; then
443 xAFTERIMAGE_CFLAGS=`$afterimage_config --cflags`
444 xAFTERIMAGE_LIBS=`$afterimage_config --libs`
445 if test "x$xAFTERIMAGE_LIBS" != "x"; then
446 libai_ver_major=`echo $xAFTERIMAGE_VERSION | cut -f 1 -d .`
447 libai_ver_minor=`echo $xAFTERIMAGE_VERSION | cut -f 2 -d .`
448 if test $libai_ver_major -gt 1 -o \( $libai_ver_major -eq 1 -a $libai_ver_minor -ge 15 \); then
449 support_afterimage=yes
450 AFTERIMAGE_CFLAGS="$xAFTERIMAGE_CFLAGS"
451 AFTERIMAGE_LIBS="$xAFTERIMAGE_LIBS"
452 AFTERIMAGE_VERSION="$xAFTERIMAGE_VERSION"
453 fi
454 fi
455 fi
456 if test "x$support_afterimage" = "xyes"; then
457 AC_MSG_RESULT($AFTERIMAGE_LIBS)
458 else
459 AC_MSG_RESULT(no)
460 fi
461 fi
462fi 473fi
463 474
464dnl# -------------------------------------------------------------------------- 475dnl# --------------------------------------------------------------------------
465dnl# CHECKING FOR HEADER FILES 476dnl# CHECKING FOR HEADER FILES
466dnl# -------------------------------------------------------------------------- 477dnl# --------------------------------------------------------------------------
469 sys/ioctl.h \ 480 sys/ioctl.h \
470 sys/sockio.h \ 481 sys/sockio.h \
471 sys/strredir.h \ 482 sys/strredir.h \
472 stdint.h \ 483 stdint.h \
473 wchar.h \ 484 wchar.h \
474 cwchar \
475) 485)
476 486
477AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer,
478[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])])
479if test x$rxvt_cv_xpointer = xyes; then
480 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef)
481fi
482
483AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_xlib_illegal_access, 487AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access,
484[AC_COMPILE_IFELSE( 488[AC_COMPILE_IFELSE(
485 [AC_LANG_PROGRAM([ 489 [AC_LANG_PROGRAM([
486#define XLIB_ILLEGAL_ACCESS 490#define XLIB_ILLEGAL_ACCESS
487#include <X11/Xlib.h> 491#include <X11/Xlib.h>
488 ],[ 492 ],[
489 Display *dpy; 493 Display *dpy;
490 dpy->xdefaults = (char *)0; 494 dpy->xdefaults = (char *)0;
491 ])], 495 ])],
492 [rxvt_xlib_illegal_access=yes],[rxvt_xlib_illegal_access=no] 496 [rxvt_cv_xlib_illegal_access=yes],[rxvt_cv_xlib_illegal_access=no]
493)]) 497)])
494if test x$rxvt_xlib_illegal_access = xyes; then 498if test x$rxvt_cv_xlib_illegal_access = xyes; then
495 AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it) 499 AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it)
496fi 500fi
497 501
498dnl# -------------------------------------------------------------------------- 502dnl# --------------------------------------------------------------------------
499dnl# CHECKING FOR MISSING TYPEDEFS 503dnl# CHECKING FOR MISSING TYPEDEFS
510dnl# -------------------------------------------------------------------------- 514dnl# --------------------------------------------------------------------------
511dnl# CHECKING FOR LIBRARY FUNCTIONS 515dnl# CHECKING FOR LIBRARY FUNCTIONS
512dnl# -------------------------------------------------------------------------- 516dnl# --------------------------------------------------------------------------
513AC_CHECK_FUNCS(unsetenv) 517AC_CHECK_FUNCS(unsetenv)
514 518
515UTMP_CHECK
516
517dnl# -------------------------------------------------------------------------- 519dnl# --------------------------------------------------------------------------
518 520
519dnl# -------------------------------------------------------------------------- 521dnl# --------------------------------------------------------------------------
520dnl# -------------------------------------------------------------------------- 522dnl# --------------------------------------------------------------------------
521 523
522dnl# this is a really hack test for some basic Xlocale stuff 524dnl# this is a really hack test for some basic Xlocale stuff
523save_LIBS=$LIBS 525save_LIBS=$LIBS
524save_CFLAGS=$CFLAGS 526save_CXXFLAGS=$CXXFLAGS
525CFLAGS="$CFLAGS $X_CFLAGS" 527CXXFLAGS="$CXXFLAGS $X_CFLAGS"
526LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" 528LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
527if test x$support_xim = xyes; then 529if test x$support_xim = xyes; then
528 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, 530 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
529 [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h> 531 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
532 #include <X11/Xlib.h>
530 #include <stdlib.h> 533 #include <stdlib.h>
531 main() { 534 int main() {
532 char *p; 535 char *p;
533 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) 536 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
534 exit (XSupportsLocale() ? 0 : 1); 537 exit (XSupportsLocale() ? 0 : 1);
535 else 538 else
536 exit (1);}]])],[dnl 539 exit (1);
540 }
537 rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl 541 ]])],[rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[:])])
538 :])])
539 if test x$rxvt_cv_func_xlocale = xyes; then 542 if test x$rxvt_cv_func_xlocale = xyes; then
540 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input) 543 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input)
541 AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb, 544 AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb,
542 [AC_COMPILE_IFELSE([ 545 [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
543 #include <X11/Xlib.h> 546 #include <X11/Xlib.h>
544 547
545 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3); 548 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
546 549
547 void f() { 550 void f() {
548 XIMCallback cb; 551 XIMCallback cb;
549 cb.callback = im_destroy_cb; 552 cb.callback = im_destroy_cb;
550 } 553 }
551 ],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)]) 554 ]])],rxvt_cv_broken_ximcb=yes,rxvt_cv_broken_ximcb=no)])
552 555
553 if test x$rxvt_broken_ximcb = xyes; then 556 if test x$rxvt_cv_broken_ximcb = xyes; then
554 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.) 557 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
555 fi 558 fi
556 fi 559 fi
557fi 560fi
558 561
561#include <X11/Xlocale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_xsetlocale=yes],[rxvt_cv_func_xsetlocale=no])]) 564#include <X11/Xlocale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_xsetlocale=yes],[rxvt_cv_func_xsetlocale=no])])
562if test x$rxvt_cv_func_xsetlocale = xyes; then 565if test x$rxvt_cv_func_xsetlocale = xyes; then
563 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works) 566 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works)
564fi 567fi
565LIBS=$save_LIBS 568LIBS=$save_LIBS
566CFLAGS=$save_CFLAGS 569CXXFLAGS=$save_CXXFLAGS
567
568AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale,
569[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <clocale>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])])
570if test x$rxvt_cv_func_setlocale = xyes; then
571 AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works)
572fi
573 570
574AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, 571AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo,
575[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[nl_langinfo(CODESET);]])],[rxvt_cv_func_nl_langinfo=yes],[rxvt_cv_func_nl_langinfo=no])]) 572[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[nl_langinfo(CODESET);]])],[rxvt_cv_func_nl_langinfo=yes],[rxvt_cv_func_nl_langinfo=no])])
576if test x$rxvt_cv_func_nl_langinfo = xyes; then 573if test x$rxvt_cv_func_nl_langinfo = xyes; then
577 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works) 574 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works)
578fi 575fi
579 576
580SCM_RIGHTS_CHECK
581
582PTY_CHECK
583
584TTY_GROUP_CHECK
585
586dnl# -------------------------------------------------------------------------- 577dnl# --------------------------------------------------------------------------
587dnl# now add and remove other stuff 578dnl# now add and remove other stuff
588dnl# -------------------------------------------------------------------------- 579dnl# --------------------------------------------------------------------------
589if test x$support_xft = xyes; then 580support_image=no
590 AC_PATH_PROG(PKG_CONFIG, pkg-config, no) 581if test x$support_inheritpixmap = xyes || test x$support_pixbuf = xyes; then
591 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then 582 support_image=yes
592 X_LIBS="`$PKG_CONFIG xft --libs` $X_LIBS" 583fi
593 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`" 584if test x$support_xft = xyes || test x$support_image = xyes; then
594 else 585 rxvt_have_xrender=no
586 RXVT_CHECK_MODULES([XRENDER], [xrender], [
587 X_LIBS="$XRENDER_LIBS $X_LIBS"
588 CPPFLAGS="$CPPFLAGS $XRENDER_CFLAGS"
589 rxvt_have_xrender=yes
590
591 save_LIBS="$LIBS"
592 LIBS="$LIBS $X_LIBS"
593 AC_CHECK_HEADER(X11/extensions/Xrender.h,,[rxvt_have_xrender=no])
594 AC_CHECK_FUNC(XRenderFindStandardFormat,,[rxvt_have_xrender=no])
595 LIBS="$save_LIBS"
596 ], [:])
597fi
598
599if test x$support_xft = xyes && test x$rxvt_have_xrender = xyes; then
600 RXVT_CHECK_MODULES([XFT], [fontconfig xft], [
601 X_LIBS="$XFT_LIBS $X_LIBS"
602 CPPFLAGS="$CPPFLAGS $XFT_CFLAGS"
603 ], [
595 AC_PATH_PROG(XFT_CONFIG, xft-config, no) 604 AC_PATH_PROG(XFT_CONFIG, xft-config, no)
596 if test $XFT_CONFIG != no; then 605 if test $XFT_CONFIG != no; then
597 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS" 606 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS"
598 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`" 607 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`"
599 fi 608 fi
600 fi 609 ])
601 610
602 save_LIBS="$LIBS" 611 save_LIBS="$LIBS"
603 LIBS="$LIBS $X_LIBS" 612 LIBS="$LIBS $X_LIBS"
604 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no]) 613 AC_CHECK_HEADERS(X11/Xft/Xft.h fontconfig/fontconfig.h,,[support_xft=no])
605 AC_CHECK_LIB(Xft,XftDrawString32,:,[support_xft=no]) 614 AC_CHECK_FUNCS(XftDrawString32 FcPatternGet,,[support_xft=no])
606 LIBS="$save_LIBS" 615 LIBS="$save_LIBS"
607 616
608 if test x$support_xft = xyes; then 617 if test x$support_xft = xyes; then
609 AC_DEFINE(XFT, 1, Define to enable xft support) 618 AC_DEFINE(XFT, 1, Define to enable xft support)
610 fi 619 fi
611fi 620fi
621
622if test x$support_image = xyes && test x$rxvt_have_xrender = xyes; then
623 AC_MSG_CHECKING(for Render >= 0.11)
624 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
625#include <X11/extensions/Xrender.h>
626#if RENDER_MAJOR == 0 && RENDER_MINOR <= 10
627error
628#endif
629]])],[],[support_image=no])
630 if test x$support_image = xyes; then
631 AC_MSG_RESULT(ok)
632 LIBS="$LIBS -lm"
633 AC_DEFINE(XRENDER, 1, Define to enable xrender support)
634
635 if test x$support_inheritpixmap = xyes; then
636 AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background)
637 fi
638 else
639 AC_MSG_RESULT(no)
640 fi
641fi
642
612if test x$support_styles = xyes; then 643if test x$support_styles = xyes; then
613 AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support) 644 AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support)
614fi 645fi
615if test x$support_iso14755 = xyes; then 646if test x$support_iso14755 = xyes; then
616 AC_DEFINE(ISO_14755, 1, Define if you want ISO 14755 extended support) 647 AC_DEFINE(ISO_14755, 1, Define if you want ISO 14755 extended support)
619 AC_DEFINE(EIGHT_BIT_CONTROLS, 1, Define if you want 8 bit control sequences) 650 AC_DEFINE(EIGHT_BIT_CONTROLS, 1, Define if you want 8 bit control sequences)
620fi 651fi
621if test x$support_fading = xyes; then 652if test x$support_fading = xyes; then
622 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost) 653 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost)
623fi 654fi
624if test x$support_inheritpixmap = xyes; then
625 AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background)
626fi
627if test x$support_keepscrolling = xno; then 655if test x$support_keepscrolling = xno; then
628 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed) 656 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed)
629fi 657fi
630if test x$support_selectionscrolling = xyes; then 658if test x$support_selectionscrolling = xyes; then
631 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen) 659 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen)
637 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll) 665 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll)
638fi 666fi
639if test x$support_mouseslipwheel = xyes; then 667if test x$support_mouseslipwheel = xyes; then
640 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling) 668 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling)
641fi 669fi
642if test x$support_afterimage = xyes; then
643 AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing)
644 AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps. Needs libAfterImage)
645fi
646 670
647dnl if test x$support_afterstep = xyes; then 671scrolltypes=plain
648dnl AC_DEFINE(AFTERSTEP_INTEGRATION, 1, Define if you want to integrate with AfterStep window manager) 672AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
649dnl fi
650 673
651if test x$support_scroll_rxvt = xyes; then 674if test x$support_scroll_rxvt = xyes; then
652 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars) 675 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars)
653 scrolltypes="rxvt" 676 scrolltypes="$scrolltypes rxvt"
654fi 677fi
655if test x$support_scroll_next = xyes; then 678if test x$support_scroll_next = xyes; then
656 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars) 679 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars)
657 scrolltypes="$scrolltypes next" 680 scrolltypes="$scrolltypes next"
658fi 681fi
659if test x$support_scroll_xterm = xyes; then 682if test x$support_scroll_xterm = xyes; then
660 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars) 683 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars)
661 scrolltypes="$scrolltypes xterm" 684 scrolltypes="$scrolltypes xterm"
662fi 685fi
663if test x$support_scroll_plain = xyes; then
664 AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
665 scrolltypes="$scrolltypes plain"
666fi
667if test x$support_pointer_blank = xyes; then 686if test x$support_pointer_blank = xyes; then
668 AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing) 687 AC_DEFINE(POINTER_BLANK, 1, Define if you want to hide the pointer while typing)
669fi 688fi
670if test x$support_text_blink = xyes; then 689if test x$support_text_blink = xyes; then
671 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support) 690 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support)
672fi 691fi
673if test x$support_unicode3 = xyes; then 692if test x$support_unicode3 = xyes; then
691 esac 710 esac
692done 711done
693 712
694IF_PERL=\# 713IF_PERL=\#
695if test x$support_perl = xyes; then 714if test x$support_perl = xyes; then
696 AC_PATH_PROG(PERL, perl5) 715 AC_PATH_PROG(PERL, perl5, perl)
697 AC_PATH_PROG(PERL, perl)
698 716
699 AC_MSG_CHECKING(for $PERL suitability) 717 AC_MSG_CHECKING(for $PERL suitability)
700 if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then 718 if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then
701 719
702 save_CXXFLAGS="$CXXFLAGS" 720 save_CXXFLAGS="$CXXFLAGS"
703 save_LIBS="$LIBS" 721 save_LIBS="$LIBS"
704 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`" 722 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`"
705 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`" 723 LIBS="$LIBS -lXext `$PERL -MExtUtils::Embed -e ldopts`"
706 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ 724 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
707#include <EXTERN.h> 725#include <EXTERN.h>
708#include <perl.h> 726#include <perl.h>
709#include <XSUB.h> 727#include <XSUB.h>
710]], [[ 728]], [[
719 IF_PERL= 737 IF_PERL=
720 PERL_O=rxvtperl.o 738 PERL_O=rxvtperl.o
721 PERLFLAGS="`$PERL -MExtUtils::Embed -e ccopts`" 739 PERLFLAGS="`$PERL -MExtUtils::Embed -e ccopts`"
722 PERLLIB="`$PERL -MExtUtils::Embed -e ldopts`" 740 PERLLIB="`$PERL -MExtUtils::Embed -e ldopts`"
723 PERLPRIVLIBEXP="`$PERL -MConfig -e 'print $Config{privlibexp}'`" 741 PERLPRIVLIBEXP="`$PERL -MConfig -e 'print $Config{privlibexp}'`"
742 LIBS="$LIBS -lXext"
724 else 743 else
725 AC_MSG_ERROR([no, unable to link]) 744 AC_MSG_ERROR([no, unable to link])
726 fi 745 fi
727 else 746 else
728 AC_MSG_ERROR([no working perl found, or perl not version >= 5.8]) 747 AC_MSG_ERROR([no working perl found, or perl not version >= 5.8])
733AC_SUBST(PERLPRIVLIBEXP) 752AC_SUBST(PERLPRIVLIBEXP)
734AC_SUBST(PERL) 753AC_SUBST(PERL)
735AC_SUBST(IF_PERL) 754AC_SUBST(IF_PERL)
736AC_SUBST(PERL_O) 755AC_SUBST(PERL_O)
737 756
738AC_SUBST(CFLAGS)
739AC_SUBST(CPPFLAGS)
740AC_SUBST(LDFLAGS)
741AC_SUBST(X_CFLAGS)
742
743dnl# Attack the libs
744AC_SUBST(LIBS)
745AC_SUBST(X_LIBS)
746AC_SUBST(X_EXTRA_LIBS)
747
748AC_SUBST(AFTERIMAGE_CFLAGS)
749AC_SUBST(AFTERIMAGE_LIBS)
750
751AC_ARG_PROGRAM
752 757
753AC_CONFIG_FILES([Makefile \ 758AC_CONFIG_FILES([Makefile \
754doc/Makefile \ 759doc/Makefile \
755src/Makefile \ 760src/Makefile \
756]) 761])
776if test x$RESFALLBACK != x; then 781if test x$RESFALLBACK != x; then
777 echo " resource class fallback: $RESFALLBACK" 782 echo " resource class fallback: $RESFALLBACK"
778fi 783fi
779echo 784echo
780echo " embedded perl: $support_perl" 785echo " embedded perl: $support_perl"
781echo " libafterimage: $support_afterimage" 786echo " image library: $image_lib"
782dnl echo " AfterStep integration: $support_afterstep"
783echo 787echo
784if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then 788if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then
785 echo ".----------------------------------------------------------------." 789 echo ".----------------------------------------------------------------."
786 echo ". WARNING: --enable-xim was specified however the locale support ." 790 echo ". WARNING: --enable-xim was specified however the locale support ."
787 echo ". functions could not be found. ." 791 echo ". functions could not be found. ."

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines