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

Comparing rxvt-unicode/autoconf/configure.in (file contents):
Revision 1.23 by pcg, Sun Mar 14 23:14:39 2004 UTC vs.
Revision 1.72 by root, Mon Jan 16 14:48:39 2006 UTC

1dnl# -*- sh -*- 1dnl# -*- sh -*-
2dnl# 2dnl#
3dnl# Process this file with autoconf to produce a configure script. 3dnl# Process this file with autoconf to produce a configure script.
4dnl# 4dnl#
5AC_INIT(src/feature.h) 5orig_CXXFLAGS="$CXXFLAGS"
6
7AC_INIT
8AC_CONFIG_SRCDIR([src/feature.h])
6AC_CONFIG_AUX_DIR(autoconf) 9AC_CONFIG_AUX_DIR(autoconf)
7AC_CONFIG_HEADER(config.h:autoconf/config.h.in) 10AC_CONFIG_HEADER(config.h:autoconf/config.h.in)
11
12AC_CANONICAL_HOST
8 13
9dnl RXVT version 14dnl RXVT version
10changequote(, )dnl 15changequote(, )dnl
11VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 16VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
12DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 17DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
13LSMDATE=`sed -n -e 's/^.*[ \t]LSMDATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
14LIBVERSION=`sed -n -e 's/^.*[ \t]LIBVERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` 18dnl LIBVERSION=`sed -n -e 's/^.*[ \t]LIBVERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
15changequote([, ])dnl 19changequote([, ])dnl
16AC_SUBST(VERSION)dnl 20AC_SUBST(VERSION)dnl
17AC_SUBST(DATE)dnl 21AC_SUBST(DATE)dnl
18AC_SUBST(LSMDATE)dnl 22AC_SUBST(LSMDATE)dnl
19AC_SUBST(LIBVERSION)dnl 23AC_SUBST(LIBVERSION)dnl
30AC_PROG_INSTALL 34AC_PROG_INSTALL
31AC_PROG_AWK 35AC_PROG_AWK
32 36
33AC_LANG(C) 37AC_LANG(C)
34 38
39dnl# --------------------------------------------------------------------------
40dnl# Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
41dnl#
42if test -z "$orig_CXXFLAGS"; then
43 CXXFLAGS='-O'
44 if test x$GCC = xyes && test "x$GXX" = xyes; then
45 CXXFLAGS="-g -O3"
46 fi
47 CFLAGS="$CXXFLAGS"
48fi
49
35LINKER="$CXX" 50LINKER="$CXX"
36if test x$GCC = xyes && test x$GXX = xyes; then 51if test x$GCC = xyes && test x$GXX = xyes; then
37 AC_CHECK_LIB(supc++, main, [ 52 AC_CHECK_LIB(supc++, main, [
38 LINKER="$CC" 53 LINKER="$CC"
39 LIBS="$LIBS -lsupc++" 54 LIBS="$LIBS -lsupc++"
40 ]) 55 ])
41fi 56fi
42AC_SUBST(LINKER,[$LINKER]) 57AC_SUBST(LINKER,[$LINKER])
43 58
44CPPFLAGS="-D_GNU_SOURCE -D_XOPEN_SOURCE" 59AC_DEFINE(_GNU_SOURCE, 1, Use all glibc features.)
45 60
61case $host in
62 *-*-solaris* )
63 AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
64 AC_DEFINE(_XOPEN_SOURCE, 2, Needed to get declarations for msg_control and msg_controllen on Solaris)
65 AC_DEFINE(__EXTENSIONS__, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
66 ;;
67esac
68
46if test x$GXX = xyes; then 69dnl if test x$GXX = xyes; then
47 CXXFLAGS="$CXXFLAGS -fno-exceptions" 70dnl CXXFLAGS="$CXXFLAGS" dnl I once had -fno-exceptions, but I am using them now...
48fi 71dnl fi
49 72
50AC_LANG(C++) 73AC_LANG(C++)
51 74
52dnl# system hacks 75dnl# system hacks
53AC_AIX 76AC_AIX
54AC_ISC_POSIX 77AC_ISC_POSIX
55 78
79dnl# FreeBSD needs to link libxpg4
80AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])])
81
82dnl# solaris needs to link libnsl and socket
83AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])])
84AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])])
85
86dnl# more solaris
87AC_CHECK_FUNC(sched_yield, [], [AC_CHECK_LIB(rt, sched_yield, [LIBS="$LIBS -lrt"])])
88
89dnl# sched_yield to improve terminal efficiency
90AC_MSG_CHECKING(for sched_yield support)
91AC_TRY_LINK([#include <sched.h>],[sched_yield ()],
92 [AC_MSG_RESULT(yes)
93 AC_DEFINE(HAVE_SCHED_YIELD, 1, Define if you have sched-h and sched_yield)],
94 [AC_MSG_RESULT(no)])
95
56AC_ENABLE_SHARED(no)dnl# libtool 96dnl AC_ENABLE_SHARED(no)dnl# libtool
57AC_ENABLE_STATIC(yes)dnl# libtool 97dnl AC_ENABLE_STATIC(yes)dnl# libtool
58AC_PROG_LIBTOOL()dnl# libtool 98dnl AC_PROG_LIBTOOL()dnl# libtool
59 99
60MALLOC_TYPE=S 100MALLOC_TYPE=S
61support_addstrings=no 101
62support_frills=no 102support_frills=yes
63support_linespace=no
64support_inheritpixmap=no 103support_inheritpixmap=yes
104support_tinting=yes
105support_fading=yes
65support_keepscrolling=no 106support_keepscrolling=yes
66support_selectionscrolling=no 107support_selectionscrolling=yes
67support_menubar=no
68support_mousewheel=no 108support_mousewheel=yes
69support_mouseslipwheel=no 109support_mouseslipwheel=yes
70support_utmp=no 110support_utmp=yes
71support_wtmp=no 111support_wtmp=yes
72support_lastlog=no 112support_lastlog=yes
73support_cursor_blink=no
74support_text_blink=no 113support_text_blink=yes
75support_pointer_blank=no 114support_pointer_blank=yes
76support_scroll_rxvt=no 115support_scroll_rxvt=yes
77support_scroll_next=no 116support_scroll_next=yes
78support_scroll_xterm=no 117support_scroll_xterm=yes
79support_scroll_plain=no 118support_scroll_plain=yes
80support_xim=no 119support_xim=yes
81support_xpm=no 120support_xpm=yes
82support_xft=no 121support_xft=yes
83support_unicode3=no 122support_unicode3=no
84support_combining=no 123support_combining=yes
124support_8bitctrls=no
125support_iso14755=yes
126support_styles=yes
127support_perl=yes
85codesets= 128codesets=all
86 129
87dnl# -------------------------------------------------------------------------- 130dnl# --------------------------------------------------------------------------
88dnl# CHECKING COMMAND LINE OPTIONS 131dnl# CHECKING COMMAND LINE OPTIONS
89dnl# -------------------------------------------------------------------------- 132dnl# --------------------------------------------------------------------------
90 133
96 139
97AC_ARG_ENABLE(everything, 140AC_ARG_ENABLE(everything,
98 [ --enable-everything enable standard non-multichoice features 141 [ --enable-everything enable standard non-multichoice features
99 NOTE: this option is order dependent 142 NOTE: this option is order dependent
100 NOTE: automatically enabled with --enable-shared], 143 NOTE: automatically enabled with --enable-shared],
144 [
145 if test x$enableval = xno; then
146 support_24bit=no
147 support_frills=no
148 support_inheritpixmap=no
149 support_tinting=no
150 support_fading=no
151 support_keepscrolling=no
152 support_selectionscrolling=no
153 support_lastlog=no
154 support_mousewheel=no
155 support_mouseslipwheel=no
156 support_text_blink=no
157 support_pointer_blank=no
158 support_scroll_rxvt=no
159 support_scroll_next=no
160 support_scroll_xterm=no
161 support_scroll_plain=no
162 support_utmp=no
163 support_wtmp=no
164 support_xim=no
165 support_xpm=no
166 support_xft=no
167 support_unicode3=no
168 support_combining=no
169 support_8bitctrls=no
170 support_iso14755=no
171 support_styles=no
172 support_perl=no
173 codesets=
174 fi
101 [if test x$enableval = xyes; then 175 if test x$enableval = xyes; then
102 support_24bit=yes 176 support_24bit=yes
103 support_frills=yes 177 support_frills=yes
104 support_linespace=yes
105 support_inheritpixmap=yes 178 support_inheritpixmap=yes
179 support_tinting=yes
180 support_fading=yes
106 support_keepscrolling=yes 181 support_keepscrolling=yes
107 support_selectionscrolling=yes 182 support_selectionscrolling=yes
108 support_lastlog=yes 183 support_lastlog=yes
109 support_menubar=yes
110 support_mousewheel=yes 184 support_mousewheel=yes
111 support_mouseslipwheel=yes 185 support_mouseslipwheel=yes
112 support_cursor_blink=yes
113 support_text_blink=yes 186 support_text_blink=yes
114 support_pointer_blank=yes 187 support_pointer_blank=yes
115 support_scroll_rxvt=yes 188 support_scroll_rxvt=yes
116 support_scroll_next=yes 189 support_scroll_next=yes
117 support_scroll_xterm=yes 190 support_scroll_xterm=yes
118 support_scroll_plain=yes 191 support_scroll_plain=yes
119 support_utmp=yes 192 support_utmp=yes
120 support_wtmp=yes 193 support_wtmp=yes
121 support_xim=yes 194 support_xim=yes
122 support_xpm=yes 195 support_xpm=yes
123 support_xft=yes 196 support_xft=yes
124 support_unicode3=yes 197 support_unicode3=yes
125 support_combining=yes 198 support_combining=yes
199 #support_8bitctrls=yes
200 support_iso14755=yes
201 support_styles=yes
202 support_perl=yes
126 codesets=all 203 codesets=all
204 fi
127 fi]) 205 ])
128 206
129AC_ARG_ENABLE(unicode3, 207AC_ARG_ENABLE(unicode3,
130 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters], 208 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters],
131 [if test x$enableval = xyes -o x$enableval = xno; then 209 [if test x$enableval = xyes -o x$enableval = xno; then
132 support_unicode3=yes 210 support_unicode3=$enableval
133 fi]) 211 fi])
134 212
135AC_ARG_ENABLE(combining, 213AC_ARG_ENABLE(combining,
136 [ --enable-combining enable composition of base and combining characters], 214 [ --enable-combining enable composition of base and combining characters],
137 [if test x$enableval = xyes -o x$enableval = xno; then 215 [if test x$enableval = xyes -o x$enableval = xno; then
138 support_combining=yes 216 support_combining=$enableval
139 fi]) 217 fi])
140 218
141AC_ARG_ENABLE(xft, 219AC_ARG_ENABLE(xft,
142 [ --enable-xft enable xft support on systems that have it], 220 [ --enable-xft enable xft support on systems that have it],
143 [if test x$enableval = xyes -o x$enableval = xno; then 221 [if test x$enableval = xyes -o x$enableval = xno; then
144 support_xft=yes 222 support_xft=$enableval
223 fi])
224
225AC_ARG_ENABLE(font-styles,
226 [ --enable-font-styles enable bold and italic support],
227 [if test x$enableval = xyes -o x$enableval = xno; then
228 support_styles=$enableval
145 fi]) 229 fi])
146 230
147AC_ARG_ENABLE(utmp, 231AC_ARG_ENABLE(utmp,
148 [ --enable-utmp enable utmp (utmpx) support], 232 [ --enable-utmp enable utmp (utmpx) support],
149 [if test x$enableval = xyes -o x$enableval = xno; then 233 [if test x$enableval = xyes -o x$enableval = xno; then
172 [ --enable-transparency enable transparent backgrounds], 256 [ --enable-transparency enable transparent backgrounds],
173 [if test x$enableval = xyes -o x$enableval = xno; then 257 [if test x$enableval = xyes -o x$enableval = xno; then
174 support_inheritpixmap=$enableval 258 support_inheritpixmap=$enableval
175 fi]) 259 fi])
176 260
177AC_ARG_ENABLE(menubar, 261AC_ARG_ENABLE(tinting,
178 [ --enable-menubar enable menubar], 262 [ --enable-tinting enable tinting of transparent bg],
179 [if test x$enableval = xyes -o x$enableval = xno; then 263 [if test x$enableval = xyes -o x$enableval = xno; then
264 support_tinting=$enableval
265 fi])
266
267AC_ARG_ENABLE(fading,
268 [ --enable-fading enable colors fading when off focus],
269 [if test x$enableval = xyes -o x$enableval = xno; then
180 support_menubar=$enableval 270 support_fading=$enableval
181 fi]) 271 fi])
182 272
183AC_ARG_ENABLE(rxvt-scroll, 273AC_ARG_ENABLE(rxvt-scroll,
184 [ --enable-rxvt-scroll enable rxvt style scrollbar], 274 [ --enable-rxvt-scroll enable rxvt style scrollbar],
185 [if test x$enableval = xyes -o x$enableval = xno; then 275 [if test x$enableval = xyes -o x$enableval = xno; then
194 284
195AC_ARG_ENABLE(xterm-scroll, 285AC_ARG_ENABLE(xterm-scroll,
196 [ --enable-xterm-scroll enable Xterm style scrollbar], 286 [ --enable-xterm-scroll enable Xterm style scrollbar],
197 [if test x$enableval = xyes -o x$enableval = xno; then 287 [if test x$enableval = xyes -o x$enableval = xno; then
198 support_scroll_xterm=$enableval 288 support_scroll_xterm=$enableval
289 fi])
290
291AC_ARG_ENABLE(perl,
292 [ --enable-perl enable embedded perl interpreter],
293 [if test x$enableval = xyes -o x$enableval = xno; then
294 support_perl=$enableval
199 fi]) 295 fi])
200 296
201AC_ARG_ENABLE(plain-scroll, 297AC_ARG_ENABLE(plain-scroll,
202 [ --enable-plain-scroll enable plain style scrollbar], 298 [ --enable-plain-scroll enable plain style scrollbar],
203 [if test x$enableval = xyes -o x$enableval = xno; then 299 [if test x$enableval = xyes -o x$enableval = xno; then
209 [if test x$enableval = xyes; then 305 [if test x$enableval = xyes; then
210 AC_DEFINE(HALFSHADOW, 1, Define if you want the depth of scrollbars and menus to be less) 306 AC_DEFINE(HALFSHADOW, 1, Define if you want the depth of scrollbars and menus to be less)
211 fi]) 307 fi])
212 308
213AC_ARG_WITH(codesets, 309AC_ARG_WITH(codesets,
214 [ --with-codesets=NAME,.. compile in additional codesets (jp,jp_ext,kr,cn,cn_ext,all)], 310 [ --with-codesets=NAME,.. compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)],
215 [codesets="$withval"]) 311 [codesets="$withval"])
216 312
217AC_ARG_ENABLE(xim, 313AC_ARG_ENABLE(xim,
218 [ --enable-xim XIM (X Input Method) protocol support], 314 [ --enable-xim XIM (X Input Method) protocol support],
219 [if test x$enableval = xyes -o x$enableval = xno; then 315 [if test x$enableval = xyes -o x$enableval = xno; then
242 [ --disable-resources disable all resource checking], 338 [ --disable-resources disable all resource checking],
243 [if test x$enableval = xno; then 339 [if test x$enableval = xno; then
244 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read) 340 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read)
245 fi]) 341 fi])
246 342
247AC_ARG_ENABLE(xgetdefault, 343AC_ARG_ENABLE(8bitctrls,
248 [ --enable-xgetdefault enable resources via X instead of our small version], 344 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)],
249 [if test x$enableval = xyes; then 345 [if test x$enableval = xyes -o x$enableval = xno; then
250 AC_DEFINE(USE_XGETDEFAULT, 1, Define if you want to use XGetDefault instead of our internal version) 346 support_8bitctrls=$enableval
251 fi]) 347 fi])
252 348
253RESFALLBACK=Rxvt 349RESFALLBACK=Rxvt
254AC_ARG_ENABLE(fallback, 350AC_ARG_ENABLE(fallback,
255 [ --enable-fallback(=CLASS) fall back on CLASS resources in addition to URxvt ones (default: Rxvt)], 351 [ --enable-fallback(=CLASS) fall back on CLASS resources in addition to URxvt ones (default: Rxvt)],
277 373
278RXVTNAME=urxvt 374RXVTNAME=urxvt
279AC_ARG_WITH(name, 375AC_ARG_WITH(name,
280 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)], 376 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)],
281 [RXVTNAME="$withval"]) 377 [RXVTNAME="$withval"])
378AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name])
282 379
283RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"` 380RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"`
284AC_SUBST(RXVTNAME) 381AC_SUBST(RXVTNAME)
285
286AC_ARG_ENABLE(strings,
287 [ --enable-strings enable some replacement system functions],
288 [if test x$enableval = xyes -o x$enableval = xno; then
289 support_addstrings=$enableval
290 fi])
291 382
292AC_ARG_ENABLE(swapscreen, 383AC_ARG_ENABLE(swapscreen,
293 [ --disable-swapscreen disable swap screen support], 384 [ --disable-swapscreen disable swap screen support],
294 [if test x$enableval = xno; then 385 [if test x$enableval = xno; then
295 AC_DEFINE(NO_SECONDARY_SCREEN, 1, Disable the secondary screen. Many programs use the secondary screen as their workplace) 386 AC_DEFINE(NO_SECONDARY_SCREEN, 1, Disable the secondary screen. Many programs use the secondary screen as their workplace)
296 fi]) 387 fi])
297 388
389AC_ARG_ENABLE(iso14755,
390 [ --enable-iso14755 enable support for extended ISO 14755 modes],
391 [if test x$enableval = xyes -o x$enableval = xno; then
392 support_iso14755=$enableval
393 fi])
394
298AC_ARG_ENABLE(frills, 395AC_ARG_ENABLE(frills,
299 [ --enable-frills enable support for rarely used features], 396 [ --enable-frills enable support for rarely used features],
300 [if test x$enableval = xyes -o x$enableval = xno; then 397 [if test x$enableval = xyes -o x$enableval = xno; then
301 support_frills=$enableval 398 support_frills=$enableval
302 fi])
303
304AC_ARG_ENABLE(linespace,
305 [ --enable-linespace enable support for linespace],
306 [if test x$enableval = xyes -o x$enableval = xno; then
307 support_linespace=$enableval
308 fi]) 399 fi])
309 400
310AC_ARG_ENABLE(24bit, 401AC_ARG_ENABLE(24bit,
311 [ --enable-24bit enable support for using 24bit visuals if available], 402 [ --enable-24bit enable support for using 24bit visuals if available],
312 [if test x$enableval = xyes -o x$enableval = xno; then 403 [if test x$enableval = xyes -o x$enableval = xno; then
360 [ --enable-smart-resize enable smart growth/shrink behaviour], 451 [ --enable-smart-resize enable smart growth/shrink behaviour],
361 [if test x$enableval = xyes; then 452 [if test x$enableval = xyes; then
362 AC_DEFINE(SMART_RESIZE, 1, Define to use "smart" resize behavior) 453 AC_DEFINE(SMART_RESIZE, 1, Define to use "smart" resize behavior)
363 fi]) 454 fi])
364 455
365AC_ARG_ENABLE(256-color,
366 [ --enable-256-color enable 256-color support],
367 [if test x$enableval = xyes; then
368 AC_DEFINE(TTY_256COLOR, 1, Define if you want 256 colour support)
369 fi])
370
371AC_ARG_ENABLE(cursor-blink,
372 [ --enable-cursor-blink enable blinking cursor],
373 [if test x$enableval = xyes -o x$enableval = xno; then
374 support_cursor_blink=$enableval
375 fi])
376
377AC_ARG_ENABLE(text-blink, 456AC_ARG_ENABLE(text-blink,
378 [ --enable-text-blink enable blinking text], 457 [ --enable-text-blink enable blinking text],
379 [if test x$enableval = xyes -o x$enableval = xno; then 458 [if test x$enableval = xyes -o x$enableval = xno; then
380 support_text_blink=$enableval 459 support_text_blink=$enableval
381 fi]) 460 fi])
399 fi]) 478 fi])
400 479
401dnl# -------------------------------------------------------------------------- 480dnl# --------------------------------------------------------------------------
402 481
403AC_DEFINE(PROTOTYPES, 1, Define if you need function prototypes) 482AC_DEFINE(PROTOTYPES, 1, Define if you need function prototypes)
404
405dnl# --------------------------------------------------------------------------
406dnl# Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure'
407dnl#
408if test -z "$CFLAGS"; then
409 if test -z "$CCOPTS"; then
410 CCOPTS='-O'
411dnl> if test "x$GCC" = xyes; then
412dnl> if test x$system = xLinux; then
413dnl> CCOPTS="$CCOPTS "'-O2 -fno-strength-reduce'
414dnl> fi
415dnl> fi
416 fi
417 CFLAGS="$CCOPTS"
418fi
419 483
420AC_PATH_PROG(MV, mv, mv) 484AC_PATH_PROG(MV, mv, mv)
421AC_PATH_PROG(RM, rm, rm) 485AC_PATH_PROG(RM, rm, rm)
422AC_PATH_PROG(CP, cp, cp) 486AC_PATH_PROG(CP, cp, cp)
423AC_PATH_PROG(LN, ln, ln) 487AC_PATH_PROG(LN, ln, ln)
424AC_PATH_PROG(SED, sed, sed) 488AC_PATH_PROG(SED, sed, sed)
425AC_PATH_PROG(ECHO, echo, echo) 489AC_PATH_PROG(ECHO, echo, echo)
426AC_PATH_PROG(CMP, cmp, cmp) 490AC_PATH_PROG(CMP, cmp, cmp)
427AC_PATH_PROG(TBL, tbl) 491AC_PATH_PROG(TBL, tbl)
492AC_PATH_PROG(TIC, tic)
428 493
429dnl# need a neat way to detect SVR4 or its features 494dnl# need a neat way to detect SVR4 or its features
430dnl# in src/command.c we use these functions: 495dnl# in src/command.c we use these functions:
431dnl# grantpt(), unlockpt(), ptsname(), which are defined in <sys/ptms.h> 496dnl# grantpt(), unlockpt(), ptsname(), which are defined in <sys/ptms.h>
432dnl# - but are these also defined for other systems? 497dnl# - but are these also defined for other systems?
469 sys/byteorder.h \ 534 sys/byteorder.h \
470 sys/ioctl.h \ 535 sys/ioctl.h \
471 sys/select.h \ 536 sys/select.h \
472 sys/sockio.h \ 537 sys/sockio.h \
473 sys/strredir.h \ 538 sys/strredir.h \
539 sys/stropts.h \
474 sys/time.h \ 540 sys/time.h \
475 utmp.h \ 541 utmp.h \
476 utmpx.h \ 542 utmpx.h \
477 stdint.h \ 543 stdint.h \
544 pty.h \
545 util.h \
546 libutil.h \
547 wchar.h \
548 cwchar \
549 clocale \
478) 550)
479 551
480AC_HEADER_TIME 552AC_HEADER_TIME
481 553
482dnl# check to allow both <termios.h> and <sys/ioctl.h> 554dnl# check to allow both <termios.h> and <sys/ioctl.h>
483AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl, 555AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl,
484[AC_TRY_COMPILE([#include <stdio.h> 556[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>
485#include <sys/ioctl.h> 557#include <sys/ioctl.h>
486#ifdef HAVE_TERMIOS_H 558#ifdef HAVE_TERMIOS_H
487#include <termios.h> 559#include <termios.h>
488#endif], [int a = ECHO;], rxvt_cv_header_sysioctl=yes, rxvt_cv_header_sysioctl=no)]) 560#endif]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])])
489 561
490dnl# ELF systems may want to store paths for dynamic libraries. 562dnl# ELF systems may want to store paths for dynamic libraries.
491dnl# Lets see if the compiler can accept "-Rpath" or "-Wl,-Rpath" 563dnl# Lets see if the compiler can accept "-Rpath" or "-Wl,-Rpath"
492dnl# At least one version of SunOS wants "-R path" but it's not checked yet. 564dnl# At least one version of SunOS wants "-R path" but it's not checked yet.
493if test -n "$GCC"; then 565if test -n "$GCC"; then
502ac_save_CFLAGS=$CFLAGS 574ac_save_CFLAGS=$CFLAGS
503ac_save_LIBS=$LIBS 575ac_save_LIBS=$LIBS
504CFLAGS="$CFLAGS $X_CFLAGS" 576CFLAGS="$CFLAGS $X_CFLAGS"
505LIBS=`echo "$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"` 577LIBS=`echo "$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"`
506AC_CACHE_CHECK([for -rpath dynamic library path recording], rxvt_cv_rpath, 578AC_CACHE_CHECK([for -rpath dynamic library path recording], rxvt_cv_rpath,
507[AC_TRY_RUN([ 579[AC_RUN_IFELSE([AC_LANG_SOURCE([[
508main() 580main()
509{ 581{
510 exit(0); 582 exit(0);
511 (void) XOpenDisplay("foobar"); 583 (void) XOpenDisplay("foobar");
512}], rxvt_cv_rpath=yes, rxvt_cv_rpath=no, dnl 584}]])],[rxvt_cv_rpath=yes],[rxvt_cv_rpath=no],[dnl
513 AC_MSG_WARN([You may need to check the LIBS line]))]) 585 AC_MSG_WARN(You may need to check the LIBS line)])])
514if test x$rxvt_cv_rpath != xyes; then 586if test x$rxvt_cv_rpath != xyes; then
515 changequote(, )dnl 587 changequote(, )dnl
516 R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-R\1/g' 588 R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-R\1/g'
517 changequote([, ])dnl 589 changequote([, ])dnl
518 LIBS=`echo "$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"` 590 LIBS=`echo "$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"`
519 AC_CACHE_CHECK([for -R dynamic library path recording], rxvt_cv_R, 591 AC_CACHE_CHECK([for -R dynamic library path recording], rxvt_cv_R,
520[AC_TRY_RUN([ 592[AC_RUN_IFELSE([AC_LANG_SOURCE([[
521main() 593main()
522{ 594{
523 exit(0); 595 exit(0);
524 (void) XOpenDisplay("foobar"); 596 (void) XOpenDisplay("foobar");
525}], rxvt_cv_R=yes, rxvt_cv_R=no, rxvt_cv_R=no)]) 597}]])],[rxvt_cv_R=yes],[rxvt_cv_R=no],[rxvt_cv_R=no])])
526 if test x$rxvt_cv_R != xyes; then 598 if test x$rxvt_cv_R != xyes; then
527 LIBS="$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" 599 LIBS="$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
528 fi 600 fi
529fi 601fi
530 602
531AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer, 603AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer,
532[AC_TRY_COMPILE([#include <X11/Xlib.h>], [XPointer dummy;], 604[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])])
533rxvt_cv_xpointer=yes, rxvt_cv_xpointer=no)])
534if test x$rxvt_cv_xpointer = xyes; then 605if test x$rxvt_cv_xpointer = xyes; then
535 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef) 606 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef)
536fi 607fi
537LIBS=$ac_save_LIBS 608LIBS=$ac_save_LIBS
538CFLAGS=$ac_save_CFLAGS 609CFLAGS=$ac_save_CFLAGS
551dnl> AC_CHECK_TYPE(umode_t, int) 622dnl> AC_CHECK_TYPE(umode_t, int)
552dnl> AC_CHECK_TYPE(off_t, long) 623dnl> AC_CHECK_TYPE(off_t, long)
553AC_TYPE_PID_T 624AC_TYPE_PID_T
554AC_TYPE_UID_T 625AC_TYPE_UID_T
555 626
556
557AC_CHECK_SIZEOF(char, 1)
558AC_CHECK_SIZEOF(short, 2) 627AC_CHECK_SIZEOF(short, 2)
559AC_CHECK_SIZEOF(int, 4) 628AC_CHECK_SIZEOF(int, 4)
560AC_CHECK_SIZEOF(long, 4) 629dnl AC_CHECK_SIZEOF(long, 4)
561AC_CHECK_SIZEOF(long long, 8) 630AC_CHECK_SIZEOF(long long, 8)
562AC_CHECK_SIZEOF(int *, 4) 631AC_CHECK_SIZEOF(int *, 4)
563 632
564dnl# see usage below 633dnl# see usage below
565AC_DEFUN(RXVT_CHECK_SIZE, 634AC_DEFUN(RXVT_CHECK_SIZE,
566 [AC_CACHE_CHECK([for $2], $1, 635 [AC_CACHE_CHECK([for $2], $1,
567 [AC_TRY_COMPILE([#include <stdint.h>], $2 dummy;, 636 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdint.h>]], [[$2 dummy;]])],[$1=yes],[dnl
568 [$1=yes],
569 [dnl
570if test $ac_cv_sizeof_char -ge $3; then 637if test "$ac_cv_sizeof_char" -ge $3; then
571 $1="$4 char" 638 $1="$4 char"
572else 639else
573 if test $ac_cv_sizeof_short -ge $3; then 640 if test "$ac_cv_sizeof_short" -ge $3; then
574 $1="$4 short" 641 $1="$4 short"
575 else 642 else
576 if test $ac_cv_sizeof_int -ge $3; then 643 if test "$ac_cv_sizeof_int" -ge $3; then
577 $1="$4 int" 644 $1="$4 int"
578 else 645 else
579 if test $ac_cv_sizeof_long -ge $3; then 646 if test "$ac_cv_sizeof_long" -ge $3; then
580 $1="$4 long" 647 $1="$4 long"
581 else 648 else
582 if test $ac_cv_sizeof_long_long -ge $3; then 649 if test "$ac_cv_sizeof_long_long" -ge $3; then
583 $1="$4 long long" 650 $1="$4 long long"
584 else 651 else
585 $1="$4 $5" # we _must_ have a (possibly wrong) default 652 $1="$4 $5" # we _must_ have a (possibly wrong) default
586 fi 653 fi
587 fi 654 fi
614dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef) 681dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef)
615dnl AC_SUBST(rxvt_uint64_typedef) 682dnl AC_SUBST(rxvt_uint64_typedef)
616dnl# 683dnl#
617dnl# Now look for another we use 684dnl# Now look for another we use
618dnl# 685dnl#
619if test $ac_cv_sizeof_int_p -eq 8; then 686if test "$ac_cv_sizeof_int_p" -eq 8; then
620 rxvt_intp_define="#define intp_t int64_t" 687 rxvt_intp_define="#define intp_t int64_t"
621 rxvt_u_intp_define="#define u_intp_t u_int64_t" 688 rxvt_u_intp_define="#define u_intp_t u_int64_t"
622else 689else
623 if test $ac_cv_sizeof_int_p -eq 4; then 690 if test "$ac_cv_sizeof_int_p" -eq 4; then
624 rxvt_intp_define="#define intp_t int32_t" 691 rxvt_intp_define="#define intp_t int32_t"
625 rxvt_u_intp_define="#define u_intp_t u_int32_t" 692 rxvt_u_intp_define="#define u_intp_t u_int32_t"
626 else 693 else
627 if test $ac_cv_sizeof_int_p -eq 2; then 694 if test "$ac_cv_sizeof_int_p" -eq 2; then
628 rxvt_intp_define="#define intp_t int16_t" 695 rxvt_intp_define="#define intp_t int16_t"
629 rxvt_u_intp_define="#define u_intp_t u_int16_t" 696 rxvt_u_intp_define="#define u_intp_t u_int16_t"
630 else 697 else
631 rxvt_intp_define="#error set intp_t" 698 rxvt_intp_define="#error set intp_t"
632 rxvt_u_intp_define="#error set u_intp_t" 699 rxvt_u_intp_define="#error set u_intp_t"
656 seteuid \ 723 seteuid \
657 setreuid \ 724 setreuid \
658 setsid \ 725 setsid \
659 setpgrp \ 726 setpgrp \
660 setpgid \ 727 setpgid \
661 openpty \
662 _getpty \ 728 _getpty \
729 posix_openpt \
663 grantpt \ 730 grantpt \
664 unlockpt \ 731 unlockpt \
665 isastream \ 732 isastream \
666 on_exit \ 733 on_exit \
667 nanosleep \ 734 nanosleep \
668 updwtmp \ 735 updwtmp \
736 updwtmpx \
669 ttyslot \ 737 ttyslot \
670) 738)
671dnl# Note: On NetBSD, openpty() exists in libutil. Don't pull it in
672 739
673dnl# -------------------------------------------------------------------------- 740dnl# --------------------------------------------------------------------------
674dnl# DO ALL UTMP AND WTMP CHECKING 741dnl# DO ALL UTMP AND WTMP CHECKING
675dnl# -------------------------------------------------------------------------- 742dnl# --------------------------------------------------------------------------
676dnl# check for host field in utmp structure 743dnl# check for host field in utmp structure
677 744
678dnl# -------------------------------------------- 745dnl# --------------------------------------------
679AC_CHECK_HEADER(utmp.h, 746AC_CHECK_HEADER(utmp.h,
680[AC_CACHE_CHECK([for struct utmp], rxvt_cv_struct_utmp, 747[AC_CACHE_CHECK([for struct utmp], rxvt_cv_struct_utmp,
681[AC_TRY_COMPILE([#include <sys/types.h> 748[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
682#include <stdint.h> 749#include <stdint.h>
683#include <utmp.h>], 750#include <utmp.h>]], [[struct utmp ut;]])],[rxvt_cv_struct_utmp=yes],[rxvt_cv_struct_utmp=no])])
684[struct utmp ut;],
685rxvt_cv_struct_utmp=yes, rxvt_cv_struct_utmp=no)])
686if test x$rxvt_cv_struct_utmp = xyes; then 751if test x$rxvt_cv_struct_utmp = xyes; then
687 AC_DEFINE(HAVE_STRUCT_UTMP, 1, Define if utmp.h has struct utmp) 752 AC_DEFINE(HAVE_STRUCT_UTMP, 1, Define if utmp.h has struct utmp)
688fi 753fi
689] 754]
690 755
691AC_CACHE_CHECK(for ut_host in utmp struct, rxvt_cv_struct_utmp_host, 756AC_CACHE_CHECK(for ut_host in utmp struct, rxvt_cv_struct_utmp_host,
692[AC_TRY_COMPILE([#include <sys/types.h> 757[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
693#include <utmp.h>], 758#include <utmp.h>]], [[struct utmp ut; ut.ut_host;]])],[rxvt_cv_struct_utmp_host=yes],[rxvt_cv_struct_utmp_host=no])])
694[struct utmp ut; ut.ut_host;],
695rxvt_cv_struct_utmp_host=yes, rxvt_cv_struct_utmp_host=no)])
696if test x$rxvt_cv_struct_utmp_host = xyes; then 759if test x$rxvt_cv_struct_utmp_host = xyes; then
697 AC_DEFINE(HAVE_UTMP_HOST, 1, Define if struct utmp contains ut_host) 760 AC_DEFINE(HAVE_UTMP_HOST, 1, Define if struct utmp contains ut_host)
698fi 761fi
699 762
700AC_CACHE_CHECK(for ut_pid in utmp struct, rxvt_cv_struct_utmp_pid, 763AC_CACHE_CHECK(for ut_pid in utmp struct, rxvt_cv_struct_utmp_pid,
701[AC_TRY_COMPILE([#include <sys/types.h> 764[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
702#include <utmp.h>], 765#include <utmp.h>]], [[struct utmp ut; ut.ut_pid;]])],[rxvt_cv_struct_utmp_pid=yes],[rxvt_cv_struct_utmp_pid=no])])
703[struct utmp ut; ut.ut_pid;],
704rxvt_cv_struct_utmp_pid=yes, rxvt_cv_struct_utmp_pid=no)])
705if test x$rxvt_cv_struct_utmp_pid = xyes; then 766if test x$rxvt_cv_struct_utmp_pid = xyes; then
706 AC_DEFINE(HAVE_UTMP_PID, 1, Define if struct utmp contains ut_pid) 767 AC_DEFINE(HAVE_UTMP_PID, 1, Define if struct utmp contains ut_pid)
707fi 768fi
708) dnl# AC_CHECK_HEADER(utmp.h 769) dnl# AC_CHECK_HEADER(utmp.h
709 770
710dnl# -------------------------------------------- 771dnl# --------------------------------------------
711 772
712AC_CHECK_HEADER(utmpx.h, 773AC_CHECK_HEADER(utmpx.h,
713[AC_CACHE_CHECK([for struct utmpx], rxvt_cv_struct_utmpx, 774[AC_CACHE_CHECK([for struct utmpx], rxvt_cv_struct_utmpx,
775[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
776#include <utmpx.h>]], [[struct utmpx ut;]])],[rxvt_cv_struct_utmpx=yes],[rxvt_cv_struct_utmpx=no])])
777if test x$rxvt_cv_struct_utmpx = xyes; then
778 AC_DEFINE(HAVE_STRUCT_UTMPX, 1, Define if utmpx.h has struct utmpx)
779fi
780]
781
782AC_CACHE_CHECK(for host in utmpx struct, rxvt_cv_struct_utmpx_host,
783[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
784#include <utmpx.h>]], [[struct utmpx utx; utx.ut_host;]])],[rxvt_cv_struct_utmpx_host=yes],[rxvt_cv_struct_utmpx_host=no])])
785if test x$rxvt_cv_struct_utmpx_host = xyes; then
786 AC_DEFINE(HAVE_UTMPX_HOST, 1, Define if struct utmpx contains ut_host)
787fi
788
789AC_CACHE_CHECK(for session in utmpx struct, rxvt_cv_struct_utmpx_session,
714[AC_TRY_COMPILE([#include <sys/types.h> 790[AC_TRY_COMPILE([#include <sys/types.h>
715#include <utmpx.h>], 791#include <utmpx.h>],
716[struct utmpx ut;], 792[struct utmpx utx; utx.ut_session;],
717rxvt_cv_struct_utmpx=yes, rxvt_cv_struct_utmpx=no)]) 793rxvt_cv_struct_utmpx_session=yes, rxvt_cv_struct_utmpx_session=no)])
718if test x$rxvt_cv_struct_utmpx = xyes; then 794if test x$rxvt_cv_struct_utmpx_session = xyes; then
719 AC_DEFINE(HAVE_STRUCT_UTMPX, 1, Define if utmpx.h has struct utmpx)
720fi
721]
722
723AC_CACHE_CHECK(for host in utmpx struct, rxvt_cv_struct_utmpx_host,
724[AC_TRY_COMPILE([#include <sys/types.h>
725#include <utmpx.h>],
726[struct utmpx utx; utx.ut_host;],
727rxvt_cv_struct_utmpx_host=yes, rxvt_cv_struct_utmpx_host=no)])
728if test x$rxvt_cv_struct_utmpx_host = xyes; then
729 AC_DEFINE(HAVE_UTMPX_HOST, 1, Define if struct utmpx contains ut_host) 795 AC_DEFINE(HAVE_UTMPX_SESSION, 1, Define if struct utmpx contains ut_session)
730fi 796fi
731) dnl# AC_CHECK_HEADER(utmpx.h 797) dnl# AC_CHECK_HEADER(utmpx.h
732
733 798
734dnl# -------------------------------------------------------------------------- 799dnl# --------------------------------------------------------------------------
735dnl# check for struct lastlog 800dnl# check for struct lastlog
736AC_CACHE_CHECK(for struct lastlog, rxvt_cv_struct_lastlog, 801AC_CACHE_CHECK(for struct lastlog, rxvt_cv_struct_lastlog,
737[AC_TRY_COMPILE([#include <sys/types.h> 802[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
738#include <utmp.h> 803#include <utmp.h>
739#ifdef HAVE_LASTLOG_H 804#ifdef HAVE_LASTLOG_H
740#include <lastlog.h> 805#include <lastlog.h>
741#endif 806#endif
742],
743[struct lastlog ll;],
744rxvt_cv_struct_lastlog=yes, rxvt_cv_struct_lastlog=no)]) 807]], [[struct lastlog ll;]])],[rxvt_cv_struct_lastlog=yes],[rxvt_cv_struct_lastlog=no])])
745if test x$rxvt_cv_struct_lastlog = xyes; then 808if test x$rxvt_cv_struct_lastlog = xyes; then
746 AC_DEFINE(HAVE_STRUCT_LASTLOG, 1, Define if utmp.h or lastlog.h has struct lastlog) 809 AC_DEFINE(HAVE_STRUCT_LASTLOG, 1, Define if utmp.h or lastlog.h has struct lastlog)
747fi 810fi
748 811
749dnl# check for struct lastlogx 812dnl# check for struct lastlogx
750AC_CACHE_CHECK(for struct lastlogx, rxvt_cv_struct_lastlogx, 813AC_CACHE_CHECK(for struct lastlogx, rxvt_cv_struct_lastlogx,
751[AC_TRY_COMPILE([#include <sys/types.h> 814[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
752#include <utmpx.h> 815#include <utmpx.h>
753#ifdef HAVE_LASTLOG_H 816#ifdef HAVE_LASTLOG_H
754#include <lastlog.h> 817#include <lastlog.h>
755#endif 818#endif
756],
757[struct lastlogx ll;],
758rxvt_cv_struct_lastlogx=yes, rxvt_cv_struct_lastlogx=no)]) 819]], [[struct lastlogx ll;]])],[rxvt_cv_struct_lastlogx=yes],[rxvt_cv_struct_lastlogx=no])])
759if test x$rxvt_cv_struct_lastlogx = xyes; then 820if test x$rxvt_cv_struct_lastlogx = xyes; then
760 AC_DEFINE(HAVE_STRUCT_LASTLOGX, 1, Define if utmpx.h or lastlog.h has struct lastlogx) 821 AC_DEFINE(HAVE_STRUCT_LASTLOGX, 1, Define if utmpx.h or lastlog.h has struct lastlogx)
761fi 822fi
762 823
763dnl# -------------------------------------------------------------------------- 824dnl# --------------------------------------------------------------------------
764dnl# FIND FILES 825dnl# FIND FILES
765dnl# -------------------------------------------------------------------------- 826dnl# --------------------------------------------------------------------------
766 827
767dnl# find utmp 828dnl# find utmp
768AC_CACHE_CHECK(where utmp is located, rxvt_cv_path_utmp, 829AC_CACHE_CHECK(where utmp is located, rxvt_cv_path_utmp,
769[AC_TRY_RUN([#include <stdio.h> 830[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
770#include <sys/types.h> 831#include <sys/types.h>
771#include <utmp.h> 832#include <utmp.h>
772#include <errno.h> 833#include <errno.h>
773main() 834main()
774{ 835{
789 fprintf(f, "%s\n", *u); 850 fprintf(f, "%s\n", *u);
790 exit(0); 851 exit(0);
791 } 852 }
792 } 853 }
793 exit(0); 854 exit(0);
794}], rxvt_cv_path_utmp=`cat conftestval`, rxvt_cv_path_utmp=, dnl 855}]])],[rxvt_cv_path_utmp=`cat conftestval`],[rxvt_cv_path_utmp=],[dnl
795 AC_MSG_WARN([Define RXVT_UTMP_FILE in config.h manually]))]) 856 AC_MSG_WARN(Define RXVT_UTMP_FILE in config.h manually)])])
796if test x$rxvt_cv_path_utmp != x; then 857if test x$rxvt_cv_path_utmp != x; then
797 AC_DEFINE_UNQUOTED(RXVT_UTMP_FILE, "$rxvt_cv_path_utmp", Define location of utmp) 858 AC_DEFINE_UNQUOTED(RXVT_UTMP_FILE, "$rxvt_cv_path_utmp", Define location of utmp)
798fi 859fi
799 860
800dnl# -------------------------------------------------------------------------- 861dnl# --------------------------------------------------------------------------
801 862
802dnl# find utmpx - if a utmp file exists at the same location and is more than 863dnl# find utmpx - if a utmp file exists at the same location and is more than
803dnl# a day newer, then dump the utmpx. People leave lots of junk around. 864dnl# a day newer, then dump the utmpx. People leave lots of junk around.
804AC_CACHE_CHECK(where utmpx is located, rxvt_cv_path_utmpx, 865AC_CACHE_CHECK(where utmpx is located, rxvt_cv_path_utmpx,
805[AC_TRY_RUN([#include <stdio.h> 866[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
806#include <sys/types.h> 867#include <sys/types.h>
807#include <utmpx.h> 868#include <utmpx.h>
808#include <errno.h> 869#include <errno.h>
809#include <sys/stat.h> 870#include <sys/stat.h>
810#ifdef HAVE_STRING_H 871#ifdef HAVE_STRING_H
835 fprintf(f, "%s\n", *u); 896 fprintf(f, "%s\n", *u);
836 exit(0); 897 exit(0);
837 } 898 }
838 } 899 }
839 exit(0); 900 exit(0);
840}], rxvt_cv_path_utmpx=`cat conftestval`, rxvt_cv_path_utmpx=, dnl 901}]])],[rxvt_cv_path_utmpx=`cat conftestval`],[rxvt_cv_path_utmpx=],[dnl
841 AC_MSG_WARN([Define RXVT_UTMPX_FILE in config.h manually]))]) 902 AC_MSG_WARN(Define RXVT_UTMPX_FILE in config.h manually)])])
842if test x$rxvt_cv_path_utmpx != x; then 903if test x$rxvt_cv_path_utmpx != x; then
843 AC_DEFINE_UNQUOTED(RXVT_UTMPX_FILE, "$rxvt_cv_path_utmpx", Define location of utmpx) 904 AC_DEFINE_UNQUOTED(RXVT_UTMPX_FILE, "$rxvt_cv_path_utmpx", Define location of utmpx)
844fi 905fi
845 906
846dnl# -------------------------------------------------------------------------- 907dnl# --------------------------------------------------------------------------
847 908
848dnl# find wtmp 909dnl# find wtmp
849AC_CACHE_CHECK(where wtmp is located, rxvt_cv_path_wtmp, 910AC_CACHE_CHECK(where wtmp is located, rxvt_cv_path_wtmp,
850[AC_TRY_RUN([#include <stdio.h> 911[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
851#include <sys/types.h> 912#include <sys/types.h>
852#ifdef HAVE_UTMP_H 913#ifdef HAVE_UTMP_H
853#include <utmp.h> 914#include <utmp.h>
854#endif 915#endif
855#include <errno.h> 916#include <errno.h>
872 fprintf(f, "%s\n", *w); 933 fprintf(f, "%s\n", *w);
873 exit(0); 934 exit(0);
874 } 935 }
875 } 936 }
876 exit(0); 937 exit(0);
877}], rxvt_cv_path_wtmp=`cat conftestval`, rxvt_cv_path_wtmp=, dnl 938}]])],[rxvt_cv_path_wtmp=`cat conftestval`],[rxvt_cv_path_wtmp=],[dnl
878 AC_MSG_WARN([Define RXVT_WTMP_FILE in config.h manually]))]) 939 AC_MSG_WARN(Define RXVT_WTMP_FILE in config.h manually)])])
879if test x$rxvt_cv_path_wtmp != x; then 940if test x$rxvt_cv_path_wtmp != x; then
880 AC_DEFINE_UNQUOTED(RXVT_WTMP_FILE, "$rxvt_cv_path_wtmp", Define location of wtmp) 941 AC_DEFINE_UNQUOTED(RXVT_WTMP_FILE, "$rxvt_cv_path_wtmp", Define location of wtmp)
881fi 942fi
882dnl# -------------------------------------------------------------------------- 943dnl# --------------------------------------------------------------------------
883 944
884dnl# find wtmpx 945dnl# find wtmpx
885AC_CACHE_CHECK(where wtmpx is located, rxvt_cv_path_wtmpx, 946AC_CACHE_CHECK(where wtmpx is located, rxvt_cv_path_wtmpx,
886[AC_TRY_RUN([#include <stdio.h> 947[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
887#ifdef HAVE_UTMPX_H 948#ifdef HAVE_UTMPX_H
888#include <utmpx.h> 949#include <utmpx.h>
889#endif 950#endif
890#include <errno.h> 951#include <errno.h>
891main() 952main()
907 fprintf(f, "%s\n", *w); 968 fprintf(f, "%s\n", *w);
908 exit(0); 969 exit(0);
909 } 970 }
910 } 971 }
911 exit(0); 972 exit(0);
912}], rxvt_cv_path_wtmpx=`cat conftestval`, rxvt_cv_path_wtmpx=, dnl 973}]])],[rxvt_cv_path_wtmpx=`cat conftestval`],[rxvt_cv_path_wtmpx=],[dnl
913 AC_MSG_WARN([Define RXVT_WTMPX_FILE in config.h manually]))]) 974 AC_MSG_WARN(Define RXVT_WTMPX_FILE in config.h manually)])])
914if test x$rxvt_cv_path_wtmpx != x; then 975if test x$rxvt_cv_path_wtmpx != x; then
915 AC_DEFINE_UNQUOTED(RXVT_WTMPX_FILE, "$rxvt_cv_path_wtmpx", Define location of wtmpx) 976 AC_DEFINE_UNQUOTED(RXVT_WTMPX_FILE, "$rxvt_cv_path_wtmpx", Define location of wtmpx)
916fi 977fi
917dnl# -------------------------------------------------------------------------- 978dnl# --------------------------------------------------------------------------
918 979
919dnl# find lastlog 980dnl# find lastlog
920AC_CACHE_CHECK(where lastlog is located, rxvt_cv_path_lastlog, 981AC_CACHE_CHECK(where lastlog is located, rxvt_cv_path_lastlog,
921[AC_TRY_RUN([#include <stdio.h> 982[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
922#include <sys/types.h> 983#include <sys/types.h>
923#ifdef HAVE_UTMPX_H 984#ifdef HAVE_UTMPX_H
924#include <utmpx.h> 985#include <utmpx.h>
925#elif defined(HAVE_UTMP_H) 986#elif defined(HAVE_UTMP_H)
926#include <utmp.h> 987#include <utmp.h>
947 fprintf(f, "%s\n", *w); 1008 fprintf(f, "%s\n", *w);
948 exit(0); 1009 exit(0);
949 } 1010 }
950 } 1011 }
951 exit(0); 1012 exit(0);
952}], rxvt_cv_path_lastlog=`cat conftestval`, rxvt_cv_path_lastlog=, dnl 1013}]])],[rxvt_cv_path_lastlog=`cat conftestval`],[rxvt_cv_path_lastlog=],[dnl
953 AC_MSG_WARN([Define RXVT_LASTLOG_FILE in config.h manually]))]) 1014 AC_MSG_WARN(Define RXVT_LASTLOG_FILE in config.h manually)])])
954if test x$rxvt_cv_path_lastlog != x; then 1015if test x$rxvt_cv_path_lastlog != x; then
955 AC_DEFINE_UNQUOTED(RXVT_LASTLOG_FILE, "$rxvt_cv_path_lastlog", Define location of lastlog) 1016 AC_DEFINE_UNQUOTED(RXVT_LASTLOG_FILE, "$rxvt_cv_path_lastlog", Define location of lastlog)
956 if test -d "$rxvt_cv_path_lastlog"; then 1017 if test -d "$rxvt_cv_path_lastlog"; then
957 AC_DEFINE(LASTLOG_IS_DIR, 1, Define if lastlog is provided via a directory) 1018 AC_DEFINE(LASTLOG_IS_DIR, 1, Define if lastlog is provided via a directory)
958 fi 1019 fi
959fi 1020fi
960dnl# -------------------------------------------------------------------------- 1021dnl# --------------------------------------------------------------------------
961 1022
962dnl# find lastlogx 1023dnl# find lastlogx
963AC_CACHE_CHECK(where lastlogx is located, rxvt_cv_path_lastlogx, 1024AC_CACHE_CHECK(where lastlogx is located, rxvt_cv_path_lastlogx,
964[AC_TRY_RUN([#include <stdio.h> 1025[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
965#ifdef HAVE_UTMPX_H 1026#ifdef HAVE_UTMPX_H
966#include <utmpx.h> 1027#include <utmpx.h>
967#endif 1028#endif
968#include <errno.h> 1029#include <errno.h>
969main() 1030main()
984 fprintf(f, "%s\n", *w); 1045 fprintf(f, "%s\n", *w);
985 exit(0); 1046 exit(0);
986 } 1047 }
987 } 1048 }
988 exit(0); 1049 exit(0);
989}], rxvt_cv_path_lastlogx=`cat conftestval`, rxvt_cv_path_lastlogx=, dnl 1050}]])],[rxvt_cv_path_lastlogx=`cat conftestval`],[rxvt_cv_path_lastlogx=],[dnl
990 AC_MSG_WARN([Define RXVT_LASTLOGX_FILE in config.h manually]))]) 1051 AC_MSG_WARN(Define RXVT_LASTLOGX_FILE in config.h manually)])])
991if test x$rxvt_cv_path_lastlogx != x; then 1052if test x$rxvt_cv_path_lastlogx != x; then
992 AC_DEFINE_UNQUOTED(RXVT_LASTLOGX_FILE, "$rxvt_cv_path_lastlogx", Define location of lastlogx) 1053 AC_DEFINE_UNQUOTED(RXVT_LASTLOGX_FILE, "$rxvt_cv_path_lastlogx", Define location of lastlogx)
993fi 1054fi
994 1055
995dnl# -------------------------------------------------------------------------- 1056dnl# --------------------------------------------------------------------------
1019LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" 1080LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
1020if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then 1081if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then
1021 LIBS=`echo $LIBS | sed "$R_TRANSLATE"` 1082 LIBS=`echo $LIBS | sed "$R_TRANSLATE"`
1022fi 1083fi
1023AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, 1084AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
1024[AC_TRY_RUN([#include <X11/Xlib.h> 1085[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h>
1025main() { 1086main() {
1026char *p; 1087char *p;
1027if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) 1088if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
1028exit (XSupportsLocale() ? 0 : 1); 1089exit (XSupportsLocale() ? 0 : 1);
1029else 1090else
1030exit (1);}], dnl 1091exit (1);}]])],[dnl
1031 rxvt_cv_func_xlocale=yes, rxvt_cv_func_xlocale=no, dnl 1092 rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl
1032 AC_MSG_WARN([Define NO_XLOCALE in config.h manually]))]) 1093 AC_MSG_WARN(Define NO_XLOCALE in config.h manually)])])
1033if test x$rxvt_cv_func_xlocale = xyes; then 1094if test x$rxvt_cv_func_xlocale = xyes; then
1034 AC_DEFINE(HAVE_XLOCALE, 1, Define if Xlocale support works) 1095 AC_DEFINE(HAVE_XLOCALE, 1, Define if Xlocale support works)
1035fi 1096fi
1036 1097
1037AC_CACHE_CHECK(for working X setlocale, rxvt_cv_func_xsetlocale, 1098AC_CACHE_CHECK(for working X setlocale, rxvt_cv_func_xsetlocale,
1038[AC_TRY_LINK([#define X_LOCALE 1 1099[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#define X_LOCALE 1
1039#include <X11/Xlocale.h>], 1100#include <X11/Xlocale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_xsetlocale=yes],[rxvt_cv_func_xsetlocale=no])])
1040 [setlocale(LC_CTYPE, "");],
1041 rxvt_cv_func_xsetlocale=yes, rxvt_cv_func_xsetlocale=no)])
1042if test x$rxvt_cv_func_xsetlocale = xyes; then 1101if test x$rxvt_cv_func_xsetlocale = xyes; then
1043 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works) 1102 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works)
1044fi 1103fi
1045LIBS=$ac_save_LIBS 1104LIBS=$ac_save_LIBS
1046CFLAGS=$ac_save_CFLAGS 1105CFLAGS=$ac_save_CFLAGS
1047 1106
1048AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale, 1107AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale,
1049[AC_TRY_LINK([#include <clocale>], 1108[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <clocale>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])])
1050 [setlocale(LC_CTYPE, "");],
1051 rxvt_cv_func_setlocale=yes, rxvt_cv_func_setlocale=no)])
1052if test x$rxvt_cv_func_setlocale = xyes; then 1109if test x$rxvt_cv_func_setlocale = xyes; then
1053 AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works) 1110 AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works)
1054fi 1111fi
1055 1112
1056AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, 1113AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo,
1057[AC_TRY_LINK([#include <langinfo.h>], 1114[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[nl_langinfo(CODESET);]])],[rxvt_cv_func_nl_langinfo=yes],[rxvt_cv_func_nl_langinfo=no])])
1058 [nl_langinfo(CODESET);],
1059 rxvt_cv_func_nl_langinfo=yes, rxvt_cv_func_nl_langinfo=no)])
1060if test x$rxvt_cv_func_nl_langinfo = xyes; then 1115if test x$rxvt_cv_func_nl_langinfo = xyes; then
1061 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works) 1116 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works)
1062fi 1117fi
1063 1118
1064AC_CACHE_CHECK(for getpt, rxvt_cv_func_getpt, 1119AC_CACHE_CHECK(for unix-compliant filehandle passing ability, rxvt_can_pass_fds,
1065[AC_TRY_LINK([#define _GNU_SOURCE 1120[AC_TRY_LINK([
1066#ifdef HAVE_STDLIB_H 1121#include <sys/types.h>
1067# include <cstdlib> 1122#include <sys/socket.h>
1068#endif], 1123],[
1069 [(void)getpt();], 1124{
1070 rxvt_cv_func_getpt=yes, rxvt_cv_func_getpt=no)]) 1125 msghdr msg;
1126 iovec iov;
1127 char buf [100];
1128 char data = 0;
1129
1130 iov.iov_base = &data;
1131 iov.iov_len = 1;
1132
1133 msg.msg_iov = &iov;
1134 msg.msg_iovlen = 1;
1135 msg.msg_control = buf;
1136 msg.msg_controllen = sizeof buf;
1137
1138 cmsghdr *cmsg = CMSG_FIRSTHDR (&msg);
1139 cmsg->cmsg_level = SOL_SOCKET;
1140 cmsg->cmsg_type = SCM_RIGHTS;
1141 cmsg->cmsg_len = 100;
1142
1143 *(int *)CMSG_DATA (cmsg) = 5;
1144
1145 return sendmsg (3, &msg, 0);
1146}
1147],[rxvt_can_pass_fds=yes],[rxvt_can_pass_fds=no])])
1071if test x$rxvt_cv_func_getpt = xyes; then 1148if test x$rxvt_can_pass_fds = xyes; then
1072 AC_DEFINE(HAVE_GETPT, 1, Define if you have _GNU_SOURCE getpt() ) 1149 AC_DEFINE(HAVE_UNIX_FDPASS, 1, Define if sys/socket.h defines the necessary macros/functions for file handle passing)
1150fi
1151
1152AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb,
1153[AC_COMPILE_IFELSE([
1154#include <X11/Xlib.h>
1155
1156void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
1157
1158void f() {
1159 XIMCallback cb;
1160 cb.callback = im_destroy_cb;
1161}
1162],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)])
1163
1164if test x$rxvt_broken_ximcb = xyes; then
1165 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
1166fi
1167
1168if test x$ac_cv_func_posix_openpt = xno; then
1169 AC_CHECK_FUNC(openpty, [], [AC_CHECK_LIB(util, openpty, [LIBS="$LIBS -lutil"])])
1073fi 1170fi
1074 1171
1075dnl# if we don't guess right then it's up to the user 1172dnl# if we don't guess right then it's up to the user
1076AC_CACHE_CHECK(for pty/tty type, rxvt_cv_ptys, 1173AC_CACHE_CHECK(for pty/tty type, rxvt_cv_ptys,
1077[if test x$ac_cv_func_openpty = xyes; then 1174[if test x$ac_cv_func_openpty = xyes -o x$ac_cv_lib_util_openpty = xyes; then
1078 rxvt_cv_ptys=OPENPTY 1175 rxvt_cv_ptys=OPENPTY
1176 else if test x$ac_cv_func_posix_openpt = xyes; then
1177 rxvt_cv_ptys=POSIX
1079 else if test x$ac_cv_func__getpty = xyes; then 1178 else if test x$ac_cv_func__getpty = xyes; then
1080 rxvt_cv_ptys=SGI4 1179 rxvt_cv_ptys=SGI4
1081 else if test -c /dev/ttyp20; then 1180 else if test -c /dev/ttyp20; then
1082 rxvt_cv_ptys=SCO 1181 rxvt_cv_ptys=SCO
1083 else if test -c /dev/ptym/clone; then 1182 else if test -c /dev/ptym/clone; then
1084 rxvt_cv_ptys=HPUX 1183 rxvt_cv_ptys=HPUX
1085 else if test x$rxvt_cv_func_getpt = xyes; then
1086 rxvt_cv_ptys=GLIBC
1087 else if test -c /dev/ptc -a -c /dev/pts; then 1184 else if test -c /dev/ptc -a -c /dev/pts; then
1088 rxvt_cv_ptys=PTC 1185 rxvt_cv_ptys=PTC
1089 else if test -c /dev/ptc -a -d /dev/pts; then 1186 else if test -c /dev/ptc -a -d /dev/pts; then
1090 rxvt_cv_ptys=PTC 1187 rxvt_cv_ptys=PTC
1091 else if test -c /dev/ptmx -a -c /dev/pts/0; then 1188 else if test -c /dev/ptmx -a -c /dev/pts/0; then
1104fi 1201fi
1105fi 1202fi
1106fi 1203fi
1107]) 1204])
1108 1205
1206if test x$rxvt_cv_ptys = xPOSIX; then
1207 AC_DEFINE(PTYS_ARE_POSIX, 1, Define for this pty type)
1208fi
1109if test x$rxvt_cv_ptys = xOPENPTY; then 1209if test x$rxvt_cv_ptys = xOPENPTY; then
1110 AC_DEFINE(PTYS_ARE_OPENPTY, 1, Define for this pty type) 1210 AC_DEFINE(PTYS_ARE_OPENPTY, 1, Define for this pty type)
1111fi 1211fi
1112if test x$rxvt_cv_ptys = xSCO; then 1212if test x$rxvt_cv_ptys = xSCO; then
1113 AC_DEFINE(PTYS_ARE_NUMERIC, 1, Define for this pty type) 1213 AC_DEFINE(PTYS_ARE_NUMERIC, 1, Define for this pty type)
1119 AC_DEFINE(PTYS_ARE_PTC, 1, Define for this pty type) 1219 AC_DEFINE(PTYS_ARE_PTC, 1, Define for this pty type)
1120fi 1220fi
1121if test x$rxvt_cv_ptys = xSGI4; then 1221if test x$rxvt_cv_ptys = xSGI4; then
1122 AC_DEFINE(PTYS_ARE__GETPTY, 1, Define for this pty type) 1222 AC_DEFINE(PTYS_ARE__GETPTY, 1, Define for this pty type)
1123fi 1223fi
1124if test x$rxvt_cv_ptys = xCONVEX; then
1125 AC_DEFINE(PTYS_ARE_GETPTY, 1, Define for this pty type)
1126fi
1127if test x$rxvt_cv_ptys = xGLIBC; then
1128 AC_DEFINE(PTYS_ARE_GETPT, 1, Define for this pty type)
1129fi
1130if test x$rxvt_cv_ptys = xHPUX; then 1224if test x$rxvt_cv_ptys = xHPUX; then
1131 AC_DEFINE(PTYS_ARE_CLONE, 1, Define for this pty type) 1225 AC_DEFINE(PTYS_ARE_CLONE, 1, Define for this pty type)
1132fi 1226fi
1133if test x$rxvt_cv_ptys = xBSD -o x$rxvt_cv_ptys = xHPUX -o x$rxvt_cv_ptys = xGLIBC; then 1227if test x$rxvt_cv_ptys = xBSD -o x$rxvt_cv_ptys = xHPUX -o x$rxvt_cv_ptys = xPOSIX; then
1134 AC_DEFINE(PTYS_ARE_SEARCHED, 1, Define for this pty type) 1228 AC_DEFINE(PTYS_ARE_SEARCHED, 1, Define for this pty type)
1135fi 1229fi
1136 1230
1137 1231
1138AC_CHECKING(for pty ranges) 1232AS_MESSAGE(checking for pty ranges...)
1139ptys=`echo /dev/pty??` 1233ptys=`echo /dev/pty??`
1140pch1=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\).$/\1/g' | sort -u | tr -d '\012'` 1234pch1=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\).$/\1/g' | sort -u | tr -d '\012'`
1141pch2=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\)$/\1/g' | sort -u | tr -d '\012'` 1235pch2=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\)$/\1/g' | sort -u | tr -d '\012'`
1142if test x$pch1 != x; then 1236if test x$pch1 != x; then
1143 AC_DEFINE_UNQUOTED(PTYCHAR1, "$pch1", Define for first char in devptyXX) 1237 AC_DEFINE_UNQUOTED(PTYCHAR1, "$pch1", Define for first char in devptyXX)
1144fi 1238fi
1145if test x$pch2 != x; then 1239if test x$pch2 != x; then
1146 AC_DEFINE_UNQUOTED(PTYCHAR2, "$pch2", Define for second char in devptyXX) 1240 AC_DEFINE_UNQUOTED(PTYCHAR2, "$pch2", Define for second char in devptyXX)
1147fi 1241fi
1148 1242
1149dnl# FreeBSD needs to link libxpg4
1150AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])
1151
1152dnl# -------------------------------------------------------------------------- 1243dnl# --------------------------------------------------------------------------
1153dnl# now add and remove other stuff 1244dnl# now add and remove other stuff
1154dnl# -------------------------------------------------------------------------- 1245dnl# --------------------------------------------------------------------------
1246if test x$support_xft = xyes; then
1247 LIBS="$LIBS `pkg-config xft --libs`"
1248 CPPFLAGS="$CPPFLAGS `pkg-config xft --cflags`"
1249
1250 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no])
1251 AC_CHECK_LIB(Xft,XftDrawString32,,[support_xft=no])
1252
1253 if test x$support_xft = xyes; then
1254 AC_DEFINE(XFT, 1, Define to enable xft support)
1255 fi
1256fi
1257if test x$support_styles = xyes; then
1258 AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support)
1259fi
1260if test x$support_iso14755 = xyes; then
1261 AC_DEFINE(ISO_14755, 1, Define if you want ISO 14755 extended support)
1262fi
1263if test x$support_8bitctrls = xyes; then
1264 AC_DEFINE(EIGHT_BIT_CONTROLS, 1, Define if you want 8 bit control sequences)
1265fi
1266if test x$support_fading = xyes; then
1267 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost)
1268fi
1269if test x$support_tinting = xyes; then
1270 AC_DEFINE(TINTING, 1, Define if you want your background to be tinted)
1271fi
1155if test x$support_inheritpixmap = xyes; then 1272if test x$support_inheritpixmap = xyes; then
1156 AC_DEFINE(TRANSPARENT, 1, Define if you want your background to use the parent window background) 1273 AC_DEFINE(TRANSPARENT, 1, Define if you want your background to use the parent window background)
1157fi 1274fi
1158if test x$support_keepscrolling = xno; then 1275if test x$support_keepscrolling = xno; then
1159 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed) 1276 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed)
1160fi 1277fi
1161if test x$support_selectionscrolling = xyes; then 1278if test x$support_selectionscrolling = xyes; then
1162 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen) 1279 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen)
1163fi 1280fi
1164if test x$support_menubar = xyes; then
1165 AC_DEFINE(MENUBAR, 1, Define if you want Menubar support)
1166fi
1167if test x$support_frills = xno; then 1281if test x$support_frills = xyes; then
1168 AC_DEFINE(NO_FRILLS, 1, Define if you don't want handling for rarely used features) 1282 AC_DEFINE(ENABLE_FRILLS, 1, Define if you want handling for rarely used but handy features)
1169fi
1170if test x$support_linespace = xno; then
1171 AC_DEFINE(NO_LINESPACE, 1, Define if you don't want support linespace)
1172fi 1283fi
1173if test x$support_24bit = xyes; then 1284if test x$support_24bit = xyes; then
1174 AC_DEFINE(PREFER_24BIT, 1, Define to use a 24 bit visual if the screen has 24 bit mode, even if the default is 8 bit) 1285 AC_DEFINE(PREFER_24BIT, 1, Define to use a 24 bit visual if the screen has 24 bit mode, even if the default is 8 bit)
1175fi 1286fi
1176if test x$support_mousewheel = xyes; then 1287if test x$support_mousewheel = xyes; then
1213 scrolltypes="$scrolltypes plain" 1324 scrolltypes="$scrolltypes plain"
1214fi 1325fi
1215if test x$support_pointer_blank = xyes; then 1326if test x$support_pointer_blank = xyes; then
1216 AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing) 1327 AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing)
1217fi 1328fi
1218if test x$support_cursor_blink = xyes; then
1219 AC_DEFINE(CURSOR_BLINK, 1, Define if you want blinking cursor support)
1220fi
1221if test x$support_text_blink = xyes; then 1329if test x$support_text_blink = xyes; then
1222 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support) 1330 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support)
1223fi 1331fi
1224if test x$support_unicode3 = xyes; then 1332if test x$support_unicode3 = xyes; then
1225 AC_DEFINE(UNICODE_3, 1, Define if you want to represent unicode characters outside plane 0) 1333 AC_DEFINE(UNICODE_3, 1, Define if you want to represent unicode characters outside plane 0)
1226fi 1334fi
1227if test x$support_combining = xyes; then 1335if test x$support_combining = xyes; then
1228 AC_DEFINE(ENABLE_COMBINING, 1, Define if you want to automatically compose combining characters) 1336 AC_DEFINE(ENABLE_COMBINING, 1, Define if you want to automatically compose combining characters)
1229fi 1337fi
1230if test x$codesets = xall; then 1338if test x$codesets = xall; then
1231 codesets=jp,jp-ext,kr,cn,cn-ext 1339 codesets=jp,jp-ext,kr,zh,zh-ext
1232fi 1340fi
1341AC_DEFINE(ENCODING_EU, 1, Define if you want european extended codesets)
1342AC_DEFINE(ENCODING_VN, 1, Define if you want vietnamese codesets)
1233for codeset in `echo $codesets | tr "[a-z,\\-]" "[A-Z _]"`; do 1343for codeset in `echo $codesets | tr "[a-z,\\-]" "[A-Z _]"`; do
1234 AC_DEFINE(ENCODING_EU, 1, Define if you want european extended codesets)
1235 AC_DEFINE(ENCODING_VN, 1, Define if you want vietnamese codesets)
1236 case "$codeset" in 1344 case "$codeset" in
1237 JP ) AC_DEFINE(ENCODING_JP, 1, Define if you want japanese codesets) ;; 1345 JP ) AC_DEFINE(ENCODING_JP, 1, Define if you want japanese codesets) ;;
1238 JP_EXT ) AC_DEFINE(ENCODING_JP_EXT, 1, Define if you want extended japanese codesets) ;; 1346 JP_EXT ) AC_DEFINE(ENCODING_JP_EXT, 1, Define if you want extended japanese codesets) ;;
1239 KR ) AC_DEFINE(ENCODING_KR, 1, Define if you want korean codesets) ;; 1347 KR ) AC_DEFINE(ENCODING_KR, 1, Define if you want korean codesets) ;;
1240 CN ) AC_DEFINE(ENCODING_CN, 1, Define if you want chinese codesets) ;; 1348 ZH ) AC_DEFINE(ENCODING_ZH, 1, Define if you want chinese codesets) ;;
1241 CN_EXT ) AC_DEFINE(ENCODING_CN_EXT, 1, Define if you want extended chinese codesets) ;; 1349 ZH_EXT ) AC_DEFINE(ENCODING_ZH_EXT, 1, Define if you want extended chinese codesets) ;;
1242 esac 1350 esac
1243done 1351done
1352
1353IF_PERL=\#
1354if test x$support_perl = xyes; then
1355 AC_PATH_PROG(PERL, perl5)
1356 AC_PATH_PROG(PERL, perl)
1357
1358 AC_MSG_CHECKING(for $PERL suitability)
1359 if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then
1360
1361 save_CXXFLAGS="$CXXFLAGS"
1362 save_LIBS="$LIBS"
1363 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`"
1364 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`"
1365 AC_TRY_LINK([
1366#include <EXTERN.h>
1367#include <perl.h>
1368#include <XSUB.h>
1369],[
1370 PerlInterpreter *perl = perl_alloc ();
1371],[rxvt_perl_link=yes],[rxvt_perl_link=no])
1372 CXXFLAGS="$save_CXXFLAGS"
1373 LIBS="$save_LIBS"
1374
1375 if test x$rxvt_perl_link = xyes; then
1376 AC_MSG_RESULT(ok)
1377 AC_DEFINE(ENABLE_PERL, 1, Define if you can embed a perl interpreter)
1378 IF_PERL=
1379 PERL_O=rxvtperl.o
1380 PERLFLAGS="`$PERL -MExtUtils::Embed -e ccopts`"
1381 PERLLIB="`$PERL -MExtUtils::Embed -e ldopts`"
1382 PERLPRIVLIBEXP="`$PERL -MConfig -e 'print $Config{privlibexp}'`"
1383 else
1384 support_perl=no
1385 AC_MSG_RESULT([no, unable to link])
1386 fi
1387 else
1388 AC_MSG_ERROR(no working perl found, or perl not version >= 5.8)
1389 support_perl=no
1390 fi
1391fi
1392AC_SUBST(PERLLIB)
1393AC_SUBST(PERLFLAGS)
1394AC_SUBST(PERLPRIVLIBEXP)
1395AC_SUBST(PERL)
1396AC_SUBST(IF_PERL)
1397AC_SUBST(PERL_O)
1398
1399if test x$support_perl = xyes; then
1400 support_frills=yes
1401fi
1244 1402
1245dnl> AC_CHECK_FUNCS(gettimeofday putenv select socket) 1403dnl> AC_CHECK_FUNCS(gettimeofday putenv select socket)
1246 1404
1247CFLAGS=${CFLAGS--O} 1405CFLAGS=${CFLAGS--O}
1248LDFLAGS=${LDFLAGS--O} 1406LDFLAGS=${LDFLAGS--O}
1265fi 1423fi
1266AC_SUBST(DLIB) 1424AC_SUBST(DLIB)
1267AC_SUBST(LIBS) 1425AC_SUBST(LIBS)
1268AC_SUBST(X_LIBS) 1426AC_SUBST(X_LIBS)
1269AC_SUBST(X_EXTRA_LIBS) 1427AC_SUBST(X_EXTRA_LIBS)
1270
1271if test x$support_addstrings = xno; then
1272 AC_DEFINE(NO_STRINGS, 1, Define if you don't need to use our replacement string functions)
1273fi
1274 1428
1275dnl# common parts of the Makefile 1429dnl# common parts of the Makefile
1276MCOMMON=./autoconf/Make.common 1430MCOMMON=./autoconf/Make.common
1277AC_SUBST_FILE(MCOMMON) 1431AC_SUBST_FILE(MCOMMON)
1278 1432
1301RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch) 1455RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch)
1302RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch) 1456RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch)
1303RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch) 1457RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch)
1304RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes) 1458RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes)
1305 1459
1306if test x$support_xft = xyes; then
1307 LIBS="$LIBS `pkg-config xft --libs`"
1308 CFLAGS="$CFLAGS `pkg-config xft --cflags`"
1309 CPPFLAGS="$CPPFLAGS `pkg-config xft --cflags`"
1310
1311 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no])
1312 AC_CHECK_LIB(Xft,XftDrawString32,,[support_xft=no])
1313
1314 if test x$support_xft = xyes; then
1315 AC_DEFINE(XFT, 1, Define to enable xft support)
1316 fi
1317fi
1318
1319AC_OUTPUT(autoconf/Make.common \ 1460AC_CONFIG_FILES([autoconf/Make.common \
1320Makefile \ 1461Makefile \
1321doc/Makefile \ 1462doc/Makefile \
1322src/Makefile \ 1463src/Makefile \
1323src/test/Makefile \
1324src/rxvtlib.h \ 1464src/rxvtlib.h \
1325W11/Makefile \ 1465])
1326) 1466AC_OUTPUT
1327 1467
1328echo "Configuration: 1468echo "Configuration:
1329 1469
1330 Rxvt version: $VERSION : $DATE 1470 Rxvt version: $VERSION : $DATE
1331 Source code location: $srcdir 1471 Source code location: $srcdir
1360 utmp file: $rxvt_cv_path_utmp 1500 utmp file: $rxvt_cv_path_utmp
1361 utmpx file: $rxvt_cv_path_utmpx 1501 utmpx file: $rxvt_cv_path_utmpx
1362 wtmp file: $rxvt_cv_path_wtmp 1502 wtmp file: $rxvt_cv_path_wtmp
1363 wtmpx file: $rxvt_cv_path_wtmpx 1503 wtmpx file: $rxvt_cv_path_wtmpx
1364 lastlog file: $rxvt_cv_path_lastlog 1504 lastlog file: $rxvt_cv_path_lastlog
1365 ttys/ttytab file: $rxvt_cv_path_ttytab" 1505 ttys/ttytab file: $rxvt_cv_path_ttytab
1506 embedded perl: $support_perl"
1366 echo 1507 echo
1367fi 1508fi
1368if test x$term != x; then 1509if test x$term != x; then
1369 echo " set TERM to: $term" 1510 echo " set TERM to: $term"
1370fi 1511fi
1399 echo ". functions could not be found. ." 1540 echo ". functions could not be found. ."
1400 echo ". XIM is now being DISABLED! ." 1541 echo ". XIM is now being DISABLED! ."
1401 echo ".----------------------------------------------------------------." 1542 echo ".----------------------------------------------------------------."
1402fi 1543fi
1403 1544
1404echo " *** Please check src/feature.h for further options ***" 1545echo " *** Optionally check src/feature.h for further options ***"
1405echo 1546echo
1406 1547
1407echo ".----------------------------------------------------------------." 1548echo ".----------------------------------------------------------------."
1408echo ". NOTE: most features are disabled by default, try ." 1549echo ". NOTE: some features are disabled by default, try ."
1409echo ". configure --help to get an idea of the optional features ." 1550echo ". configure --help to get an idea of the optional features, ."
1551echo ". or read ./README.configure ."
1552echo ". ."
1553echo ". The script ./reconf gives a reasonable baseline, try it if ."
1554echo ". you do not want to read documentation and still want some ."
1555echo ". useful features. ."
1410echo ".----------------------------------------------------------------." 1556echo ".----------------------------------------------------------------."
1411echo 1557echo
1412 1558

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines