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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines