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.12 by pcg, Sun Feb 22 08:09:36 2004 UTC vs.
Revision 1.67 by root, Wed Jan 11 19:55:34 2006 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines