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.100 by root, Sun Dec 23 05:03:52 2007 UTC vs.
Revision 1.155 by root, Thu May 13 19:24:28 2021 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_HEADER(config.h:config.h.in)
9 9
10AC_CANONICAL_HOST 10AC_CANONICAL_HOST
11 11
12dnl RXVT version 12dnl RXVT version
13changequote(, )dnl 13changequote(, )dnl
14VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 14VERSION=`sed -n -e 's/^.* VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
15DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 15DATE=`sed -n -e 's/^.* DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
16dnl LIBVERSION=`sed -n -e 's/^.*[ \t]LIBVERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
17changequote([, ])dnl 16changequote([, ])dnl
18AC_SUBST(VERSION)dnl 17AC_SUBST(VERSION)dnl
19AC_SUBST(DATE)dnl 18AC_SUBST(DATE)dnl
20dnl AC_SUBST(LIBVERSION)dnl
21 19
22echo "" 20echo ""
23echo "configuring for rxvt $VERSION" 21echo "configuring for rxvt $VERSION"
24echo "" 22echo ""
25 23
26orig_CXXFLAGS="$CXXFLAGS" 24orig_CXXFLAGS="$CXXFLAGS"
27 25
28dnl# Checks for programs. 26dnl# Checks for programs.
29AC_PROG_CC 27AC_PROG_CC
30AC_PROG_CXX 28AC_PROG_CXX
31AC_PROG_CPP
32AC_PROG_INSTALL 29AC_PROG_INSTALL
33 30
34AC_AIX 31AC_AIX
35AC_GNU_SOURCE 32AC_GNU_SOURCE
36AC_ISC_POSIX 33AC_ISC_POSIX
37AC_LANG(C++) 34AC_LANG(C++)
38 35
36if test "$ac_prog_cxx_stdcxx" != cxx11; then
37 AC_MSG_ERROR([the compiler does not support C++11])
38fi
39
40LINKER="$CXX"
39dnl check wether we can link with gcc -lsupc++ 41dnl check whether we can link with gcc -lsupc++
40if test x$GCC = xyes && test x$GXX = xyes; then 42if test x$GCC = xyes && test x$GXX = xyes; then
41 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it 43 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it
42 AC_MSG_CHECKING([for working libsupc++]) 44 AC_MSG_CHECKING([for working libsupc++])
43 save_CXX="$CXX" 45 save_CXX="$CXX"
44 save_LIBS="$LIBS" 46 save_LIBS="$LIBS"
45 CXX="$CC" 47 CXX="$CC"
46 LIBS="$LIBS -lsupc++" 48 LIBS="$LIBS -lsupc++"
47 LINKER="$CC"
48 AC_LINK_IFELSE( 49 AC_LINK_IFELSE(
49 [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])], 50 [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])],
50 [AC_MSG_RESULT(ok)], 51 [AC_MSG_RESULT(ok)
52 LINKER="$CC"],
51 [ 53 [
52 AC_MSG_RESULT([no, making everything bigger and slower]) 54 AC_MSG_RESULT([no, making everything bigger and slower])
53 LIBS="$save_LIBS" 55 LIBS="$save_LIBS"
54 LINKER="$save_CXX"
55 ] 56 ]
56 ) 57 )
57 CXX="$save_CXX" 58 CXX="$save_CXX"
58fi 59fi
59AC_SUBST(LINKER,[$LINKER]) 60AC_SUBST(LINKER,[$LINKER])
69 CXXFLAGS="-O" 70 CXXFLAGS="-O"
70 fi 71 fi
71 CFLAGS="$CXXFLAGS" 72 CFLAGS="$CXXFLAGS"
72fi 73fi
73 74
74case $host in
75 *-*-solaris* )
76 AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris)
77 ;;
78esac
79
80dnl# FreeBSD needs to link libxpg4 75dnl# FreeBSD needs to link libxpg4
81AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) 76AC_SEARCH_LIBS(setlocale, xpg4)
82 77
83dnl# solaris needs to link libnsl and socket 78dnl# solaris needs to link libnsl and socket
84AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])]) 79AC_SEARCH_LIBS(gethostbyname, nsl)
85AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])]) 80AC_SEARCH_LIBS(socket, socket)
86
87dnl AC_ENABLE_SHARED(no)dnl# libtool
88dnl AC_ENABLE_STATIC(yes)dnl# libtool
89dnl AC_PROG_LIBTOOL()dnl# libtool
90 81
91support_frills=yes 82support_frills=yes
92support_inheritpixmap=yes 83support_inheritpixmap=yes
93support_fading=yes 84support_fading=yes
94support_keepscrolling=yes 85support_keepscrolling=yes
98support_text_blink=yes 89support_text_blink=yes
99support_pointer_blank=yes 90support_pointer_blank=yes
100support_scroll_rxvt=yes 91support_scroll_rxvt=yes
101support_scroll_next=yes 92support_scroll_next=yes
102support_scroll_xterm=yes 93support_scroll_xterm=yes
103support_scroll_plain=yes
104support_xim=yes 94support_xim=yes
105support_afterimage=yes 95support_pixbuf=yes
106support_afterstep=yes 96support_startup_notification=yes
107support_xft=yes 97support_xft=yes
108support_unicode3=no 98support_unicode3=no
109support_combining=yes 99support_combining=yes
110support_8bitctrls=no 100support_8bitctrls=no
111support_iso14755=yes 101support_iso14755=yes
115 105
116dnl# -------------------------------------------------------------------------- 106dnl# --------------------------------------------------------------------------
117dnl# CHECKING COMMAND LINE OPTIONS 107dnl# CHECKING COMMAND LINE OPTIONS
118dnl# -------------------------------------------------------------------------- 108dnl# --------------------------------------------------------------------------
119 109
120dnl if test "x$enable_shared" = xyes; then
121dnl AC_DEFINE(LIBRXVT, 1, Build shared library version - specify via configure only)
122dnl INSTALL_LIBRXVT=yes
123dnl fi
124dnl AC_SUBST(INSTALL_LIBRXVT)
125
126AC_ARG_ENABLE(everything, 110AC_ARG_ENABLE(everything,
127 [ --enable-everything enable standard non-multichoice features 111 [ --enable-everything enable standard non-multichoice features
128 NOTE: this option is order dependent], 112 NOTE: this option is order dependent],
129 [ 113 [
130 if test x$enableval = xno; then 114 if test x$enableval = xno; then
131 support_frills=no 115 support_frills=no
132 support_inheritpixmap=no 116 support_inheritpixmap=no
133 support_fading=no 117 support_fading=no
139 support_text_blink=no 123 support_text_blink=no
140 support_pointer_blank=no 124 support_pointer_blank=no
141 support_scroll_rxvt=no 125 support_scroll_rxvt=no
142 support_scroll_next=no 126 support_scroll_next=no
143 support_scroll_xterm=no 127 support_scroll_xterm=no
144 support_scroll_plain=no
145 support_utmp=no 128 support_utmp=no
146 support_wtmp=no 129 support_wtmp=no
147 support_xim=no 130 support_xim=no
148 support_afterimage=no 131 support_pixbuf=no
149 support_afterstep=no 132 support_startup_notification=no
150 support_xft=no 133 support_xft=no
151 support_unicode3=no 134 support_unicode3=no
152 support_combining=no 135 support_combining=no
153 support_8bitctrls=no 136 support_8bitctrls=no
154 support_iso14755=no 137 support_iso14755=no
168 support_text_blink=yes 151 support_text_blink=yes
169 support_pointer_blank=yes 152 support_pointer_blank=yes
170 support_scroll_rxvt=yes 153 support_scroll_rxvt=yes
171 support_scroll_next=yes 154 support_scroll_next=yes
172 support_scroll_xterm=yes 155 support_scroll_xterm=yes
173 support_scroll_plain=yes
174 support_utmp=yes 156 support_utmp=yes
175 support_wtmp=yes 157 support_wtmp=yes
176 support_xim=yes 158 support_xim=yes
177 support_afterimage=yes
178 support_afterstep=yes 159 support_pixbuf=yes
160 support_startup_notification=yes
179 support_xft=yes 161 support_xft=yes
180 support_unicode3=yes 162 support_unicode3=yes
181 support_combining=yes 163 support_combining=yes
182 #support_8bitctrls=yes 164 #support_8bitctrls=yes
183 support_iso14755=yes 165 support_iso14755=yes
185 support_perl=yes 167 support_perl=yes
186 codesets=all 168 codesets=all
187 fi 169 fi
188 ]) 170 ])
189 171
190WARNINGS=no 172support_assertions=no
173AC_ARG_ENABLE(assert,
174 [ --enable-assert enable assertions],
175 [if test x$enableval = xyes; then
176 support_assertions=yes
177 fi])
178if test x$support_assertions = xno; then
179 AC_DEFINE(NDEBUG, 1, Disable assertions (good for debugging))
180fi
181
182support_warnings=no
191AC_ARG_ENABLE(warnings, 183AC_ARG_ENABLE(warnings,
192 [ --enable-warnings turn on g++ warnings], 184 [ --enable-warnings turn on g++ warnings],
193 [if test x$enableval = xyes; then 185 [if test x$enableval = xyes; then
194 WARNINGS=yes 186 support_warnings=yes
195 fi]) 187 fi])
196if test x$GXX = xyes; then 188if test x$GXX = xyes; then
197 if test $WARNINGS = yes; then 189 if test $support_warnings = yes; then
198 save_CXXFLAGS="$CXXFLAGS" 190 save_CXXFLAGS="$CXXFLAGS"
199 CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-non-virtual-dtor" 191 CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-unused-value"
200 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"]) 192 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"])
201 else 193 else
202 CXXFLAGS="$CXXFLAGS -w" 194 CXXFLAGS="$CXXFLAGS -w"
203 fi 195 fi
204fi 196fi
205 197
198support_256_color=no
199AC_ARG_ENABLE(256-color,
200 [ --enable-256-color enable 256-color support],
201 [if test x$enableval = xyes; then
202 support_256_color=yes
203 fi])
204if test x$support_256_color = xyes; then
205 AC_DEFINE(USE_256_COLORS, 1, Define if you want 256-color support)
206fi
207
206AC_ARG_ENABLE(unicode3, 208AC_ARG_ENABLE(unicode3,
207 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters], 209 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters],
208 [if test x$enableval = xyes -o x$enableval = xno; then 210 [if test x$enableval = xyes -o x$enableval = xno; then
209 support_unicode3=$enableval 211 support_unicode3=$enableval
210 fi]) 212 fi])
225 [ --enable-font-styles enable bold and italic support], 227 [ --enable-font-styles enable bold and italic support],
226 [if test x$enableval = xyes -o x$enableval = xno; then 228 [if test x$enableval = xyes -o x$enableval = xno; then
227 support_styles=$enableval 229 support_styles=$enableval
228 fi]) 230 fi])
229 231
230AC_ARG_ENABLE(afterimage, 232AC_ARG_ENABLE(pixbuf,
231 [ --enable-afterimage enable integration with libAfterImage for background images], 233 [ --enable-pixbuf enable integration with gdk-pixbuf for background images],
232 [if test x$enableval = xyes -o x$enableval = xno; then
233 support_afterimage=$enableval
234 fi])
235
236AC_ARG_WITH(afterimage_config,
237 [ --with-afterimage-config=DIR use libAfterImage config script in DIR],
238 [if test "x$withval" != x; then
239 afterimage_config=$withval/afterimage-config
240 fi])
241
242dnl AC_ARG_ENABLE(afterstep,
243dnl [ --enable-afterstep enable integration with AfterStep window manager],
244dnl [if test x$enableval = xyes -o x$enableval = xno; then 234 [if test x$enableval = xyes -o x$enableval = xno; then
245dnl support_afterstep=$enableval 235 support_pixbuf=$enableval
246dnl fi]) 236 fi])
237
238AC_ARG_ENABLE(startup-notification,
239 [ --enable-startup-notification enable freedesktop startup notification support],
240 [if test x$enableval = xyes -o x$enableval = xno; then
241 support_startup_notification=$enableval
242 fi])
247 243
248AC_ARG_ENABLE(transparency, 244AC_ARG_ENABLE(transparency,
249 [ --enable-transparency enable transparent backgrounds], 245 [ --enable-transparency enable transparent backgrounds],
250 [if test x$enableval = xyes -o x$enableval = xno; then 246 [if test x$enableval = xyes -o x$enableval = xno; then
251 support_inheritpixmap=$enableval 247 support_inheritpixmap=$enableval
271 267
272AC_ARG_ENABLE(xterm-scroll, 268AC_ARG_ENABLE(xterm-scroll,
273 [ --enable-xterm-scroll enable Xterm style scrollbar], 269 [ --enable-xterm-scroll enable Xterm style scrollbar],
274 [if test x$enableval = xyes -o x$enableval = xno; then 270 [if test x$enableval = xyes -o x$enableval = xno; then
275 support_scroll_xterm=$enableval 271 support_scroll_xterm=$enableval
276 fi])
277
278AC_ARG_ENABLE(plain-scroll,
279 [ --enable-plain-scroll enable plain style scrollbar],
280 [if test x$enableval = xyes -o x$enableval = xno; then
281 support_scroll_plain=$enableval
282 fi]) 272 fi])
283 273
284AC_ARG_ENABLE(perl, 274AC_ARG_ENABLE(perl,
285 [ --enable-perl enable embedded perl interpreter], 275 [ --enable-perl enable embedded perl interpreter],
286 [if test x$enableval = xyes -o x$enableval = xno; then 276 [if test x$enableval = xyes -o x$enableval = xno; then
307 [ --disable-delete-key disable handling of the delete key], 297 [ --disable-delete-key disable handling of the delete key],
308 [if test x$enableval = xno; then 298 [if test x$enableval = xno; then
309 AC_DEFINE(NO_DELETE_KEY, 1, Define if you don't want support for the (non-keypad) delete key) 299 AC_DEFINE(NO_DELETE_KEY, 1, Define if you don't want support for the (non-keypad) delete key)
310 fi]) 300 fi])
311 301
302support_resources=yes
312AC_ARG_ENABLE(resources, 303AC_ARG_ENABLE(resources,
313 [ --disable-resources disable all resource checking], 304 [ --disable-resources disable all resource checking],
314 [if test x$enableval = xno; then 305 [if test x$enableval = xno; then
315 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read) 306 support_resources=no
316 fi]) 307 fi])
317 308
318AC_ARG_ENABLE(8bitctrls, 309AC_ARG_ENABLE(8bitctrls,
319 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)], 310 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)],
320 [if test x$enableval = xyes -o x$enableval = xno; then 311 [if test x$enableval = xyes -o x$enableval = xno; then
350AC_ARG_WITH(name, 341AC_ARG_WITH(name,
351 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)], 342 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)],
352 [RXVTNAME="$withval"]) 343 [RXVTNAME="$withval"])
353AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name]) 344AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name])
354 345
355RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"`
356AC_SUBST(RXVTNAME) 346AC_SUBST(RXVTNAME)
357 347
358AC_ARG_ENABLE(swapscreen, 348AC_ARG_ENABLE(swapscreen,
359 [ --disable-swapscreen disable swap screen support], 349 [ --disable-swapscreen disable swap screen support],
360 [if test x$enableval = xno; then 350 [if test x$enableval = xno; then
408 [if test x$enableval = xyes -o x$enableval = xno; then 398 [if test x$enableval = xyes -o x$enableval = xno; then
409 support_text_blink=$enableval 399 support_text_blink=$enableval
410 fi]) 400 fi])
411 401
412AC_ARG_ENABLE(pointer-blank, 402AC_ARG_ENABLE(pointer-blank,
413 [ --enable-pointer-blank enable pointer blank when typing or inactive pointer], 403 [ --enable-pointer-blank enable pointer blanking when typing or inactive],
414 [if test x$enableval = xyes -o x$enableval = xno; then 404 [if test x$enableval = xyes -o x$enableval = xno; then
415 support_pointer_blank=$enableval 405 support_pointer_blank=$enableval
416 fi]) 406 fi])
417 407
418AC_ARG_WITH(term, 408AC_ARG_WITH(term,
425 [ --with-terminfo=PATH set the path to the terminfo tree to PATH], 415 [ --with-terminfo=PATH set the path to the terminfo tree to PATH],
426 [if test x$withval != x; then 416 [if test x$withval != x; then
427 AC_DEFINE_UNQUOTED(RXVT_TERMINFO, "$withval", Set TERMINFO value to the value given by configure) terminfo="$withval" 417 AC_DEFINE_UNQUOTED(RXVT_TERMINFO, "$withval", Set TERMINFO value to the value given by configure) terminfo="$withval"
428 fi]) 418 fi])
429 419
420if test x$support_resources = xno; then
421 if test x$support_frills = xyes || test x$support_perl = xyes; then
422 AC_MSG_ERROR([--disable-resources requires --disable-frills --disable-perl])
423 fi
424
425 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read)
426fi
427
430dnl# -------------------------------------------------------------------------- 428dnl# --------------------------------------------------------------------------
431 429
432LIBEV_M4_AVOID_LIBRT=1 430LIBEV_M4_AVOID_LIBRT=1
433m4_include([libev/libev.m4]) 431m4_include([libev/libev.m4])
434 432
436 434
437AC_PATH_PROG(TIC, tic, :) 435AC_PATH_PROG(TIC, tic, :)
438 436
439AC_PATH_XTRA 437AC_PATH_XTRA
440 438
441AFTERIMAGE_CFLAGS= 439AC_PATH_TOOL(PKG_CONFIG, pkg-config, no)
442AFTERIMAGE_LIBS=
443AFTERIMAGE_VERSION=
444 440
441image_lib=none
442
443PIXBUF_CFLAGS=
444PIXBUF_LIBS=
445
446if test x$support_pixbuf = xyes; then
447 RXVT_CHECK_MODULES([PIXBUF], [gdk-pixbuf-2.0], [
448 image_lib=gdk-pixbuf
449 AC_DEFINE(HAVE_PIXBUF, 1, Define if you want to use gdk-pixbuf for image processing)
450 ], [:])
451fi
452
453AC_SUBST(PIXBUF_CFLAGS)
454AC_SUBST(PIXBUF_LIBS)
455
456STARTUP_NOTIFICATION_CFLAGS=
457STARTUP_NOTIFICATION_LIBS=
458
459if test x$support_startup_notification = xyes; then
460 RXVT_CHECK_MODULES([STARTUP_NOTIFICATION], [libstartup-notification-1.0], [
461 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, Define if freedesktop startup notifications should be supported)
462 ], [:])
463fi
464
465AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
466AC_SUBST(STARTUP_NOTIFICATION_LIBS)
467
445if test x$support_afterimage = xyes; then 468if test x$support_frills = xyes; then
446 support_afterimage=no 469 RXVT_CHECK_MODULES([XMU], [xmu], [
447 470 X_LIBS="$XMU_LIBS $X_LIBS"
448 if test "x$afterimage_config" = "x" ; then 471 CPPFLAGS="$CPPFLAGS $XMU_CFLAGS"
449 AC_PATH_PROG(afterimage_config, afterimage-config, no) 472 AC_DEFINE(HAVE_XMU, 1, Define to enable Xmu support)
450 fi 473 ], [:])
451 if test "x$afterimage_config" != "xno" ; then
452 AC_MSG_CHECKING(for libAfterImage version >= 1.15)
453 xAFTERIMAGE_VERSION=`$afterimage_config --version`
454 if test -n "$xAFTERIMAGE_VERSION" ; then
455 xAFTERIMAGE_CFLAGS=`$afterimage_config --cflags`
456 xAFTERIMAGE_LIBS=`$afterimage_config --libs`
457 if test "x$xAFTERIMAGE_LIBS" != "x"; then
458 libai_ver_major=`echo $xAFTERIMAGE_VERSION | cut -f 1 -d .`
459 libai_ver_minor=`echo $xAFTERIMAGE_VERSION | cut -f 2 -d .`
460 if test $libai_ver_major -gt 1 -o \( $libai_ver_major -eq 1 -a $libai_ver_minor -ge 15 \); then
461 support_afterimage=yes
462 AFTERIMAGE_CFLAGS="$xAFTERIMAGE_CFLAGS"
463 AFTERIMAGE_LIBS="$xAFTERIMAGE_LIBS"
464 AFTERIMAGE_VERSION="$xAFTERIMAGE_VERSION"
465 fi
466 fi
467 fi
468 if test "x$support_afterimage" = "xyes"; then
469 AC_MSG_RESULT($AFTERIMAGE_LIBS)
470 else
471 AC_MSG_RESULT(no)
472 fi
473 fi
474fi 474fi
475 475
476dnl# -------------------------------------------------------------------------- 476dnl# --------------------------------------------------------------------------
477dnl# CHECKING FOR HEADER FILES 477dnl# CHECKING FOR HEADER FILES
478dnl# -------------------------------------------------------------------------- 478dnl# --------------------------------------------------------------------------
481 sys/ioctl.h \ 481 sys/ioctl.h \
482 sys/sockio.h \ 482 sys/sockio.h \
483 sys/strredir.h \ 483 sys/strredir.h \
484 stdint.h \ 484 stdint.h \
485 wchar.h \ 485 wchar.h \
486 cwchar \
487) 486)
488 487
489dnl# check to allow both <termios.h> and <sys/ioctl.h>
490AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl,
491[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>
492#include <sys/ioctl.h>
493#include <termios.h>
494]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])])
495
496AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer,
497[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])])
498if test x$rxvt_cv_xpointer = xyes; then
499 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef)
500fi
501
502AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_xlib_illegal_access, 488AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access,
503[AC_COMPILE_IFELSE( 489[AC_COMPILE_IFELSE(
504 [AC_LANG_PROGRAM([ 490 [AC_LANG_PROGRAM([
505#define XLIB_ILLEGAL_ACCESS 491#define XLIB_ILLEGAL_ACCESS
506#include <X11/Xlib.h> 492#include <X11/Xlib.h>
507 ],[ 493 ],[
508 Display *dpy; 494 Display *dpy;
509 dpy->xdefaults = (char *)0; 495 dpy->xdefaults = (char *)0;
510 ])], 496 ])],
511 [rxvt_xlib_illegal_access=yes],[rxvt_xlib_illegal_access=no] 497 [rxvt_cv_xlib_illegal_access=yes],[rxvt_cv_xlib_illegal_access=no]
512)]) 498)])
513if test x$rxvt_xlib_illegal_access = xyes; then 499if test x$rxvt_cv_xlib_illegal_access = xyes; then
514 AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it) 500 AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it)
515fi 501fi
516 502
517dnl# -------------------------------------------------------------------------- 503dnl# --------------------------------------------------------------------------
518dnl# CHECKING FOR MISSING TYPEDEFS 504dnl# CHECKING FOR MISSING TYPEDEFS
538dnl# -------------------------------------------------------------------------- 524dnl# --------------------------------------------------------------------------
539dnl# -------------------------------------------------------------------------- 525dnl# --------------------------------------------------------------------------
540 526
541dnl# this is a really hack test for some basic Xlocale stuff 527dnl# this is a really hack test for some basic Xlocale stuff
542save_LIBS=$LIBS 528save_LIBS=$LIBS
543save_CFLAGS=$CFLAGS 529save_CXXFLAGS=$CXXFLAGS
544CFLAGS="$CFLAGS $X_CFLAGS" 530CXXFLAGS="$CXXFLAGS $X_CFLAGS"
545LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" 531LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
546if test x$support_xim = xyes; then 532if test x$support_xim = xyes; then
547 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, 533 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
548 [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h> 534 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
535 #include <X11/Xlib.h>
549 #include <stdlib.h> 536 #include <stdlib.h>
550 main() { 537 int main() {
551 char *p; 538 char *p;
552 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) 539 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
553 exit (XSupportsLocale() ? 0 : 1); 540 exit (XSupportsLocale() ? 0 : 1);
554 else 541 else
555 exit (1);}]])],[dnl 542 exit (1);
543 }
556 rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl 544 ]])],[rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[:])])
557 :])])
558 if test x$rxvt_cv_func_xlocale = xyes; then 545 if test x$rxvt_cv_func_xlocale = xyes; then
559 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input) 546 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input)
560 AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb, 547 AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb,
561 [AC_COMPILE_IFELSE([ 548 [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
562 #include <X11/Xlib.h> 549 #include <X11/Xlib.h>
563 550
564 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3); 551 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
565 552
566 void f() { 553 void f() {
567 XIMCallback cb; 554 XIMCallback cb;
568 cb.callback = im_destroy_cb; 555 cb.callback = im_destroy_cb;
569 } 556 }
570 ],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)]) 557 ]])],rxvt_cv_broken_ximcb=yes,rxvt_cv_broken_ximcb=no)])
571 558
572 if test x$rxvt_broken_ximcb = xyes; then 559 if test x$rxvt_cv_broken_ximcb = xyes; then
573 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.) 560 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
574 fi 561 fi
575 fi 562 fi
576fi 563fi
577 564
580#include <X11/Xlocale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_xsetlocale=yes],[rxvt_cv_func_xsetlocale=no])]) 567#include <X11/Xlocale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_xsetlocale=yes],[rxvt_cv_func_xsetlocale=no])])
581if test x$rxvt_cv_func_xsetlocale = xyes; then 568if test x$rxvt_cv_func_xsetlocale = xyes; then
582 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works) 569 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works)
583fi 570fi
584LIBS=$save_LIBS 571LIBS=$save_LIBS
585CFLAGS=$save_CFLAGS 572CXXFLAGS=$save_CXXFLAGS
586
587AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale,
588[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <clocale>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])])
589if test x$rxvt_cv_func_setlocale = xyes; then
590 AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works)
591fi
592 573
593AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, 574AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo,
594[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[nl_langinfo(CODESET);]])],[rxvt_cv_func_nl_langinfo=yes],[rxvt_cv_func_nl_langinfo=no])]) 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])])
595if test x$rxvt_cv_func_nl_langinfo = xyes; then 576if test x$rxvt_cv_func_nl_langinfo = xyes; then
596 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works) 577 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works)
603TTY_GROUP_CHECK 584TTY_GROUP_CHECK
604 585
605dnl# -------------------------------------------------------------------------- 586dnl# --------------------------------------------------------------------------
606dnl# now add and remove other stuff 587dnl# now add and remove other stuff
607dnl# -------------------------------------------------------------------------- 588dnl# --------------------------------------------------------------------------
608if test x$support_xft = xyes; then 589support_image=no
609 AC_PATH_PROG(PKG_CONFIG, pkg-config, no) 590if test x$support_inheritpixmap = xyes || test x$support_pixbuf = xyes; then
610 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then 591 support_image=yes
611 X_LIBS="`$PKG_CONFIG xft --libs` $X_LIBS" 592fi
612 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`" 593if test x$support_xft = xyes || test x$support_image = xyes; then
613 else 594 rxvt_have_xrender=no
595 RXVT_CHECK_MODULES([XRENDER], [xrender], [
596 X_LIBS="$XRENDER_LIBS $X_LIBS"
597 CPPFLAGS="$CPPFLAGS $XRENDER_CFLAGS"
598 rxvt_have_xrender=yes
599
600 save_LIBS="$LIBS"
601 LIBS="$LIBS $X_LIBS"
602 AC_CHECK_HEADER(X11/extensions/Xrender.h,,[rxvt_have_xrender=no])
603 AC_CHECK_FUNC(XRenderFindStandardFormat,,[rxvt_have_xrender=no])
604 LIBS="$save_LIBS"
605 ], [:])
606fi
607
608if test x$support_xft = xyes && test x$rxvt_have_xrender = xyes; then
609 RXVT_CHECK_MODULES([XFT], [fontconfig xft], [
610 X_LIBS="$XFT_LIBS $X_LIBS"
611 CPPFLAGS="$CPPFLAGS $XFT_CFLAGS"
612 ], [
614 AC_PATH_PROG(XFT_CONFIG, xft-config, no) 613 AC_PATH_PROG(XFT_CONFIG, xft-config, no)
615 if test $XFT_CONFIG != no; then 614 if test $XFT_CONFIG != no; then
616 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS" 615 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS"
617 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`" 616 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`"
618 fi 617 fi
619 fi 618 ])
620 619
621 save_LIBS="$LIBS" 620 save_LIBS="$LIBS"
622 LIBS="$LIBS $X_LIBS" 621 LIBS="$LIBS $X_LIBS"
623 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no]) 622 AC_CHECK_HEADERS(X11/Xft/Xft.h fontconfig/fontconfig.h,,[support_xft=no])
624 AC_CHECK_LIB(Xft,XftDrawString32,:,[support_xft=no]) 623 AC_CHECK_FUNCS(XftDrawString32 FcPatternGet,,[support_xft=no])
625 LIBS="$save_LIBS" 624 LIBS="$save_LIBS"
626 625
627 if test x$support_xft = xyes; then 626 if test x$support_xft = xyes; then
628 AC_DEFINE(XFT, 1, Define to enable xft support) 627 AC_DEFINE(XFT, 1, Define to enable xft support)
629 fi 628 fi
630fi 629fi
630
631if test x$support_image = xyes && test x$rxvt_have_xrender = xyes; then
632 AC_MSG_CHECKING(for Render >= 0.11)
633 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
634#include <X11/extensions/Xrender.h>
635#if RENDER_MAJOR == 0 && RENDER_MINOR <= 10
636error
637#endif
638]])],[],[support_image=no])
639 if test x$support_image = xyes; then
640 AC_MSG_RESULT(ok)
641 LIBS="$LIBS -lm"
642 AC_DEFINE(XRENDER, 1, Define to enable xrender support)
643
644 if test x$support_inheritpixmap = xyes; then
645 AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background)
646 fi
647 else
648 AC_MSG_RESULT(no)
649 fi
650fi
651
631if test x$support_styles = xyes; then 652if test x$support_styles = xyes; then
632 AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support) 653 AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support)
633fi 654fi
634if test x$support_iso14755 = xyes; then 655if test x$support_iso14755 = xyes; then
635 AC_DEFINE(ISO_14755, 1, Define if you want ISO 14755 extended support) 656 AC_DEFINE(ISO_14755, 1, Define if you want ISO 14755 extended support)
638 AC_DEFINE(EIGHT_BIT_CONTROLS, 1, Define if you want 8 bit control sequences) 659 AC_DEFINE(EIGHT_BIT_CONTROLS, 1, Define if you want 8 bit control sequences)
639fi 660fi
640if test x$support_fading = xyes; then 661if test x$support_fading = xyes; then
641 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost) 662 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost)
642fi 663fi
643if test x$support_inheritpixmap = xyes; then
644 AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background)
645fi
646if test x$support_keepscrolling = xno; then 664if test x$support_keepscrolling = xno; then
647 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed) 665 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed)
648fi 666fi
649if test x$support_selectionscrolling = xyes; then 667if test x$support_selectionscrolling = xyes; then
650 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen) 668 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen)
656 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll) 674 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll)
657fi 675fi
658if test x$support_mouseslipwheel = xyes; then 676if test x$support_mouseslipwheel = xyes; then
659 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling) 677 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling)
660fi 678fi
661if test x$support_afterimage = xyes; then
662 AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing)
663 AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps. Needs libAfterImage)
664fi
665 679
666dnl if test x$support_afterstep = xyes; then 680scrolltypes=plain
667dnl AC_DEFINE(AFTERSTEP_INTEGRATION, 1, Define if you want to integrate with AfterStep window manager) 681AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
668dnl fi
669 682
670if test x$support_scroll_rxvt = xyes; then 683if test x$support_scroll_rxvt = xyes; then
671 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars) 684 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars)
672 scrolltypes="rxvt" 685 scrolltypes="$scrolltypes rxvt"
673fi 686fi
674if test x$support_scroll_next = xyes; then 687if test x$support_scroll_next = xyes; then
675 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars) 688 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars)
676 scrolltypes="$scrolltypes next" 689 scrolltypes="$scrolltypes next"
677fi 690fi
678if test x$support_scroll_xterm = xyes; then 691if test x$support_scroll_xterm = xyes; then
679 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars) 692 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars)
680 scrolltypes="$scrolltypes xterm" 693 scrolltypes="$scrolltypes xterm"
681fi 694fi
682if test x$support_scroll_plain = xyes; then
683 AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
684 scrolltypes="$scrolltypes plain"
685fi
686if test x$support_pointer_blank = xyes; then 695if test x$support_pointer_blank = xyes; then
687 AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing) 696 AC_DEFINE(POINTER_BLANK, 1, Define if you want to hide the pointer while typing)
688fi 697fi
689if test x$support_text_blink = xyes; then 698if test x$support_text_blink = xyes; then
690 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support) 699 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support)
691fi 700fi
692if test x$support_unicode3 = xyes; then 701if test x$support_unicode3 = xyes; then
710 esac 719 esac
711done 720done
712 721
713IF_PERL=\# 722IF_PERL=\#
714if test x$support_perl = xyes; then 723if test x$support_perl = xyes; then
715 AC_PATH_PROG(PERL, perl5) 724 AC_PATH_PROG(PERL, perl5, perl)
716 AC_PATH_PROG(PERL, perl)
717 725
718 AC_MSG_CHECKING(for $PERL suitability) 726 AC_MSG_CHECKING(for $PERL suitability)
719 if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then 727 if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then
720 728
721 save_CXXFLAGS="$CXXFLAGS" 729 save_CXXFLAGS="$CXXFLAGS"
752AC_SUBST(PERLPRIVLIBEXP) 760AC_SUBST(PERLPRIVLIBEXP)
753AC_SUBST(PERL) 761AC_SUBST(PERL)
754AC_SUBST(IF_PERL) 762AC_SUBST(IF_PERL)
755AC_SUBST(PERL_O) 763AC_SUBST(PERL_O)
756 764
757AC_SUBST(CFLAGS)
758AC_SUBST(CPPFLAGS)
759AC_SUBST(LDFLAGS)
760AC_SUBST(X_CFLAGS)
761
762dnl# Attack the libs
763AC_SUBST(LIBS)
764AC_SUBST(X_LIBS)
765AC_SUBST(X_EXTRA_LIBS)
766
767AC_SUBST(AFTERIMAGE_CFLAGS)
768AC_SUBST(AFTERIMAGE_LIBS)
769
770AC_ARG_PROGRAM
771
772dnl# test for "sun" or "__sun__" before include sys_ioctl
773
774dnl# revert HAVE_BLAH_H into a "#include <blah.h>"
775AC_DEFUN([RXVT_DEFINE_TO_INCLUDE], dnl
776[if test "$$3" = "$4" -o "$$5" = "$6"; then
777 $1="#include <$2>"
778else
779 $1="/* #include <$2> */"
780fi dnl
781AC_SUBST($1)])
782
783RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch)
784RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch)
785RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch)
786 765
787AC_CONFIG_FILES([Makefile \ 766AC_CONFIG_FILES([Makefile \
788doc/Makefile \ 767doc/Makefile \
789src/Makefile \ 768src/Makefile \
790src/rxvtlib.h \
791]) 769])
792AC_OUTPUT 770AC_OUTPUT
793 771
794echo "Configuration: 772echo "Configuration:
795 773
811if test x$RESFALLBACK != x; then 789if test x$RESFALLBACK != x; then
812 echo " resource class fallback: $RESFALLBACK" 790 echo " resource class fallback: $RESFALLBACK"
813fi 791fi
814echo 792echo
815echo " embedded perl: $support_perl" 793echo " embedded perl: $support_perl"
816echo " libafterimage: $support_afterimage" 794echo " image library: $image_lib"
817dnl echo " AfterStep integration: $support_afterstep"
818echo 795echo
819if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then 796if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then
820 echo ".----------------------------------------------------------------." 797 echo ".----------------------------------------------------------------."
821 echo ". WARNING: --enable-xim was specified however the locale support ." 798 echo ". WARNING: --enable-xim was specified however the locale support ."
822 echo ". functions could not be found. ." 799 echo ". functions could not be found. ."

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines