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.92 by ayin, Tue Dec 11 08:54:07 2007 UTC vs.
Revision 1.131 by sf-exg, Tue Dec 13 19:13:27 2011 UTC

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/^.*[ \t]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/^.*[ \t]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
34AC_AIX 32AC_AIX
35AC_GNU_SOURCE 33AC_GNU_SOURCE
36AC_ISC_POSIX 34AC_ISC_POSIX
37AC_LANG(C++) 35AC_LANG(C++)
38 36
39dnl check wether we can link with gcc -lsupc++ 37dnl check whether we can link with gcc -lsupc++
40if test x$GCC = xyes && test x$GXX = xyes; then 38if test x$GCC = xyes && test x$GXX = xyes; then
41 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it 39 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it
42 AC_MSG_CHECKING([for working libsupc++]) 40 AC_MSG_CHECKING([for working libsupc++])
43 save_CXX="$CXX" 41 save_CXX="$CXX"
44 save_LIBS="$LIBS" 42 save_LIBS="$LIBS"
76 AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris) 74 AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris)
77 ;; 75 ;;
78esac 76esac
79 77
80dnl# FreeBSD needs to link libxpg4 78dnl# FreeBSD needs to link libxpg4
81AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) 79AC_SEARCH_LIBS(setlocale, xpg4)
82 80
83dnl# solaris needs to link libnsl and socket 81dnl# solaris needs to link libnsl and socket
84AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])]) 82AC_SEARCH_LIBS(gethostbyname, nsl)
85AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])]) 83AC_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 84
91support_frills=yes 85support_frills=yes
92support_inheritpixmap=yes 86support_inheritpixmap=yes
93support_fading=yes 87support_fading=yes
94support_keepscrolling=yes 88support_keepscrolling=yes
98support_text_blink=yes 92support_text_blink=yes
99support_pointer_blank=yes 93support_pointer_blank=yes
100support_scroll_rxvt=yes 94support_scroll_rxvt=yes
101support_scroll_next=yes 95support_scroll_next=yes
102support_scroll_xterm=yes 96support_scroll_xterm=yes
103support_scroll_plain=yes
104support_xim=yes 97support_xim=yes
98support_pixbuf=yes
99support_startup_notification=yes
105support_afterimage=yes 100support_afterimage=yes
106support_afterstep=yes
107support_xft=yes 101support_xft=yes
108support_unicode3=no 102support_unicode3=no
109support_combining=yes 103support_combining=yes
110support_8bitctrls=no 104support_8bitctrls=no
111support_iso14755=yes 105support_iso14755=yes
115 109
116dnl# -------------------------------------------------------------------------- 110dnl# --------------------------------------------------------------------------
117dnl# CHECKING COMMAND LINE OPTIONS 111dnl# CHECKING COMMAND LINE OPTIONS
118dnl# -------------------------------------------------------------------------- 112dnl# --------------------------------------------------------------------------
119 113
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, 114AC_ARG_ENABLE(everything,
127 [ --enable-everything enable standard non-multichoice features 115 [ --enable-everything enable standard non-multichoice features
128 NOTE: this option is order dependent], 116 NOTE: this option is order dependent],
129 [ 117 [
130 if test x$enableval = xno; then 118 if test x$enableval = xno; then
131 support_frills=no 119 support_frills=no
132 support_inheritpixmap=no 120 support_inheritpixmap=no
133 support_fading=no 121 support_fading=no
139 support_text_blink=no 127 support_text_blink=no
140 support_pointer_blank=no 128 support_pointer_blank=no
141 support_scroll_rxvt=no 129 support_scroll_rxvt=no
142 support_scroll_next=no 130 support_scroll_next=no
143 support_scroll_xterm=no 131 support_scroll_xterm=no
144 support_scroll_plain=no
145 support_utmp=no 132 support_utmp=no
146 support_wtmp=no 133 support_wtmp=no
147 support_xim=no 134 support_xim=no
135 support_pixbuf=no
136 support_startup_notification=no
148 support_afterimage=no 137 support_afterimage=no
149 support_afterstep=no
150 support_xft=no 138 support_xft=no
151 support_unicode3=no 139 support_unicode3=no
152 support_combining=no 140 support_combining=no
153 support_8bitctrls=no 141 support_8bitctrls=no
154 support_iso14755=no 142 support_iso14755=no
168 support_text_blink=yes 156 support_text_blink=yes
169 support_pointer_blank=yes 157 support_pointer_blank=yes
170 support_scroll_rxvt=yes 158 support_scroll_rxvt=yes
171 support_scroll_next=yes 159 support_scroll_next=yes
172 support_scroll_xterm=yes 160 support_scroll_xterm=yes
173 support_scroll_plain=yes
174 support_utmp=yes 161 support_utmp=yes
175 support_wtmp=yes 162 support_wtmp=yes
176 support_xim=yes 163 support_xim=yes
164 support_pixbuf=yes
165 support_startup_notification=yes
177 support_afterimage=yes 166 support_afterimage=yes
178 support_afterstep=yes
179 support_xft=yes 167 support_xft=yes
180 support_unicode3=yes 168 support_unicode3=yes
181 support_combining=yes 169 support_combining=yes
182 #support_8bitctrls=yes 170 #support_8bitctrls=yes
183 support_iso14755=yes 171 support_iso14755=yes
185 support_perl=yes 173 support_perl=yes
186 codesets=all 174 codesets=all
187 fi 175 fi
188 ]) 176 ])
189 177
178ASSERTIONS=no
179AC_ARG_ENABLE(assert,
180 [ --enable-assert enable assertions],
181 [if test x$enableval = xyes; then
182 ASSERTIONS=yes
183 fi])
184if test x$ASSERTIONS = xno; then
185 AC_DEFINE(NDEBUG, 1, Disable assertions (good for debugging))
186fi
187
190WARNINGS=no 188WARNINGS=no
191AC_ARG_ENABLE(warnings, 189AC_ARG_ENABLE(warnings,
192 [ --enable-warnings turn on g++ warnings], 190 [ --enable-warnings turn on g++ warnings],
193 [if test x$enableval = xyes; then 191 [if test x$enableval = xyes; then
194 WARNINGS=yes 192 WARNINGS=yes
201 else 199 else
202 CXXFLAGS="$CXXFLAGS -w" 200 CXXFLAGS="$CXXFLAGS -w"
203 fi 201 fi
204fi 202fi
205 203
204support_256_color=no
205AC_ARG_ENABLE(256-color,
206 [ --enable-256-color enable 256-color support],
207 [if test x$enableval = xyes; then
208 support_256_color=yes
209 fi])
210if test x$support_256_color = xyes; then
211 AC_DEFINE(USE_256_COLORS, 1, Define if you want 256-color support)
212fi
213
206AC_ARG_ENABLE(unicode3, 214AC_ARG_ENABLE(unicode3,
207 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters], 215 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters],
208 [if test x$enableval = xyes -o x$enableval = xno; then 216 [if test x$enableval = xyes -o x$enableval = xno; then
209 support_unicode3=$enableval 217 support_unicode3=$enableval
210 fi]) 218 fi])
226 [if test x$enableval = xyes -o x$enableval = xno; then 234 [if test x$enableval = xyes -o x$enableval = xno; then
227 support_styles=$enableval 235 support_styles=$enableval
228 fi]) 236 fi])
229 237
230AC_ARG_ENABLE(afterimage, 238AC_ARG_ENABLE(afterimage,
231 [ --enable-afterimage enable integration with libAfterImage for background images], 239 [ --enable-afterimage enable integration with libAfterImage for background images],
232 [if test x$enableval = xyes -o x$enableval = xno; then 240 [if test x$enableval = xyes -o x$enableval = xno; then
233 support_afterimage=$enableval 241 support_afterimage=$enableval
234 fi]) 242 fi])
235 243
236AC_ARG_WITH(afterimage_config, 244AC_ARG_WITH(afterimage_config,
237 [ --with-afterimage-config=DIR use libAfterImage config script in DIR], 245 [ --with-afterimage-config=DIR use libAfterImage config script in DIR],
238 [if test "x$withval" != x; then 246 [if test "x$withval" != x; then
239 afterimage_config=$withval/afterimage-config 247 afterimage_config=$withval/afterimage-config
240 fi]) 248 fi])
241 249
242dnl AC_ARG_ENABLE(afterstep, 250AC_ARG_ENABLE(pixbuf,
243dnl [ --enable-afterstep enable integration with AfterStep window manager], 251 [ --enable-pixbuf enable integration with gdk-pixbuf for background images],
244dnl [if test x$enableval = xyes -o x$enableval = xno; then 252 [if test x$enableval = xyes -o x$enableval = xno; then
245dnl support_afterstep=$enableval 253 support_pixbuf=$enableval
246dnl fi]) 254 fi])
255
256AC_ARG_ENABLE(startup-notification,
257 [ --enable-startup-notification enable freedesktop startup notification support],
258 [if test x$enableval = xyes -o x$enableval = xno; then
259 support_startup_notification=$enableval
260 fi])
247 261
248AC_ARG_ENABLE(transparency, 262AC_ARG_ENABLE(transparency,
249 [ --enable-transparency enable transparent backgrounds], 263 [ --enable-transparency enable transparent backgrounds],
250 [if test x$enableval = xyes -o x$enableval = xno; then 264 [if test x$enableval = xyes -o x$enableval = xno; then
251 support_inheritpixmap=$enableval 265 support_inheritpixmap=$enableval
271 285
272AC_ARG_ENABLE(xterm-scroll, 286AC_ARG_ENABLE(xterm-scroll,
273 [ --enable-xterm-scroll enable Xterm style scrollbar], 287 [ --enable-xterm-scroll enable Xterm style scrollbar],
274 [if test x$enableval = xyes -o x$enableval = xno; then 288 [if test x$enableval = xyes -o x$enableval = xno; then
275 support_scroll_xterm=$enableval 289 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]) 290 fi])
283 291
284AC_ARG_ENABLE(perl, 292AC_ARG_ENABLE(perl,
285 [ --enable-perl enable embedded perl interpreter], 293 [ --enable-perl enable embedded perl interpreter],
286 [if test x$enableval = xyes -o x$enableval = xno; then 294 [if test x$enableval = xyes -o x$enableval = xno; then
350AC_ARG_WITH(name, 358AC_ARG_WITH(name,
351 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)], 359 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)],
352 [RXVTNAME="$withval"]) 360 [RXVTNAME="$withval"])
353AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name]) 361AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name])
354 362
355RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"`
356AC_SUBST(RXVTNAME) 363AC_SUBST(RXVTNAME)
357 364
358AC_ARG_ENABLE(swapscreen, 365AC_ARG_ENABLE(swapscreen,
359 [ --disable-swapscreen disable swap screen support], 366 [ --disable-swapscreen disable swap screen support],
360 [if test x$enableval = xno; then 367 [if test x$enableval = xno; then
408 [if test x$enableval = xyes -o x$enableval = xno; then 415 [if test x$enableval = xyes -o x$enableval = xno; then
409 support_text_blink=$enableval 416 support_text_blink=$enableval
410 fi]) 417 fi])
411 418
412AC_ARG_ENABLE(pointer-blank, 419AC_ARG_ENABLE(pointer-blank,
413 [ --enable-pointer-blank enable pointer blank when typing or inactive pointer], 420 [ --enable-pointer-blank enable pointer blanking when typing or inactive],
414 [if test x$enableval = xyes -o x$enableval = xno; then 421 [if test x$enableval = xyes -o x$enableval = xno; then
415 support_pointer_blank=$enableval 422 support_pointer_blank=$enableval
416 fi]) 423 fi])
417 424
418AC_ARG_WITH(term, 425AC_ARG_WITH(term,
436 443
437AC_PATH_PROG(TIC, tic, :) 444AC_PATH_PROG(TIC, tic, :)
438 445
439AC_PATH_XTRA 446AC_PATH_XTRA
440 447
448image_lib=none
449
450PIXBUF_CFLAGS=
451PIXBUF_LIBS=
452
453if test x$support_pixbuf = xyes; then
454 support_pixbuf=no
455 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
456 AC_MSG_CHECKING(for gdk-pixbuf)
457 if test $PKG_CONFIG != no && $PKG_CONFIG --exists gdk-pixbuf-2.0; then
458 PIXBUF_CFLAGS="`$PKG_CONFIG gdk-pixbuf-2.0 --cflags`"
459 PIXBUF_LIBS="`$PKG_CONFIG gdk-pixbuf-2.0 --libs`"
460 support_pixbuf=yes
461 fi
462
463 if test x$support_pixbuf = xyes; then
464 AC_MSG_RESULT(ok)
465 image_lib=gdk-pixbuf
466 support_afterimage=no
467 AC_DEFINE(HAVE_PIXBUF, 1, Define if you want to use gdk-pixbuf for image processing)
468 AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps.)
469 else
470 AC_MSG_RESULT(no)
471 fi
472fi
473
474AC_SUBST(PIXBUF_CFLAGS)
475AC_SUBST(PIXBUF_LIBS)
476
477STARTUP_NOTIFICATION_CFLAGS=
478STARTUP_NOTIFICATION_LIBS=
479
480if test x$support_startup_notification = xyes; then
481 support_startup_notification=no
482 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
483 AC_MSG_CHECKING(for libstartup-notification)
484 if test $PKG_CONFIG != no && $PKG_CONFIG --exists libstartup-notification-1.0; then
485 STARTUP_NOTIFICATION_CFLAGS="`$PKG_CONFIG libstartup-notification-1.0 --cflags`"
486 STARTUP_NOTIFICATION_LIBS="`$PKG_CONFIG libstartup-notification-1.0 --libs`"
487 support_startup_notification=yes
488 fi
489
490 if test x$support_startup_notification = xyes; then
491 AC_MSG_RESULT(ok)
492 AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, Define if freedesktop startup notifications should be supported)
493 else
494 AC_MSG_RESULT(no)
495 fi
496fi
497
498AC_SUBST(STARTUP_NOTIFICATION_CFLAGS)
499AC_SUBST(STARTUP_NOTIFICATION_LIBS)
500
441AFTERIMAGE_CFLAGS= 501AFTERIMAGE_CFLAGS=
442AFTERIMAGE_LIBS= 502AFTERIMAGE_LIBS=
443AFTERIMAGE_VERSION=
444 503
445if test x$support_afterimage = xyes; then 504if test x$support_afterimage = xyes; then
446 support_afterimage=no 505 support_afterimage=no
447 506
448 if test "x$afterimage_config" = "x" ; then 507 if test "x$afterimage_config" = "x" ; then
449 AC_PATH_PROG(afterimage_config, afterimage-config, no) 508 AC_PATH_PROG(afterimage_config, afterimage-config, no)
450 fi 509 fi
451 if test "x$afterimage_config" != "xno" ; then 510 if test "x$afterimage_config" != "xno" ; then
452 AC_MSG_CHECKING(for libAfterImage version >= 1.15) 511 AC_MSG_CHECKING(for libAfterImage version >= 1.15)
453 xAFTERIMAGE_VERSION=`$afterimage_config --version` 512 AFTERIMAGE_VERSION=`$afterimage_config --version`
454 if test -n "$xAFTERIMAGE_VERSION" ; then 513 if test -n "$AFTERIMAGE_VERSION" ; then
455 xAFTERIMAGE_CFLAGS=`$afterimage_config --cflags` 514 AFTERIMAGE_CFLAGS=`$afterimage_config --cflags`
456 xAFTERIMAGE_LIBS=`$afterimage_config --libs` 515 AFTERIMAGE_LIBS=`$afterimage_config --libs`
457 if test "x$xAFTERIMAGE_LIBS" != "x"; then 516 if test "x$AFTERIMAGE_LIBS" != "x"; then
458 libai_ver_major=`echo $xAFTERIMAGE_VERSION | cut -f 1 -d .` 517 libai_ver_major=`echo $AFTERIMAGE_VERSION | cut -f 1 -d .`
459 libai_ver_minor=`echo $xAFTERIMAGE_VERSION | cut -f 2 -d .` 518 libai_ver_minor=`echo $AFTERIMAGE_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 519 if test $libai_ver_major -gt 1 -o \( $libai_ver_major -eq 1 -a $libai_ver_minor -ge 15 \); then
461 support_afterimage=yes 520 support_afterimage=yes
462 AFTERIMAGE_CFLAGS="$xAFTERIMAGE_CFLAGS"
463 AFTERIMAGE_LIBS="$xAFTERIMAGE_LIBS"
464 AFTERIMAGE_VERSION="$xAFTERIMAGE_VERSION"
465 fi 521 fi
466 fi 522 fi
467 fi 523 fi
468 if test "x$support_afterimage" = "xyes"; then 524 if test "x$support_afterimage" = "xyes"; then
469 AC_MSG_RESULT($AFTERIMAGE_LIBS) 525 AC_MSG_RESULT($AFTERIMAGE_LIBS)
526 image_lib=libafterimage
527 AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing)
528 AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps.)
470 else 529 else
471 AC_MSG_RESULT(no) 530 AC_MSG_RESULT(no)
531 AFTERIMAGE_CFLAGS=
532 AFTERIMAGE_LIBS=
472 fi 533 fi
473 fi 534 fi
474fi 535fi
475 536
537AC_SUBST(AFTERIMAGE_CFLAGS)
538AC_SUBST(AFTERIMAGE_LIBS)
539
476dnl# -------------------------------------------------------------------------- 540dnl# --------------------------------------------------------------------------
477dnl# CHECKING FOR HEADER FILES 541dnl# CHECKING FOR HEADER FILES
478dnl# -------------------------------------------------------------------------- 542dnl# --------------------------------------------------------------------------
479AC_CHECK_HEADERS( \ 543AC_CHECK_HEADERS( \
480 assert.h \
481 fcntl.h \
482 stdarg.h \
483 stdlib.h \
484 string.h \
485 termios.h \
486 unistd.h \
487 sys/byteorder.h \ 544 sys/byteorder.h \
488 sys/ioctl.h \ 545 sys/ioctl.h \
489 sys/select.h \
490 sys/sockio.h \ 546 sys/sockio.h \
491 sys/strredir.h \ 547 sys/strredir.h \
492 sys/time.h \
493 stdint.h \ 548 stdint.h \
494 wchar.h \ 549 wchar.h \
495 cwchar \ 550 cwchar \
496 clocale \
497) 551)
498 552
499dnl# check to allow both <termios.h> and <sys/ioctl.h>
500AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl,
501[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>
502#include <sys/ioctl.h>
503#ifdef HAVE_TERMIOS_H
504#include <termios.h>
505#endif]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])])
506
507AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer,
508[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])])
509if test x$rxvt_cv_xpointer = xyes; then
510 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef)
511fi
512
513AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_xlib_illegal_access, 553AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access,
514[AC_COMPILE_IFELSE( 554[AC_COMPILE_IFELSE(
515 [AC_LANG_PROGRAM([ 555 [AC_LANG_PROGRAM([
516#define XLIB_ILLEGAL_ACCESS 556#define XLIB_ILLEGAL_ACCESS
517#include <X11/Xlib.h> 557#include <X11/Xlib.h>
518 ],[ 558 ],[
519 Display *dpy; 559 Display *dpy;
520 dpy->xdefaults = (char *)0; 560 dpy->xdefaults = (char *)0;
521 ])], 561 ])],
522 [rxvt_xlib_illegal_access=yes],[rxvt_xlib_illegal_access=no] 562 [rxvt_cv_xlib_illegal_access=yes],[rxvt_cv_xlib_illegal_access=no]
523)]) 563)])
524if test x$rxvt_xlib_illegal_access = xyes; then 564if test x$rxvt_cv_xlib_illegal_access = xyes; then
525 AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it) 565 AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it)
526fi 566fi
527 567
528dnl# -------------------------------------------------------------------------- 568dnl# --------------------------------------------------------------------------
529dnl# CHECKING FOR MISSING TYPEDEFS 569dnl# CHECKING FOR MISSING TYPEDEFS
530dnl# -------------------------------------------------------------------------- 570dnl# --------------------------------------------------------------------------
531dnl# Missing typedefs and replacements 571dnl# Missing typedefs and replacements
532AC_TYPE_MODE_T 572AC_TYPE_MODE_T
533dnl> AC_CHECK_TYPE(umode_t, int)
534dnl> AC_CHECK_TYPE(off_t, long)
535AC_TYPE_PID_T 573AC_TYPE_PID_T
536AC_TYPE_UID_T 574AC_TYPE_UID_T
537 575AC_TYPE_INT16_T
538AC_CHECK_SIZEOF(short, 2) 576AC_TYPE_UINT16_T
539AC_CHECK_SIZEOF(int, 4) 577AC_TYPE_INT32_T
540dnl AC_CHECK_SIZEOF(long, 4) 578AC_TYPE_UINT32_T
541AC_CHECK_SIZEOF(long long, 8)
542AC_CHECK_SIZEOF(int *, 4)
543
544dnl# see usage below
545AC_DEFUN([RXVT_CHECK_SIZE],
546 [AC_CACHE_CHECK([for $2], $1,
547 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdint.h>]], [[$2 dummy;]])],[$1=yes],[dnl
548if test "$ac_cv_sizeof_char" -ge $3; then
549 $1="$4 char"
550else
551 if test "$ac_cv_sizeof_short" -ge $3; then
552 $1="$4 short"
553 else
554 if test "$ac_cv_sizeof_int" -ge $3; then
555 $1="$4 int"
556 else
557 if test "$ac_cv_sizeof_long" -ge $3; then
558 $1="$4 long"
559 else
560 if test "$ac_cv_sizeof_long_long" -ge $3; then
561 $1="$4 long long"
562 else
563 $1="$4 $5" # we _must_ have a (possibly wrong) default
564 fi
565 fi
566 fi
567 fi
568fi])])]
569if test x"$$1" != xyes; then
570 $6="typedef $$1 $2;"
571else
572 if test x"$4" = x; then
573 $6="/* typedef $5 $2; */"
574 else
575 $6="/* typedef $4 $5 $2; */"
576 fi
577fi dnl
578)
579dnl#
580dnl# Look for types the system may know about anyway.
581dnl#
582RXVT_CHECK_SIZE(rxvt_cv_int16_t, int16_t, 2, , short, rxvt_int16_typedef)
583AC_SUBST(rxvt_int16_typedef)
584RXVT_CHECK_SIZE(rxvt_cv_uint16_t, uint16_t, 2, unsigned, short, rxvt_uint16_typedef)
585AC_SUBST(rxvt_uint16_typedef)
586RXVT_CHECK_SIZE(rxvt_cv_int32_t, int32_t, 4, , int, rxvt_int32_typedef)
587AC_SUBST(rxvt_int32_typedef)
588RXVT_CHECK_SIZE(rxvt_cv_uint32_t, uint32_t, 4, unsigned, int, rxvt_uint32_typedef)
589AC_SUBST(rxvt_uint32_typedef)
590dnl RXVT_CHECK_SIZE(rxvt_cv_int64_t, int64_t, 8, , long long, rxvt_int64_typedef)
591dnl AC_SUBST(rxvt_int64_typedef)
592dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef)
593dnl AC_SUBST(rxvt_uint64_typedef)
594dnl#
595dnl# Now look for another we use
596dnl#
597if test "$ac_cv_sizeof_int_p" -eq 8; then
598 rxvt_intp_define="#define intp_t int64_t"
599 rxvt_u_intp_define="#define u_intp_t u_int64_t"
600else
601 if test "$ac_cv_sizeof_int_p" -eq 4; then
602 rxvt_intp_define="#define intp_t int32_t"
603 rxvt_u_intp_define="#define u_intp_t u_int32_t"
604 else
605 if test "$ac_cv_sizeof_int_p" -eq 2; then
606 rxvt_intp_define="#define intp_t int16_t"
607 rxvt_u_intp_define="#define u_intp_t u_int16_t"
608 else
609 rxvt_intp_define="#error set intp_t"
610 rxvt_u_intp_define="#error set u_intp_t"
611 fi
612 fi
613fi
614AC_SUBST(rxvt_intp_define)
615AC_SUBST(rxvt_u_intp_define)
616 579
617dnl# -------------------------------------------------------------------------- 580dnl# --------------------------------------------------------------------------
618dnl# CHECKING FOR LIBRARY FUNCTIONS 581dnl# CHECKING FOR LIBRARY FUNCTIONS
619dnl# -------------------------------------------------------------------------- 582dnl# --------------------------------------------------------------------------
620AC_CHECK_FUNCS(unsetenv) 583AC_CHECK_FUNCS(unsetenv)
631save_CFLAGS=$CFLAGS 594save_CFLAGS=$CFLAGS
632CFLAGS="$CFLAGS $X_CFLAGS" 595CFLAGS="$CFLAGS $X_CFLAGS"
633LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" 596LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
634if test x$support_xim = xyes; then 597if test x$support_xim = xyes; then
635 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, 598 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
636 [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h> 599 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
600 #include <X11/Xlib.h>
637 #include <stdlib.h> 601 #include <stdlib.h>
638 main() { 602 int main() {
639 char *p; 603 char *p;
640 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) 604 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
641 exit (XSupportsLocale() ? 0 : 1); 605 exit (XSupportsLocale() ? 0 : 1);
642 else 606 else
643 exit (1);}]])],[dnl 607 exit (1);
608 }
644 rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl 609 ]])],[rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[:])])
645 :])])
646 if test x$rxvt_cv_func_xlocale = xyes; then 610 if test x$rxvt_cv_func_xlocale = xyes; then
647 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input) 611 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input)
648 AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb, 612 AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb,
649 [AC_COMPILE_IFELSE([ 613 [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
650 #include <X11/Xlib.h> 614 #include <X11/Xlib.h>
651 615
652 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3); 616 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
653 617
654 void f() { 618 void f() {
655 XIMCallback cb; 619 XIMCallback cb;
656 cb.callback = im_destroy_cb; 620 cb.callback = im_destroy_cb;
657 } 621 }
658 ],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)]) 622 ]])],rxvt_cv_broken_ximcb=yes,rxvt_cv_broken_ximcb=no)])
659 623
660 if test x$rxvt_broken_ximcb = xyes; then 624 if test x$rxvt_cv_broken_ximcb = xyes; then
661 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.) 625 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
662 fi 626 fi
663 fi 627 fi
664fi 628fi
665 629
691TTY_GROUP_CHECK 655TTY_GROUP_CHECK
692 656
693dnl# -------------------------------------------------------------------------- 657dnl# --------------------------------------------------------------------------
694dnl# now add and remove other stuff 658dnl# now add and remove other stuff
695dnl# -------------------------------------------------------------------------- 659dnl# --------------------------------------------------------------------------
696if test x$support_xft = xyes; then 660if test x$support_xft = xyes || test x$support_inheritpixmap = xyes; then
661 rxvt_have_xrender=no
662 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
663 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xrender; then
664 X_LIBS="`$PKG_CONFIG xrender --libs` $X_LIBS"
665 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xrender --cflags`"
666 rxvt_have_xrender=yes
667
668 save_LIBS="$LIBS"
669 LIBS="$LIBS $X_LIBS"
670 AC_CHECK_HEADER(X11/extensions/Xrender.h,,[rxvt_have_xrender=no])
671 AC_CHECK_FUNC(XRenderFindStandardFormat,,[rxvt_have_xrender=no])
672 LIBS="$save_LIBS"
673 fi
674fi
675
676if test x$support_xft = xyes && test x$rxvt_have_xrender = xyes; then
697 AC_PATH_PROG(PKG_CONFIG, pkg-config, no) 677 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
698 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then 678 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then
699 X_LIBS="`$PKG_CONFIG xft --libs` $X_LIBS" 679 X_LIBS="`$PKG_CONFIG xft --libs` $X_LIBS"
700 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`" 680 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`"
701 else 681 else
704 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS" 684 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS"
705 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`" 685 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`"
706 fi 686 fi
707 fi 687 fi
708 688
689 if test $PKG_CONFIG != no && $PKG_CONFIG --exists fontconfig; then
690 X_LIBS="`$PKG_CONFIG fontconfig --libs` $X_LIBS"
691 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG fontconfig --cflags`"
692 fi
693
709 save_LIBS="$LIBS" 694 save_LIBS="$LIBS"
710 LIBS="$LIBS $X_LIBS" 695 LIBS="$LIBS $X_LIBS"
711 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no]) 696 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no])
712 AC_CHECK_LIB(Xft,XftDrawString32,:,[support_xft=no]) 697 AC_CHECK_LIB(Xft,XftDrawString32,:,[support_xft=no])
698 AC_CHECK_HEADERS(fontconfig/fontconfig.h,,[support_xft=no])
699 AC_CHECK_LIB(fontconfig,FcPatternGet,:,[support_xft=no])
713 LIBS="$save_LIBS" 700 LIBS="$save_LIBS"
714 701
715 if test x$support_xft = xyes; then 702 if test x$support_xft = xyes; then
716 AC_DEFINE(XFT, 1, Define to enable xft support) 703 AC_DEFINE(XFT, 1, Define to enable xft support)
717 fi 704 fi
727fi 714fi
728if test x$support_fading = xyes; then 715if test x$support_fading = xyes; then
729 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost) 716 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost)
730fi 717fi
731if test x$support_inheritpixmap = xyes; then 718if test x$support_inheritpixmap = xyes; then
719 if test x$rxvt_have_xrender = xyes; then
720 LIBS="$LIBS -lm"
721 AC_DEFINE(XRENDER, 1, Define to enable xrender support)
722 fi
732 AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background) 723 AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background)
733fi 724fi
734if test x$support_keepscrolling = xno; then 725if test x$support_keepscrolling = xno; then
735 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed) 726 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed)
736fi 727fi
744 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll) 735 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll)
745fi 736fi
746if test x$support_mouseslipwheel = xyes; then 737if test x$support_mouseslipwheel = xyes; then
747 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling) 738 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling)
748fi 739fi
749if test x$support_afterimage = xyes; then
750 AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing)
751 AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps. Needs libAfterImage)
752fi
753 740
754dnl if test x$support_afterstep = xyes; then 741scrolltypes=plain
755dnl AC_DEFINE(AFTERSTEP_INTEGRATION, 1, Define if you want to integrate with AfterStep window manager) 742AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
756dnl fi
757 743
758if test x$support_scroll_rxvt = xyes; then 744if test x$support_scroll_rxvt = xyes; then
759 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars) 745 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars)
760 scrolltypes="rxvt" 746 scrolltypes="$scrolltypes rxvt"
761fi 747fi
762if test x$support_scroll_next = xyes; then 748if test x$support_scroll_next = xyes; then
763 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars) 749 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars)
764 scrolltypes="$scrolltypes next" 750 scrolltypes="$scrolltypes next"
765fi 751fi
766if test x$support_scroll_xterm = xyes; then 752if test x$support_scroll_xterm = xyes; then
767 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars) 753 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars)
768 scrolltypes="$scrolltypes xterm" 754 scrolltypes="$scrolltypes xterm"
769fi 755fi
770if test x$support_scroll_plain = xyes; then
771 AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
772 scrolltypes="$scrolltypes plain"
773fi
774if test x$support_pointer_blank = xyes; then 756if test x$support_pointer_blank = xyes; then
775 AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing) 757 AC_DEFINE(POINTER_BLANK, 1, Define if you want to hide the pointer while typing)
776fi 758fi
777if test x$support_text_blink = xyes; then 759if test x$support_text_blink = xyes; then
778 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support) 760 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support)
779fi 761fi
780if test x$support_unicode3 = xyes; then 762if test x$support_unicode3 = xyes; then
808 790
809 save_CXXFLAGS="$CXXFLAGS" 791 save_CXXFLAGS="$CXXFLAGS"
810 save_LIBS="$LIBS" 792 save_LIBS="$LIBS"
811 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`" 793 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`"
812 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`" 794 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`"
813 AC_TRY_LINK([ 795 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
814#include <EXTERN.h> 796#include <EXTERN.h>
815#include <perl.h> 797#include <perl.h>
816#include <XSUB.h> 798#include <XSUB.h>
817],[ 799]], [[
818 PerlInterpreter *perl = perl_alloc (); 800 PerlInterpreter *perl = perl_alloc ();
819],[rxvt_perl_link=yes],[rxvt_perl_link=no]) 801]])],[rxvt_perl_link=yes],[rxvt_perl_link=no])
820 CXXFLAGS="$save_CXXFLAGS" 802 CXXFLAGS="$save_CXXFLAGS"
821 LIBS="$save_LIBS" 803 LIBS="$save_LIBS"
822 804
823 if test x$rxvt_perl_link = xyes; then 805 if test x$rxvt_perl_link = xyes; then
824 AC_MSG_RESULT(ok) 806 AC_MSG_RESULT(ok)
840AC_SUBST(PERLPRIVLIBEXP) 822AC_SUBST(PERLPRIVLIBEXP)
841AC_SUBST(PERL) 823AC_SUBST(PERL)
842AC_SUBST(IF_PERL) 824AC_SUBST(IF_PERL)
843AC_SUBST(PERL_O) 825AC_SUBST(PERL_O)
844 826
845AC_SUBST(CFLAGS)
846AC_SUBST(CPPFLAGS)
847AC_SUBST(LDFLAGS)
848AC_SUBST(X_CFLAGS)
849
850dnl# Attack the libs
851AC_SUBST(LIBS)
852AC_SUBST(X_LIBS)
853AC_SUBST(X_EXTRA_LIBS)
854
855AC_SUBST(AFTERIMAGE_CFLAGS)
856AC_SUBST(AFTERIMAGE_LIBS)
857
858AC_ARG_PROGRAM
859
860dnl# test for "sun" or "__sun__" before include sys_ioctl
861
862dnl# revert HAVE_BLAH_H into a "#include <blah.h>"
863AC_DEFUN([RXVT_DEFINE_TO_INCLUDE], dnl
864[if test "$$3" = "$4" -o "$$5" = "$6"; then
865 $1="#include <$2>"
866else
867 $1="/* #include <$2> */"
868fi dnl
869AC_SUBST($1)])
870
871RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch)
872RXVT_DEFINE_TO_INCLUDE(include_stdarg_h, cstdarg, ac_cv_header_stdarg_h, yes, notset, dontmatch)
873RXVT_DEFINE_TO_INCLUDE(include_stdlib_h, cstdlib, ac_cv_header_stdlib_h, yes, notset, dontmatch)
874RXVT_DEFINE_TO_INCLUDE(include_unistd_h, unistd.h, ac_cv_header_unistd_h, yes, notset, dontmatch)
875RXVT_DEFINE_TO_INCLUDE(include_string_h, cstring, ac_cv_header_string_h, yes, notset, dontmatch)
876RXVT_DEFINE_TO_INCLUDE(include_fcntl_h, fcntl.h, ac_cv_header_fcntl_h, yes, notset, dontmatch)
877RXVT_DEFINE_TO_INCLUDE(include_assert_h, assert.h, ac_cv_header_assert_h, yes, notset, dontmatch)
878RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch)
879RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch)
880RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch)
881RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch)
882RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes)
883 827
884AC_CONFIG_FILES([Makefile \ 828AC_CONFIG_FILES([Makefile \
885doc/Makefile \ 829doc/Makefile \
886src/Makefile \ 830src/Makefile \
887src/rxvtlib.h \
888]) 831])
889AC_OUTPUT 832AC_OUTPUT
890 833
891echo "Configuration: 834echo "Configuration:
892 835
908if test x$RESFALLBACK != x; then 851if test x$RESFALLBACK != x; then
909 echo " resource class fallback: $RESFALLBACK" 852 echo " resource class fallback: $RESFALLBACK"
910fi 853fi
911echo 854echo
912echo " embedded perl: $support_perl" 855echo " embedded perl: $support_perl"
913echo " libafterimage: $support_afterimage" 856echo " image library: $image_lib"
914dnl echo " AfterStep integration: $support_afterstep"
915echo 857echo
916if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then 858if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then
917 echo ".----------------------------------------------------------------." 859 echo ".----------------------------------------------------------------."
918 echo ". WARNING: --enable-xim was specified however the locale support ." 860 echo ". WARNING: --enable-xim was specified however the locale support ."
919 echo ". functions could not be found. ." 861 echo ". functions could not be found. ."

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines