configure.in revision e0a2b6df
1e0a2b6dfSmrgdnl $XTermId: configure.in,v 1.322 2014/01/16 01:44:05 tom Exp $
2d522f475Smrgdnl
320d2c4d2Smrgdnl -----------------------------------------------------------------------------
420d2c4d2Smrgdnl this file is part of xterm
5d522f475Smrgdnl
6e0a2b6dfSmrgdnl Copyright 1997-2013,2014 by Thomas E. Dickey
720d2c4d2Smrgdnl 
8d522f475Smrgdnl                         All Rights Reserved
920d2c4d2Smrgdnl 
1020d2c4d2Smrgdnl Permission is hereby granted, free of charge, to any person obtaining a
1120d2c4d2Smrgdnl copy of this software and associated documentation files (the
1220d2c4d2Smrgdnl "Software"), to deal in the Software without restriction, including
1320d2c4d2Smrgdnl without limitation the rights to use, copy, modify, merge, publish,
1420d2c4d2Smrgdnl distribute, sublicense, and/or sell copies of the Software, and to
1520d2c4d2Smrgdnl permit persons to whom the Software is furnished to do so, subject to
1620d2c4d2Smrgdnl the following conditions:
1720d2c4d2Smrgdnl 
1820d2c4d2Smrgdnl The above copyright notice and this permission notice shall be included
1920d2c4d2Smrgdnl in all copies or substantial portions of the Software.
2020d2c4d2Smrgdnl 
2120d2c4d2Smrgdnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
2220d2c4d2Smrgdnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
2320d2c4d2Smrgdnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
2420d2c4d2Smrgdnl IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
2520d2c4d2Smrgdnl CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
2620d2c4d2Smrgdnl TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
2720d2c4d2Smrgdnl SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2820d2c4d2Smrgdnl 
2920d2c4d2Smrgdnl Except as contained in this notice, the name(s) of the above copyright
3020d2c4d2Smrgdnl holders shall not be used in advertising or otherwise to promote the
3120d2c4d2Smrgdnl sale, use or other dealings in this Software without prior written
3220d2c4d2Smrgdnl authorization.
33d522f475Smrgdnl ---------------------------------------------------------------------------
34d522f475Smrgdnl Process this file with autoconf to produce a configure script.
35d522f475Smrgdnl
360bd37d32SmrgAC_PREREQ(2.52.20030208)
37d522f475SmrgAC_INIT(charproc.c)
38d522f475SmrgAC_CONFIG_HEADER(xtermcfg.h:xtermcfg.hin)
39d522f475SmrgCF_CHECK_CACHE
40d522f475Smrg
41d522f475Smrg###	checks for alternative programs
42d522f475Smrg
43d522f475Smrgdnl Only add to this case statement when a system has a compiler that is not
44d522f475Smrgdnl detected by AC_PROG_CC.
45d522f475Smrgcase "$host_os" in
46d522f475Smrgopenedition)	: ${CFLAGS="-O2 -Wc,dll -Wl,EDIT=NO"}
47d522f475Smrg		: ${CPPFLAGS="-D_ALL_SOURCE"}
48d522f475Smrg		: ${LIBS="/usr/lib/Xaw.x /usr/lib/SM.x /usr/lib/ICE.x /usr/lib/X11.x"}
49d522f475Smrg		: ${CC=c89};;
50d522f475Smrgdarwin*)
51d522f475Smrg		: ${LDFLAGS}="${LDFLAGS} -Wl,-bind_at_load";;
52d522f475Smrgesac
53d522f475Smrg
540bd37d32SmrgCF_PROG_CC
55d522f475SmrgAC_PROG_CPP
56d522f475SmrgAC_PROG_AWK
570bd37d32SmrgCF_PROG_GROFF
58d522f475SmrgAC_PROG_INSTALL
59d522f475SmrgAC_PROG_LN_S
60d522f475SmrgAC_ARG_PROGRAM
61d522f475SmrgAC_CHECK_PROGS(LINT, tdlint lint alint)
62d522f475Smrg
63d522f475Smrg###	checks for compiler characteristics
64d522f475SmrgCF_XOPEN_SOURCE
65d522f475SmrgCF_SIGWINCH
66d522f475Smrg
67d522f475Smrg###	checks for header files
68d522f475SmrgAC_CHECK_HEADERS( \
690bd37d32Smrgncurses/curses.h \
70d522f475Smrgncurses/term.h \
71d522f475Smrgstdlib.h \
720bd37d32Smrgsys/ptem.h sys/ttydefaults.h \
73d522f475Smrgterm.h \
74d522f475Smrgtermios.h \
75d522f475Smrgunistd.h \
76d522f475Smrgwchar.h \
77d522f475Smrg)
78d522f475SmrgAC_HEADER_TIME
79d522f475SmrgAM_LANGINFO_CODESET
80d522f475Smrg
81d522f475Smrg###	checks for typedefs
82d522f475SmrgCF_SIG_ATOMIC_T
83d522f475SmrgAC_CHECK_TYPE(time_t, long)
840bd37d32SmrgCF_TYPE_CC_T
85d522f475SmrgAC_TYPE_MODE_T
86d522f475SmrgAC_TYPE_PID_T
87d522f475SmrgAC_TYPE_UID_T
88d522f475SmrgAC_TYPE_OFF_T
89d522f475Smrg
90d522f475Smrg###	checks for library functions
91d522f475SmrgAC_CHECK_FUNCS( \
92d522f475Smrg	gethostname \
93d522f475Smrg	getlogin \
94e0a2b6dfSmrg	initgroups \
95e0a2b6dfSmrg	mkdtemp \
96d522f475Smrg	putenv \
970bd37d32Smrg	unsetenv \
98d522f475Smrg	sched_yield \
990bd37d32Smrg	setpgid \
100d522f475Smrg	strftime \
101d522f475Smrg	tcgetattr \
102d522f475Smrg	waitpid \
103d522f475Smrg	wcswidth \
104d522f475Smrg	wcwidth )
105d522f475SmrgCF_UTMP
106d522f475SmrgCF_STRUCT_LASTLOG
107d522f475SmrgCF_POSIX_SAVED_IDS
108d522f475Smrg
109d522f475SmrgCF_HELP_MESSAGE(Compile/Install Options:)
110d522f475SmrgCF_FUNC_TGETENT
111d522f475Smrg
112e39b573cSmrgCF_WITH_APP_CLASS(XTerm)
113e39b573cSmrgCF_WITH_APP_DEFAULTS
1140bd37d32SmrgCF_WITH_ICON_NAME(xterm-color)
1150bd37d32SmrgCF_WITH_ICON_SYMLINK(xterm)
1160bd37d32SmrgCF_WITH_ICON_THEME([icons/$ICON_NAME icons/${ICON_NAME}_48x48],,,icons/${ICON_NAME}_48x48)
117e39b573cSmrgCF_DISABLE_DESKTOP(xterm)
1180bd37d32SmrgCF_WITH_DESKTOP_CATEGORY(xterm,
1190bd37d32Smrg	[*rxvt*|konsole|*-terminal],
1200bd37d32Smrg	[System|TerminalEmulator|Utility|*])
121d522f475Smrg
122d522f475SmrgAC_MSG_CHECKING(for install-permissions reference)
123d522f475SmrgAC_ARG_WITH(reference,
124d522f475Smrg	[  --with-reference=XXX    program to use as permissions-reference],
125d522f475Smrg	[with_reference=$withval],
126d522f475Smrg	[with_reference=xterm])
127d522f475SmrgAC_MSG_RESULT($with_reference)
128d522f475Smrg
129d522f475Smrgwith_full_paths=yes
130d522f475SmrgCF_PATH_PROG(XTERM_PATH,$with_reference)
131d522f475Smrg
132d522f475Smrg# If any of --program-prefix, --program-suffix or --program-transform-name is
133d522f475Smrg# given, accept an option tell the makefile to create a symbolic link, e.g.,
134d522f475Smrg# to "xterm" on install.
135d522f475SmrgXTERM_SYMLINK=NONE
136d522f475SmrgAC_SUBST(XTERM_SYMLINK)
137d522f475Smrgif test "$program_transform_name" != "'s,,,'" ; then
138d522f475Smrgcf_name=`echo "$program_transform_name" | sed -e '[s,\\$\\$,$,g]'`
139d522f475Smrgcf_name=`echo xterm |sed -e "$cf_name"`
140d522f475SmrgAC_MSG_CHECKING(for symbolic link to create to $cf_name)
141d522f475SmrgAC_ARG_WITH(xterm-symlink,
142d522f475Smrg	[  --with-xterm-symlink=XXX make symbolic link to installed xterm],
143d522f475Smrg	[with_symlink=$withval],
144d522f475Smrg	[with_symlink=xterm])
145d522f475SmrgAC_MSG_RESULT($with_symlink)
146d522f475Smrgtest "$with_symlink" = yes && with_symlink=xterm
147d522f475Smrgtest -n "$with_symlink" && \
148d522f475Smrg	test "$with_symlink" != no && \
149d522f475Smrg	test "$with_symlink" != $cf_name && \
150d522f475Smrg	XTERM_SYMLINK="$with_symlink"
151d522f475Smrgfi
152d522f475Smrg
1530bd37d32SmrgAC_MSG_CHECKING(if you want to disable openpty)
1540bd37d32SmrgCF_ARG_DISABLE(openpty,
1550bd37d32Smrg	[  --disable-openpty       disable openpty, prefer other interfaces],
1560bd37d32Smrg	[disable_openpty=yes],
1570bd37d32Smrg	[disable_openpty=no],
1580bd37d32Smrg	no)
1590bd37d32SmrgAC_MSG_RESULT($disable_openpty)
1600bd37d32Smrg
161d522f475SmrgAC_MSG_CHECKING(if you want to disable setuid)
162d522f475SmrgCF_ARG_DISABLE(setuid,
163d522f475Smrg	[  --disable-setuid        disable setuid in xterm, do not install setuid/setgid],
164d522f475Smrg	[disable_setuid=yes],
165d522f475Smrg	[disable_setuid=no],
166d522f475Smrg	no)
167d522f475SmrgAC_MSG_RESULT($disable_setuid)
168d522f475Smrg
169d522f475SmrgAC_MSG_CHECKING(if you want to disable setgid)
170d522f475SmrgCF_ARG_DISABLE(setgid,
171d522f475Smrg	[  --disable-setgid        disable setgid in xterm, do not install setuid/setgid],
172d522f475Smrg	[disable_setgid=yes],
173d522f475Smrg	[disable_setgid=no],
174d522f475Smrg	no)
175d522f475SmrgAC_MSG_RESULT($disable_setgid)
176d522f475Smrg
177d522f475SmrgAC_MSG_CHECKING(if you want to run xterm setuid to a given user)
178d522f475SmrgAC_ARG_WITH(setuid,
179d522f475Smrg	[  --with-setuid=XXX       use the given setuid user],
180d522f475Smrg	[use_given_setuid=$withval],
181d522f475Smrg	[use_given_setuid=no])
182d522f475SmrgAC_MSG_RESULT($use_given_setuid)
183d522f475Smrg
184d522f475Smrgif test "$use_given_setuid" != no ; then
185d522f475Smrg	if test "$use_given_setuid" = yes ; then
186d522f475Smrg		cf_cv_given_setuid=root
187d522f475Smrg	else
188d522f475Smrg		cf_cv_given_setuid=$use_given_setuid
189d522f475Smrg	fi
190e39b573cSmrg	# inherit SINSTALL_OPTS from environment to allow packager to customize it.
191d522f475Smrg	SINSTALL_OPTS="$SINSTALL_OPTS u+s -u $cf_cv_given_setuid"
192d522f475Smrgfi
193d522f475Smrg
194d522f475SmrgAC_MSG_CHECKING(if you want to run xterm setgid to match utmp/utmpx file)
195d522f475SmrgAC_ARG_WITH(utmp-setgid,
196d522f475Smrg	[  --with-utmp-setgid=XXX  use setgid to match utmp/utmpx file],
197d522f475Smrg	[use_utmp_setgid=$withval],
198d522f475Smrg	[use_utmp_setgid=no])
199d522f475SmrgAC_MSG_RESULT($use_utmp_setgid)
200d522f475Smrg
201d522f475Smrgif test "$use_utmp_setgid" != no ; then
202d522f475Smrg	if test "$use_utmp_setgid" = yes ; then
203d522f475Smrg		CF_UTMP_GROUP
204d522f475Smrg	else
205d522f475Smrg		cf_cv_utmp_group=$use_utmp_setgid
206d522f475Smrg	fi
207d522f475Smrg	if test "$cf_cv_posix_saved_ids" != yes ; then
208d522f475Smrg		AC_MSG_ERROR(Your system does not support POSIX saved-ids)
209d522f475Smrg	fi
2100bd37d32Smrg	AC_DEFINE(USE_UTMP_SETGID,1,[Define to 1 if we should use setgid to access utmp/utmpx])
211d522f475Smrg	SINSTALL_OPTS="$SINSTALL_OPTS g+s -g $cf_cv_utmp_group"
212d522f475Smrgfi
213d522f475Smrg
214d522f475SmrgAC_SUBST(SINSTALL_OPTS)
215d522f475Smrg
216d522f475SmrgAC_MSG_CHECKING(if you want to link with utempter)
217d522f475SmrgAC_ARG_WITH(utempter,
218d522f475Smrg	[  --with-utempter         use utempter library for access to utmp],
219d522f475Smrg	[use_utempter=$withval],
220d522f475Smrg	[use_utempter=no])
221d522f475SmrgAC_MSG_RESULT($use_utempter)
222d522f475Smrg
223d522f475Smrgif test "$use_utempter" = yes ; then
224d522f475Smrg	CF_UTEMPTER
225d522f475Smrg	test "$cf_cv_have_utempter" != yes && use_utempter=no
226d522f475Smrgelse
227d522f475Smrg	use_utempter=no
228d522f475Smrgfi
229d522f475Smrg
230d522f475Smrg# Some configurations permit (or require) either setuid or setgid mode.
231d522f475Smrg# Let the user decide.
232d522f475Smrgif test "$use_utempter" = yes ; then
233d522f475Smrg	if test "${enable_setuid+set}" != set ; then
234d522f475Smrg		disable_setuid=yes
235d522f475Smrg		CF_VERBOSE([No --disable-setuid option given, force to yes])
236d522f475Smrg	fi
237d522f475Smrgfi
238d522f475Smrg
239d522f475Smrg###	checks for external data
240d522f475SmrgCF_ERRNO
241d522f475SmrgCF_TTY_GROUP
242d522f475Smrg
243d522f475Smrg###	checks for system services and user specified options
244d522f475Smrg
245d522f475SmrgCF_POSIX_WAIT
246d522f475SmrgCF_SYSV
247d522f475SmrgCF_SVR4
248d522f475SmrgCF_X_TOOLKIT
249d522f475Smrg
250d522f475SmrgAC_CHECK_HEADERS( \
251d522f475Smrg	X11/DECkeysym.h \
252d522f475Smrg	X11/Sunkeysym.h \
253d522f475Smrg	X11/XF86keysym.h \
25420d2c4d2Smrg	X11/XKBlib.h \
255d522f475Smrg	X11/Xpoll.h \
25620d2c4d2Smrg	X11/extensions/XKB.h \
257d522f475Smrg	)
258d522f475Smrg
2590bd37d32SmrgCF_WITH_XPM
260d522f475SmrgCF_X_ATHENA
261d522f475SmrgCF_TYPE_FD_MASK
262d522f475SmrgCF_TERMIO_C_ISPEED
263d522f475Smrg
264e0a2b6dfSmrg# If we notice Xcursor, there is a workaround needed.
265e0a2b6dfSmrgAC_CHECK_LIB(Xcursor, XcursorGetTheme,[AC_DEFINE(HAVE_LIB_XCURSOR)])
266e0a2b6dfSmrg
267d522f475SmrgLIBS="$LIBS $X_EXTRA_LIBS"
268d522f475Smrg
2690bd37d32SmrgCF_FUNC_GRANTPT
2700bd37d32SmrgCF_XKB_QUERY_EXTENSION
2710bd37d32SmrgCF_XKB_KEYCODE_TO_KEYSYM
272d522f475SmrgCF_XKB_BELL_EXT
27320d2c4d2Smrg
274d522f475SmrgAC_CHECK_FUNCS(Xutf8LookupString, [],[
275d522f475Smrg	EXTRAHDRS="$EXTRAHDRS xutf8.h"
276d522f475Smrg	EXTRASRCS="$EXTRASRCS xutf8.c"
277d522f475Smrg	EXTRAOBJS="$EXTRAOBJS xutf8.o"
278d522f475Smrg])
279d522f475Smrg
280d522f475SmrgCF_WITH_IMAKE_CFLAGS($(MAIN_DEFINES) $(VENDORMANDEFS))
281d522f475Smrg
282e39b573cSmrg# If we have already established that there is a full termcap implementation,
283e39b573cSmrg# suppress the definitions for terminfo that we make have imported from the
284e39b573cSmrg# imake-file.
2850bd37d32Smrgif test "x$cf_cv_lib_tgetent" != xno || test "x$cf_cv_lib_part_tgetent" != xno ; then
286e39b573cSmrg	case "$IMAKE_CFLAGS" in
287e39b573cSmrg	*-DUSE_TERMINFO\ -DHAVE_TIGETSTR*)
288e39b573cSmrg		CF_UNDO_CFLAGS(IMAKE_CFLAGS,terminfo,[-DUSE_TERMINFO[[ 	]]*-DHAVE_TIGETSTR[[ 	]]*])
289e39b573cSmrg		CF_UNDO_CFLAGS(CPPFLAGS,terminfo,[-DUSE_TERMINFO[[ 	]]*-DHAVE_TIGETSTR[[ 	]]*])
290e39b573cSmrg		;;
291e39b573cSmrg	esac
292e39b573cSmrgfi
293e39b573cSmrg
294d522f475SmrgCF_HELP_MESSAGE(Terminal Configuration:)
295d522f475Smrg
296d522f475SmrgAC_MSG_CHECKING(for default terminal-id)
297d522f475SmrgAC_ARG_WITH(terminal-id,
2980bd37d32Smrg	[  --with-terminal-id=V    set default decTerminalID (default: vt420)],
299d522f475Smrg	[default_termid=$withval],
3000bd37d32Smrg	[default_termid=vt420])
301d522f475SmrgAC_MSG_RESULT($default_termid)
302d522f475Smrgcase $default_termid in
303d522f475Smrgvt*)	default_termid=`echo $default_termid | sed -e 's/^..//'`
304d522f475Smrg	;;
305d522f475Smrgesac
3060bd37d32SmrgAC_DEFINE_UNQUOTED(DFT_DECID,"$default_termid",[default terminal-id])
3070bd37d32SmrgAC_SUBST(default_termid)
308d522f475Smrg
309d522f475SmrgAC_MSG_CHECKING(for default terminal-type)
310d522f475SmrgAC_ARG_WITH(terminal-type,
311d522f475Smrg	[  --with-terminal-type=T  set default $TERM (default: xterm)],
312d522f475Smrg	[default_TERM=$withval],
313d522f475Smrg	[default_TERM=xterm])
314d522f475SmrgAC_MSG_RESULT($default_TERM)
3150bd37d32SmrgAC_DEFINE_UNQUOTED(DFT_TERMTYPE,"$default_TERM",[default terminal-type])
3160bd37d32SmrgAC_SUBST(default_TERM)
317d522f475Smrg
3180bd37d32Smrg###############################################################################
3190bd37d32SmrgAC_MSG_CHECKING(if backarrow-key should be BS)
3200bd37d32SmrgCF_ARG_DISABLE(backarrow-key,
3210bd37d32Smrg	[  --enable-backarrow-key  set default backarrowKey resource (default: true)],
3220bd37d32Smrg	[backarrow_is_bs=$enableval],
3230bd37d32Smrg	[backarrow_is_bs=yes])
3240bd37d32SmrgCF_XBOOL_RESULT(DEF_BACKARO_BS,backarrow_is_bs,[Define to 1 if backarrow-key should be BS])
3250bd37d32Smrg
3260bd37d32SmrgAC_MSG_CHECKING(if backarrow-key should be treated as erase)
3270bd37d32SmrgCF_ARG_ENABLE(backarrow-is-erase,
3280bd37d32Smrg	[  --enable-backarrow-is-erase set default backarrowKeyIsErase resource (default: false)],
3290bd37d32Smrg	[backarrow_is_erase=$enableval],
3300bd37d32Smrg	[backarrow_is_erase=no])
3310bd37d32SmrgCF_XBOOL_RESULT(DEF_BACKARO_ERASE,backarrow_is_erase,[Define to 1 if backarrow-key should be treated as erase])
3320bd37d32Smrg
3330bd37d32SmrgAC_MSG_CHECKING(for default backspace/DEL setting)
3340bd37d32SmrgAC_ARG_ENABLE(delete-is-del,
3350bd37d32Smrg	[  --enable-delete-is-del  set default deleteIsDEL resource (default: maybe)],
3360bd37d32Smrg	[delete_is_del=$enableval],
3370bd37d32Smrg	[delete_is_del=maybe])
3380bd37d32SmrgCF_XBOOL_RESULT(DEFDELETE_DEL,delete_is_del,[Define to 1 if default backspace/DEL setting is DEL])
3390bd37d32Smrg
3400bd37d32SmrgAC_MSG_CHECKING(if alt should send ESC)
3410bd37d32SmrgCF_ARG_ENABLE(alt-sends-esc,
3420bd37d32Smrg	[  --enable-alt-sends-esc  set default altSendsEscape resource (default: no)],
3430bd37d32Smrg	[alt_sends_esc=$enableval],
3440bd37d32Smrg	[alt_sends_esc=no])
3450bd37d32SmrgCF_XBOOL_RESULT(DEF_ALT_SENDS_ESC,alt_sends_esc,[Define to 1 if alt should send ESC])
3460bd37d32Smrg
3470bd37d32SmrgAC_MSG_CHECKING(if meta should send ESC)
3480bd37d32SmrgCF_ARG_ENABLE(meta-sends-esc,
3490bd37d32Smrg	[  --enable-meta-sends-esc set default metaSendsEscape resource (default: no)],
3500bd37d32Smrg	[meta_sends_esc=$enableval],
3510bd37d32Smrg	[meta_sends_esc=no])
3520bd37d32SmrgCF_XBOOL_RESULT(DEF_META_SENDS_ESC,meta_sends_esc,[Define to 1 if meta should send ESC])
3530bd37d32Smrg
3540bd37d32Smrg###############################################################################
35520d2c4d2SmrgAC_CHECK_PROG(cf_tic_prog,tic,yes,no)
35620d2c4d2Smrgif test "$cf_tic_prog" = yes ; then
35720d2c4d2Smrg	AC_MSG_CHECKING(for private terminfo-directory)
35820d2c4d2Smrg	AC_ARG_WITH(own-terminfo,
35920d2c4d2Smrg		[  --with-own-terminfo=P   set default $TERMINFO (default: from environment)],
36020d2c4d2Smrg		[TERMINFO_DIR=$withval],
36120d2c4d2Smrg		[TERMINFO_DIR=${TERMINFO-none}])
36220d2c4d2Smrg	AC_MSG_RESULT($TERMINFO_DIR)
36320d2c4d2Smrg	if test "$TERMINFO_DIR" = yes ; then
36420d2c4d2Smrg		AC_MSG_WARN(no value given)
36520d2c4d2Smrg	elif test "$TERMINFO_DIR" != none ; then
36620d2c4d2Smrg		if test -d $TERMINFO_DIR ; then
3670bd37d32Smrg			AC_DEFINE_UNQUOTED(OWN_TERMINFO_DIR,"$TERMINFO_DIR",[Define to override default TERMINFO value])
36820d2c4d2Smrg		else
36920d2c4d2Smrg			AC_MSG_WARN(not a directory)
37020d2c4d2Smrg		fi
37120d2c4d2Smrg	elif test "$prefix" != NONE ; then
37220d2c4d2Smrg		TERMINFO_DIR='${prefix}/lib/terminfo'
37320d2c4d2Smrg	elif test -d /usr/lib/terminfo ; then
37420d2c4d2Smrg		TERMINFO_DIR=/usr/lib/terminfo
375d522f475Smrg	else
37620d2c4d2Smrg		TERMINFO_DIR=
37720d2c4d2Smrg	fi
37820d2c4d2Smrg	SET_TERMINFO=
37920d2c4d2Smrg	if test -n "$TERMINFO_DIR" ; then
38020d2c4d2Smrg		TERMINFO_DIR='$(DESTDIR)'$TERMINFO_DIR
38120d2c4d2Smrg		SET_TERMINFO='TERMINFO=$(TERMINFO_DIR)'
382d522f475Smrg	fi
38320d2c4d2Smrg	no_ticprog=
384d522f475Smrgelse
38520d2c4d2Smrg	no_ticprog="#"
386d522f475Smrg	TERMINFO_DIR=
38720d2c4d2Smrg	SET_TERMINFO=
388d522f475Smrgfi
38920d2c4d2SmrgAC_SUBST(no_ticprog)
390d522f475SmrgAC_SUBST(TERMINFO_DIR)
391d522f475SmrgAC_SUBST(SET_TERMINFO)
392d522f475Smrg
393d522f475Smrg###############################################################################
394d522f475SmrgCF_HELP_MESSAGE(Optional Features:)
395d522f475Smrg
396d522f475SmrgAC_MSG_CHECKING(if you want active-icons)
397d522f475SmrgCF_ARG_DISABLE(active-icon,
398d522f475Smrg	[  --disable-active-icon   disable X11R6.3 active-icon feature],
399d522f475Smrg	[enable_active_icon=no],
400d522f475Smrg	[enable_active_icon=yes])
401d522f475SmrgAC_MSG_RESULT($enable_active_icon)
402d522f475Smrgif test "$enable_active_icon" = no ; then
4030bd37d32Smrg	AC_DEFINE(NO_ACTIVE_ICON,1,[Define to 1 to disable X11R6.3 active-icon feature])
404d522f475Smrgfi
405d522f475Smrg
406d522f475SmrgAC_MSG_CHECKING(if you want ANSI color)
407d522f475SmrgCF_ARG_DISABLE(ansi-color,
408d522f475Smrg	[  --disable-ansi-color    disable ANSI color],
409d522f475Smrg	[enable_ansi_color=no],
410d522f475Smrg	[enable_ansi_color=yes])
411d522f475SmrgAC_MSG_RESULT($enable_ansi_color)
4120bd37d32Smrgtest "$enable_ansi_color" = no && AC_DEFINE(OPT_ISO_COLORS,0,[Define to 0 to disable ANSI color])
413d522f475Smrg
414d522f475Smrgif test "$enable_ansi_color" = yes ; then
415d522f475Smrg
416d522f475Smrg	AC_MSG_CHECKING(if you want 16 colors like aixterm)
417d522f475Smrg	CF_ARG_DISABLE(16-color,
418d522f475Smrg		[  --disable-16-color      disable 16-color support],
419d522f475Smrg		[enable_16_color=no],
420d522f475Smrg		[enable_16_color=yes])
421d522f475Smrg	AC_MSG_RESULT($enable_16_color)
4220bd37d32Smrg	test "$enable_16_color" = no && AC_DEFINE(OPT_AIX_COLORS,0,[Define to 0 to disable 16-color support])
423d522f475Smrg
424d522f475Smrg	AC_MSG_CHECKING(if you want 256 colors)
425d522f475Smrg	CF_ARG_ENABLE(256-color,
426d522f475Smrg		[  --enable-256-color      enable 256-color support],
427d522f475Smrg		[enable_256_color=yes],
428d522f475Smrg		[enable_256_color=no])
429d522f475Smrg	AC_MSG_RESULT($enable_256_color)
430d522f475Smrg	if test "$enable_256_color" = yes ; then
431d522f475Smrg		CHARPROC_DEPS="$CHARPROC_DEPS 256colres.h"
432d522f475Smrg		EXTRAHDRS="$EXTRAHDRS 256colres.h"
4330bd37d32Smrg		AC_DEFINE(OPT_256_COLORS,1,[Define to 1 to enable 256-color support])
434d522f475Smrg	else
435d522f475Smrg	AC_MSG_CHECKING(if you want 88 colors)
436d522f475Smrg	CF_ARG_ENABLE(88-color,
437d522f475Smrg		[  --enable-88-color       enable 88-color support],
438d522f475Smrg		[enable_88_color=yes],
439d522f475Smrg		[enable_88_color=no])
440d522f475Smrg	AC_MSG_RESULT($enable_88_color)
441d522f475Smrg	if test "$enable_88_color" = yes ; then
442d522f475Smrg		CHARPROC_DEPS="$CHARPROC_DEPS 88colres.h"
443d522f475Smrg		EXTRAHDRS="$EXTRAHDRS 88colres.h"
4440bd37d32Smrg		AC_DEFINE(OPT_88_COLORS,1,[Define to 1 to enable 88-color support])
445d522f475Smrg	fi
446d522f475Smrg	fi
447d522f475Smrg
448d522f475Smrgfi
449d522f475Smrg
450d522f475SmrgAC_MSG_CHECKING(if you want blinking cursor)
451d522f475SmrgCF_ARG_DISABLE(blink-cursor,
452d522f475Smrg	[  --disable-blink-cursor  disable support for blinking cursor],
453d522f475Smrg	[enable_blink_curs=no],
454d522f475Smrg	[enable_blink_curs=yes])
455d522f475SmrgAC_MSG_RESULT($enable_blink_curs)
4560bd37d32Smrgtest "$enable_blink_curs" = no && AC_DEFINE(OPT_BLINK_CURS,0,[Define to 0 to disable support for blinking cursor])
457d522f475Smrg
458d522f475SmrgAC_MSG_CHECKING(if you want to ignore Linux's broken palette-strings)
459d522f475Smrg
460d522f475Smrgcase $host_os in #(vi
461d522f475Smrglinux*)
462d522f475Smrg	assume_broken_osc=yes ;; #(vi
463d522f475Smrg*)
464d522f475Smrg	assume_broken_osc=no ;;
465d522f475Smrgesac
466d522f475Smrg
467d522f475SmrgCF_ARG_OPTION(broken-osc,
468d522f475Smrg	[  --enable-broken-osc     allow broken Linux OSC-strings],
469d522f475Smrg	[enable_broken_osc=$enableval],
470d522f475Smrg	[enable_broken_osc=$enableval],
471d522f475Smrg	[$assume_broken_osc])
472d522f475SmrgAC_MSG_RESULT($enable_broken_osc)
473d522f475Smrgif test "$enable_broken_osc" = yes ; then
4740bd37d32Smrg	AC_DEFINE(OPT_BROKEN_OSC,1,[Define to 1 to allow broken Linux OSC-strings])
475d522f475Smrgelse
4760bd37d32Smrg	AC_DEFINE(OPT_BROKEN_OSC,0,[Define to 0 to allow broken Linux OSC-strings])
477d522f475Smrgfi
478d522f475Smrg
479d522f475SmrgAC_MSG_CHECKING(if you want to allow broken string-terminators)
480d522f475SmrgCF_ARG_ENABLE(broken-st,
48120d2c4d2Smrg	[  --disable-broken-st     disallow broken string-terminators],
48220d2c4d2Smrg	[enable_broken_st=no],
48320d2c4d2Smrg	[enable_broken_st=yes])
484d522f475SmrgAC_MSG_RESULT($enable_broken_st)
4850bd37d32Smrgtest "$enable_broken_st" = no && AC_DEFINE(OPT_BROKEN_ST,0,[Define to 0 to disallow broken string-terminators])
486d522f475Smrg
487d522f475SmrgAC_MSG_CHECKING(if you want printable 128-159)
488d522f475SmrgCF_ARG_DISABLE(c1-print,
489d522f475Smrg	[  --disable-c1-print      disallow -k8 option for printable 128-159],
490d522f475Smrg	[enable_c1_print=no],
491d522f475Smrg	[enable_c1_print=yes])
492d522f475SmrgAC_MSG_RESULT($enable_c1_print)
4930bd37d32Smrgtest "$enable_c1_print" = no && AC_DEFINE(OPT_C1_PRINT,0,[Define to 0 to disallow -k8 option for printable 128-159])
494d522f475Smrg
495d522f475Smrgif test "$enable_ansi_color" = yes ; then
496d522f475Smrg
497d522f475Smrg	AC_MSG_CHECKING(if you want bold colors mapped like IBM PC)
498d522f475Smrg	CF_ARG_DISABLE(bold-color,
499d522f475Smrg		[  --disable-bold-color    disable PC-style mapping of bold colors],
500d522f475Smrg		[enable_pc_color=no],
501d522f475Smrg		[enable_pc_color=yes])
502d522f475Smrg	AC_MSG_RESULT($enable_pc_color)
5030bd37d32Smrg	test "$enable_pc_color" = no && AC_DEFINE(OPT_PC_COLORS,0,[Define to 0 to disable PC-style mapping of bold colors])
504d522f475Smrg
505d522f475Smrg	AC_MSG_CHECKING(if you want separate color-classes)
506d522f475Smrg	CF_ARG_DISABLE(color-class,
507d522f475Smrg		[  --disable-color-class   disable separate color class resources],
508d522f475Smrg		[enable_color_class=no],
509d522f475Smrg		[enable_color_class=yes])
510d522f475Smrg	AC_MSG_RESULT($enable_color_class)
5110bd37d32Smrg	test "$enable_color_class" = no && AC_DEFINE(OPT_COLOR_CLASS,0,[Define to 0 to disable separate color class resources])
512d522f475Smrg
513d522f475Smrg	AC_MSG_CHECKING(if you want color-mode enabled by default)
514d522f475Smrg	CF_ARG_DISABLE(color-mode,
515d522f475Smrg		[  --disable-color-mode    disable default colorMode resource],
516d522f475Smrg		[default_colormode=no],
517d522f475Smrg		[default_colormode=yes])
518d522f475Smrg	AC_MSG_RESULT($default_colormode)
5190bd37d32Smrg	test "$default_colormode" = no && AC_DEFINE(DFT_COLORMODE,0,[Define to 0 if you want color-mode enabled by default])
520d522f475Smrg
521d522f475Smrgfi
522d522f475Smrg
523d522f475SmrgAC_MSG_CHECKING(if you want support for color highlighting)
524d522f475SmrgCF_ARG_DISABLE(highlighting,
525d522f475Smrg	[  --disable-highlighting  disable support for color highlighting],
526d522f475Smrg	[default_highlight=no],
527d522f475Smrg	[default_highlight=yes])
528d522f475SmrgAC_MSG_RESULT($default_highlight)
5290bd37d32Smrgtest "$default_highlight" = no && AC_DEFINE(OPT_HIGHLIGHT_COLOR,0,[Define to 1 if you want support for color highlighting])
530d522f475Smrg
531d522f475SmrgAC_MSG_CHECKING(if you want support for doublesize characters)
532d522f475SmrgCF_ARG_DISABLE(doublechars,
533d522f475Smrg	[  --disable-doublechars   disable support for double-size chars],
534d522f475Smrg	[enable_doublechars=no],
535d522f475Smrg	[enable_doublechars=yes])
536d522f475SmrgAC_MSG_RESULT($enable_doublechars)
5370bd37d32Smrgtest "$enable_doublechars" = no && AC_DEFINE(OPT_DEC_CHRSET,0,[Define to 0 to disable support for double-size chars])
538d522f475Smrg
539d522f475SmrgAC_MSG_CHECKING(if you want fallback-support for box characters)
540d522f475SmrgCF_ARG_DISABLE(boxchars,
541d522f475Smrg	[  --disable-boxchars      disable fallback-support for box chars],
542d522f475Smrg	[enable_boxchars=no],
543d522f475Smrg	[enable_boxchars=yes])
544d522f475SmrgAC_MSG_RESULT($enable_boxchars)
5450bd37d32Smrgtest "$enable_boxchars" = no && AC_DEFINE(OPT_BOX_CHARS,0,[Define to 0 to disable fallback-support for box chars])
546d522f475Smrg
547d522f475SmrgAC_MSG_CHECKING(if you want to allow spawning new xterms)
548d522f475SmrgCF_ARG_ENABLE(exec-xterm,
549d522f475Smrg	[  --enable-exec-xterm     enable "spawn-new-terminal" action],
550d522f475Smrg	[enable_exec_xterm=yes],
551d522f475Smrg	[enable_exec_xterm=no])
552d522f475SmrgAC_MSG_RESULT($enable_exec_xterm)
553d522f475Smrgif test "$enable_exec_xterm" = yes ; then
554d522f475Smrg	CF_PROCFS_CWD
555d522f475Smrg	if test "$cf_cv_procfs_cwd" = no ; then
556d522f475Smrg		AC_MSG_WARN(no suitable proc filesystem found)
557d522f475Smrg	else
5580bd37d32Smrg		AC_DEFINE_UNQUOTED(PROCFS_ROOT,"$cf_cv_procfs_cwd",[This is defined via the --enable-exec-xterm option])
5590bd37d32Smrg		AC_DEFINE(OPT_EXEC_XTERM,1,[Define to 1 to enable "spawn-new-terminal" action])
560d522f475Smrg	fi
561d522f475Smrgfi
562d522f475Smrg
5630bd37d32SmrgAC_MSG_CHECKING(if you want to use double-buffering)
5640bd37d32SmrgCF_ARG_ENABLE(double-buffer,
5650bd37d32Smrg	[  --enable-double-buffer  enable double-buffering],
5660bd37d32Smrg	[enable_double_bfr=yes],
5670bd37d32Smrg	[enable_double_bfr=no])
5680bd37d32SmrgAC_MSG_RESULT($enable_double_bfr)
5690bd37d32Smrgif test "$enable_double_bfr" = yes ; then
5700bd37d32Smrg	case "x$LIBS" in
5710bd37d32Smrg	*Xext*)
5720bd37d32Smrg		;;
5730bd37d32Smrg	*)
5740bd37d32Smrg		CF_X_EXT 
5750bd37d32Smrg		;;
5760bd37d32Smrg	esac
5770bd37d32Smrg	AC_DEFINE(OPT_DOUBLE_BUFFER,1,[Define to 1 to enable double-buffering])
5780bd37d32Smrgfi
5790bd37d32Smrg
580d522f475SmrgAC_MSG_CHECKING(if you want to use FreeType library)
581d522f475SmrgCF_ARG_DISABLE(freetype,
582d522f475Smrg	[  --disable-freetype      disable freetype library-support],
583d522f475Smrg	[enable_freetype=no],
584d522f475Smrg	[enable_freetype=yes])
585d522f475SmrgAC_MSG_RESULT($enable_freetype)
586d522f475Smrgif test "$enable_freetype" = yes ; then
5876879286fSmrg	CF_X_FONTCONFIG
588d522f475Smrgelse
589d522f475Smrg	CPPFLAGS=`echo "$CPPFLAGS" | sed -e s/-DXRENDERFONT//`
590d522f475Smrgfi
591d522f475Smrg
592d522f475SmrgAC_MSG_CHECKING(if you want support for HP-style function keys)
593d522f475SmrgCF_ARG_ENABLE(hp-fkeys,
594d522f475Smrg	[  --enable-hp-fkeys       enable support for HP-style function keys],
595d522f475Smrg	[enable_hp_fkeys=yes],
596d522f475Smrg	[enable_hp_fkeys=no])
597d522f475SmrgAC_MSG_RESULT($enable_hp_fkeys)
598d522f475Smrgif test "$enable_hp_fkeys" = yes ; then
5990bd37d32Smrg	AC_DEFINE(OPT_HP_FUNC_KEYS,1,[Define to 1 to enable support for HP-style function keys])
600d522f475Smrgfi
601d522f475Smrg
602d522f475SmrgAC_MSG_CHECKING(if you want support for SCO-style function keys)
603d522f475SmrgCF_ARG_ENABLE(sco-fkeys,
604d522f475Smrg	[  --enable-sco-fkeys      enable support for SCO-style function keys],
605d522f475Smrg	[enable_sco_fkeys=yes],
606d522f475Smrg	[enable_sco_fkeys=no])
607d522f475SmrgAC_MSG_RESULT($enable_sco_fkeys)
608d522f475Smrgif test "$enable_sco_fkeys" = yes ; then
6090bd37d32Smrg	AC_DEFINE(OPT_SCO_FUNC_KEYS,1,[Define to 1 to enable support for SCO-style function keys])
610d522f475Smrgfi
611d522f475Smrg
612d522f475SmrgAC_MSG_CHECKING(if you want support for Sun-style function keys)
613d522f475SmrgCF_ARG_DISABLE(sun-fkeys,
614d522f475Smrg	[  --disable-sun-fkeys     disable support for Sun-style function keys],
615d522f475Smrg	[enable_sun_fkeys=no],
616d522f475Smrg	[enable_sun_fkeys=yes])
617d522f475SmrgAC_MSG_RESULT($enable_sun_fkeys)
618d522f475Smrgif test "$enable_sun_fkeys" = no ; then
6190bd37d32Smrg	AC_DEFINE(OPT_SUN_FUNC_KEYS,0,[Define to 0 to disable support for Sun-style function keys])
620d522f475Smrgfi
621d522f475Smrg
622956cc18dSsnjAC_MSG_CHECKING(if you want saved-lines stored as a FIFO)
623956cc18dSsnjCF_ARG_DISABLE(fifo-lines,
62420d2c4d2Smrg	[  --disable-fifo-lines    disable FIFO-storage for saved-lines],
625956cc18dSsnj	[enable_fifo_lines=no],
626956cc18dSsnj	[enable_fifo_lines=yes])
627956cc18dSsnjAC_MSG_RESULT($enable_fifo_lines)
628956cc18dSsnjif test "$enable_fifo_lines" = yes ; then
6290bd37d32Smrg	AC_DEFINE(OPT_FIFO_LINES,1,[Define to 1 to disable FIFO-storage for saved-lines])
630956cc18dSsnjfi
631956cc18dSsnj
632d522f475SmrgAC_MSG_CHECKING(if you want support for internationalization)
633d522f475SmrgCF_ARG_DISABLE(i18n,
634d522f475Smrg	[  --disable-i18n          disable internationalization],
635d522f475Smrg	[enable_i18n=no],
636d522f475Smrg	[enable_i18n=yes])
637d522f475SmrgAC_MSG_RESULT($enable_i18n)
638d522f475Smrgif test "$enable_i18n" = no ; then
6390bd37d32Smrg	AC_DEFINE(OPT_I18N_SUPPORT,0,[Define to 0 to disable internationalization])
640d522f475Smrgfi
641d522f475Smrg
642d522f475SmrgAC_MSG_CHECKING(if you want support for initial-erase setup)
643d522f475SmrgCF_ARG_DISABLE(initial-erase,
644d522f475Smrg	[  --disable-initial-erase disable setup for stty erase],
645d522f475Smrg	[enable_ie=no],
646d522f475Smrg	[enable_ie=yes])
647d522f475SmrgAC_MSG_RESULT($enable_ie)
648d522f475Smrgif test "$enable_ie" = no ; then
6490bd37d32Smrg	AC_DEFINE(OPT_INITIAL_ERASE,0,[Define to 0 to disable setup for stty erase])
650d522f475Smrgfi
651d522f475Smrg
652d522f475SmrgAC_MSG_CHECKING(if you want support for input-method)
653d522f475SmrgCF_ARG_DISABLE(input-method,
654d522f475Smrg	[  --disable-input-method  disable input-method],
655d522f475Smrg	[enable_ximp=no],
656d522f475Smrg	[enable_ximp=yes])
657d522f475SmrgAC_MSG_RESULT($enable_ximp)
658d522f475SmrgCF_INPUT_METHOD
659d522f475Smrgtest "$cf_cv_input_method" = no && enable_ximp=no
660d522f475Smrgif test "$enable_ximp" = no ; then
6610bd37d32Smrg	AC_DEFINE(OPT_INPUT_METHOD,0,[Define to 0 to disable input-method])
662d522f475Smrgfi
663d522f475Smrg
664d522f475SmrgAC_MSG_CHECKING(if you want support for load-vt-fonts)
665d522f475SmrgCF_ARG_ENABLE(load-vt-fonts,
666d522f475Smrg	[  --enable-load-vt-fonts  enable load-vt-fonts() action],
667d522f475Smrg	[enable_load_vt_fonts=yes],
668d522f475Smrg	[enable_load_vt_fonts=no])
669d522f475SmrgAC_MSG_RESULT($enable_load_vt_fonts)
670d522f475Smrgif test "$enable_load_vt_fonts" = yes ; then
6710bd37d32Smrg	AC_DEFINE(OPT_LOAD_VTFONTS,1,[Define to 1 to enable load-vt-fonts() action])
672d522f475Smrgfi
673d522f475Smrg
674d522f475SmrgAC_MSG_CHECKING(if you want support for logging)
675d522f475SmrgCF_ARG_ENABLE(logging,
676d522f475Smrg	[  --enable-logging        enable logging],
677d522f475Smrg	[enable_logging=yes],
678d522f475Smrg	[enable_logging=no])
679d522f475SmrgAC_MSG_RESULT($enable_logging)
680d522f475Smrgif test "$enable_logging" = yes ; then
6810bd37d32Smrg	AC_DEFINE(ALLOWLOGGING,1,[if you want support for logging])
682d522f475Smrg	AC_MSG_CHECKING(if you want to allow logging via a pipe)
683d522f475Smrg	CF_ARG_ENABLE(logfile-exec,
684d522f475Smrg		[  --enable-logfile-exec   enable exec'd logfile filter],
685d522f475Smrg		[enable_log_exec=yes],
686d522f475Smrg		[enable_log_exec=no])
687d522f475Smrg	AC_MSG_RESULT($enable_log_exec)
688d522f475Smrg	if test "$enable_log_exec" = yes ; then
6890bd37d32Smrg		AC_DEFINE(ALLOWLOGFILEEXEC,1,[if you want to allow logging via a pipe])
690d522f475Smrg	fi
691d522f475Smrgfi
692d522f475Smrg
693d522f475SmrgAC_MSG_CHECKING(if you want support for iconify/maximize translations)
694d522f475SmrgCF_ARG_DISABLE(maximize,
695d522f475Smrg	[  --disable-maximize      disable actions for iconify/deiconify/maximize/restore],
696d522f475Smrg	[enable_maximize=no],
697d522f475Smrg	[enable_maximize=yes])
698d522f475SmrgAC_MSG_RESULT($enable_maximize)
6990bd37d32Smrgtest "$enable_maximize" = no && AC_DEFINE(OPT_MAXIMIZE,0,[Define to 0 to disable actions for iconify/deiconify/maximize/restore])
700d522f475Smrg
701d522f475SmrgAC_MSG_CHECKING(if you want NumLock to override keyboard tables)
702d522f475SmrgCF_ARG_DISABLE(num-lock,
703d522f475Smrg	[  --disable-num-lock      disable NumLock keypad support],
704d522f475Smrg	[enable_numlock=no],
705d522f475Smrg	[enable_numlock=yes])
706d522f475SmrgAC_MSG_RESULT($enable_numlock)
7070bd37d32Smrgtest "$enable_numlock" = no && AC_DEFINE(OPT_NUM_LOCK,0,[Define to 0 to disable NumLock keypad support])
708d522f475Smrg
709d522f475SmrgAC_MSG_CHECKING(if you want support for get/set of base64 selection data)
710d522f475Smrg
7112eaa94a1SchristosCF_ARG_DISABLE(paste64,
7122eaa94a1Schristos	[  --disable-paste64       disable get/set base64 selection data],
7132eaa94a1Schristos	[enable_paste64=no],
7142eaa94a1Schristos	[enable_paste64=yes])
715d522f475SmrgAC_MSG_RESULT($enable_paste64)
716d522f475Smrgif test "$enable_paste64" = yes ; then
7170bd37d32Smrg	AC_DEFINE(OPT_PASTE64,1,[Define to 1 to disable get/set base64 selection data])
718d522f475Smrgelse
7190bd37d32Smrg	AC_DEFINE(OPT_PASTE64,0,[Define to 0 to disable get/set base64 selection data])
720d522f475Smrgfi
721d522f475Smrg
722d522f475SmrgAC_MSG_CHECKING(if you want support for pty-handshaking)
723d522f475Smrg
724d522f475SmrgCF_ARG_DISABLE(pty-handshake,
725d522f475Smrg	[  --disable-pty-handshake disable pty-handshake support],
726d522f475Smrg	[enable_pty_handshake=no],
727d522f475Smrg	[enable_pty_handshake=yes])
728d522f475SmrgAC_MSG_RESULT($enable_pty_handshake)
729d522f475Smrgif test "$enable_pty_handshake" = yes ; then
7300bd37d32Smrg	AC_DEFINE(OPT_PTY_HANDSHAKE,1,[Define to 1 to disable pty-handshake support])
731d522f475Smrgelse
7320bd37d32Smrg	AC_DEFINE(OPT_PTY_HANDSHAKE,0,[Define to 0 to disable pty-handshake support])
733d522f475Smrgfi
734d522f475Smrg
735d522f475SmrgAC_MSG_CHECKING(if you want support for mouse in readline applications)
736d522f475SmrgCF_ARG_ENABLE(readline-mouse,
737d522f475Smrg	[  --enable-readline-mouse enable support for mouse in readline applications],
738d522f475Smrg	[enable_readline_mouse=yes],
739d522f475Smrg	[enable_readline_mouse=no])
740d522f475SmrgAC_MSG_RESULT($enable_readline_mouse)
741d522f475Smrgif test "$enable_readline_mouse" = yes ; then
7420bd37d32Smrg	AC_DEFINE(OPT_READLINE,1,[Define to 1 to enable support for mouse in readline applications])
743d522f475Smrgfi
744d522f475Smrg
745d522f475SmrgAC_MSG_CHECKING(if you want support for regular-expression selections)
746d522f475SmrgCF_ARG_DISABLE(regex,
747d522f475Smrg	[  --disable-regex         disable regular-expression selections],
748d522f475Smrg	[enable_regex=no],
749d522f475Smrg	[enable_regex=yes])
750d522f475SmrgAC_MSG_RESULT($enable_regex)
751d522f475Smrgif test "$enable_regex" = yes ; then
752d522f475Smrg	CF_WITH_PCRE
753d522f475Smrg	if test "$with_pcre" = no ; then
754d522f475Smrg		CF_REGEX
75520d2c4d2Smrg		if test "X$cf_cv_regex_hdrs" != "Xregex.h" ; then
756d522f475Smrg			AC_MSG_ERROR(Only POSIX or PCRE regular expressions are supported)
757d522f475Smrg		fi
758d522f475Smrg	fi
7590bd37d32Smrg	AC_DEFINE(OPT_SELECT_REGEX,1,[Define to 1 to enable regular-expression selections])
760d522f475Smrgfi
761d522f475Smrg
762d522f475SmrgAC_MSG_CHECKING(if you want support for right-scrollbar)
763d522f475SmrgCF_ARG_DISABLE(rightbar,
764d522f475Smrg	[  --disable-rightbar      disable right-scrollbar support],
765d522f475Smrg	[enable_rightbar=no],
766d522f475Smrg	[enable_rightbar=yes])
767d522f475SmrgAC_MSG_RESULT($enable_rightbar)
768d522f475Smrgif test "$enable_rightbar" = yes ; then
7690bd37d32Smrg	AC_DEFINE(SCROLLBAR_RIGHT,1,[Define to 1 to enable right-scrollbar support])
770d522f475Smrgfi
771d522f475Smrg
772d522f475SmrgAC_MSG_CHECKING(if you want check for redundant name-change)
773d522f475SmrgCF_ARG_DISABLE(samename,
774d522f475Smrg	[  --disable-samename      disable check for redundant name-change],
775d522f475Smrg	[enable_samename=no],
776d522f475Smrg	[enable_samename=yes])
777d522f475SmrgAC_MSG_RESULT($enable_samename)
7780bd37d32Smrgtest "$enable_samename" = no && AC_DEFINE(OPT_SAME_NAME,0,[Define to 0 to disable check for redundant name-change])
7790bd37d32Smrg
7800bd37d32SmrgAC_MSG_CHECKING(if you want support for selection-actions)
7810bd37d32SmrgCF_ARG_DISABLE(selection-ops,
7820bd37d32Smrg	[  --disable-selection-ops disable selection-action operations],
7830bd37d32Smrg	[enable_selection_ops=no],
7840bd37d32Smrg	[enable_selection_ops=yes])
7850bd37d32SmrgAC_MSG_RESULT($enable_selection_ops)
7860bd37d32Smrgtest "$enable_selection_ops" = no && AC_DEFINE(OPT_SELECTION_OPS,0,[Define to 0 disable selection-action operations])
787d522f475Smrg
788d522f475SmrgAC_MSG_CHECKING(if you want support for session management)
789d522f475SmrgCF_ARG_DISABLE(session-mgt,
790d522f475Smrg	[  --disable-session-mgt   disable support for session management],
791d522f475Smrg	[enable_session_mgt=no],
792d522f475Smrg	[enable_session_mgt=yes])
793d522f475SmrgAC_MSG_RESULT($enable_session_mgt)
7940bd37d32Smrgtest "$enable_session_mgt" = no && AC_DEFINE(OPT_SESSION_MGT,0,[Define to 0 to disable support for session management])
795d522f475Smrg
796d522f475SmrgAC_MSG_CHECKING(if you want to use termcap function-keys)
797d522f475SmrgCF_ARG_DISABLE(tcap-fkeys,
798d522f475Smrg	[  --disable-tcap-fkeys    disable termcap function-keys support],
799d522f475Smrg	[enable_tcap_fkeys=no],
800d522f475Smrg	[enable_tcap_fkeys=yes])
801d522f475SmrgAC_MSG_RESULT($enable_tcap_fkeys)
8020bd37d32Smrgtest "$enable_tcap_fkeys" = yes && AC_DEFINE(OPT_TCAP_FKEYS,1,[Define to 1 to disable termcap function-keys support])
803d522f475Smrg
804d522f475SmrgAC_MSG_CHECKING(if you want to use termcap-query/report)
8052eaa94a1SchristosCF_ARG_DISABLE(tcap-query,
8062eaa94a1Schristos	[  --disable-tcap-query    disable compiled-in termcap-query support],
8072eaa94a1Schristos	[enable_tcap_query=no],
8082eaa94a1Schristos	[enable_tcap_query=yes])
809d522f475SmrgAC_MSG_RESULT($enable_tcap_query)
8100bd37d32Smrgtest "$enable_tcap_query" = yes && AC_DEFINE(OPT_TCAP_QUERY,1,[Define to 1 to disable compiled-in termcap-query support])
811d522f475Smrg
812d522f475SmrgAC_MSG_CHECKING(if you want support for tek4014)
813d522f475SmrgCF_ARG_DISABLE(tek4014,
814d522f475Smrg	[  --disable-tek4014       disable tek4014 emulation],
815d522f475Smrg	[enable_tek4014=no],
816d522f475Smrg	[enable_tek4014=yes])
817d522f475SmrgAC_MSG_RESULT($enable_tek4014)
818d522f475Smrgif test "$enable_tek4014" = no ; then
8190bd37d32Smrg	AC_DEFINE(OPT_TEK4014,0,[Define to 0 to disable tek4014 emulation])
820d522f475Smrgelse
821d522f475Smrg	EXTRAHDRS="$EXTRAHDRS Tekparse.h"
822d522f475Smrg	EXTRASRCS="$EXTRASRCS TekPrsTbl.c Tekproc.c"
823d522f475Smrg	EXTRAOBJS="$EXTRAOBJS TekPrsTbl.o Tekproc.o"
824d522f475Smrgfi
825d522f475Smrg
826d522f475SmrgAC_MSG_CHECKING(if you want pulldown menus with a toolbar)
827d522f475SmrgCF_ARG_ENABLE(toolbar,
828d522f475Smrg	[  --enable-toolbar        compile-in toolbar for pulldown menus],
829d522f475Smrg	[enable_toolbar=yes],
830d522f475Smrg	[enable_toolbar=no])
831d522f475SmrgAC_MSG_RESULT($enable_toolbar)
832d522f475Smrgif test "$enable_toolbar" = yes ; then
8330bd37d32Smrg	AC_DEFINE(OPT_TOOLBAR,1,[Define to 1 to compile-in toolbar for pulldown menus])
834d522f475Smrgfi
835d522f475Smrg
836d522f475SmrgAC_MSG_CHECKING(if you want VT52 emulation)
837d522f475SmrgCF_ARG_DISABLE(vt52,
838d522f475Smrg	[  --disable-vt52          disable VT52 emulation],
839d522f475Smrg	[enable_vt52=no],
840d522f475Smrg	[enable_vt52=yes])
841d522f475SmrgAC_MSG_RESULT($enable_vt52)
8420bd37d32Smrgtest "$enable_vt52" = no && AC_DEFINE(OPT_VT52_MODE,0,[Define to 0 to disable VT52 emulation])
843d522f475Smrg
844e0a2b6dfSmrgAC_MSG_CHECKING(if you want wide-character support)
845e0a2b6dfSmrgCF_ARG_DISABLE(wide-chars,
846e0a2b6dfSmrg	[  --disable-wide-chars    disable wide-character support],
847e0a2b6dfSmrg	[enable_wchar=no],
848e0a2b6dfSmrg	[enable_wchar=yes])
849e0a2b6dfSmrgAC_MSG_RESULT($enable_wchar)
850e0a2b6dfSmrg
851e0a2b6dfSmrgAC_MSG_CHECKING(if you want only 16-bit character support)
852e0a2b6dfSmrgCF_ARG_ENABLE(16bit-chars,
853e0a2b6dfSmrg	[  --enable-16bit-chars    enable 16-bit character support],
854e0a2b6dfSmrg	[enable_16bit_chars=yes],
855e0a2b6dfSmrg	[enable_16bit_chars=no])
856e0a2b6dfSmrgAC_MSG_RESULT($enable_16bit_chars)
857e0a2b6dfSmrg
858e0a2b6dfSmrgif test "$enable_16bit_chars" = yes ; then
859e0a2b6dfSmrg	AC_DEFINE(OPT_WIDER_ICHAR,0,[Define to 0 to enable 16-bit character support])
860e0a2b6dfSmrg	enable_wchar=yes
861e0a2b6dfSmrgfi
862e0a2b6dfSmrg
863e0a2b6dfSmrgif test "$enable_wchar" = yes ; then
864e0a2b6dfSmrg
865d522f475SmrgAC_MSG_CHECKING(if you want to use mini-luit/Latin9 built-in support)
866d522f475SmrgCF_ARG_ENABLE(mini-luit,
867d522f475Smrg	[  --enable-mini-luit      enable mini-luit (built-in Latin9 support)],
868d522f475Smrg	[enable_mini_luit=yes],
869d522f475Smrg	[enable_mini_luit=no])
870d522f475SmrgAC_MSG_RESULT($enable_mini_luit)
871d522f475Smrgif test "$enable_mini_luit" = yes ; then
8720bd37d32Smrg	AC_DEFINE(OPT_MINI_LUIT,1,[Define to 1 to enable mini-luit (built-in Latin9 support)])
873d522f475Smrgfi
874d522f475Smrg
875d522f475SmrgAC_MSG_CHECKING(if you want to use luit)
876e0a2b6dfSmrgCF_ARG_DISABLE(luit,
877e0a2b6dfSmrg	[  --disable-luit          enable luit filter (Unicode translation)],
878e0a2b6dfSmrg	[enable_luit=no],
879e0a2b6dfSmrg	[enable_luit=yes])
880d522f475SmrgAC_MSG_RESULT($enable_luit)
881d522f475Smrgif test "$enable_luit" = yes ; then
8820bd37d32Smrg	AC_DEFINE(OPT_LUIT_PROG,1,[Define to 1 to enable luit filter (Unicode translation)])
88320d2c4d2Smrg	CF_PATH_PROG(LUIT,xterm-filter,bluit luit)
884d522f475Smrgfi
885d522f475Smrg
8860bd37d32Smrg	AC_DEFINE(OPT_WIDE_CHARS,1,[Define to 1 to enable wide-character support])
887d522f475Smrg	EXTRAHDRS="$EXTRAHDRS charclass.h precompose.h wcwidth.h"
888d522f475Smrg	EXTRASRCS="$EXTRASRCS charclass.c precompose.c wcwidth.c"
889d522f475Smrg	EXTRAOBJS="$EXTRAOBJS charclass.o precompose.o wcwidth.o"
890d522f475Smrgfi
891d522f475Smrg
892d522f475SmrgAC_MSG_CHECKING(if you want dynamic-abbreviation support)
893d522f475SmrgCF_ARG_ENABLE(dabbrev,
894d522f475Smrg	[  --enable-dabbrev        enable dynamic-abbreviation support],
895d522f475Smrg	[enable_dabbrev=yes],
896d522f475Smrg	[enable_dabbrev=no])
897d522f475SmrgAC_MSG_RESULT($enable_dabbrev)
898d522f475Smrgif test "$enable_dabbrev" = yes ; then
8990bd37d32Smrg	AC_DEFINE(OPT_DABBREV,1,[Define to 1 to enable dynamic-abbreviation support])
900d522f475Smrgfi
901d522f475Smrg
902d522f475SmrgAC_MSG_CHECKING(if you want DECterm Locator support)
903d522f475SmrgCF_ARG_ENABLE(dec-locator,
904d522f475Smrg	[  --enable-dec-locator    enable DECterm Locator support],
905d522f475Smrg	[enable_dec_locator=yes],
906d522f475Smrg	[enable_dec_locator=no])
907d522f475SmrgAC_MSG_RESULT($enable_dec_locator)
908d522f475Smrgif test "$enable_dec_locator" = yes ; then
9090bd37d32Smrg	AC_DEFINE(OPT_DEC_LOCATOR,1,[Define to 1 to enable DECterm Locator support])
910d522f475Smrgfi
911d522f475Smrg
912e0a2b6dfSmrgAC_MSG_CHECKING(if you want sixel graphics support)
913e0a2b6dfSmrgCF_ARG_ENABLE(sixel-graphics,
914e0a2b6dfSmrg	[  --enable-sixel-graphics enable sixel graphics support],
915e0a2b6dfSmrg	[enable_sixel_graphics=yes],
916e0a2b6dfSmrg	[enable_sixel_graphics=no])
917e0a2b6dfSmrgAC_MSG_RESULT($enable_sixel_graphics)
918e0a2b6dfSmrgif test "$enable_sixel_graphics" = yes ; then
919e0a2b6dfSmrg	AC_DEFINE(OPT_SIXEL_GRAPHICS,1,[Define to 1 to enable sixel graphics support])
920e0a2b6dfSmrg	EXTRAHDRS="$EXTRAHDRS graphics.h"
921e0a2b6dfSmrg	EXTRASRCS="$EXTRASRCS graphics.c"
922e0a2b6dfSmrg	EXTRAOBJS="$EXTRAOBJS graphics.o"
923e0a2b6dfSmrgfi
924e0a2b6dfSmrg
925d522f475SmrgAC_MSG_CHECKING(if you want VT420 rectangle support)
926d522f475SmrgCF_ARG_DISABLE(rectangles,
927d522f475Smrg	[  --disable-rectangles    disable VT420 rectangle support],
928d522f475Smrg	[enable_rectangles=no],
929d522f475Smrg	[enable_rectangles=yes])
930d522f475SmrgAC_MSG_RESULT($enable_rectangles)
931d522f475Smrgif test "$enable_rectangles" = yes ; then
9320bd37d32Smrg	AC_DEFINE(OPT_DEC_RECTOPS,1,[Define to 1 to disable VT420 rectangle support])
933d522f475Smrgfi
934d522f475Smrg
935d522f475SmrgAC_MSG_CHECKING(if you want -ziconbeep option)
936d522f475SmrgCF_ARG_DISABLE(ziconbeep,
937d522f475Smrg	[  --disable-ziconbeep     disable -ziconbeep option],
938d522f475Smrg	[enable_ziconbeep=no],
939d522f475Smrg	[enable_ziconbeep=yes])
940d522f475SmrgAC_MSG_RESULT($enable_ziconbeep)
9410bd37d32Smrgtest "$enable_ziconbeep" = no && AC_DEFINE(OPT_ZICONBEEP,0,[Define to 0 to disable -ziconbeep option])
942d522f475Smrg
943d522f475Smrg###############################################################################
944d522f475SmrgCF_HELP_MESSAGE(Testing/development Options:)
945d522f475Smrg
946d522f475SmrgAC_MSG_CHECKING(if you want debugging traces)
947d522f475SmrgCF_ARG_ENABLE(trace,
948d522f475Smrg	[  --enable-trace          test: set to enable debugging traces],
949d522f475Smrg	[enable_trace=yes],
950d522f475Smrg	[enable_trace=no])
951d522f475SmrgAC_MSG_RESULT($enable_trace)
952d522f475Smrgif test "$enable_trace" = yes ; then
9530bd37d32Smrg	AC_DEFINE(OPT_TRACE,1,[Define to 1 to enable debugging traces])
954d522f475Smrg	EXTRASRCS="$EXTRASRCS trace.c"
955d522f475Smrg	EXTRAOBJS="$EXTRAOBJS trace.o"
956d522f475Smrgfi
957d522f475Smrg
9580bd37d32SmrgCF_DISABLE_LEAKS
959d522f475SmrgCF_DISABLE_ECHO
960d522f475Smrg
961d522f475SmrgAC_MSG_CHECKING(if you want magic cookie emulation)
962d522f475SmrgCF_ARG_ENABLE(xmc-glitch,
963d522f475Smrg	[  --enable-xmc-glitch     test: enable xmc magic-cookie emulation],
964d522f475Smrg	[enable_xmc=yes],
965d522f475Smrg	[enable_xmc=no])
966d522f475SmrgAC_MSG_RESULT($enable_xmc)
967d522f475Smrgif test "$enable_xmc" = yes ; then
9680bd37d32Smrg	AC_DEFINE(OPT_XMC_GLITCH,1,[Define to 1 to enable xmc magic-cookie emulation])
969d522f475Smrg	EXTRASRCS="$EXTRASRCS testxmc.c"
970d522f475Smrg	EXTRAOBJS="$EXTRAOBJS testxmc.o"
971d522f475Smrgfi
972d522f475Smrg
973d522f475Smrgdnl FIXME - extra test needed to make tcap-fkeys work on HPUX
974d522f475SmrgAC_CHECK_FUNCS(tigetstr)
975d522f475Smrg
9762eaa94a1Schristosdnl only check for ncurses' use_extended_names if really not using termcap
9772eaa94a1Schristosif test -n "$cf_cv_lib_part_tgetent"; then
9782eaa94a1Schristos    AC_CHECK_FUNCS(use_extended_names)
9792eaa94a1Schristosfi
9802eaa94a1Schristos
981d522f475Smrgif test -n "$GCC" ; then
982d522f475SmrgAC_MSG_CHECKING(if you want to turn on gcc warnings)
983d522f475SmrgCF_ARG_ENABLE(warnings,
984d522f475Smrg	[  --enable-warnings       test: turn on GCC compiler warnings],
985d522f475Smrg	[with_warnings=yes],
986d522f475Smrg	[with_warnings=no])
987d522f475SmrgAC_MSG_RESULT($with_warnings)
988d522f475Smrgif test "$with_warnings" = yes
989d522f475Smrgthen
990d522f475Smrg	CF_GCC_ATTRIBUTES
991d522f475Smrg	CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
992d522f475Smrgfi
993d522f475Smrgfi
994d522f475Smrg
995d522f475SmrgAC_SUBST(EXTRA_CFLAGS)
996d522f475SmrgAC_SUBST(CHARPROC_DEPS)
997d522f475SmrgAC_SUBST(EXTRAHDRS)
998d522f475SmrgAC_SUBST(EXTRASRCS)
999d522f475SmrgAC_SUBST(EXTRAOBJS)
1000d522f475Smrg
10010bd37d32Smrgtest "$disable_setuid" = yes && AC_DEFINE(DISABLE_SETUID,1,[Define to 1 if you want to disable setuid])
10020bd37d32Smrgtest "$disable_setgid" = yes && AC_DEFINE(DISABLE_SETGID,1,[Define to 1 if you want to disable setgid])
1003d522f475Smrg
1004d522f475Smrgif test $disable_setuid = yes ; then
1005d522f475Smrg	MAY_SETUID="#"
1006d522f475Smrg	NOT_SETUID=
1007d522f475Smrgelif test $disable_setgid = yes ; then
1008d522f475Smrg	MAY_SETUID="#"
1009d522f475Smrg	NOT_SETUID=
1010d522f475Smrgelse
1011d522f475Smrg	MAY_SETUID=
1012d522f475Smrg	NOT_SETUID="#"
1013d522f475Smrgfi
1014d522f475Smrg
1015d522f475SmrgAC_SUBST(MAY_SETUID)
1016d522f475SmrgAC_SUBST(NOT_SETUID)
1017d522f475Smrg
1018d522f475Smrg###	remove from CPPFLAGS the optional features we define in xtermcfg.h
1019d522f475Smrg###	or other conflicting symbols that may be defined via imake:
1020d522f475Smrgfor cf_def in \
1021d522f475Smrg	__STDC__ \
1022d522f475Smrg	ALLOWLOGGING \
1023d522f475Smrg	ALLOWLOGFILEEXEC \
1024d522f475Smrg	OPT_LUIT_PROG \
1025d522f475Smrg	OPT_WIDE_CHARS \
1026d522f475Smrg	SCROLLBAR_RIGHT \
1027d522f475Smrg	USE_TTY_GROUP \
1028d522f475Smrg	USE_UTEMPTER \
1029d522f475Smrg	XRENDERFONT
1030d522f475Smrgdo
1031d522f475Smrg	CPPFLAGS=`echo "$CPPFLAGS" | sed -e s/-D$cf_def//`
1032d522f475Smrgdone
1033d522f475Smrg
103420d2c4d2SmrgCF_MAKE_TAGS
103520d2c4d2SmrgCF_DISABLE_RPATH_HACK
103620d2c4d2Smrg
103720d2c4d2Smrg# Force plink.sh to not trim pcre's libraries, which have the same symbol
103820d2c4d2Smrg# names as the system regexp.
103920d2c4d2Smrgif test "$with_pcre" != no
104020d2c4d2Smrgthen
104120d2c4d2Smrg	LIBS=`echo "$LIBS" | sed -e 's/-lpcre/-kpcre/g'`
104220d2c4d2Smrgfi
104320d2c4d2Smrg
1044e39b573cSmrg###	output xtermcfg.h, etc
10450bd37d32SmrgAC_OUTPUT(Makefile df-install minstall:minstall.in)
1046