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.1 by pcg, Mon Nov 24 17:28:08 2003 UTC vs.
Revision 1.59 by root, Sun Jan 1 06:28:45 2006 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines