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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines