diff options
Diffstat (limited to '')
-rw-r--r-- | configure.in | 1637 |
1 files changed, 1637 insertions, 0 deletions
diff --git a/configure.in b/configure.in new file mode 100644 index 0000000..8f4bcae --- /dev/null +++ b/configure.in @@ -0,0 +1,1637 @@ +dnl $LynxId: configure.in,v 1.345 2023/01/08 14:06:03 tom Exp $ +dnl +dnl Process this file with autoconf to produce a configure script. +dnl +dnl created jan/1997 +dnl by T.E.Dickey <dickey@invisible-island.net> +dnl and Jim Spath <jspath@mail.bcpl.lib.md.us> +dnl +dnl --------------------------------------------------------------------------- +dnl Copyright 1997-2022,2023 by Thomas E. Dickey +dnl +dnl Permission to use, copy, modify, and distribute this software and its +dnl documentation for any purpose and without fee is hereby granted, +dnl provided that the above copyright notice appear in all copies and that +dnl both that copyright notice and this permission notice appear in +dnl supporting documentation, and that the name of the above listed +dnl copyright holder(s) not be used in advertising or publicity pertaining +dnl to distribution of the software without specific, written prior +dnl permission. +dnl +dnl THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD +dnl TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +dnl AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE +dnl LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +dnl WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +dnl ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +dnl OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +dnl --------------------------------------------------------------------------- +dnl +dnl ask PRCS to plug-in the project-version for the configure-script. +dnl $Format: "AC_REVISION($ProjectVersion$)"$ +AC_REVISION(2.9.0dev.12) + +# Save the original $CFLAGS so we can distinguish whether the user set those +# in the environment, or whether autoconf added -O and -g options: +ORIGINAL_CFLAGS="$CFLAGS" + +# For autoconf 2.13, make sure we have no cache file at the beginning of this +# script. That fixes problems with tests whose cached values change from one +# run to the next, as well as with tests that are order-dependent. +rm -f config.cache + +AC_PREREQ(2.25.20210105) +AC_INIT(userdefs.h) + +# autoconf 2.5x defaults to no cache file; we need the cache file's information +# for building the config page. But start with it empty to avoid confusion by +# people who don't do a "make distclean" after applying patches. +cache_file=config.cache +rm -f config.cache; touch config.cache + +CONFIG_H=lynx_cfg.h +AC_CONFIG_HEADER($CONFIG_H:config.hin) +AC_SUBST(CONFIG_H) + +CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) +AC_ARG_WITH(system-type, +[ --with-system-type=XXX test: override derived host system-type], +[AC_MSG_WARN(overriding system type $host_os to $withval) + host_os=$withval]) + +AC_ARG_PROGRAM + +PACKAGE=lynx +dnl ask PRCS to plug-in the project-version for the packages. +# $Format: "VERSION=$ProjectVersion$"$ +VERSION=2.9.0dev.12 + +AC_SUBST(PACKAGE) +AC_SUBST(VERSION) + +AC_MSG_CHECKING(for DESTDIR) +CF_WITH_PATH(destdir, +[ --with-destdir=XXX set DESTDIR destination for install], +DESTDIR, +[$DESTDIR], +[$DESTDIR]) +AC_MSG_RESULT($DESTDIR) + +AC_PREFIX_DEFAULT(/usr/local) + +dnl -------------------------------------------------------------------------- +dnl Checks for location of programs +dnl -------------------------------------------------------------------------- + +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="-D_ALL_SOURCE -Wl,EDIT=NO"} + : ${CC=c89} + ;; +esac + +CF_PROG_CC +CF_PROG_CPP_COMMENTS +AC_PROG_LN_S +case "$host_os" in +(mingw*) +LN_S="cp -p" +AC_MSG_RESULT(Override: No symbolic links in mingw.) + ;; +(*) + ;; +esac +AC_PROG_MAKE_SET +AC_PROG_INSTALL +AC_PROG_YACC +AC_PROG_EGREP +CF_PROG_LINT +CF_MAKEFLAGS +CF_MAKE_PHONY +CF_MAKE_TAGS + +CF_ACVERSION_CHECK(2.52, + [AC_PATH_TOOL(WINDRES, windres, none)], + [AC_PATH_PROG(WINDRES, windres, none)]) + +CF_BUILD_CC([#],[]) + +CF_PROG_RANLIB +CF_AR_FLAGS + +dnl -------------------------------------------------------------------------- +dnl Debug/development/test +dnl -------------------------------------------------------------------------- + +CF_HELP_MESSAGE( +Development Options:) + +CF_DISABLE_ECHO + +# special case for WWW/* +if test -n "$ECHO_CC" ; then + DONT_ECHO_CC="$SHOW_CC ;" +else + DONT_ECHO_CC='' +fi +AC_SUBST(DONT_ECHO_CC) + +AC_MSG_CHECKING(if you want to check memory-leaks) +CF_ARG_ENABLE(find-leaks, + [ --enable-find-leaks logic for testing memory leaks], + [with_leak_checks=yes], + [with_leak_checks=no]) +AC_MSG_RESULT($with_leak_checks) +test "$with_leak_checks" = "yes" && AC_DEFINE(LY_FIND_LEAKS,1,[Define to 1 if you want to check memory-leaks]) + +# The comment about adding -g to $CFLAGS is unclear. Autoconf tries to add +# a -g flag; we remove it if the user's $CFLAGS was not set and debugging is +# disabled. +AC_MSG_CHECKING(if you want to enable debug-code) +CF_ARG_ENABLE(debug, + [ --enable-debug compile w/ debugging (if \$CFLAGS is set, add -g there, too)], + [with_debug=yes], + [with_debug=no]) +AC_MSG_RESULT($with_debug) +if test "$with_debug" = "yes" ; then + case "$host_os" in + (ultrix*|osf*) + test -z "$ORIGINAL_CFLAGS" && CF_STRIP_O_OPT(CFLAGS) + if test -z "$GCC" ; then + CFLAGS="$CFLAGS -g3" + fi + ;; + esac +else + case "$host_os" in + (osf*) + test -z "$GCC" && CFLAGS="$CFLAGS -std1" + test -z "$ORIGINAL_CFLAGS" && CF_STRIP_G_OPT(CFLAGS) + ;; + (*) + test -z "$ORIGINAL_CFLAGS" && CF_STRIP_G_OPT(CFLAGS) + ;; + esac +fi + +AC_MSG_CHECKING(if you want to enable lynx trace code *recommended* ) +CF_ARG_DISABLE(trace, + [ --disable-trace disable logic for trace code], + [with_trace=$enableval], + [with_trace=yes]) +AC_MSG_RESULT($with_trace) +test "$with_trace" = no && AC_DEFINE(NO_LYNX_TRACE,1,[Define to 1 if you want to enable lynx trace code]) + +AC_MSG_CHECKING(if you want verbose trace code) +CF_ARG_ENABLE(vertrace, + [ --enable-vertrace verbose trace code], + [with_vertrace=yes], + [with_vertrace=no]) +AC_MSG_RESULT($with_vertrace) +test "$with_vertrace" = yes && AC_DEFINE(LY_TRACELINE,__LINE__,[Define to __LINE__ if you want verbose trace code]) + +CF_WITH_SCREEN_PDCURSES +CF_ENABLE_WARNINGS +CF_WITH_DBMALLOC +CF_WITH_DMALLOC + +dnl -------------------------------------------------------------------------- +dnl Checks for compiler & standard-library characteristics +dnl -------------------------------------------------------------------------- + +dnl If we're able to run this script, this is true! +AC_DEFINE(UNIX,1,[Define to 1 if we can run a configure script]) + +dnl Only add to this case statement things that we cannot design tests for. +TRY_CFLAGS= +case "$host_os" in +(aix4*) + TRY_CFLAGS="$TRY_CFLAGS -DAIX4 -D_BSD=44 -D_AIX" + LIBS="$LIBS -lbsd" + ;; +(aix*) + TRY_CFLAGS="$TRY_CFLAGS -D_ACS_COMPAT_CODE" + LIBS="$LIBS -lbsd" + ;; +(apollo*) + TRY_CFLAGS="$TRY_CFLAGS -D_BUILTINS -W0,-opt,4" + ;; +(bsdi*) + TRY_CFLAGS="$TRY_CFLAGS -DBSDI" + ;; +(clix*) + # Tested on CLIX 3.1 (T.Dickey). The original makefile entry + # contributed by Alex Matulich (matuli_a@marlin.navsea.navy.mil) also + # references -lmalloc and -lbsd. + AC_CHECK_LIB(c_s,strcmp) + ;; +(convex*) + TRY_CFLAGS="$TRY_CFLAGS -D__STDC__ -Dunix" + ;; +(cygwin*) + TRY_CFLAGS="$TRY_CFLAGS -DWIN_EX -D_WINDOWS_NSL" + LIBS="$LIBS -luser32" + ;; +(hpux*) + TRY_CFLAGS="$TRY_CFLAGS -D_XOPEN_SOURCE_EXTENDED" + test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -Wp,-H600000 -DSYS_HPUX" + ;; +(isc*) + # -DPOSIX_JC is necessary, else LYBookmark.c never finds out what a mode_t is. + TRY_CFLAGS="$TRY_CFLAGS -DISC -DPOSIX_JC" + LIBS="$LIBS -linet -lnsl_s -lcposix" + ;; +(irix6.*) + TRY_CFLAGS="$TRY_CFLAGS -DSYS_IRIX64" + ;; +(irix*) + # The original makefile used the $CFLAGS option -cckr for some form + # of K&R compatibility. However, this causes compilation warnings for + # varargs on IRIX 5.2, and does not appear to be needed. + ;; +(linux*) + TRY_CFLAGS="$TRY_CFLAGS -DLINUX" + ;; +(mingw*) + # put these directly in CPPFLAGS since they will not work in lynx_cfg.h + CF_ADD_CFLAGS(\ + -DDOSPATH \ + -DNOSIGHUP \ + -DNOUSERS \ + -DWIN32_LEAN_AND_MEAN \ + -DWIN_EX \ + -D_CONSOLE \ + -D_GNU_SOURCE \ + -D_MBCS \ + -D_WINDOWS \ + -D_WIN_CC \ + -D__WIN32__ \ + ) + EXTRA_OBJS="$EXTRA_OBJS Xsystem\$o" + ;; +(msdosdjgpp*) + LIBS="$LIBS -lwatt" + TRY_CFLAGS="$TRY_CFLAGS -DDOSPATH -DNOUSERS" + ;; +(next*) + TRY_CFLAGS="$TRY_CFLAGS -DNEXT" + ;; +(osf4*) + # The -Olimit flag (see below) is no longer available with + # Digital C 5.2, which is bundled with Digital UNIX 4.0. + TRY_CFLAGS="$TRY_CFLAGS -DDSYS5 -DSYS_TRU64" + ;; +(osf*) + # Increase the maximum size of functions that will be optimized. + test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 4000" + TRY_CFLAGS="$TRY_CFLAGS -DDSYS5 -DSYS_TRU64" + ;; +(sco3.2v5*) + test "$ac_cv_prog_gcc" != yes && TRY_CFLAGS="$TRY_CFLAGS -belf" + ;; +(sco*) + LIBS="$LIBS -lmalloc" + # It's a little late to do much, but try to warn user if he's using + # SCO's cc (which is reported to have broken const/volatile). + case "$CC" in + (cc|*/cc) + AC_MSG_WARN(You should consider using gcc or rcc if available) + unset ac_cv_prog_CC + AC_CHECK_PROGS(CC,gcc rcc,$CC) + ;; + esac + ;; +(sequent-ptx) + TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT -DNO_IOCTL -DUSE_FCNTL" + ;; +(sequent-ptx2) + TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT" + ;; +(sony-newsos*) + TRY_CFLAGS="$TRY_CFLAGS -I/usr/sony/include" + AC_CHECK_HEADERS(jcurses.h) + ;; +(svr4) + TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT -DSVR4" + ;; +(sunos3*) + TRY_CFLAGS="$TRY_CFLAGS -DSUN" + ;; +(sunos4*) + TRY_CFLAGS="$TRY_CFLAGS -DSUN -DSUN4" + ;; +(ultrix*) + # Increase the maximum size of functions that will be optimized. + test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 600 -G 7" + TRY_CFLAGS="$TRY_CFLAGS -DULTRIX" + AC_CHECK_HEADERS(cursesX.h, + [AC_DEFINE(HAVE_CURSESX_H,1,[Define to 1 if we have cursesX.h]) + cf_cv_ncurses_header=cursesX.h]) + ;; +esac + +case "$host_os" in +(mingw*) + EXTRA_OBJS="$EXTRA_OBJS LYIcon\$o" + ;; +esac + +CF_ANSI_CC_REQD + +dnl -------------------------------------------------------------------------- +dnl -------------------------------------------------------------------------- + +CF_HELP_MESSAGE( +Basic Configuration Options:) + +CF_LARGEFILE + +dnl -------------------------------------------------------------------------- +dnl internationalization macros +dnl -------------------------------------------------------------------------- + +dnl Set of available languages (based on source distribution) +if test -z "$ALL_LINGUAS" ; then + ALL_LINGUAS=`test -d "$srcdir/po" && cd "$srcdir/po" && echo *.po|sed -e 's/\.po//g' -e 's/*//'` + AM_PATH_PROG_WITH_TEST(MSGINIT, msginit, + ["$ac_dir/$ac_word" --no-translator --version /dev/null >/dev/null 2>&1], :) + if test "$MSGINIT" != ":" ; then + CF_VERBOSE(adding en.po) + ALL_LINGUAS="$ALL_LINGUAS en" + fi +fi + +CF_BUNDLED_INTL(makefile,disable) + +INTLDIR_CPPFLAGS="#" +if test -z "$INTLDIR_MAKE" ; then + INTLDIR_CPPFLAGS= +fi + +AC_SUBST(INTLDIR_CPPFLAGS) + +CF_WITH_PATH(nls-datadir, +[ --with-nls-datadir=DIR NLS data, parent of locale], +NLS_DATADIR, +[PREFIX/DATADIR], +[$prefix/$DATADIRNAME]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want full utility pathnames) +CF_ARG_DISABLE(full-paths, + [ --disable-full-paths control whether full utility pathnames are used], + [with_full_paths=no], + [with_full_paths=yes]) +AC_MSG_RESULT($with_full_paths) +test "$with_full_paths" = no && AC_DEFINE(USE_EXECVP,1,[Define to 1 if you want full utility pathnames]) + +CF_DEFINE_PROG(system mailer, SYSTEM_MAIL, + /usr/mmdf/bin/submit \ + /usr/sbin/sendmail \ + /usr/lib/sendmail \ + ) +CF_SYSTEM_MAIL_FLAGS +if test -n "$SYSTEM_MAIL" ; then +if test "$with_full_paths" = no ; then + SYSTEM_MAIL=`basename "$SYSTEM_MAIL"` +fi +fi + +dnl -------------------------------------------------------------------------- +CF_XOPEN_SOURCE(500,199506L) +CF_SIGWINCH + +dnl Collect tests for compiler options into one place +if test -n "$TRY_CFLAGS" ; then + CF_CHECK_CFLAGS($TRY_CFLAGS) +fi + +dnl -------------------------------------------------------------------------- +dnl Checks for library configuration (added right-to-left) +dnl -------------------------------------------------------------------------- + +### Look for network libraries first, since some functions (such as gethostname) +### are used in a lot of places. +AC_CACHE_CHECK(if you want NSS compatible SSL libraries,cf_cv_use_libnss_compat,[ +AC_ARG_WITH(nss-compat, + [ --with-nss-compat{=path} link with nss_compat library if available], + [cf_cv_use_libnss_compat=$withval], + [cf_cv_use_libnss_compat=no]) +]) + +AC_CACHE_CHECK(if you want ssl library,cf_cv_use_libssl,[ +AC_ARG_WITH(ssl, + [ --with-ssl{=path} link with ssl library if available], + [cf_cv_use_libssl=$withval], + [cf_cv_use_libssl=no]) +]) + +AC_CACHE_CHECK(if you want gnutls support,cf_cv_use_libgnutls,[ +AC_ARG_WITH(gnutls, + [ --with-gnutls{=path} link with gnutls support], + [cf_cv_use_libgnutls=$withval], + [cf_cv_use_libgnutls=no]) +]) + +# this option is mainly for comparing with/without Lynx's wrapper for GNUTLS. +AC_CACHE_CHECK(if you want gnutls-openssl compat,cf_cv_gnutls_compat,[ +AC_ARG_ENABLE(gnutls-compat, + [ --enable-gnutls-compat link with gnutls-openssl compat], + [cf_cv_gnutls_compat=$enableval], + [cf_cv_gnutls_compat=no]) +]) + +AC_CACHE_CHECK(if you want socks library,cf_cv_use_libsocks,[ +AC_ARG_WITH(socks, + [ --with-socks{=path} link with socks library if available], + [cf_cv_use_libsocks=$withval], + [cf_cv_use_libsocks=no]) +]) + +AC_CACHE_CHECK(if you want socks5 library,cf_cv_use_libsocks5,[ +AC_ARG_WITH(socks5, + [ --with-socks5{=path} link with socks5 library if available], + [cf_cv_use_libsocks5=$withval], + [cf_cv_use_libsocks5=no]) +]) + +if test "x$cf_cv_use_libsocks" != xno ; then + CF_SOCKS($cf_cv_use_libsocks) +elif test "x$cf_cv_use_libsocks5" != xno ; then + CF_SOCKS5($cf_cv_use_libsocks5) +else + CF_NETLIBS +fi + +CF_INET_ADDR + +CF_PKG_CONFIG + +if test "x$cf_cv_use_libssl" != xno ; then + CF_SSL($cf_cv_use_libssl) +elif test "x$cf_cv_use_libgnutls" != xno ; then + if test "x$cf_cv_gnutls_compat" = xno ; then + CF_GNUTLS($cf_cv_use_libgnutls,tidy_tls\$o) + else + CF_GNUTLS($cf_cv_use_libgnutls) + fi +elif test "x$cf_cv_use_libnss_compat" != xno ; then + CF_NSS_COMPAT($cf_cv_use_libnss_compat) +fi + +dnl -------------------------------------------------------------------------- +### check for ipv6 support +AC_MSG_CHECKING([whether to enable ipv6]) +CF_ARG_ENABLE(ipv6, +[ --enable-ipv6 use ipv6 (with ipv4) support], + [AC_DEFINE(ENABLE_IPV6,1,[Define to 1 if we should enable ipv6])]) +AC_MSG_RESULT($enableval) +if test "$enableval" = "yes"; then + CF_CHECK_IPV6 +fi +dnl AC_REPLACE_FUNCS(getaddrinfo getnameinfo) + +dnl -------------------------------------------------------------------------- +dnl This has to be cached, since there's a lot of interdependent tests. +AC_CACHE_CHECK(for screen type, cf_cv_screen,[ +AC_ARG_WITH(screen, +[ --with-screen=XXX select screen type (XXX is curses (default), + ncurses, ncursesw, pdcurses or slang)], + [ +case "$withval" in +(curses|ncurses*|pdcurses|slang) + cf_cv_screen=$withval + ;; +(*) AC_ERROR(Unexpected value $withval) + ;; +esac], + [cf_cv_screen=curses])]) + +case "$cf_cv_screen" in +(curses|ncurses*) + CF_WITH_CURSES_DIR + ;; +esac + +cf_wide_curses=no +dft_color_style=yes +case "$cf_cv_screen" in +(curses) + CF_CURSES_CONFIG + CF_CURS_PERFORMANCE + CF_CURS_TOUCHLINE + ;; +(ncursesw*) + CF_UTF8_LIB + CF_NCURSES_CONFIG($cf_cv_screen) + cf_wide_curses=yes + ;; +(ncurses*) + CF_NCURSES_CONFIG($cf_cv_screen) + ;; +(pdcurses) + case "$host_os" in + (mingw*) + cf_cv_ncurses_header=curses.h + ;; + (*) + cf_cv_ncurses_header=xcurses.h + # do this last, since it changes definition of main: CF_PDCURSES_X11 + ;; + esac + ;; +(slang) + CF_SLANG_UNIX_DEFS + dft_color_style=no + ;; +esac + +CF_TRY_RPATH + +CF_CURSES_CHTYPE + +AC_MSG_CHECKING(if you want the wide-curses features) +CF_ARG_ENABLE(widec, +[ --enable-widec enable wide-curses features], + [use_wide_curses=$enableval], + [use_wide_curses=$cf_wide_curses]) +AC_MSG_RESULT($use_wide_curses) + +AC_MSG_CHECKING(if color-style code should be used) +CF_ARG_DISABLE(color-style, +[ --disable-color-style use color style (ncurses/curses)], + [use_color_style=$enableval], + [use_color_style=$dft_color_style]) + +case "$use_color_style" in +(no) + AC_MSG_RESULT(no) + INSTALL_LSS= + ;; +(*) + AC_DEFINE(USE_COLOR_STYLE,1,[Define to 1 if we should enable color-style]) + AC_MSG_RESULT(yes) + + AC_MSG_CHECKING(for location of style-sheet file) + +CF_WITH_PATH(lss-file, +[ --with-lss-file{=path} specify the default style-sheet file + ], +LYNX_LSS_FILE, +SYSCONFDIR/lynx.lss, +$sysconfdir/lynx.lss) + + AC_MSG_RESULT($LYNX_LSS_FILE) + + test "$LYNX_LSS_FILE" = no && LYNX_LSS_FILE= + AC_DEFINE_UNQUOTED(LYNX_LSS_FILE,"$LYNX_LSS_FILE",[Define to default path for Lynx lss-file]) + + INSTALL_LSS=install-lss + ;; +esac +AC_SUBST(INSTALL_LSS) + +dnl -------------------------------------------------------------------------- + +AC_MSG_CHECKING(for the default configuration-file) + +CF_WITH_PATH(cfg-file, +[ --with-cfg-file{=path} specify the default configuration file + ], +LYNX_CFG_FILE, +SYSCONFDIR/lynx.cfg, +$sysconfdir/lynx.cfg) + +AC_MSG_RESULT($LYNX_CFG_FILE) + +test "$LYNX_CFG_FILE" = no && LYNX_CFG_FILE= +AC_DEFINE_UNQUOTED(LYNX_CFG_FILE,"$LYNX_CFG_FILE",[Define to default path for Lynx cfg-file]) + +dnl -------------------------------------------------------------------------- + +AC_MSG_CHECKING(for the default configuration-path) + +CF_WITH_PATH(cfg-path, +[ --with-cfg-path{=path} specify the default configuration directories + ], +LYNX_CFG_PATH, +SYSCONFDIR, +$sysconfdir) + +AC_MSG_RESULT($LYNX_CFG_PATH) + +test -z "$LYNX_CFG_PATH" && LYNX_CFG_PATH="`echo "$LYNX_CFG_FILE" | sed -e 's%/[[^/]]*$%%'`" +test "x$LYNX_CFG_PATH" = xno && LYNX_CFG_PATH= +AC_DEFINE_UNQUOTED(LYNX_CFG_PATH,"$LYNX_CFG_PATH",[Define to default path for Lynx config-files]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if htmlized lynx.cfg should be built) +CF_ARG_ENABLE(htmlized-cfg, +[ --enable-htmlized-cfg build htmlized lynx.cfg], + [use_htmlized_cfg=$enableval], + [use_htmlized_cfg=no]) +AC_MSG_RESULT($use_htmlized_cfg) + +LYNXCFG_MAKE='' +LYNXCFG_NO_MAKE='' +if test "$use_htmlized_cfg" = no ; then + LYNXCFG_MAKE='#' +else + LYNXCFG_NO_MAKE='#' +fi +AC_SUBST(LYNXCFG_MAKE) +AC_SUBST(LYNXCFG_NO_MAKE) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if local doc directory should be linked to help page) +CF_ARG_ENABLE(local-docs, +[ --enable-local-docs link local doc-directory to help-page], + [use_local_docs=$enableval], + [use_local_docs=no]) +AC_MSG_RESULT($use_local_docs) + +LYNXDOC_MAKE='' +if test "$use_local_docs" = no ; then + LYNXDOC_MAKE='#' +fi +AC_SUBST(LYNXDOC_MAKE) + +dnl -------------------------------------------------------------------------- + +AC_MSG_CHECKING(for MIME library directory) +CF_WITH_PATH(mime-libdir, +[ --with-mime-libdir=DIR MIME data, mime.types and mailcap], +MIME_LIBDIR, +[/etc]) +AC_MSG_RESULT($MIME_LIBDIR) +MIME_LIBDIR=`echo "$MIME_LIBDIR" | sed -e 's,/$,,' -e 's,$,/,'` +AC_DEFINE_UNQUOTED(MIME_LIBDIR,"$MIME_LIBDIR",[Define to default path for MIME library]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if locale-charset selection logic should be used) +CF_ARG_DISABLE(locale-charset, +[ --disable-locale-charset use locale-charset selection logic], + [use_locale_charset=$enableval], + [use_locale_charset=yes]) +AC_MSG_RESULT($use_locale_charset) +test "$use_locale_charset" != no && AC_DEFINE(USE_LOCALE_CHARSET,1,[Define to 1 if locale-charset selection logic should be used]) + +dnl -------------------------------------------------------------------------- +dnl Check for subsets of compiled-in tables. +dnl -------------------------------------------------------------------------- +CHARSET_DEFS= +AC_SUBST(CHARSET_DEFS) + +AC_MSG_CHECKING(if you want only a few charsets) +AC_ARG_WITH(charsets, +[ --with-charsets=list limit charsets to given list of MIME names], +[cf_charsets=$withval], +[cf_charsets=]) + +if test -n "$cf_charsets" ; then + AC_MSG_RESULT(yes) + AC_DEFINE(ALL_CHARSETS,0,[Define to 0 if xxx]) + cf_min_charsets=us-ascii,iso-8859-1,utf-8 + if test "$cf_charsets" = "no" ; then + cf_charsets=minimal + fi + if test "$cf_charsets" = "minimal" ; then + CF_VERBOSE(using minimal list of charsets: $cf_min_charsets) + fi + cf_charsets=`echo "$cf_charsets" | sed -e "s/minimal/$cf_min_charsets/g" -e 's/,/ /g'` + for cf_charset in $cf_charsets + do + cf_def_charset=`echo "$cf_charset" | sed -e 's/+/_/g' -e 's/-/_/g'` + cf_use_charset=no + # check charsets that are defined via .tbl files + if ( ${EGREP-egrep} '^M'"$cf_charset"'$' "$srcdir"/src/chrtrans/*.tbl 2>/dev/null >/dev/null ) + then + cf_use_charset=yes + # check charsets that are "built-in" + else + for cf_tst_charset in big5 euc_cn euc_jp euc_kr shift_jis x_transparent + do + if test "$cf_tst_charset" = "$cf_def_charset" + then + cf_use_charset=yes + break + fi + done + fi + if test "$cf_use_charset" = yes + then + CF_VERBOSE(found $cf_charset) + CHARSET_DEFS="-DNO_CHARSET_${cf_def_charset}=0 $CHARSET_DEFS" + else + CF_VERBOSE(not found $cf_charset) + fi + done +else + AC_MSG_RESULT(no) +fi + +dnl -------------------------------------------------------------------------- +dnl Checks for standard headers +dnl -------------------------------------------------------------------------- + +AC_CHECK_DECL(exit) +AC_HEADER_TIME +AC_HEADER_DIRENT +dnl Don't check for sys/wait.h here since it is covered by another test. +AC_CHECK_HEADERS( \ + arpa/inet.h \ + fcntl.h \ + limits.h \ + sys/fcntl.h \ + sys/filio.h \ + sys/ioctl.h \ + sys/param.h \ + sys/timeb.h \ + sys/time.h \ + syslog.h \ + termio.h \ + termios.h \ + vfork.h \ + wchar.h \ +) +CF_TERMIO_AND_TERMIOS +CF_FUNC_SIGACTION +CF_FUNC_WAIT +AC_TYPE_GETGROUPS +AC_TYPE_OFF_T +AC_TYPE_PID_T +AC_TYPE_UID_T +AC_TYPE_MODE_T +CF_CHECK_TYPE(ssize_t, int) +CF_CHECK_TYPE(socklen_t, int, [ +#include <sys/types.h> +#include <sys/socket.h> +]) +CF_TYPE_LONG_LONG +CF_TM_GMTOFF + +CF_CHECK_SIZEOF(int,4) +CF_CHECK_SIZEOF(long,4) +CF_CHECK_SIZEOF(off_t,4) +CF_CHECK_SIZEOF(size_t,4) +CF_CHECK_SIZEOF(time_t,4) +AC_CHECK_TYPE(intptr_t, long) + +dnl -------------------------------------------------------------------------- +dnl Checks for library units +dnl -------------------------------------------------------------------------- + +AC_FUNC_ALLOCA +AC_FUNC_VFORK +CF_FIONBIO +CF_REMOVE_BROKEN +CF_FUNC_LSTAT +CF_FUNC_VASPRINTF +AC_CHECK_FUNCS( \ + atoll \ + ctermid \ + cuserid \ + ftime \ + getcwd \ + getgroups \ + gettimeofday \ + getuid \ + popen \ + putenv \ + readdir \ + setuid \ + truncate \ + ttyname \ + unsetenv \ + sleep \ + usleep \ + waitpid \ +) +AC_CHECK_FUNCS( \ + mkdtemp,,[AC_CHECK_FUNCS(mktemp)] +) +AC_REPLACE_FUNCS( \ + mktime \ + strstr \ + wcwidth \ +) + +CF_SRAND(lynx_) +CF_CHECK_FUNCDECLS([ +#ifdef HAVE_STDLIB_H +#include <stdlib.h> +#endif +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif +], sleep) +CF_CHECK_FUNCDECLS([#include <string.h>], strstr) +CF_CHECK_FUNCDECLS([ +#include <stdio.h> +#include <grp.h>], getgrgid getgrnam) + +dnl -------------------------------------------------------------------------- +dnl Checks for external-data +dnl -------------------------------------------------------------------------- + +CF_BOOL_DEFS +CF_ERRNO +CF_SET_ERRNO +CF_LOCALE +CF_NGROUPS +AC_CHECK_FUNCS(strerror,,[CF_SYS_ERRLIST]) +CF_UTMP +CF_CHECK_EXTERN_DATA(h_errno,int) + +AC_SUBST(EXTRA_OBJS) + +dnl -------------------------------------------------------------------------- +dnl Experimental options that don't need to test system features +dnl -------------------------------------------------------------------------- + +CF_HELP_MESSAGE( +Experimental Options:) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if bibp: URLs should be supported) +CF_ARG_DISABLE(bibp-urls, +[ --disable-bibp-urls disable support for bibp: URLs], + [use_bibp_urls=$enableval], + [use_bibp_urls=yes]) +AC_MSG_RESULT($use_bibp_urls) +test "$use_bibp_urls" = no && AC_DEFINE(DISABLE_BIBP,1,[Define to 1 if bibp: URLs should be supported]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if configuration info should be browsable) +CF_ARG_DISABLE(config-info, +[ --disable-config-info disable browsable configuration-info], + [use_config_info=$enableval], + [use_config_info=yes]) +AC_MSG_RESULT($use_config_info) +test "$use_config_info" = no && AC_DEFINE(NO_CONFIG_INFO,1,[Define to 1 if configuration info should be browsable]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if new-style forms-based options screen should be used) +CF_ARG_DISABLE(forms-options, +[ --disable-forms-options disable forms-based options], + [use_forms_options=$enableval], + [use_forms_options=yes]) +AC_MSG_RESULT($use_forms_options) +test "$use_forms_options" = no && AC_DEFINE(NO_OPTION_FORMS,1,[Define to 1 if new-style forms-based options screen should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if old-style options menu should be used) +CF_ARG_DISABLE(menu-options, +[ --disable-menu-options disable old-style option menu], + [use_menu_options=$enableval], + [use_menu_options=yes]) +AC_MSG_RESULT($use_menu_options) +test "$use_menu_options" = no && AC_DEFINE(NO_OPTION_MENU,1,[Define to 1 if old-style options menu should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if sessions code should be used) +CF_ARG_DISABLE(sessions, +[ --disable-sessions use sessions code], + [use_sessions=$enableval], + [use_sessions=yes]) +AC_MSG_RESULT($use_sessions) +if test "$use_sessions" != no ; then + AC_DEFINE(USE_SESSIONS,1,[Define to 1 if sessions code should be used]) + EXTRA_OBJS="$EXTRA_OBJS LYSession\$o" +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if session-caching code should be used) +CF_ARG_DISABLE(session-cache, +[ --disable-session-cache use session-caching code], + [use_session_cache=$enableval], + [use_session_cache=yes]) +AC_MSG_RESULT($use_session_cache) +if test "$use_session_cache" != no ; then + AC_DEFINE(USE_CACHEJAR,1,[Define to 1 if session-caching code should be used]) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if address-list page should be used) +CF_ARG_DISABLE(addrlist-page, +[ --disable-addrlist-page disable address-list page], + [use_addrlist_page=$enableval], + [use_addrlist_page=yes]) +AC_MSG_RESULT($use_addrlist_page) +test "$use_addrlist_page" != no && AC_DEFINE(USE_ADDRLIST_PAGE,1,[Define to 1 if address-list page should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if support for CJK should be used) +CF_ARG_DISABLE(cjk, +[ --disable-cjk do not use CJK logic], + [use_cjk=$enableval], + [use_cjk=yes]) +AC_MSG_RESULT($use_cjk) +test "$use_cjk" != no && AC_DEFINE(CJK_EX,1,[Define to 1 if CJK logic should be used]) + +use_cjk_utf8=no + +AM_ICONV +if test "x$am_cv_func_iconv" = "xyes" +then + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if experimental support for Chinese UTF-8 should be used) +CF_ARG_ENABLE(chinese-utf8, +[ --enable-chinese-utf8 use Chinese UTF-8 logic], + [use_cn_utf8=$enableval], + [use_cn_utf8=yes]) +AC_MSG_RESULT($use_cn_utf8) +if test "$use_cn_utf8" != no ; then + AC_DEFINE(EXP_CHINESEUTF8_SUPPORT,1,[Define to 1 if Chinese UTF-8 logic should be used]) + use_cjk_utf8=yes +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if support for Japanese UTF-8 should be used) +CF_ARG_DISABLE(japanese-utf8, +[ --disable-japanese-utf8 do not use Japanese UTF-8 logic], + [use_ja_utf8=$enableval], + [use_ja_utf8=yes]) +AC_MSG_RESULT($use_ja_utf8) +if test "$use_ja_utf8" != no ; then + AC_DEFINE(USE_JAPANESEUTF8_SUPPORT,1,[Define to 1 if Japanese UTF-8 logic should be used]) + use_cjk_utf8=yes +fi + +dnl -------------------------------------------------------------------------- +if test $use_cjk_utf8 = yes +then + if test "$USE_NLS" != yes ; then + LIBS="$LIBICONV $LIBS" + fi +fi + +else + CF_VERBOSE(skipping CJK features which depend on iconv) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if experimental wcwidth/UTF-8 logic should be used) +CF_ARG_ENABLE(wcwidth-support, +[ --enable-wcwidth-support use experimental wcwidth/UTF-8 logic], + [use_wcwidth=$enableval], + [use_wcwidth=no]) +AC_MSG_RESULT($use_wcwidth) +test "$use_wcwidth" != no && AC_DEFINE(EXP_WCWIDTH_SUPPORT,1,[Define to 1 if experimental wcwidth/UTF-8 logic should be used]) + +dnl -------------------------------------------------------------------------- +use_dft_colors=no +case "$cf_cv_screen" in +(curses|slang|ncurses*) + use_dft_colors=maybe + ;; +esac + +if test "$use_dft_colors" != no ; then +AC_MSG_CHECKING(if you want to use default-colors) +CF_ARG_ENABLE(default-colors, +[ --enable-default-colors enable use of default-colors (ncurses/slang)], + [use_dft_colors=yes], + [use_dft_colors=no]) +AC_MSG_RESULT($use_dft_colors) +test "$use_dft_colors" = "yes" && AC_DEFINE(USE_DEFAULT_COLORS,1,[Define to 1 if you want to use default-colors]) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if experimental keyboard-layout logic should be used) +CF_ARG_ENABLE(kbd-layout, +[ --enable-kbd-layout use experimental keyboard-layout support], + [use_kbd_layout=$enableval], + [use_kbd_layout=no]) +AC_MSG_RESULT($use_kbd_layout) +test "$use_kbd_layout" != no && AC_DEFINE(EXP_KEYBOARD_LAYOUT,1,[Define to 1 if experimental keyboard-layout logic should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if experimental nested-table logic should be used) +CF_ARG_ENABLE(nested-tables, +[ --enable-nested-tables use experimental nested-table support], + [use_nested_tables=$enableval], + [use_nested_tables=no]) +AC_MSG_RESULT($use_nested_tables) +test "$use_nested_tables" != no && AC_DEFINE(EXP_NESTED_TABLES,1,[Define to 1 if experimental nested-table logic should be used]) + +dnl -------------------------------------------------------------------------- +dnl Miscellaneous options that don't need to test system features +dnl -------------------------------------------------------------------------- + +CF_HELP_MESSAGE( +Miscellaneous Options:) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if alternative line-edit bindings should be used) +CF_ARG_DISABLE(alt-bindings, +[ --disable-alt-bindings disable alternative line-edit bindings], + [use_alt_bindings=$enableval], + [use_alt_bindings=yes]) +AC_MSG_RESULT($use_alt_bindings) +test "$use_alt_bindings" != no && AC_DEFINE(USE_ALT_BINDINGS,1,[Define to 1 if alternative line-edit bindings should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if ascii case-conversion should be used) +CF_ARG_DISABLE(ascii-ctypes, +[ --disable-ascii-ctypes disable use of ascii case-conversion], + [use_ascii_ctypes=$enableval], + [use_ascii_ctypes=yes]) +AC_MSG_RESULT($use_ascii_ctypes) +test "$use_ascii_ctypes" != no && AC_DEFINE(USE_ASCII_CTYPES,1,[Define to 1 if ascii case-conversion should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to use extended HTML DTD logic) +CF_ARG_DISABLE(extended-dtd, +[ --disable-extended-dtd disable extended HTML DTD logic], + [use_ext_htmldtd=no], + [use_ext_htmldtd=yes]) +AC_MSG_RESULT($use_ext_htmldtd) +test "$use_ext_htmldtd" = "no" && AC_DEFINE(NO_EXTENDED_HTMLDTD,1,[Define to 1 if you want to use extended HTML DTD logic]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if file-upload logic should be used) +CF_ARG_DISABLE(file-upload, +[ --disable-file-upload disable file-upload support], + [use_file_upload=$enableval], + [use_file_upload=yes]) +AC_MSG_RESULT($use_file_upload) +test "$use_file_upload" != no && AC_DEFINE(USE_FILE_UPLOAD,1,[Define to 1 if file-upload logic should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if IDNA support should be used) +CF_ARG_DISABLE(idna, +[ --disable-idna disable IDNA support], + [use_idna=$enableval], + [use_idna=yes]) +AC_MSG_RESULT($use_idna) + +if test "$use_idna" = yes ; then + CF_WITH_IDNA($use_idna) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if element-justification logic should be used) +CF_ARG_DISABLE(justify-elts, +[ --disable-justify-elts disable element-justification logic], + [use_justify_elts=$enableval], + [use_justify_elts=yes]) +AC_MSG_RESULT($use_justify_elts) +test "$use_justify_elts" != no && AC_DEFINE(USE_JUSTIFY_ELTS,1,[Define to 1 if element-justification logic should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if partial-display should be used) +CF_ARG_DISABLE(partial, +[ --disable-partial disable partial-display logic], + [use_partial_display=$enableval], + [use_partial_display=yes]) +AC_MSG_RESULT($use_partial_display) +test "$use_partial_display" != no && AC_DEFINE(DISP_PARTIAL,1,[Define to 1 if partial-display should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if persistent-cookie logic should be used) +CF_ARG_DISABLE(persistent-cookies, +[ --disable-persistent-cookies disable persistent-cookie support], + [use_filed_cookies=$enableval], + [use_filed_cookies=yes]) +AC_MSG_RESULT($use_filed_cookies) +test "$use_filed_cookies" != no && AC_DEFINE(USE_PERSISTENT_COOKIES,1,[Define to 1 if persistent-cookie logic should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if html source should be colorized) +CF_ARG_DISABLE(prettysrc, +[ --disable-prettysrc disable colorization of HTML source], + [use_prettysrc=$enableval], + [use_prettysrc=yes]) +AC_MSG_RESULT($use_prettysrc) +test "$use_prettysrc" != no && AC_DEFINE(USE_PRETTYSRC,1,[Define to 1 if html source should be colorized]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if progress-bar code should be used) +CF_ARG_DISABLE(progressbar, +[ --disable-progressbar disable progress-bar], + [use_progressbar=$enableval], + [use_progressbar=yes]) +AC_MSG_RESULT($use_progressbar) +test "$use_progressbar" != no && AC_DEFINE(USE_PROGRESSBAR,1,[Define to 1 if progress-bar code should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if read-progress message should show ETA) +CF_ARG_DISABLE(read-eta, +[ --disable-read-eta disable read-progress message shows ETA], + [use_read_eta=$enableval], + [use_read_eta=yes]) +AC_MSG_RESULT($use_read_eta) +test "$use_read_eta" != no && AC_DEFINE(USE_READPROGRESS,1,[Define to 1 if read-progress message should show ETA]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if source caching should be used) +CF_ARG_DISABLE(source-cache, +[ --disable-source-cache do not cache HTML source for parse mode changes], + [use_source_cache=$enableval], + [use_source_cache=yes]) +AC_MSG_RESULT($use_source_cache) +test "$use_source_cache" != no && AC_DEFINE(USE_SOURCE_CACHE,1,[Define to 1 if source caching should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if scrollbar code should be used) +CF_ARG_DISABLE(scrollbar, +[ --disable-scrollbar disable scrollbar with mouse], + [use_scrollbar=$enableval], + [use_scrollbar=yes]) +AC_MSG_RESULT($use_scrollbar) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if charset-selection logic should be used) +CF_ARG_ENABLE(charset-choice, +[ --enable-charset-choice use charset-selection logic], + [use_charset_choice=$enableval], + [use_charset_choice=no]) +AC_MSG_RESULT($use_charset_choice) +test "$use_charset_choice" != no && AC_DEFINE(USE_CHARSET_CHOICE,1,[Define to 1 if charset-selection logic should be used]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to use external commands) +CF_ARG_ENABLE(externs, +[ --enable-externs use external commands], + [use_externs=yes], + [use_externs=no]) +AC_MSG_RESULT($use_externs) +if test "$use_externs" != "no" ; then + AC_DEFINE(USE_EXTERNALS,1,[Define to 1 if you want to use external commands]) + EXTRA_OBJS="$EXTRA_OBJS LYExtern\$o" +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to use setfont support) +CF_ARG_ENABLE(font-switch, +[ --enable-font-switch use Linux setfont for character-translation], + [use_setfont=yes], + [use_setfont=no]) +AC_MSG_RESULT($use_setfont) +if test "$use_setfont" = yes ; then + case "$host_os" in + (linux*) + CF_PATH_PROG(SETFONT, consolechars, setfont) + ;; + (os2*) + SETFONT=built-in + CF_VERBOSE(Assume $host_os has font-switching) + ;; + (*) + SETFONT=unknown + CF_VERBOSE(Assume $host_os has no font-switching) + ;; + esac + if test -z "$SETFONT" ; then + AC_MSG_WARN(Cannot find a font-setting program) + elif test "$SETFONT" != unknown ; then + AC_DEFINE(EXP_CHARTRANS_AUTOSWITCH,1,[Define to 1 if you want to use setfont support]) + fi +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want cgi-link support) +CF_ARG_ENABLE(cgi-links, +[ --enable-cgi-links support cgi links w/o a http daemon], + [AC_DEFINE(LYNXCGI_LINKS,1,[Define to 1 if you want cgi-link support])]) +AC_MSG_RESULT($enableval) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want change-exec support) +CF_ARG_ENABLE(change-exec, +[ --enable-change-exec allow users to change exec options], + [use_change_exec=yes], + [use_change_exec=no]) +AC_MSG_RESULT($use_change_exec) +test "$use_change_exec" = yes && AC_DEFINE(ENABLE_OPTS_CHANGE_EXEC,1,[Define to 1 if you want change-exec support]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want exec-links support) +CF_ARG_OPTION(exec-links, +[ --enable-exec-links allow lynx to execute programs accessed via a link], + [use_exec_links=$enableval], + [use_exec_links=$enableval], + [$use_change_exec]) +AC_MSG_RESULT($use_exec_links) +test "$use_exec_links" = yes && AC_DEFINE(EXEC_LINKS,1,[Define to 1 if you want exec-links support]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want exec-scripts support) +CF_ARG_OPTION(exec-scripts, +[ --enable-exec-scripts allow lynx to execute programs inferred from a link], + [use_exec_scripts=$enableval], + [use_exec_scripts=$enableval], + [$use_change_exec]) +AC_MSG_RESULT($use_exec_scripts) +test "$use_exec_scripts" = yes && AC_DEFINE(EXEC_SCRIPTS,1,[Define to 1 if you want exec-scripts support]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want internal-links feature) +CF_ARG_ENABLE(internal-links, +[ --enable-internal-links handle following links to same doc differently], + [use_internal_links=yes], + [use_internal_links=no]) +AC_MSG_RESULT($use_internal_links) +test "$use_internal_links" = yes && AC_DEFINE(TRACK_INTERNAL_LINKS,1,[Define to 1 if you want internal-links feature]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to fork NSL requests) +CF_ARG_ENABLE(nsl-fork, +[ --enable-nsl-fork fork NSL requests, allowing them to be aborted], + [use_nsl_fork=yes], + [use_nsl_fork=no]) +AC_MSG_RESULT($use_nsl_fork) +if test "$use_nsl_fork" = yes ; then + case "$host_os" in + (mingw*) + AC_DEFINE(_WINDOWS_NSL,1,[Define to 1 if we want NSL-fork with Windows]) + ;; + (*) + AC_DEFINE(NSL_FORK,1,[Define to 1 if we want NSL-fork]) + ;; + esac +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to log URL requests via syslog) +CF_ARG_ENABLE(syslog, +[ --enable-syslog log URL requests via syslog], + [use_syslog=yes], + [use_syslog=no]) +AC_MSG_RESULT($use_syslog) +test "$use_syslog" = yes && AC_DEFINE(SYSLOG_REQUESTED_URLS,1,[Define to 1 if you want to log URL requests via syslog]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to underline links) +CF_ARG_ENABLE(underlines, +[ --enable-underlines underline links rather than using boldface], + [use_underline=yes], + [use_underline=no]) +AC_MSG_RESULT($use_underline) +test "$use_underline" = yes && AC_DEFINE(UNDERLINE_LINKS,1,[Define to 1 if xxx]) +test "$use_underline" = no && AC_DEFINE(UNDERLINE_LINKS,0,[Define to 0 if xxx]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if help files should be gzip'ed) +CF_ARG_ENABLE(gzip-help, +[ --enable-gzip-help install gzip'ed help files], + [use_gzip_help=$enableval], + [use_gzip_help=no]) +AC_MSG_RESULT($use_gzip_help) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to use libbz2 for decompression of some bzip2 files) +AC_ARG_WITH(bzlib, +[ --with-bzlib use libbz2 for decompression of some bzip2 files], + [use_bzlib=$withval], + [use_bzlib=no]) +AC_MSG_RESULT($use_bzlib) + +if test ".$use_bzlib" != ".no" ; then + CF_WITH_BZLIB($use_bzlib) + test "x$cf_cv_find_linkage_bz2" = "xyes" && AC_DEFINE(USE_BZLIB,1,[Define to 1 if you want to use libbz2 for decompression of some bzip2 files]) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to use zlib for decompression of some gzip files) +AC_ARG_WITH(zlib, +[ --with-zlib use zlib for decompression of some gzip files], + [use_zlib=$withval], + [use_zlib=no]) +AC_MSG_RESULT($use_zlib) + +if test ".$use_zlib" != ".no" ; then + CF_WITH_ZLIB($use_zlib) + test "x$cf_cv_find_linkage_z" = "xyes" && AC_DEFINE(USE_ZLIB,1,[Define to 1 if you want to use zlib for decompression of some gzip files]) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to use brotli decompression) +AC_ARG_WITH(brotli, +[ --with-brotli use brotli decompression], + [use_brotli=$withval], + [use_brotli=no]) +AC_MSG_RESULT($use_brotli) + +if test ".$use_brotli" != ".no" ; then + CF_WITH_BROTLI($use_brotli) + test "x$cf_cv_find_linkage_brotlidec" = "xyes" && AC_DEFINE(USE_BROTLI,1,[Define to 1 if you want to use libbrotli decompression]) +fi + +dnl -------------------------------------------------------------------------- +CF_HELP_MESSAGE( +Other Network Services:) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to exclude FINGER code) +CF_ARG_DISABLE(finger, +[ --disable-finger disable FINGER logic], + [use_finger=yes], + [use_finger=no]) +AC_MSG_RESULT($use_finger) +test "$use_finger" != "no" && AC_DEFINE(DISABLE_FINGER,1,[Define to 1 if you want to exclude FINGER code]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to exclude GOPHER code) +CF_ARG_DISABLE(gopher, +[ --disable-gopher disable GOPHER logic], + [use_gopher=yes], + [use_gopher=no]) +AC_MSG_RESULT($use_gopher) +test "$use_gopher" != "no" && AC_DEFINE(DISABLE_GOPHER,1,[Define to 1 if you want to exclude GOPHER code]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to exclude NEWS code) +CF_ARG_DISABLE(news, +[ --disable-news disable NEWS logic], + [use_news=yes], + [use_news=no]) +AC_MSG_RESULT($use_news) +test "$use_news" != "no" && AC_DEFINE(DISABLE_NEWS,1,[Define to 1 if you want to exclude NEWS code]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to exclude FTP code) +CF_ARG_DISABLE(ftp, +[ --disable-ftp disable FTP logic], + [use_ftp=yes], + [use_ftp=no]) +AC_MSG_RESULT($use_ftp) +test "$use_ftp" != "no" && AC_DEFINE(DISABLE_FTP,1,[Define to 1 if you want to exclude FTP code]) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want to include WAIS code) +CF_ARG_ENABLE(wais, +[ --enable-wais enable WAIS logic], + [use_wais=yes], + [use_wais=no]) +AC_MSG_RESULT($use_wais) + +MAKE_WAIS="#" +if test "$use_wais" != "no" +then + AC_CHECK_LIB(wais,fs_free,[ + CF_MATH_LIB + CF_ADD_LIB(wais) + AC_CHECK_HEADERS(wais.h) + MAKE_WAIS= + ],[AC_MSG_WARN(could not find WAIS library)]) +fi +AC_SUBST(MAKE_WAIS) + +dnl -------------------------------------------------------------------------- +dnl DirEd (directory-editor) options +dnl -------------------------------------------------------------------------- + +CF_HELP_MESSAGE( +Directory Editor Options:) + +# All DirEd functions that were enabled on compilation can be disabled +# or modified at run time via DIRED_MENU symbols in lynx.cfg. +AC_MSG_CHECKING(if directory-editor code should be used) +CF_ARG_DISABLE(dired, +[ --disable-dired disable optional directory-editor, DirEd], + [use_dired=$enableval], + [use_dired=yes]) +AC_MSG_RESULT($use_dired) + +if test ".$use_dired" != ".no" ; then + EXTRA_OBJS="$EXTRA_OBJS LYLocal\$o" + AC_DEFINE(DIRED_SUPPORT,1,[Define to 1 if we want dired support]) + + AC_MSG_CHECKING(if you wish to allow extracting from archives via DirEd) + CF_ARG_DISABLE(dired-dearchive, + [ --disable-dired-dearchive disable dearchiving commands],[AC_DEFINE(ARCHIVE_ONLY,1,[Define to 1 if you wish to allow extracting from archives via DirEd])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if DirEd mode should override keys) + CF_ARG_DISABLE(dired-override, + [ --disable-dired-override disable DirEd override keymap],,[AC_DEFINE(OK_OVERRIDE,1,[Define to 1 if DirEd mode should override keys])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if you wish to allow permissions commands via DirEd) + CF_ARG_DISABLE(dired-permit, + [ --disable-dired-permit disable chmod/attrib commands],,[AC_DEFINE(OK_PERMIT,1,[Define to 1 if you wish to allow permissions commands via DirEd])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if you wish to allow executable-permission commands via DirEd) + CF_ARG_DISABLE(dired-xpermit, + [ --disable-dired-xpermit disable chmod/attrib commands],[AC_DEFINE(NO_CHANGE_EXECUTE_PERMS,1,[Define to 1 if you wish to allow executable-permission commands via DirEd])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if you wish to allow "tar" commands from DirEd) + CF_ARG_DISABLE(dired-tar, + [ --disable-dired-tar disable "tar" command],,[AC_DEFINE(OK_TAR,1,[Define to 1 if if you wish to allow "tar" commands from DirEd])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if you wish to allow "uudecode" commands from DirEd) + CF_ARG_DISABLE(dired-uudecode, + [ --disable-dired-uudecode disable "uudecode" command],,[AC_DEFINE(OK_UUDECODE,1,[Define to 1 if you wish to allow "uudecode" commands from DirEd])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if you wish to allow "zip" and "unzip" commands from DirEd) + CF_ARG_DISABLE(dired-zip, + [ --disable-dired-zip disable "zip", "unzip" commands],,[AC_DEFINE(OK_ZIP,1,[Define to 1 if you wish to allow "zip" and "unzip" commands from DirEd])]) + AC_MSG_RESULT($enableval) + + AC_MSG_CHECKING(if you wish to allow "gzip" and "gunzip" commands from DirEd) + CF_ARG_DISABLE(dired-gzip, + [ --disable-dired-gzip disable "gzip", "gunzip" commands],,[AC_DEFINE(OK_GZIP,1,[Define to 1 if you wish to allow "gzip" and "gunzip" commands from DirEd])]) + AC_MSG_RESULT($enableval) +fi + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if you want long-directory listings) +CF_ARG_DISABLE(long-list, +[ --disable-long-list disable long "ls -l" directory listings],, + [AC_DEFINE(LONG_LIST,1,[Define to 1 if you want long-directory listings])]) +AC_MSG_RESULT($enableval) + +dnl -------------------------------------------------------------------------- +AC_MSG_CHECKING(if parent-directory references are permitted) +CF_ARG_DISABLE(parent-dir-refs, +[ --disable-parent-dir-refs + disable "Up-to" links in directory listings], + [AC_DEFINE(NO_PARENT_DIR_REFERENCE,1,[Define to 1 if parent-directory references are permitted])]) +AC_MSG_RESULT($enableval) + +dnl -------------------------------------------------------------------------- +CF_PATH_PROG(TELNET, telnet) +CF_PATH_PROG(TN3270, tn3270) +CF_PATH_PROG(RLOGIN, rlogin) + +CF_PATH_PROG(MV, mv) + +CF_PATH_PROG(GZIP, gzip) +CF_PATH_PROG(UNCOMPRESS,gunzip) +CF_PATH_PROG(UNZIP, unzip) +CF_PATH_PROG(BZIP2, bzip2) +CF_PATH_PROG(BROTLI, brotli) + +CF_PATH_PROG(TAR, tar, pax gtar gnutar bsdtar star) +CF_TAR_OPTIONS($TAR) +AC_DEFINE_UNQUOTED(TAR_UP_OPTIONS, "$TAR_UP_OPTIONS",[Define to command for tar'ing up files]) +AC_DEFINE_UNQUOTED(TAR_DOWN_OPTIONS, "$TAR_DOWN_OPTIONS",[Define to command for untar'ing files]) +AC_DEFINE_UNQUOTED(TAR_FILE_OPTIONS, "$TAR_FILE_OPTIONS",[Define to options for tar to work with files]) +AC_DEFINE_UNQUOTED(TAR_PIPE_OPTIONS, "$TAR_PIPE_OPTIONS",[Define to options for tar to work with pipes]) + +dnl -------------------------------------------------------------------------- +dnl Test features that rely on configure-definitions +dnl -------------------------------------------------------------------------- +if test ".$use_dired" != ".no" ; then + +CF_PATH_PROG(COMPRESS, compress) +CF_PATH_PROG(RM, rm) +CF_PATH_PROG(UUDECODE, uudecode) +CF_PATH_PROG(ZCAT, zcat) +CF_PATH_PROG(ZIP, zip) + +dnl 'INSTALL' is a special case, since the configure script has to find a +dnl BSD-compatible one so the build/install works properly. +case "$INSTALL" in +($srcdir*) + AC_DEFINE_UNQUOTED(INSTALL_PATH,"install") + ;; +(*) + cf_save_INSTALL="$INSTALL" + CF_PATH_PROG(INSTALL, install) + INSTALL="$cf_save_INSTALL" + ;; +esac +fi + +COMPRESS_PROG= +COMPRESS_EXT= +if test "$use_gzip_help" = yes ; then + COMPRESS_PROG="$ac_cv_path_GZIP -9 -n" + COMPRESS_EXT=.gz +fi +AC_SUBST(COMPRESS_PROG) +AC_SUBST(COMPRESS_EXT) + +if test "$cf_cv_screen" = pdcurses ; then + CF_HELP_MESSAGE(Special Libraries for PDCurses X11:) + case "$host_os" in + (mingw*) + CF_PDCURSES_W32 + ;; + (*) + CF_PDCURSES_X11 + ;; + esac +else + CF_TERMIO_AND_CURSES(LYCurses.h,lynx_cfg.h) +fi + +### These tests must be run after establishing the curses library. +if test "$cf_cv_screen" != slang ; then + if test "$cf_cv_screen" != pdcurses ; then + AC_CHECK_HEADERS($cf_cv_screen/term.h term.h) + fi + CF_ALT_CHAR_SET + CF_FANCY_CURSES + CF_FUNC_CURSES_VERSION + CF_NCURSES_BROKEN + CF_COLOR_CURSES + CF_SIZECHANGE + CF_TTYTYPE + if test "$use_wide_curses" = yes ; then + CF_WIDEC_CURSES + fi + CF_CURSES_FUNCS( \ + assume_default_colors \ + cbreak \ + define_key \ + delscreen \ + getattrs \ + getbegx \ + getbegy \ + keypad \ + napms \ + newpad \ + newterm \ + pnoutrefresh \ + resizeterm \ + touchline \ + touchwin \ + use_default_colors \ + use_legacy_coding \ + wattr_get \ + wborder \ + wredrawln \ + wresize \ + ) + AC_CHECK_FUNCS( \ + curses_exit \ + _nc_free_and_exit \ + _nc_freeall \ + ) +fi + +if test "$use_color_style" != no ; then + if test .$cf_cv_color_curses != .yes ; then + AC_ERROR(Configuration does not support color-styles) + fi + if test "$cf_cv_screen" = slang ; then + AC_ERROR(Configuration does not support color-styles) + fi +fi + +if test "$use_scrollbar" != no ; then + if test .$cf_cv_fancy_curses != .yes ; then + AC_MSG_WARN(Configuration does not support ACS_xxx definitions) + else + AC_DEFINE(USE_SCROLLBAR,1,[Define to 1 if configuration supports ACS_xxx definitions]) + fi +fi + +# use rpath for libraries in unusual places +CF_DISABLE_RPATH_HACK + +CF_MERGE_EXTRA_CFLAGS + +### Finally, build config.h and the makefiles +test -z "$CONFIG_SHELL" && CONFIG_SHELL=/bin/sh +AC_SUBST(CONFIG_SHELL) + +srcdir="$srcdir" +SRCDIR_CLEAN="#" +if test -n "$srcdir" ; then + echo "srcdir is $srcdir" + mkdir -p WWW/Library/Implementation + mkdir -p src/chrtrans + test "$USE_INCLUDED_LIBINTL" = yes && mkdir -p intl + test "$srcdir" != "." && SRCDIR_CLEAN="" +fi + +HOMEPAGE_URL="https://lynx.invisible-island.net/" +AC_DEFINE_UNQUOTED(HOMEPAGE_URL,"$HOMEPAGE_URL",[Define to Lynx homepage URL]) +AC_SUBST(HOMEPAGE_URL) + +AC_SUBST(SRCDIR_CLEAN) +AC_OUTPUT( + [makefile \ + WWW/Library/Implementation/makefile \ + src/makefile \ + src/chrtrans/makefile \ + $SUB_MAKEFILE + ],[ + if test "$USE_NLS" = yes ; then + if test "$use_our_messages" = yes ; then + echo "creating po/makefile" + rm -f po/temp$$ + sed -e 's%^.*LYMessages.c% ../LYMessages.c%' \ + -e '$s/\\//' po/POTFILES >po/temp$$ + sed -e "/POTFILES =/r po/temp$$" \ + po/makefile.in > po/makefile + rm -f po/temp$$ + fi + fi + ],[ + USE_NLS=$USE_NLS + use_our_messages=$use_our_messages + ] +) |