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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines