diff options
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 1018 |
1 files changed, 1018 insertions, 0 deletions
diff --git a/configure.in b/configure.in new file mode 100644 index 0000000..44fe9ab --- /dev/null +++ b/configure.in @@ -0,0 +1,1018 @@ +dnl $XTermId: configure.in,v 1.292 2012/06/21 22:07:14 tom Exp $ +dnl +dnl ----------------------------------------------------------------------------- +dnl this file is part of xterm +dnl +dnl Copyright 1997-2011,2012 by Thomas E. Dickey +dnl +dnl All Rights Reserved +dnl +dnl Permission is hereby granted, free of charge, to any person obtaining a +dnl copy of this software and associated documentation files (the +dnl "Software"), to deal in the Software without restriction, including +dnl without limitation the rights to use, copy, modify, merge, publish, +dnl distribute, sublicense, and/or sell copies of the Software, and to +dnl permit persons to whom the Software is furnished to do so, subject to +dnl the following conditions: +dnl +dnl The above copyright notice and this permission notice shall be included +dnl in all copies or substantial portions of the Software. +dnl +dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +dnl IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY +dnl CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +dnl TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +dnl SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +dnl +dnl Except as contained in this notice, the name(s) of the above copyright +dnl holders shall not be used in advertising or otherwise to promote the +dnl sale, use or other dealings in this Software without prior written +dnl authorization. +dnl --------------------------------------------------------------------------- +dnl Process this file with autoconf to produce a configure script. +dnl +AC_PREREQ(2.13.20030927) +AC_INIT(charproc.c) +AC_CONFIG_HEADER(xtermcfg.h:xtermcfg.hin) +CF_CHECK_CACHE + +### checks for alternative programs + +dnl Only add to this case statement when a system has a compiler that is not +dnl detected by AC_PROG_CC. +case "$host_os" in +openedition) : ${CFLAGS="-O2 -Wc,dll -Wl,EDIT=NO"} + : ${CPPFLAGS="-D_ALL_SOURCE"} + : ${LIBS="/usr/lib/Xaw.x /usr/lib/SM.x /usr/lib/ICE.x /usr/lib/X11.x"} + : ${CC=c89};; +darwin*) + : ${LDFLAGS}="${LDFLAGS} -Wl,-bind_at_load";; +esac + +AC_PROG_CC +AC_PROG_CPP +AC_PROG_GCC_TRADITIONAL +AC_PROG_AWK +AC_PROG_INSTALL +AC_PROG_LN_S +AC_ARG_PROGRAM +AC_CHECK_PROGS(LINT, tdlint lint alint) + +### checks for UNIX variants that set C preprocessor variables +AC_AIX +AC_ISC_POSIX + +### checks for compiler characteristics +CF_ANSI_CC_CHECK +AC_C_CONST +CF_PROG_EXT +CF_XOPEN_SOURCE +CF_SIGWINCH + +### checks for header files +AC_CHECK_HEADERS( \ +ncurses/curses.h \ +ncurses/term.h \ +stdlib.h \ +sys/ptem.h sys/ttydefaults.h \ +term.h \ +termios.h \ +unistd.h \ +wchar.h \ +) +AC_HEADER_TIME +AM_LANGINFO_CODESET + +### checks for typedefs +CF_SIG_ATOMIC_T +CF_SIZE_T +AC_CHECK_TYPE(time_t, long) +CF_TYPE_CC_T +AC_TYPE_MODE_T +AC_TYPE_PID_T +AC_TYPE_UID_T +AC_TYPE_OFF_T + +### checks for library functions +AC_CHECK_FUNCS( \ + bcopy \ + gethostname \ + getlogin \ + memmove \ + putenv \ + unsetenv \ + sched_yield \ + setpgid \ + strerror \ + strftime \ + tcgetattr \ + waitpid \ + wcswidth \ + wcwidth ) +CF_FUNC_MEMMOVE +CF_UTMP +CF_STRUCT_LASTLOG +CF_POSIX_SAVED_IDS + +CF_HELP_MESSAGE(Compile/Install Options:) +CF_FUNC_TGETENT + +CF_WITH_APP_CLASS(XTerm) +CF_WITH_APP_DEFAULTS +CF_WITH_ICON_THEME(icons/xterm-color,,,icons/xterm-color_48x48) +CF_DISABLE_DESKTOP(xterm) +CF_WITH_DESKTOP_CATEGORY(xterm,[*rxvt*|konsole|*-terminal],[System|TerminalEmulator|Utility|*]) + +AC_MSG_CHECKING(for install-permissions reference) +AC_ARG_WITH(reference, + [ --with-reference=XXX program to use as permissions-reference], + [with_reference=$withval], + [with_reference=xterm]) +AC_MSG_RESULT($with_reference) + +with_full_paths=yes +CF_PATH_PROG(XTERM_PATH,$with_reference) + +# If any of --program-prefix, --program-suffix or --program-transform-name is +# given, accept an option tell the makefile to create a symbolic link, e.g., +# to "xterm" on install. +XTERM_SYMLINK=NONE +AC_SUBST(XTERM_SYMLINK) +if test "$program_transform_name" != "'s,,,'" ; then +cf_name=`echo "$program_transform_name" | sed -e '[s,\\$\\$,$,g]'` +cf_name=`echo xterm |sed -e "$cf_name"` +AC_MSG_CHECKING(for symbolic link to create to $cf_name) +AC_ARG_WITH(xterm-symlink, + [ --with-xterm-symlink=XXX make symbolic link to installed xterm], + [with_symlink=$withval], + [with_symlink=xterm]) +AC_MSG_RESULT($with_symlink) +test "$with_symlink" = yes && with_symlink=xterm +test -n "$with_symlink" && \ + test "$with_symlink" != no && \ + test "$with_symlink" != $cf_name && \ + XTERM_SYMLINK="$with_symlink" +fi + +AC_MSG_CHECKING(if you want to disable setuid) +CF_ARG_DISABLE(setuid, + [ --disable-setuid disable setuid in xterm, do not install setuid/setgid], + [disable_setuid=yes], + [disable_setuid=no], + no) +AC_MSG_RESULT($disable_setuid) + +AC_MSG_CHECKING(if you want to disable setgid) +CF_ARG_DISABLE(setgid, + [ --disable-setgid disable setgid in xterm, do not install setuid/setgid], + [disable_setgid=yes], + [disable_setgid=no], + no) +AC_MSG_RESULT($disable_setgid) + +AC_MSG_CHECKING(if you want to run xterm setuid to a given user) +AC_ARG_WITH(setuid, + [ --with-setuid=XXX use the given setuid user], + [use_given_setuid=$withval], + [use_given_setuid=no]) +AC_MSG_RESULT($use_given_setuid) + +if test "$use_given_setuid" != no ; then + if test "$use_given_setuid" = yes ; then + cf_cv_given_setuid=root + else + cf_cv_given_setuid=$use_given_setuid + fi + # inherit SINSTALL_OPTS from environment to allow packager to customize it. + SINSTALL_OPTS="$SINSTALL_OPTS u+s -u $cf_cv_given_setuid" +fi + +AC_MSG_CHECKING(if you want to run xterm setgid to match utmp/utmpx file) +AC_ARG_WITH(utmp-setgid, + [ --with-utmp-setgid=XXX use setgid to match utmp/utmpx file], + [use_utmp_setgid=$withval], + [use_utmp_setgid=no]) +AC_MSG_RESULT($use_utmp_setgid) + +if test "$use_utmp_setgid" != no ; then + if test "$use_utmp_setgid" = yes ; then + CF_UTMP_GROUP + else + cf_cv_utmp_group=$use_utmp_setgid + fi + if test "$cf_cv_posix_saved_ids" != yes ; then + AC_MSG_ERROR(Your system does not support POSIX saved-ids) + fi + AC_DEFINE(USE_UTMP_SETGID) + SINSTALL_OPTS="$SINSTALL_OPTS g+s -g $cf_cv_utmp_group" +fi + +AC_SUBST(SINSTALL_OPTS) + +AC_MSG_CHECKING(if you want to link with utempter) +AC_ARG_WITH(utempter, + [ --with-utempter use utempter library for access to utmp], + [use_utempter=$withval], + [use_utempter=no]) +AC_MSG_RESULT($use_utempter) + +if test "$use_utempter" = yes ; then + CF_UTEMPTER + test "$cf_cv_have_utempter" != yes && use_utempter=no +else + use_utempter=no +fi + +# Some configurations permit (or require) either setuid or setgid mode. +# Let the user decide. +if test "$use_utempter" = yes ; then + if test "${enable_setuid+set}" != set ; then + disable_setuid=yes + CF_VERBOSE([No --disable-setuid option given, force to yes]) + fi +fi + +### checks for external data +CF_ERRNO +CF_TTY_GROUP + +### checks for system services and user specified options + +CF_POSIX_WAIT +CF_SYSV +CF_SVR4 +CF_X_TOOLKIT + +AC_CHECK_HEADERS( \ + X11/DECkeysym.h \ + X11/Sunkeysym.h \ + X11/XF86keysym.h \ + X11/XKBlib.h \ + X11/Xpoll.h \ + X11/extensions/XKB.h \ + ) + +CF_X_ATHENA +CF_TYPE_FD_MASK +CF_TERMIO_C_ISPEED + +LIBS="$LIBS $X_EXTRA_LIBS" + +CF_FUNC_GRANTPT +AC_CHECK_FUNCS(XkbQueryExtension XkbKeycodeToKeysym) + +CF_XKB_BELL_EXT + +AC_CHECK_FUNCS(Xutf8LookupString, [],[ + EXTRAHDRS="$EXTRAHDRS xutf8.h" + EXTRASRCS="$EXTRASRCS xutf8.c" + EXTRAOBJS="$EXTRAOBJS xutf8.o" +]) + +CF_WITH_IMAKE_CFLAGS($(MAIN_DEFINES) $(VENDORMANDEFS)) + +# If we have already established that there is a full termcap implementation, +# suppress the definitions for terminfo that we make have imported from the +# imake-file. +if test "x$cf_cv_lib_tgetent" != xno || test "x$cf_cv_lib_part_tgetent" != xno ; then + case "$IMAKE_CFLAGS" in + *-DUSE_TERMINFO\ -DHAVE_TIGETSTR*) + CF_UNDO_CFLAGS(IMAKE_CFLAGS,terminfo,[-DUSE_TERMINFO[[ ]]*-DHAVE_TIGETSTR[[ ]]*]) + CF_UNDO_CFLAGS(CPPFLAGS,terminfo,[-DUSE_TERMINFO[[ ]]*-DHAVE_TIGETSTR[[ ]]*]) + ;; + esac +fi + +CF_HELP_MESSAGE(Terminal Configuration:) + +AC_MSG_CHECKING(for default terminal-id) +AC_ARG_WITH(terminal-id, + [ --with-terminal-id=V set default decTerminalID (default: vt100)], + [default_termid=$withval], + [default_termid=vt420]) +AC_MSG_RESULT($default_termid) +case $default_termid in +vt*) default_termid=`echo $default_termid | sed -e 's/^..//'` + ;; +esac +AC_DEFINE_UNQUOTED(DFT_DECID,"$default_termid") +AC_SUBST(default_termid) + +AC_MSG_CHECKING(for default terminal-type) +AC_ARG_WITH(terminal-type, + [ --with-terminal-type=T set default $TERM (default: xterm)], + [default_TERM=$withval], + [default_TERM=xterm]) +AC_MSG_RESULT($default_TERM) +AC_DEFINE_UNQUOTED(DFT_TERMTYPE,"$default_TERM") +AC_SUBST(default_TERM) + +############################################################################### +AC_MSG_CHECKING(if backarrow-key should be DEL) +CF_ARG_DISABLE(backarrow-key, + [ --enable-backarrow-is-del set default backarrowKey resource (default: true)], + [backarrow_is_del=$enableval], + [backarrow_is_del=yes]) +CF_XBOOL_RESULT(DEF_BACKARO_DEL,backarrow_is_del) + +AC_MSG_CHECKING(if backarrow-key should be treated as erase) +CF_ARG_ENABLE(backarrow-is-erase, + [ --enable-backarrow-is-erase set default backarrowKeyIsErase resource (default: false)], + [backarrow_is_erase=$enableval], + [backarrow_is_erase=no]) +CF_XBOOL_RESULT(DEF_BACKARO_ERASE,backarrow_is_erase) + +AC_MSG_CHECKING(for default backspace/DEL setting) +AC_ARG_ENABLE(delete-is-del, + [ --enable-delete-is-del set default deleteIsDEL resource (default: maybe)], + [delete_is_del=$enableval], + [delete_is_del=maybe]) +CF_XBOOL_RESULT(DEFDELETE_DEL,delete_is_del) + +AC_MSG_CHECKING(if alt should send ESC) +CF_ARG_ENABLE(alt-sends-esc, + [ --enable-alt-sends-esc set default altSendsEscape resource (default: no)], + [alt_sends_esc=$enableval], + [alt_sends_esc=no]) +CF_XBOOL_RESULT(DEF_ALT_SENDS_ESC,alt_sends_esc) + +AC_MSG_CHECKING(if meta should send ESC) +CF_ARG_ENABLE(meta-sends-esc, + [ --enable-meta-sends-esc set default metaSendsEscape resource (default: no)], + [meta_sends_esc=$enableval], + [meta_sends_esc=no]) +CF_XBOOL_RESULT(DEF_META_SENDS_ESC,meta_sends_esc) + +############################################################################### +AC_CHECK_PROG(cf_tic_prog,tic,yes,no) +if test "$cf_tic_prog" = yes ; then + AC_MSG_CHECKING(for private terminfo-directory) + AC_ARG_WITH(own-terminfo, + [ --with-own-terminfo=P set default $TERMINFO (default: from environment)], + [TERMINFO_DIR=$withval], + [TERMINFO_DIR=${TERMINFO-none}]) + AC_MSG_RESULT($TERMINFO_DIR) + if test "$TERMINFO_DIR" = yes ; then + AC_MSG_WARN(no value given) + elif test "$TERMINFO_DIR" != none ; then + if test -d $TERMINFO_DIR ; then + AC_DEFINE_UNQUOTED(OWN_TERMINFO_DIR,"$TERMINFO_DIR") + else + AC_MSG_WARN(not a directory) + fi + elif test "$prefix" != NONE ; then + TERMINFO_DIR='${prefix}/lib/terminfo' + elif test -d /usr/lib/terminfo ; then + TERMINFO_DIR=/usr/lib/terminfo + else + TERMINFO_DIR= + fi + SET_TERMINFO= + if test -n "$TERMINFO_DIR" ; then + TERMINFO_DIR='$(DESTDIR)'$TERMINFO_DIR + SET_TERMINFO='TERMINFO=$(TERMINFO_DIR)' + fi + no_ticprog= +else + no_ticprog="#" + TERMINFO_DIR= + SET_TERMINFO= +fi +AC_SUBST(no_ticprog) +AC_SUBST(TERMINFO_DIR) +AC_SUBST(SET_TERMINFO) + +############################################################################### +CF_HELP_MESSAGE(Optional Features:) + +AC_MSG_CHECKING(if you want active-icons) +CF_ARG_DISABLE(active-icon, + [ --disable-active-icon disable X11R6.3 active-icon feature], + [enable_active_icon=no], + [enable_active_icon=yes]) +AC_MSG_RESULT($enable_active_icon) +if test "$enable_active_icon" = no ; then + AC_DEFINE(NO_ACTIVE_ICON) +fi + +AC_MSG_CHECKING(if you want ANSI color) +CF_ARG_DISABLE(ansi-color, + [ --disable-ansi-color disable ANSI color], + [enable_ansi_color=no], + [enable_ansi_color=yes]) +AC_MSG_RESULT($enable_ansi_color) +test "$enable_ansi_color" = no && AC_DEFINE(OPT_ISO_COLORS,0) + +if test "$enable_ansi_color" = yes ; then + + AC_MSG_CHECKING(if you want 16 colors like aixterm) + CF_ARG_DISABLE(16-color, + [ --disable-16-color disable 16-color support], + [enable_16_color=no], + [enable_16_color=yes]) + AC_MSG_RESULT($enable_16_color) + test "$enable_16_color" = no && AC_DEFINE(OPT_AIX_COLORS,0) + + AC_MSG_CHECKING(if you want 256 colors) + CF_ARG_ENABLE(256-color, + [ --enable-256-color enable 256-color support], + [enable_256_color=yes], + [enable_256_color=no]) + AC_MSG_RESULT($enable_256_color) + if test "$enable_256_color" = yes ; then + CHARPROC_DEPS="$CHARPROC_DEPS 256colres.h" + EXTRAHDRS="$EXTRAHDRS 256colres.h" + AC_DEFINE(OPT_256_COLORS,1) + else + AC_MSG_CHECKING(if you want 88 colors) + CF_ARG_ENABLE(88-color, + [ --enable-88-color enable 88-color support], + [enable_88_color=yes], + [enable_88_color=no]) + AC_MSG_RESULT($enable_88_color) + if test "$enable_88_color" = yes ; then + CHARPROC_DEPS="$CHARPROC_DEPS 88colres.h" + EXTRAHDRS="$EXTRAHDRS 88colres.h" + AC_DEFINE(OPT_88_COLORS,1) + fi + fi + +fi + +AC_MSG_CHECKING(if you want blinking cursor) +CF_ARG_DISABLE(blink-cursor, + [ --disable-blink-cursor disable support for blinking cursor], + [enable_blink_curs=no], + [enable_blink_curs=yes]) +AC_MSG_RESULT($enable_blink_curs) +test "$enable_blink_curs" = no && AC_DEFINE(OPT_BLINK_CURS,0) + +AC_MSG_CHECKING(if you want to ignore Linux's broken palette-strings) + +case $host_os in #(vi +linux*) + assume_broken_osc=yes ;; #(vi +*) + assume_broken_osc=no ;; +esac + +CF_ARG_OPTION(broken-osc, + [ --enable-broken-osc allow broken Linux OSC-strings], + [enable_broken_osc=$enableval], + [enable_broken_osc=$enableval], + [$assume_broken_osc]) +AC_MSG_RESULT($enable_broken_osc) +if test "$enable_broken_osc" = yes ; then + AC_DEFINE(OPT_BROKEN_OSC,1) +else + AC_DEFINE(OPT_BROKEN_OSC,0) +fi + +AC_MSG_CHECKING(if you want to allow broken string-terminators) +CF_ARG_ENABLE(broken-st, + [ --disable-broken-st disallow broken string-terminators], + [enable_broken_st=no], + [enable_broken_st=yes]) +AC_MSG_RESULT($enable_broken_st) +test "$enable_broken_st" = no && AC_DEFINE(OPT_BROKEN_ST,0) + +AC_MSG_CHECKING(if you want printable 128-159) +CF_ARG_DISABLE(c1-print, + [ --disable-c1-print disallow -k8 option for printable 128-159], + [enable_c1_print=no], + [enable_c1_print=yes]) +AC_MSG_RESULT($enable_c1_print) +test "$enable_c1_print" = no && AC_DEFINE(OPT_C1_PRINT,0) + +if test "$enable_ansi_color" = yes ; then + + AC_MSG_CHECKING(if you want bold colors mapped like IBM PC) + CF_ARG_DISABLE(bold-color, + [ --disable-bold-color disable PC-style mapping of bold colors], + [enable_pc_color=no], + [enable_pc_color=yes]) + AC_MSG_RESULT($enable_pc_color) + test "$enable_pc_color" = no && AC_DEFINE(OPT_PC_COLORS,0) + + AC_MSG_CHECKING(if you want separate color-classes) + CF_ARG_DISABLE(color-class, + [ --disable-color-class disable separate color class resources], + [enable_color_class=no], + [enable_color_class=yes]) + AC_MSG_RESULT($enable_color_class) + test "$enable_color_class" = no && AC_DEFINE(OPT_COLOR_CLASS,FALSE) + + AC_MSG_CHECKING(if you want color-mode enabled by default) + CF_ARG_DISABLE(color-mode, + [ --disable-color-mode disable default colorMode resource], + [default_colormode=no], + [default_colormode=yes]) + AC_MSG_RESULT($default_colormode) + test "$default_colormode" = no && AC_DEFINE(DFT_COLORMODE,FALSE) + +fi + +AC_MSG_CHECKING(if you want support for color highlighting) +CF_ARG_DISABLE(highlighting, + [ --disable-highlighting disable support for color highlighting], + [default_highlight=no], + [default_highlight=yes]) +AC_MSG_RESULT($default_highlight) +test "$default_highlight" = no && AC_DEFINE(OPT_HIGHLIGHT_COLOR,0) + +AC_MSG_CHECKING(if you want support for doublesize characters) +CF_ARG_DISABLE(doublechars, + [ --disable-doublechars disable support for double-size chars], + [enable_doublechars=no], + [enable_doublechars=yes]) +AC_MSG_RESULT($enable_doublechars) +test "$enable_doublechars" = no && AC_DEFINE(OPT_DEC_CHRSET,0) + +AC_MSG_CHECKING(if you want fallback-support for box characters) +CF_ARG_DISABLE(boxchars, + [ --disable-boxchars disable fallback-support for box chars], + [enable_boxchars=no], + [enable_boxchars=yes]) +AC_MSG_RESULT($enable_boxchars) +test "$enable_boxchars" = no && AC_DEFINE(OPT_BOX_CHARS,0) + +AC_MSG_CHECKING(if you want to allow spawning new xterms) +CF_ARG_ENABLE(exec-xterm, + [ --enable-exec-xterm enable "spawn-new-terminal" action], + [enable_exec_xterm=yes], + [enable_exec_xterm=no]) +AC_MSG_RESULT($enable_exec_xterm) +if test "$enable_exec_xterm" = yes ; then + CF_PROCFS_CWD + if test "$cf_cv_procfs_cwd" = no ; then + AC_MSG_WARN(no suitable proc filesystem found) + else + AC_DEFINE_UNQUOTED(PROCFS_ROOT,"$cf_cv_procfs_cwd") + AC_DEFINE(OPT_EXEC_XTERM) + fi +fi + +AC_MSG_CHECKING(if you want to use FreeType library) +CF_ARG_DISABLE(freetype, + [ --disable-freetype disable freetype library-support], + [enable_freetype=no], + [enable_freetype=yes]) +AC_MSG_RESULT($enable_freetype) +if test "$enable_freetype" = yes ; then + CF_X_FONTCONFIG +else + CPPFLAGS=`echo "$CPPFLAGS" | sed -e s/-DXRENDERFONT//` +fi + +AC_MSG_CHECKING(if you want support for HP-style function keys) +CF_ARG_ENABLE(hp-fkeys, + [ --enable-hp-fkeys enable support for HP-style function keys], + [enable_hp_fkeys=yes], + [enable_hp_fkeys=no]) +AC_MSG_RESULT($enable_hp_fkeys) +if test "$enable_hp_fkeys" = yes ; then + AC_DEFINE(OPT_HP_FUNC_KEYS,1) +fi + +AC_MSG_CHECKING(if you want support for SCO-style function keys) +CF_ARG_ENABLE(sco-fkeys, + [ --enable-sco-fkeys enable support for SCO-style function keys], + [enable_sco_fkeys=yes], + [enable_sco_fkeys=no]) +AC_MSG_RESULT($enable_sco_fkeys) +if test "$enable_sco_fkeys" = yes ; then + AC_DEFINE(OPT_SCO_FUNC_KEYS,1) +fi + +AC_MSG_CHECKING(if you want support for Sun-style function keys) +CF_ARG_DISABLE(sun-fkeys, + [ --disable-sun-fkeys disable support for Sun-style function keys], + [enable_sun_fkeys=no], + [enable_sun_fkeys=yes]) +AC_MSG_RESULT($enable_sun_fkeys) +if test "$enable_sun_fkeys" = no ; then + AC_DEFINE(OPT_SUN_FUNC_KEYS,0) +fi + +AC_MSG_CHECKING(if you want saved-lines stored as a FIFO) +CF_ARG_DISABLE(fifo-lines, + [ --disable-fifo-lines disable FIFO-storage for saved-lines], + [enable_fifo_lines=no], + [enable_fifo_lines=yes]) +AC_MSG_RESULT($enable_fifo_lines) +if test "$enable_fifo_lines" = yes ; then + AC_DEFINE(OPT_FIFO_LINES,1) +fi + +AC_MSG_CHECKING(if you want support for internationalization) +CF_ARG_DISABLE(i18n, + [ --disable-i18n disable internationalization], + [enable_i18n=no], + [enable_i18n=yes]) +AC_MSG_RESULT($enable_i18n) +if test "$enable_i18n" = no ; then + AC_DEFINE(OPT_I18N_SUPPORT,0) +fi + +AC_MSG_CHECKING(if you want support for initial-erase setup) +CF_ARG_DISABLE(initial-erase, + [ --disable-initial-erase disable setup for stty erase], + [enable_ie=no], + [enable_ie=yes]) +AC_MSG_RESULT($enable_ie) +if test "$enable_ie" = no ; then + AC_DEFINE(OPT_INITIAL_ERASE,0) +fi + +AC_MSG_CHECKING(if you want support for input-method) +CF_ARG_DISABLE(input-method, + [ --disable-input-method disable input-method], + [enable_ximp=no], + [enable_ximp=yes]) +AC_MSG_RESULT($enable_ximp) +CF_INPUT_METHOD +test "$cf_cv_input_method" = no && enable_ximp=no +if test "$enable_ximp" = no ; then + AC_DEFINE(OPT_INPUT_METHOD,0) +fi + +AC_MSG_CHECKING(if you want support for load-vt-fonts) +CF_ARG_ENABLE(load-vt-fonts, + [ --enable-load-vt-fonts enable load-vt-fonts() action], + [enable_load_vt_fonts=yes], + [enable_load_vt_fonts=no]) +AC_MSG_RESULT($enable_load_vt_fonts) +if test "$enable_load_vt_fonts" = yes ; then + AC_DEFINE(OPT_LOAD_VTFONTS,1) +fi + +AC_MSG_CHECKING(if you want support for logging) +CF_ARG_ENABLE(logging, + [ --enable-logging enable logging], + [enable_logging=yes], + [enable_logging=no]) +AC_MSG_RESULT($enable_logging) +if test "$enable_logging" = yes ; then + AC_DEFINE(ALLOWLOGGING) + AC_MSG_CHECKING(if you want to allow logging via a pipe) + CF_ARG_ENABLE(logfile-exec, + [ --enable-logfile-exec enable exec'd logfile filter], + [enable_log_exec=yes], + [enable_log_exec=no]) + AC_MSG_RESULT($enable_log_exec) + if test "$enable_log_exec" = yes ; then + AC_DEFINE(ALLOWLOGFILEEXEC) + fi +fi + +AC_MSG_CHECKING(if you want support for iconify/maximize translations) +CF_ARG_DISABLE(maximize, + [ --disable-maximize disable actions for iconify/deiconify/maximize/restore], + [enable_maximize=no], + [enable_maximize=yes]) +AC_MSG_RESULT($enable_maximize) +test "$enable_maximize" = no && AC_DEFINE(OPT_MAXIMIZE,0) + +AC_MSG_CHECKING(if you want NumLock to override keyboard tables) +CF_ARG_DISABLE(num-lock, + [ --disable-num-lock disable NumLock keypad support], + [enable_numlock=no], + [enable_numlock=yes]) +AC_MSG_RESULT($enable_numlock) +test "$enable_numlock" = no && AC_DEFINE(OPT_NUM_LOCK,0) + +AC_MSG_CHECKING(if you want support for get/set of base64 selection data) + +CF_ARG_DISABLE(paste64, + [ --disable-paste64 disable get/set base64 selection data], + [enable_paste64=no], + [enable_paste64=yes]) +AC_MSG_RESULT($enable_paste64) +if test "$enable_paste64" = yes ; then + AC_DEFINE(OPT_PASTE64,1) +else + AC_DEFINE(OPT_PASTE64,0) +fi + +AC_MSG_CHECKING(if you want support for pty-handshaking) + +CF_ARG_DISABLE(pty-handshake, + [ --disable-pty-handshake disable pty-handshake support], + [enable_pty_handshake=no], + [enable_pty_handshake=yes]) +AC_MSG_RESULT($enable_pty_handshake) +if test "$enable_pty_handshake" = yes ; then + AC_DEFINE(OPT_PTY_HANDSHAKE,1) +else + AC_DEFINE(OPT_PTY_HANDSHAKE,0) +fi + +AC_MSG_CHECKING(if you want support for mouse in readline applications) +CF_ARG_ENABLE(readline-mouse, + [ --enable-readline-mouse enable support for mouse in readline applications], + [enable_readline_mouse=yes], + [enable_readline_mouse=no]) +AC_MSG_RESULT($enable_readline_mouse) +if test "$enable_readline_mouse" = yes ; then + AC_DEFINE(OPT_READLINE,1) +fi + +AC_MSG_CHECKING(if you want support for regular-expression selections) +CF_ARG_DISABLE(regex, + [ --disable-regex disable regular-expression selections], + [enable_regex=no], + [enable_regex=yes]) +AC_MSG_RESULT($enable_regex) +if test "$enable_regex" = yes ; then + CF_WITH_PCRE + if test "$with_pcre" = no ; then + CF_REGEX + if test "X$cf_cv_regex_hdrs" != "Xregex.h" ; then + AC_MSG_ERROR(Only POSIX or PCRE regular expressions are supported) + fi + fi + AC_DEFINE(OPT_SELECT_REGEX) +fi + +AC_MSG_CHECKING(if you want support for right-scrollbar) +CF_ARG_DISABLE(rightbar, + [ --disable-rightbar disable right-scrollbar support], + [enable_rightbar=no], + [enable_rightbar=yes]) +AC_MSG_RESULT($enable_rightbar) +if test "$enable_rightbar" = yes ; then + AC_DEFINE(SCROLLBAR_RIGHT) +fi + +AC_MSG_CHECKING(if you want check for redundant name-change) +CF_ARG_DISABLE(samename, + [ --disable-samename disable check for redundant name-change], + [enable_samename=no], + [enable_samename=yes]) +AC_MSG_RESULT($enable_samename) +test "$enable_samename" = no && AC_DEFINE(OPT_SAME_NAME,0) + +AC_MSG_CHECKING(if you want support for selection-actions) +CF_ARG_DISABLE(selection-ops, + [ --disable-selection-ops disable selection-action operations], + [enable_selection_ops=no], + [enable_selection_ops=yes]) +AC_MSG_RESULT($enable_selection_ops) +test "$enable_selection_ops" = no && AC_DEFINE(OPT_SELECTION_OPS,0) + +AC_MSG_CHECKING(if you want support for session management) +CF_ARG_DISABLE(session-mgt, + [ --disable-session-mgt disable support for session management], + [enable_session_mgt=no], + [enable_session_mgt=yes]) +AC_MSG_RESULT($enable_session_mgt) +test "$enable_session_mgt" = no && AC_DEFINE(OPT_SESSION_MGT,0) + +AC_MSG_CHECKING(if you want to use termcap function-keys) +CF_ARG_DISABLE(tcap-fkeys, + [ --disable-tcap-fkeys disable termcap function-keys support], + [enable_tcap_fkeys=no], + [enable_tcap_fkeys=yes]) +AC_MSG_RESULT($enable_tcap_fkeys) +test "$enable_tcap_fkeys" = yes && AC_DEFINE(OPT_TCAP_FKEYS,1) + +AC_MSG_CHECKING(if you want to use termcap-query/report) +CF_ARG_DISABLE(tcap-query, + [ --disable-tcap-query disable compiled-in termcap-query support], + [enable_tcap_query=no], + [enable_tcap_query=yes]) +AC_MSG_RESULT($enable_tcap_query) +test "$enable_tcap_query" = yes && AC_DEFINE(OPT_TCAP_QUERY,1) + +AC_MSG_CHECKING(if you want support for tek4014) +CF_ARG_DISABLE(tek4014, + [ --disable-tek4014 disable tek4014 emulation], + [enable_tek4014=no], + [enable_tek4014=yes]) +AC_MSG_RESULT($enable_tek4014) +if test "$enable_tek4014" = no ; then + AC_DEFINE(OPT_TEK4014,0) +else + EXTRAHDRS="$EXTRAHDRS Tekparse.h" + EXTRASRCS="$EXTRASRCS TekPrsTbl.c Tekproc.c" + EXTRAOBJS="$EXTRAOBJS TekPrsTbl.o Tekproc.o" +fi + +AC_MSG_CHECKING(if you want pulldown menus with a toolbar) +CF_ARG_ENABLE(toolbar, + [ --enable-toolbar compile-in toolbar for pulldown menus], + [enable_toolbar=yes], + [enable_toolbar=no]) +AC_MSG_RESULT($enable_toolbar) +if test "$enable_toolbar" = yes ; then + AC_DEFINE(OPT_TOOLBAR,1) +fi + +AC_MSG_CHECKING(if you want VT52 emulation) +CF_ARG_DISABLE(vt52, + [ --disable-vt52 disable VT52 emulation], + [enable_vt52=no], + [enable_vt52=yes]) +AC_MSG_RESULT($enable_vt52) +test "$enable_vt52" = no && AC_DEFINE(OPT_VT52_MODE,0) + +AC_MSG_CHECKING(if you want to use mini-luit/Latin9 built-in support) +CF_ARG_ENABLE(mini-luit, + [ --enable-mini-luit enable mini-luit (built-in Latin9 support)], + [enable_mini_luit=yes], + [enable_mini_luit=no]) +AC_MSG_RESULT($enable_mini_luit) +if test "$enable_mini_luit" = yes ; then + AC_DEFINE(OPT_MINI_LUIT,1) +fi + +AC_MSG_CHECKING(if you want to use luit) +CF_ARG_ENABLE(luit, + [ --enable-luit enable luit filter (Unicode translation)], + [enable_luit=yes], + [enable_luit=$enable_mini_luit]) +AC_MSG_RESULT($enable_luit) +if test "$enable_luit" = yes ; then + AC_DEFINE(OPT_LUIT_PROG,1) + CF_PATH_PROG(LUIT,xterm-filter,bluit luit) +fi + +AC_MSG_CHECKING(if you want wide-character support) +CF_ARG_OPTION(wide-chars, + [ --enable-wide-chars enable wide-character support], + [enable_wchar=yes], + [enable_wchar=$enable_luit], + [$enable_luit]) +AC_MSG_RESULT($enable_wchar) + +AC_MSG_CHECKING(if you want only 16-bit character support) +CF_ARG_ENABLE(16bit-chars, + [ --enable-16bit-chars enable 16-bit character support], + [enable_16bit_chars=yes], + [enable_16bit_chars=no]) +AC_MSG_RESULT($enable_16bit_chars) + +if test "$enable_16bit_chars" = yes ; then + AC_DEFINE(OPT_WIDER_ICHAR,0) + enable_wchar=yes +fi + +if test "$enable_wchar" = yes ; then + AC_DEFINE(OPT_WIDE_CHARS,1) + EXTRAHDRS="$EXTRAHDRS charclass.h precompose.h wcwidth.h" + EXTRASRCS="$EXTRASRCS charclass.c precompose.c wcwidth.c" + EXTRAOBJS="$EXTRAOBJS charclass.o precompose.o wcwidth.o" +fi + +AC_MSG_CHECKING(if you want dynamic-abbreviation support) +CF_ARG_ENABLE(dabbrev, + [ --enable-dabbrev enable dynamic-abbreviation support], + [enable_dabbrev=yes], + [enable_dabbrev=no]) +AC_MSG_RESULT($enable_dabbrev) +if test "$enable_dabbrev" = yes ; then + AC_DEFINE(OPT_DABBREV,1) +fi + +AC_MSG_CHECKING(if you want DECterm Locator support) +CF_ARG_ENABLE(dec-locator, + [ --enable-dec-locator enable DECterm Locator support], + [enable_dec_locator=yes], + [enable_dec_locator=no]) +AC_MSG_RESULT($enable_dec_locator) +if test "$enable_dec_locator" = yes ; then + AC_DEFINE(OPT_DEC_LOCATOR,1) +fi + +AC_MSG_CHECKING(if you want VT420 rectangle support) +CF_ARG_DISABLE(rectangles, + [ --disable-rectangles disable VT420 rectangle support], + [enable_rectangles=no], + [enable_rectangles=yes]) +AC_MSG_RESULT($enable_rectangles) +if test "$enable_rectangles" = yes ; then + AC_DEFINE(OPT_DEC_RECTOPS,1) +fi + +AC_MSG_CHECKING(if you want -ziconbeep option) +CF_ARG_DISABLE(ziconbeep, + [ --disable-ziconbeep disable -ziconbeep option], + [enable_ziconbeep=no], + [enable_ziconbeep=yes]) +AC_MSG_RESULT($enable_ziconbeep) +test "$enable_ziconbeep" = no && AC_DEFINE(OPT_ZICONBEEP,0) + +############################################################################### +CF_HELP_MESSAGE(Testing/development Options:) + +AC_MSG_CHECKING(if you want debugging traces) +CF_ARG_ENABLE(trace, + [ --enable-trace test: set to enable debugging traces], + [enable_trace=yes], + [enable_trace=no]) +AC_MSG_RESULT($enable_trace) +if test "$enable_trace" = yes ; then + AC_DEFINE(OPT_TRACE) + EXTRASRCS="$EXTRASRCS trace.c" + EXTRAOBJS="$EXTRAOBJS trace.o" +fi + +AC_MSG_CHECKING(if you want to test memory leaks) +CF_ARG_DISABLE(leaks, + [ --disable-leaks test: set to test memory leaks], + [disable_leaks=yes], + [disable_leaks=no]) +AC_MSG_RESULT($disable_leaks) +if test "$disable_leaks" = yes ; then + AC_DEFINE(NO_LEAKS) +fi + +CF_DISABLE_ECHO + +AC_MSG_CHECKING(if you want magic cookie emulation) +CF_ARG_ENABLE(xmc-glitch, + [ --enable-xmc-glitch test: enable xmc magic-cookie emulation], + [enable_xmc=yes], + [enable_xmc=no]) +AC_MSG_RESULT($enable_xmc) +if test "$enable_xmc" = yes ; then + AC_DEFINE(OPT_XMC_GLITCH,1) + EXTRASRCS="$EXTRASRCS testxmc.c" + EXTRAOBJS="$EXTRAOBJS testxmc.o" +fi + +dnl FIXME - extra test needed to make tcap-fkeys work on HPUX +AC_CHECK_FUNCS(tigetstr) + +dnl only check for ncurses' use_extended_names if really not using termcap +if test -n "$cf_cv_lib_part_tgetent"; then + AC_CHECK_FUNCS(use_extended_names) +fi + +if test -n "$GCC" ; then +AC_MSG_CHECKING(if you want to turn on gcc warnings) +CF_ARG_ENABLE(warnings, + [ --enable-warnings test: turn on GCC compiler warnings], + [with_warnings=yes], + [with_warnings=no]) +AC_MSG_RESULT($with_warnings) +if test "$with_warnings" = yes +then + CF_GCC_ATTRIBUTES + CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum) +fi +fi + +AC_SUBST(EXTRA_CFLAGS) +AC_SUBST(CHARPROC_DEPS) +AC_SUBST(EXTRAHDRS) +AC_SUBST(EXTRASRCS) +AC_SUBST(EXTRAOBJS) + +test "$disable_setuid" = yes && AC_DEFINE(DISABLE_SETUID) +test "$disable_setgid" = yes && AC_DEFINE(DISABLE_SETGID) + +if test $disable_setuid = yes ; then + MAY_SETUID="#" + NOT_SETUID= +elif test $disable_setgid = yes ; then + MAY_SETUID="#" + NOT_SETUID= +else + MAY_SETUID= + NOT_SETUID="#" +fi + +AC_SUBST(MAY_SETUID) +AC_SUBST(NOT_SETUID) + +### remove from CPPFLAGS the optional features we define in xtermcfg.h +### or other conflicting symbols that may be defined via imake: +for cf_def in \ + __STDC__ \ + ALLOWLOGGING \ + ALLOWLOGFILEEXEC \ + OPT_LUIT_PROG \ + OPT_WIDE_CHARS \ + SCROLLBAR_RIGHT \ + USE_TTY_GROUP \ + USE_UTEMPTER \ + XRENDERFONT +do + CPPFLAGS=`echo "$CPPFLAGS" | sed -e s/-D$cf_def//` +done + +CF_MAKE_TAGS +CF_DISABLE_RPATH_HACK + +# Force plink.sh to not trim pcre's libraries, which have the same symbol +# names as the system regexp. +if test "$with_pcre" != no +then + LIBS=`echo "$LIBS" | sed -e 's/-lpcre/-kpcre/g'` +fi + +### output xtermcfg.h, etc +AC_OUTPUT(Makefile df-install minstall:minstall.in) |