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.54 by ayin, Mon Jun 25 13:53:42 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
20AC_SUBST(LSMDATE)dnl 19
21AC_SUBST(LIBVERSION)dnl
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.
29dnl AC_MAKE_SET
30
31AC_PROG_CC 27AC_PROG_CC
32AC_PROG_CXX 28AC_PROG_CXX
33AC_PROG_CPP
34AC_PROG_INSTALL 29AC_PROG_INSTALL
35 30
36AC_AIX 31AC_AIX
32AC_GNU_SOURCE
37AC_ISC_POSIX 33AC_ISC_POSIX
38AC_LANG(C++) 34AC_LANG(C++)
39 35
36if test "$ac_prog_cxx_stdcxx" != cxx11; then
37 AC_MSG_ERROR([the compiler does not support C++11])
38fi
39
40LINKER="$CXX"
40dnl check wether we can link with gcc -lsupc++ 41dnl check whether we can link with gcc -lsupc++
41if test x$GCC = xyes && test x$GXX = xyes; then 42if test x$GCC = xyes && test x$GXX = xyes; then
42 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
43 AC_MSG_CHECKING([for working libsupc++]) 44 AC_MSG_CHECKING([for working libsupc++])
44 save_CXX="$CXX" 45 save_CXX="$CXX"
45 save_LIBS="$LIBS" 46 save_LIBS="$LIBS"
46 CXX="$CC" 47 CXX="$CC"
47 LIBS="$LIBS -lsupc++" 48 LIBS="$LIBS -lsupc++"
48 LINKER="$CC"
49 AC_LINK_IFELSE( 49 AC_LINK_IFELSE(
50 [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; }],[])],
51 [
52 AC_MSG_RESULT(ok) 51 [AC_MSG_RESULT(ok)
53 CXXLIB="-lsupc++" 52 LINKER="$CC"],
54 ],
55 [ 53 [
56 AC_MSG_RESULT([no, making everything bigger and slower]) 54 AC_MSG_RESULT([no, making everything bigger and slower])
57 LIBS="$save_LIBS" 55 LIBS="$save_LIBS"
58 LINKER="$save_CXX"
59 ] 56 ]
60 ) 57 )
61 CXX="$save_CXX" 58 CXX="$save_CXX"
62fi 59fi
63AC_SUBST(LINKER,[$LINKER]) 60AC_SUBST(LINKER,[$LINKER])
64AC_SUBST(CXXLIB)
65 61
66dnl# -------------------------------------------------------------------------- 62dnl# --------------------------------------------------------------------------
67dnl# Supply default CXXFLAGS, if not specified by `CXXFLAGS=flags ./configure' 63dnl# Supply default CXXFLAGS, if not specified by `CXXFLAGS=flags ./configure'
68dnl# 64dnl#
69if test -z "$orig_CXXFLAGS"; then 65if test -z "$orig_CXXFLAGS"; then
70 if test x$GCC = xyes && test "x$GXX" = xyes; then 66 if test x$GCC = xyes && test "x$GXX" = xyes; then
71 CXXFLAGS="-g -O3 -fno-threadsafe-statics -fno-enforce-eh-specs" 67 CXXFLAGS="-g -O3 -fno-rtti -fvisibility-inlines-hidden -fno-threadsafe-statics -fno-enforce-eh-specs"
72 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="-g -O3"]) 68 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="-g -O3"])
73 else 69 else
74 CXXFLAGS="-O" 70 CXXFLAGS="-O"
75 fi 71 fi
76 CFLAGS="$CXXFLAGS" 72 CFLAGS="$CXXFLAGS"
77fi 73fi
78 74
79AC_DEFINE(_GNU_SOURCE, 1, Use all glibc features.)
80
81case $host in
82 *-*-solaris* )
83 AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
84 AC_DEFINE(_XOPEN_SOURCE, 2, Needed to get declarations for msg_control and msg_controllen on Solaris)
85 AC_DEFINE(__EXTENSIONS__, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
86 ;;
87esac
88
89dnl if test x$GXX = xyes; then
90dnl CXXFLAGS="$CXXFLAGS" dnl I once had -fno-exceptions, but I am using them now...
91dnl fi
92
93dnl# FreeBSD needs to link libxpg4 75dnl# FreeBSD needs to link libxpg4
94AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) 76AC_SEARCH_LIBS(setlocale, xpg4)
95 77
96dnl# solaris needs to link libnsl and socket 78dnl# solaris needs to link libnsl and socket
97AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])]) 79AC_SEARCH_LIBS(gethostbyname, nsl)
98AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])]) 80AC_SEARCH_LIBS(socket, socket)
99
100dnl AC_ENABLE_SHARED(no)dnl# libtool
101dnl AC_ENABLE_STATIC(yes)dnl# libtool
102dnl AC_PROG_LIBTOOL()dnl# libtool
103 81
104support_frills=yes 82support_frills=yes
105support_inheritpixmap=yes 83support_inheritpixmap=yes
106support_tinting=yes
107support_fading=yes 84support_fading=yes
108support_keepscrolling=yes 85support_keepscrolling=yes
109support_selectionscrolling=yes 86support_selectionscrolling=yes
110support_mousewheel=yes 87support_mousewheel=yes
111support_mouseslipwheel=yes 88support_mouseslipwheel=yes
112support_text_blink=yes 89support_text_blink=yes
113support_pointer_blank=yes 90support_pointer_blank=yes
114support_scroll_rxvt=yes 91support_scroll_rxvt=yes
115support_scroll_next=yes 92support_scroll_next=yes
116support_scroll_xterm=yes 93support_scroll_xterm=yes
117support_scroll_plain=yes
118support_xim=yes 94support_xim=yes
119support_xpm=yes 95support_pixbuf=yes
120support_afterimage=yes 96support_startup_notification=yes
121support_afterstep=yes
122support_xft=yes 97support_xft=yes
123support_unicode3=no 98support_unicode3=no
124support_combining=yes 99support_combining=yes
125support_8bitctrls=no 100support_8bitctrls=no
126support_iso14755=yes 101support_iso14755=yes
130 105
131dnl# -------------------------------------------------------------------------- 106dnl# --------------------------------------------------------------------------
132dnl# CHECKING COMMAND LINE OPTIONS 107dnl# CHECKING COMMAND LINE OPTIONS
133dnl# -------------------------------------------------------------------------- 108dnl# --------------------------------------------------------------------------
134 109
135if test "x$enable_shared" = xyes; then
136 AC_DEFINE(LIBRXVT, 1, Build shared library version - specify via configure only)
137 INSTALL_LIBRXVT=yes
138fi
139AC_SUBST(INSTALL_LIBRXVT)
140
141AC_ARG_ENABLE(everything, 110AC_ARG_ENABLE(everything,
142 [ --enable-everything enable standard non-multichoice features 111 [ --enable-everything enable standard non-multichoice features
143 NOTE: this option is order dependent 112 NOTE: this option is order dependent],
144 NOTE: automatically enabled with --enable-shared],
145 [ 113 [
146 if test x$enableval = xno; then 114 if test x$enableval = xno; then
147 support_frills=no 115 support_frills=no
148 support_inheritpixmap=no 116 support_inheritpixmap=no
149 support_tinting=no
150 support_fading=no 117 support_fading=no
151 support_keepscrolling=no 118 support_keepscrolling=no
152 support_selectionscrolling=no 119 support_selectionscrolling=no
153 support_lastlog=no 120 support_lastlog=no
154 support_mousewheel=no 121 support_mousewheel=no
156 support_text_blink=no 123 support_text_blink=no
157 support_pointer_blank=no 124 support_pointer_blank=no
158 support_scroll_rxvt=no 125 support_scroll_rxvt=no
159 support_scroll_next=no 126 support_scroll_next=no
160 support_scroll_xterm=no 127 support_scroll_xterm=no
161 support_scroll_plain=no
162 support_utmp=no 128 support_utmp=no
163 support_wtmp=no 129 support_wtmp=no
164 support_xim=no 130 support_xim=no
165 support_xpm=no 131 support_pixbuf=no
166 support_afterimage=no 132 support_startup_notification=no
167 support_afterstep=no
168 support_xft=no 133 support_xft=no
169 support_unicode3=no 134 support_unicode3=no
170 support_combining=no 135 support_combining=no
171 support_8bitctrls=no 136 support_8bitctrls=no
172 support_iso14755=no 137 support_iso14755=no
175 codesets= 140 codesets=
176 fi 141 fi
177 if test x$enableval = xyes; then 142 if test x$enableval = xyes; then
178 support_frills=yes 143 support_frills=yes
179 support_inheritpixmap=yes 144 support_inheritpixmap=yes
180 support_tinting=yes
181 support_fading=yes 145 support_fading=yes
182 support_keepscrolling=yes 146 support_keepscrolling=yes
183 support_selectionscrolling=yes 147 support_selectionscrolling=yes
184 support_lastlog=yes 148 support_lastlog=yes
185 support_mousewheel=yes 149 support_mousewheel=yes
187 support_text_blink=yes 151 support_text_blink=yes
188 support_pointer_blank=yes 152 support_pointer_blank=yes
189 support_scroll_rxvt=yes 153 support_scroll_rxvt=yes
190 support_scroll_next=yes 154 support_scroll_next=yes
191 support_scroll_xterm=yes 155 support_scroll_xterm=yes
192 support_scroll_plain=yes
193 support_utmp=yes 156 support_utmp=yes
194 support_wtmp=yes 157 support_wtmp=yes
195 support_xim=yes 158 support_xim=yes
196 support_xpm=yes 159 support_pixbuf=yes
197 support_afterimage=yes 160 support_startup_notification=yes
198 support_afterstep=yes
199 support_xft=yes 161 support_xft=yes
200 support_unicode3=yes 162 support_unicode3=yes
201 support_combining=yes 163 support_combining=yes
202 #support_8bitctrls=yes 164 #support_8bitctrls=yes
203 support_iso14755=yes 165 support_iso14755=yes
205 support_perl=yes 167 support_perl=yes
206 codesets=all 168 codesets=all
207 fi 169 fi
208 ]) 170 ])
209 171
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
183AC_ARG_ENABLE(warnings,
184 [ --enable-warnings turn on g++ warnings],
185 [if test x$enableval = xyes; then
186 support_warnings=yes
187 fi])
188if test x$GXX = xyes; then
189 if test $support_warnings = yes; then
190 save_CXXFLAGS="$CXXFLAGS"
191 CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-unused-value"
192 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"])
193 else
194 CXXFLAGS="$CXXFLAGS -w"
195 fi
196fi
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
210AC_ARG_ENABLE(unicode3, 208AC_ARG_ENABLE(unicode3,
211 [ --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],
212 [if test x$enableval = xyes -o x$enableval = xno; then 210 [if test x$enableval = xyes -o x$enableval = xno; then
213 support_unicode3=$enableval 211 support_unicode3=$enableval
214 fi]) 212 fi])
229 [ --enable-font-styles enable bold and italic support], 227 [ --enable-font-styles enable bold and italic support],
230 [if test x$enableval = xyes -o x$enableval = xno; then 228 [if test x$enableval = xyes -o x$enableval = xno; then
231 support_styles=$enableval 229 support_styles=$enableval
232 fi]) 230 fi])
233 231
234AC_ARG_ENABLE(xpm-background, 232AC_ARG_ENABLE(pixbuf,
235 [ --enable-xpm-background enable background pixmaps], 233 [ --enable-pixbuf enable integration with gdk-pixbuf for background images],
236 [if test x$enableval = xyes -o x$enableval = xno; then 234 [if test x$enableval = xyes -o x$enableval = xno; then
237 support_xpm=$enableval 235 support_pixbuf=$enableval
238 fi]) 236 fi])
239 237
240AC_ARG_ENABLE(afterimage, 238AC_ARG_ENABLE(startup-notification,
241 [ --enable-afterimage enable integration with libAfterImage for background images], 239 [ --enable-startup-notification enable freedesktop startup notification support],
242 [if test x$enableval = xyes -o x$enableval = xno; then 240 [if test x$enableval = xyes -o x$enableval = xno; then
243 support_afterimage=$enableval 241 support_startup_notification=$enableval
244 fi])
245
246AC_ARG_WITH(afterimage_config,
247 [ --with-afterimage-config=DIR use libAfterImage config script in DIR],
248 [if test "x$withval" != x; then
249 afterimage_config=$withval/afterimage-config
250 fi])
251
252AC_ARG_ENABLE(afterstep,
253 [ --enable-afterstep enable integration with AfterStep window manager],
254 [if test x$enableval = xyes -o x$enableval = xno; then
255 support_afterstep=$enableval
256 fi]) 242 fi])
257 243
258AC_ARG_ENABLE(transparency, 244AC_ARG_ENABLE(transparency,
259 [ --enable-transparency enable transparent backgrounds], 245 [ --enable-transparency enable transparent backgrounds],
260 [if test x$enableval = xyes -o x$enableval = xno; then 246 [if test x$enableval = xyes -o x$enableval = xno; then
261 support_inheritpixmap=$enableval 247 support_inheritpixmap=$enableval
262 fi]) 248 fi])
263 249
264AC_ARG_ENABLE(tinting,
265 [ --enable-tinting enable tinting of transparent bg],
266 [if test x$enableval = xyes -o x$enableval = xno; then
267 support_tinting=$enableval
268 fi])
269
270AC_ARG_ENABLE(fading, 250AC_ARG_ENABLE(fading,
271 [ --enable-fading enable colors fading when off focus], 251 [ --enable-fading enable colors fading when off focus],
272 [if test x$enableval = xyes -o x$enableval = xno; then 252 [if test x$enableval = xyes -o x$enableval = xno; then
273 support_fading=$enableval 253 support_fading=$enableval
274 fi]) 254 fi])
295 [ --enable-perl enable embedded perl interpreter], 275 [ --enable-perl enable embedded perl interpreter],
296 [if test x$enableval = xyes -o x$enableval = xno; then 276 [if test x$enableval = xyes -o x$enableval = xno; then
297 support_perl=$enableval 277 support_perl=$enableval
298 fi]) 278 fi])
299 279
300AC_ARG_ENABLE(plain-scroll,
301 [ --enable-plain-scroll enable plain style scrollbar],
302 [if test x$enableval = xyes -o x$enableval = xno; then
303 support_scroll_plain=$enableval
304 fi])
305
306AC_ARG_WITH(codesets, 280AC_ARG_WITH(codesets,
307 [ --with-codesets=NAME,.. compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)], 281 [ --with-codesets=CS,... compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)],
308 [codesets="$withval"]) 282 [codesets="$withval"])
309 283
310AC_ARG_ENABLE(xim, 284AC_ARG_ENABLE(xim,
311 [ --enable-xim XIM (X Input Method) protocol support], 285 [ --enable-xim XIM (X Input Method) protocol support],
312 [if test x$enableval = xyes -o x$enableval = xno; then 286 [if test x$enableval = xyes -o x$enableval = xno; then
323 [ --disable-delete-key disable handling of the delete key], 297 [ --disable-delete-key disable handling of the delete key],
324 [if test x$enableval = xno; then 298 [if test x$enableval = xno; then
325 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)
326 fi]) 300 fi])
327 301
302support_resources=yes
328AC_ARG_ENABLE(resources, 303AC_ARG_ENABLE(resources,
329 [ --disable-resources disable all resource checking], 304 [ --disable-resources disable all resource checking],
330 [if test x$enableval = xno; then 305 [if test x$enableval = xno; then
331 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read) 306 support_resources=no
332 fi]) 307 fi])
333 308
334AC_ARG_ENABLE(8bitctrls, 309AC_ARG_ENABLE(8bitctrls,
335 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)], 310 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)],
336 [if test x$enableval = xyes -o x$enableval = xno; then 311 [if test x$enableval = xyes -o x$enableval = xno; then
337 support_8bitctrls=$enableval 312 support_8bitctrls=$enableval
338 fi]) 313 fi])
339 314
340RESFALLBACK=Rxvt 315RESFALLBACK=Rxvt
341AC_ARG_ENABLE(fallback, 316AC_ARG_ENABLE(fallback,
342 [ --enable-fallback(=CLASS) fall back on CLASS resources in addition to URxvt ones (default: Rxvt)], 317 [ --enable-fallback@<:@=CLASS@:>@ fall back on CLASS resources in addition to URxvt ones (default: Rxvt)],
343 [ 318 [
344 test x$enableval = xyes && enableval=Rxvt 319 test x$enableval = xyes && enableval=Rxvt
345 test x$enableval = xno && enableval= 320 test x$enableval = xno && enableval=
346 RESFALLBACK="$enableval" 321 RESFALLBACK="$enableval"
347 ]) 322 ])
366AC_ARG_WITH(name, 341AC_ARG_WITH(name,
367 [ --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)],
368 [RXVTNAME="$withval"]) 343 [RXVTNAME="$withval"])
369AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name]) 344AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name])
370 345
371RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"`
372AC_SUBST(RXVTNAME) 346AC_SUBST(RXVTNAME)
373 347
374AC_ARG_ENABLE(swapscreen, 348AC_ARG_ENABLE(swapscreen,
375 [ --disable-swapscreen disable swap screen support], 349 [ --disable-swapscreen disable swap screen support],
376 [if test x$enableval = xno; then 350 [if test x$enableval = xno; then
406 [if test x$enableval = xyes -o x$enableval = xno; then 380 [if test x$enableval = xyes -o x$enableval = xno; then
407 support_mousewheel=$enableval 381 support_mousewheel=$enableval
408 fi]) 382 fi])
409 383
410AC_ARG_ENABLE(slipwheeling, 384AC_ARG_ENABLE(slipwheeling,
411 [ --enable-slipwheeling enable slip wheel scrolling (requires previous)], 385 [ --enable-slipwheeling enable slip wheel scrolling (requires --enable-mousewheel)],
412 [if test x$enableval = xyes -o x$enableval = xno; then 386 [if test x$enableval = xyes -o x$enableval = xno; then
413 support_mouseslipwheel=$enableval 387 support_mouseslipwheel=$enableval
414 fi]) 388 fi])
415 389
416AC_ARG_ENABLE(smart-resize, 390AC_ARG_ENABLE(smart-resize,
424 [if test x$enableval = xyes -o x$enableval = xno; then 398 [if test x$enableval = xyes -o x$enableval = xno; then
425 support_text_blink=$enableval 399 support_text_blink=$enableval
426 fi]) 400 fi])
427 401
428AC_ARG_ENABLE(pointer-blank, 402AC_ARG_ENABLE(pointer-blank,
429 [ --enable-pointer-blank enable pointer blank when typing or inactive pointer], 403 [ --enable-pointer-blank enable pointer blanking when typing or inactive],
430 [if test x$enableval = xyes -o x$enableval = xno; then 404 [if test x$enableval = xyes -o x$enableval = xno; then
431 support_pointer_blank=$enableval 405 support_pointer_blank=$enableval
432 fi]) 406 fi])
433 407
434AC_ARG_WITH(term, 408AC_ARG_WITH(term,
441 [ --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],
442 [if test x$withval != x; then 416 [if test x$withval != x; then
443 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"
444 fi]) 418 fi])
445 419
446dnl# -------------------------------------------------------------------------- 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
447 424
425 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read)
426fi
427
428dnl# --------------------------------------------------------------------------
429
430LIBEV_M4_AVOID_LIBRT=1
431m4_include([libev/libev.m4])
432
433dnl# --------------------------------------------------------------------------
434
448AC_PATH_PROG(TIC, tic) 435AC_PATH_PROG(TIC, tic, :)
449
450dnl# need a neat way to detect SVR4 or its features
451dnl# in src/command.c we use these functions:
452dnl# grantpt(), unlockpt(), ptsname(), which are defined in <sys/ptms.h>
453dnl# - but are these also defined for other systems?
454
455dnl# hack to find if this is SVR4 -- who knows?
456dnl## AC_MSG_CHECKING(for SVR4)
457dnl## AC_EGREP_CPP(yes,
458dnl## [#if defined (SVR4) || defined (_SVR4) || defined (__svr4__)
459dnl## yes;
460dnl## #endif
461dnl## ], [AC_MSG_RESULT(yes); AC_DEFINE(PERHAPS_SVR4)], AC_MSG_RESULT(perhaps not?))
462 436
463AC_PATH_XTRA 437AC_PATH_XTRA
464 438
465dnl# the only reasonable way to find libXpm is do-it-yourself 439AC_PATH_TOOL(PKG_CONFIG, pkg-config, no)
466dnl# only check if we want xpm-background
467 440
468LIBAFTERIMAGE_CFLAGS= 441image_lib=none
469AFTERIMAGE_LIBS=
470have_afterimage=
471 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
472if test x$support_afterimage = xyes; then 468if test x$support_frills = xyes; then
473 support_afterimage=no 469 RXVT_CHECK_MODULES([XMU], [xmu], [
474 470 X_LIBS="$XMU_LIBS $X_LIBS"
475 if test "x$afterimage_config" = "x" ; then 471 CPPFLAGS="$CPPFLAGS $XMU_CFLAGS"
476 AC_PATH_PROG(afterimage_config, afterimage-config, no) 472 AC_DEFINE(HAVE_XMU, 1, Define to enable Xmu support)
477 fi 473 ], [:])
478
479 AC_MSG_CHECKING(for libAfterImage)
480 if $afterimage_config --version >/dev/null 2>&1 ; then
481 LIBAFTERIMAGE_CFLAGS=`$afterimage_config --cflags`
482 AFTERIMAGE_LIBS=`$afterimage_config --libs`
483 if test "x$AFTERIMAGE_LIBS" != "x"; then
484 support_afterimage=yes
485 fi
486 fi
487
488 if test "x$support_afterimage" = "xyes"; then
489 AC_MSG_RESULT($AFTERIMAGE_LIBS)
490 else
491 AC_MSG_RESULT(no)
492 fi
493fi
494
495if test x$support_afterimage != xyes -a x$support_xpm = xyes ; then
496 VT_FIND_LIBXPM
497 if test x$no_xpm = xyes; then
498 support_xpm=needsmanualspecification
499 fi
500fi 474fi
501 475
502dnl# -------------------------------------------------------------------------- 476dnl# --------------------------------------------------------------------------
503dnl# CHECKING FOR HEADER FILES 477dnl# CHECKING FOR HEADER FILES
504dnl# -------------------------------------------------------------------------- 478dnl# --------------------------------------------------------------------------
505AC_HEADER_SYS_WAIT
506AC_CHECK_HEADERS( \ 479AC_CHECK_HEADERS( \
507 assert.h \
508 fcntl.h \
509 stdarg.h \
510 stdlib.h \
511 string.h \
512 termios.h \
513 unistd.h \
514 sys/byteorder.h \ 480 sys/byteorder.h \
515 sys/ioctl.h \ 481 sys/ioctl.h \
516 sys/select.h \
517 sys/sockio.h \ 482 sys/sockio.h \
518 sys/strredir.h \ 483 sys/strredir.h \
519 sys/time.h \
520 stdint.h \ 484 stdint.h \
521 wchar.h \ 485 wchar.h \
522 cwchar \
523 clocale \
524) 486)
525 487
526AC_HEADER_TIME
527
528dnl# check to allow both <termios.h> and <sys/ioctl.h>
529AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl,
530[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>
531#include <sys/ioctl.h>
532#ifdef HAVE_TERMIOS_H
533#include <termios.h>
534#endif]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])])
535
536dnl# ELF systems may want to store paths for dynamic libraries.
537dnl# Lets see if the compiler can accept "-Rpath" or "-Wl,-Rpath"
538dnl# At least one version of SunOS wants "-R path" but it's not checked yet.
539if test -n "$GCC"; then
540 LDARG="-Wl,"
541else
542 LDARG=""
543fi
544changequote(, )dnl
545R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-rpath '$LDARG'\1/g'
546changequote([, ])dnl
547
548ac_save_CFLAGS=$CFLAGS
549ac_save_LIBS=$LIBS
550CFLAGS="$CFLAGS $X_CFLAGS"
551LIBS=`echo "$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"`
552AC_CACHE_CHECK([for -rpath dynamic library path recording], rxvt_cv_rpath,
553[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h>
554#include <stdlib.h>
555main()
556{
557 exit(0);
558 (void) XOpenDisplay("foobar");
559}]])],[rxvt_cv_rpath=yes],[rxvt_cv_rpath=no],[dnl
560 AC_MSG_WARN(You may need to check the LIBS line)])])
561if test x$rxvt_cv_rpath != xyes; then
562 changequote(, )dnl
563 R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-R\1/g'
564 changequote([, ])dnl
565 LIBS=`echo "$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"`
566 AC_CACHE_CHECK([for -R dynamic library path recording], rxvt_cv_R,
567[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h>
568#include <stdlib.h>
569main()
570{
571 exit(0);
572 (void) XOpenDisplay("foobar");
573}]])],[rxvt_cv_R=yes],[rxvt_cv_R=no],[rxvt_cv_R=no])])
574 if test x$rxvt_cv_R != xyes; then
575 LIBS="$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
576 fi
577fi
578
579AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer,
580[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])])
581if test x$rxvt_cv_xpointer = xyes; then
582 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef)
583fi
584LIBS=$ac_save_LIBS
585CFLAGS=$ac_save_CFLAGS
586
587AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_xlib_illegal_access, 488AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access,
588[AC_COMPILE_IFELSE( 489[AC_COMPILE_IFELSE(
589 [AC_LANG_PROGRAM([ 490 [AC_LANG_PROGRAM([
590#define XLIB_ILLEGAL_ACCESS 491#define XLIB_ILLEGAL_ACCESS
591#include <X11/Xlib.h> 492#include <X11/Xlib.h>
592 ],[ 493 ],[
593 Display *dpy; 494 Display *dpy;
594 dpy->xdefaults = (char *)0; 495 dpy->xdefaults = (char *)0;
595 ])], 496 ])],
596 [rxvt_xlib_illegal_access=yes],[rxvt_xlib_illegal_access=no] 497 [rxvt_cv_xlib_illegal_access=yes],[rxvt_cv_xlib_illegal_access=no]
597)]) 498)])
598if test x$rxvt_xlib_illegal_access = xyes; then 499if test x$rxvt_cv_xlib_illegal_access = xyes; then
599 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)
600fi 501fi
601
602AC_C_CONST
603AC_C_INLINE
604
605dnl> AC_HEADER_STDC dnl# skip this test, Sun always fails anyhow.
606 502
607dnl# -------------------------------------------------------------------------- 503dnl# --------------------------------------------------------------------------
608dnl# CHECKING FOR MISSING TYPEDEFS 504dnl# CHECKING FOR MISSING TYPEDEFS
609dnl# -------------------------------------------------------------------------- 505dnl# --------------------------------------------------------------------------
610dnl# Missing typedefs and replacements 506dnl# Missing typedefs and replacements
611AC_TYPE_MODE_T 507AC_TYPE_MODE_T
612dnl> AC_CHECK_TYPE(umode_t, int)
613dnl> AC_CHECK_TYPE(off_t, long)
614AC_TYPE_PID_T 508AC_TYPE_PID_T
615AC_TYPE_UID_T 509AC_TYPE_UID_T
510AC_TYPE_INT16_T
511AC_TYPE_UINT16_T
512AC_TYPE_INT32_T
513AC_TYPE_UINT32_T
616 514
617AC_CHECK_SIZEOF(short, 2) 515dnl# --------------------------------------------------------------------------
618AC_CHECK_SIZEOF(int, 4) 516dnl# CHECKING FOR LIBRARY FUNCTIONS
619dnl AC_CHECK_SIZEOF(long, 4) 517dnl# --------------------------------------------------------------------------
620AC_CHECK_SIZEOF(long long, 8) 518AC_CHECK_FUNCS(unsetenv)
621AC_CHECK_SIZEOF(int *, 4)
622 519
623dnl# see usage below 520UTMP_CHECK
624AC_DEFUN([RXVT_CHECK_SIZE], 521
625 [AC_CACHE_CHECK([for $2], $1, 522dnl# --------------------------------------------------------------------------
626 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdint.h>]], [[$2 dummy;]])],[$1=yes],[dnl 523
627if test "$ac_cv_sizeof_char" -ge $3; then 524dnl# --------------------------------------------------------------------------
628 $1="$4 char" 525dnl# --------------------------------------------------------------------------
629else 526
630 if test "$ac_cv_sizeof_short" -ge $3; then 527dnl# this is a really hack test for some basic Xlocale stuff
631 $1="$4 short" 528save_LIBS=$LIBS
632 else 529save_CXXFLAGS=$CXXFLAGS
633 if test "$ac_cv_sizeof_int" -ge $3; then 530CXXFLAGS="$CXXFLAGS $X_CFLAGS"
634 $1="$4 int" 531LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
532if test x$support_xim = xyes; then
533 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
534 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
535 #include <X11/Xlib.h>
536 #include <stdlib.h>
537 int main() {
538 char *p;
539 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
540 exit (XSupportsLocale() ? 0 : 1);
635 else 541 else
636 if test "$ac_cv_sizeof_long" -ge $3; then 542 exit (1);
637 $1="$4 long" 543 }
638 else
639 if test "$ac_cv_sizeof_long_long" -ge $3; then
640 $1="$4 long long"
641 else
642 $1="$4 $5" # we _must_ have a (possibly wrong) default
643 fi
644 fi
645 fi
646 fi
647fi])])]
648if test x"$$1" != xyes; then
649 $6="typedef $$1 $2;"
650else
651 if test x"$4" = x; then
652 $6="/* typedef $5 $2; */"
653 else
654 $6="/* typedef $4 $5 $2; */"
655 fi
656fi dnl
657)
658dnl#
659dnl# Look for types the system may know about anyway.
660dnl#
661RXVT_CHECK_SIZE(rxvt_cv_int16_t, int16_t, 2, , short, rxvt_int16_typedef)
662AC_SUBST(rxvt_int16_typedef)
663RXVT_CHECK_SIZE(rxvt_cv_uint16_t, uint16_t, 2, unsigned, short, rxvt_uint16_typedef)
664AC_SUBST(rxvt_uint16_typedef)
665RXVT_CHECK_SIZE(rxvt_cv_int32_t, int32_t, 4, , int, rxvt_int32_typedef)
666AC_SUBST(rxvt_int32_typedef)
667RXVT_CHECK_SIZE(rxvt_cv_uint32_t, uint32_t, 4, unsigned, int, rxvt_uint32_typedef)
668AC_SUBST(rxvt_uint32_typedef)
669dnl RXVT_CHECK_SIZE(rxvt_cv_int64_t, int64_t, 8, , long long, rxvt_int64_typedef)
670dnl AC_SUBST(rxvt_int64_typedef)
671dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef)
672dnl AC_SUBST(rxvt_uint64_typedef)
673dnl#
674dnl# Now look for another we use
675dnl#
676if test "$ac_cv_sizeof_int_p" -eq 8; then
677 rxvt_intp_define="#define intp_t int64_t"
678 rxvt_u_intp_define="#define u_intp_t u_int64_t"
679else
680 if test "$ac_cv_sizeof_int_p" -eq 4; then
681 rxvt_intp_define="#define intp_t int32_t"
682 rxvt_u_intp_define="#define u_intp_t u_int32_t"
683 else
684 if test "$ac_cv_sizeof_int_p" -eq 2; then
685 rxvt_intp_define="#define intp_t int16_t"
686 rxvt_u_intp_define="#define u_intp_t u_int16_t"
687 else
688 rxvt_intp_define="#error set intp_t"
689 rxvt_u_intp_define="#error set u_intp_t"
690 fi
691 fi
692fi
693AC_SUBST(rxvt_intp_define)
694AC_SUBST(rxvt_u_intp_define)
695
696dnl# --------------------------------------------------------------------------
697dnl# CHECKING FOR LIBRARY FUNCTIONS
698dnl# --------------------------------------------------------------------------
699AC_TYPE_SIGNAL
700dnl> AC_FUNC_VPRINTF
701
702AC_CHECK_FUNCS( \
703 unsetenv \
704 setutent \
705 on_exit \
706)
707
708UTMP_CHECK
709
710dnl# --------------------------------------------------------------------------
711
712dnl# find ttys/ttytab
713AC_CACHE_CHECK(where ttys/ttytab is located, rxvt_cv_path_ttytab,
714[for ttys_file in dnl
715 /etc/ttys /etc/ttytab;
716do
717 if test -f "$ttys_file" ; then
718 rxvt_cv_path_ttytab=$ttys_file
719 break
720 fi
721done
722])
723if test x$rxvt_cv_path_ttytab != x; then
724 AC_DEFINE_UNQUOTED(TTYTAB_FILENAME, "$rxvt_cv_path_ttytab", Define location of ttys/ttytab)
725fi
726
727dnl# --------------------------------------------------------------------------
728dnl# --------------------------------------------------------------------------
729
730dnl# this is a really hack test for some basic Xlocale stuff
731ac_save_LIBS=$LIBS
732ac_save_CFLAGS=$CFLAGS
733CFLAGS="$CFLAGS $X_CFLAGS"
734LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
735if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then
736 LIBS=`echo $LIBS | sed "$R_TRANSLATE"`
737fi
738AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
739[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h>
740#include <stdlib.h>
741main() {
742char *p;
743if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
744exit (XSupportsLocale() ? 0 : 1);
745else
746exit (1);}]])],[dnl
747 rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl 544 ]])],[rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[:])])
748 :])])
749if test x$support_xim = xyes; then
750 if test x$rxvt_cv_func_xlocale = xyes; then 545 if test x$rxvt_cv_func_xlocale = xyes; then
751 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)
547 AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb,
548 [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
549 #include <X11/Xlib.h>
550
551 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
552
553 void f() {
554 XIMCallback cb;
555 cb.callback = im_destroy_cb;
556 }
557 ]])],rxvt_cv_broken_ximcb=yes,rxvt_cv_broken_ximcb=no)])
558
559 if test x$rxvt_cv_broken_ximcb = xyes; then
560 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
561 fi
752 fi 562 fi
753fi 563fi
754 564
755AC_CACHE_CHECK(for working X setlocale, rxvt_cv_func_xsetlocale, 565AC_CACHE_CHECK(for working X setlocale, rxvt_cv_func_xsetlocale,
756[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#define X_LOCALE 1 566[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#define X_LOCALE 1
757#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])])
758if test x$rxvt_cv_func_xsetlocale = xyes; then 568if test x$rxvt_cv_func_xsetlocale = xyes; then
759 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)
760fi 570fi
761LIBS=$ac_save_LIBS 571LIBS=$save_LIBS
762CFLAGS=$ac_save_CFLAGS 572CXXFLAGS=$save_CXXFLAGS
763
764AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale,
765[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <clocale>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])])
766if test x$rxvt_cv_func_setlocale = xyes; then
767 AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works)
768fi
769 573
770AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, 574AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo,
771[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])])
772if test x$rxvt_cv_func_nl_langinfo = xyes; then 576if test x$rxvt_cv_func_nl_langinfo = xyes; then
773 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)
774fi 578fi
775 579
776SCM_RIGHTS_CHECK 580SCM_RIGHTS_CHECK
777 581
778AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb,
779[AC_COMPILE_IFELSE([
780#include <X11/Xlib.h>
781
782void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
783
784void f() {
785 XIMCallback cb;
786 cb.callback = im_destroy_cb;
787}
788],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)])
789
790if test x$rxvt_broken_ximcb = xyes; then
791 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
792fi
793
794PTY_CHECK 582PTY_CHECK
795 583
796TTY_GROUP_CHECK 584TTY_GROUP_CHECK
797 585
798dnl# -------------------------------------------------------------------------- 586dnl# --------------------------------------------------------------------------
799dnl# now add and remove other stuff 587dnl# now add and remove other stuff
800dnl# -------------------------------------------------------------------------- 588dnl# --------------------------------------------------------------------------
801if test x$support_xft = xyes; then 589support_image=no
802 AC_PATH_PROG(PKG_CONFIG, pkg-config, no) 590if test x$support_inheritpixmap = xyes || test x$support_pixbuf = xyes; then
803 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then 591 support_image=yes
804 LIBS="$LIBS `$PKG_CONFIG xft --libs`" 592fi
805 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`" 593if test x$support_xft = xyes || test x$support_image = xyes; then
806 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 ], [
807 AC_PATH_PROG(XFT_CONFIG, xft-config, no) 613 AC_PATH_PROG(XFT_CONFIG, xft-config, no)
808 if test $XFT_CONFIG != no; then 614 if test $XFT_CONFIG != no; then
809 LIBS="$LIBS `$XFT_CONFIG --libs`" 615 X_LIBS="`$XFT_CONFIG --libs` $X_LIBS"
810 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`" 616 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`"
811 fi 617 fi
812 fi 618 ])
813 619
620 save_LIBS="$LIBS"
621 LIBS="$LIBS $X_LIBS"
814 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no]) 622 AC_CHECK_HEADERS(X11/Xft/Xft.h fontconfig/fontconfig.h,,[support_xft=no])
815 AC_CHECK_LIB(Xft,XftDrawString32,,[support_xft=no]) 623 AC_CHECK_FUNCS(XftDrawString32 FcPatternGet,,[support_xft=no])
624 LIBS="$save_LIBS"
816 625
817 if test x$support_xft = xyes; then 626 if test x$support_xft = xyes; then
818 AC_DEFINE(XFT, 1, Define to enable xft support) 627 AC_DEFINE(XFT, 1, Define to enable xft support)
819 fi 628 fi
820fi 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
821if test x$support_styles = xyes; then 652if test x$support_styles = xyes; then
822 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)
823fi 654fi
824if test x$support_iso14755 = xyes; then 655if test x$support_iso14755 = xyes; then
825 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)
828 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)
829fi 660fi
830if test x$support_fading = xyes; then 661if test x$support_fading = xyes; then
831 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)
832fi 663fi
833if test x$support_tinting = xyes; then
834 AC_DEFINE(TINTING, 1, Define if you want your background to be tinted)
835fi
836if test x$support_inheritpixmap = xyes; then
837 AC_DEFINE(TRANSPARENT, 1, Define if you want your background to use the parent window background)
838fi
839if test x$support_keepscrolling = xno; then 664if test x$support_keepscrolling = xno; then
840 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)
841fi 666fi
842if test x$support_selectionscrolling = xyes; then 667if test x$support_selectionscrolling = xyes; then
843 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)
849 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)
850fi 675fi
851if test x$support_mouseslipwheel = xyes; then 676if test x$support_mouseslipwheel = xyes; then
852 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)
853fi 678fi
854if test x$support_xpm = xyes -o x$support_afterimage = xyes ; then
855 AC_DEFINE(XPM_BACKGROUND, 1, Define if you want to have sexy-looking background pixmaps. Needs libXpm or libAfterImage)
856fi
857 679
858if test x$support_afterimage = xyes; then 680scrolltypes=plain
859 AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing) 681AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
860fi
861
862if test x$support_afterstep = xyes; then
863 AC_DEFINE(AFTERSTEP_INTEGRATION, 1, Define if you want to integrate with AfterStep window manager)
864fi
865 682
866if test x$support_scroll_rxvt = xyes; then 683if test x$support_scroll_rxvt = xyes; then
867 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars) 684 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars)
868 scrolltypes="rxvt" 685 scrolltypes="$scrolltypes rxvt"
869fi 686fi
870if test x$support_scroll_next = xyes; then 687if test x$support_scroll_next = xyes; then
871 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars) 688 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars)
872 scrolltypes="$scrolltypes next" 689 scrolltypes="$scrolltypes next"
873fi 690fi
874if test x$support_scroll_xterm = xyes; then 691if test x$support_scroll_xterm = xyes; then
875 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars) 692 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars)
876 scrolltypes="$scrolltypes xterm" 693 scrolltypes="$scrolltypes xterm"
877fi 694fi
878if test x$support_scroll_plain = xyes; then
879 AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
880 scrolltypes="$scrolltypes plain"
881fi
882if test x$support_pointer_blank = xyes; then 695if test x$support_pointer_blank = xyes; then
883 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)
884fi 697fi
885if test x$support_text_blink = xyes; then 698if test x$support_text_blink = xyes; then
886 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)
887fi 700fi
888if test x$support_unicode3 = xyes; then 701if test x$support_unicode3 = xyes; then
906 esac 719 esac
907done 720done
908 721
909IF_PERL=\# 722IF_PERL=\#
910if test x$support_perl = xyes; then 723if test x$support_perl = xyes; then
911 AC_PATH_PROG(PERL, perl5) 724 AC_PATH_PROG(PERL, perl5, perl)
912 AC_PATH_PROG(PERL, perl)
913 725
914 AC_MSG_CHECKING(for $PERL suitability) 726 AC_MSG_CHECKING(for $PERL suitability)
915 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
916 728
917 save_CXXFLAGS="$CXXFLAGS" 729 save_CXXFLAGS="$CXXFLAGS"
918 save_LIBS="$LIBS" 730 save_LIBS="$LIBS"
919 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`" 731 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`"
920 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`" 732 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`"
921 AC_TRY_LINK([ 733 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
922#include <EXTERN.h> 734#include <EXTERN.h>
923#include <perl.h> 735#include <perl.h>
924#include <XSUB.h> 736#include <XSUB.h>
925],[ 737]], [[
926 PerlInterpreter *perl = perl_alloc (); 738 PerlInterpreter *perl = perl_alloc ();
927],[rxvt_perl_link=yes],[rxvt_perl_link=no]) 739]])],[rxvt_perl_link=yes],[rxvt_perl_link=no])
928 CXXFLAGS="$save_CXXFLAGS" 740 CXXFLAGS="$save_CXXFLAGS"
929 LIBS="$save_LIBS" 741 LIBS="$save_LIBS"
930 742
931 if test x$rxvt_perl_link = xyes; then 743 if test x$rxvt_perl_link = xyes; then
932 AC_MSG_RESULT(ok) 744 AC_MSG_RESULT(ok)
948AC_SUBST(PERLPRIVLIBEXP) 760AC_SUBST(PERLPRIVLIBEXP)
949AC_SUBST(PERL) 761AC_SUBST(PERL)
950AC_SUBST(IF_PERL) 762AC_SUBST(IF_PERL)
951AC_SUBST(PERL_O) 763AC_SUBST(PERL_O)
952 764
953if test x$support_perl = xyes; then
954 support_frills=yes
955fi
956
957AC_SUBST(CFLAGS)
958AC_SUBST(CPPFLAGS)
959AC_SUBST(LDFLAGS)
960AC_SUBST(X_CFLAGS)
961
962dnl# Attack the libs
963if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then
964 LIBS=`echo $LIBS | sed "$R_TRANSLATE"`
965 X_LIBS=`echo $X_LIBS | sed "$R_TRANSLATE"`
966 X_EXTRA_LIBS=`echo $X_EXTRA_LIBS | sed "$R_TRANSLATE"`
967 XPM_LIBS=`echo $XPM_LIBS | sed "$R_TRANSLATE"`
968fi
969AC_SUBST(LIBS)
970AC_SUBST(X_LIBS)
971AC_SUBST(X_EXTRA_LIBS)
972
973AC_SUBST(LIBAFTERIMAGE_CFLAGS)
974AC_SUBST(AFTERIMAGE_LIBS)
975
976AC_ARG_PROGRAM
977
978dnl# test for "sun" or "__sun__" before include sys_ioctl
979
980dnl# revert HAVE_BLAH_H into a "#include <blah.h>"
981AC_DEFUN([RXVT_DEFINE_TO_INCLUDE], dnl
982[if test "$$3" = "$4" -o "$$5" = "$6"; then
983 $1="#include <$2>"
984else
985 $1="/* #include <$2> */"
986fi dnl
987AC_SUBST($1)])
988
989RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch)
990RXVT_DEFINE_TO_INCLUDE(include_stdarg_h, cstdarg, ac_cv_header_stdarg_h, yes, notset, dontmatch)
991RXVT_DEFINE_TO_INCLUDE(include_stdlib_h, cstdlib, ac_cv_header_stdlib_h, yes, notset, dontmatch)
992RXVT_DEFINE_TO_INCLUDE(include_unistd_h, unistd.h, ac_cv_header_unistd_h, yes, notset, dontmatch)
993RXVT_DEFINE_TO_INCLUDE(include_string_h, cstring, ac_cv_header_string_h, yes, notset, dontmatch)
994RXVT_DEFINE_TO_INCLUDE(include_fcntl_h, fcntl.h, ac_cv_header_fcntl_h, yes, notset, dontmatch)
995RXVT_DEFINE_TO_INCLUDE(include_util_h, util.h, ac_cv_header_util_h, yes, notset, dontmatch)
996RXVT_DEFINE_TO_INCLUDE(include_assert_h, assert.h, ac_cv_header_assert_h, yes, notset, dontmatch)
997RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch)
998RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch)
999RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch)
1000RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch)
1001RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes)
1002 765
1003AC_CONFIG_FILES([Makefile \ 766AC_CONFIG_FILES([Makefile \
1004doc/Makefile \ 767doc/Makefile \
1005src/Makefile \ 768src/Makefile \
1006src/rxvtlib.h \
1007]) 769])
1008AC_OUTPUT 770AC_OUTPUT
1009 771
1010echo "Configuration: 772echo "Configuration:
1011 773
1014 Install path: ${prefix}/bin 776 Install path: ${prefix}/bin
1015 Compiler: $CXX 777 Compiler: $CXX
1016 Compiler flags: $CXXFLAGS 778 Compiler flags: $CXXFLAGS
1017 Linker: $LINKER" 779 Linker: $LINKER"
1018 780
1019if test x$support_xpm = xyes; then
1020 echo " Xpm library: $XPM_LIBS"
1021fi
1022
1023if test x$support_afterimage = xyes; then
1024 echo " AfterImage support: yes"
1025fi
1026
1027if test x$support_afterstep = xyes; then
1028 echo " AfterStep integration: yes"
1029fi
1030
1031if test x$term != x; then 781if test x$term != x; then
1032 echo " set TERM to: $term" 782 echo " set TERM to: $term"
1033fi 783fi
1034if test x$terminfo != x; then 784if test x$terminfo != x; then
1035 echo " set TERMINFO to: $terminfo" 785 echo " set TERMINFO to: $terminfo"
1039if test x$RESFALLBACK != x; then 789if test x$RESFALLBACK != x; then
1040 echo " resource class fallback: $RESFALLBACK" 790 echo " resource class fallback: $RESFALLBACK"
1041fi 791fi
1042echo 792echo
1043echo " embedded perl: $support_perl" 793echo " embedded perl: $support_perl"
794echo " image library: $image_lib"
1044echo 795echo
1045if test x$support_xpm = xneedsmanualspecification; then
1046 echo ".----------------------------------------------------------------."
1047 echo ". WARNING: --enable-xpm-background was specified however the ."
1048 echo ". XPM includes files and libraries could not be found. ."
1049 echo ". XPM backgrounds are now being DISABLED! If you want ."
1050 echo ". to use them you should rerun configure with the ."
1051 echo ". appropriate --with-xpm-includes=/path/to/xpm/includes ."
1052 echo ". and --with-xpm-library=/path/to/xpm/library lines. ."
1053 echo ".----------------------------------------------------------------."
1054fi
1055if 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
1056 echo ".----------------------------------------------------------------." 797 echo ".----------------------------------------------------------------."
1057 echo ". WARNING: --enable-xim was specified however the locale support ." 798 echo ". WARNING: --enable-xim was specified however the locale support ."
1058 echo ". functions could not be found. ." 799 echo ". functions could not be found. ."
1059 echo ". XIM is now being DISABLED! ." 800 echo ". XIM is now being DISABLED! ."

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines