dnl Process this file with autoconf to produce a configure script. dnl written jan/1997 dnl by T.E.Dickey dnl and Jim Spath dnl dnl ask PRCS to plug-in the project-version for the configure-script. dnl $Format: "AC_REVISION($ProjectVersion$)"$ AC_REVISION(2.8.6dev.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.13.20020210) 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) 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]) PACKAGE=lynx dnl ask PRCS to plug-in the project-version for the packages. # $Format: "VERSION=$ProjectVersion$"$ VERSION=2.8.6dev.12 AC_SUBST(PACKAGE) AC_SUBST(VERSION) AC_SUBST(DESTDIR) AC_SUBST(CONFIG_H) dnl Set of available languages (based on source distribution) test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'` 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 AC_PROG_CC AC_PROG_CPP AC_PROG_LN_S AC_PROG_MAKE_SET AC_PROG_INSTALL AC_CHECK_PROGS(LINT, lint alint lclint tdlint, []) AC_AIX AC_ISC_POSIX CF_BUILD_CC([#],[]) AC_CHECK_TOOL(RANLIB, ranlib, ':') AC_CHECK_TOOL(AR, ar, ar) CF_SUBST(archiver options,AR_OPTS,rv) 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) # 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*) #(vi 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) 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__) if test -n "$GCC" then AC_MSG_CHECKING(if you want to turn on gcc warnings) CF_ARG_ENABLE(warnings, [ --enable-warnings 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 fi fi AC_MSG_CHECKING(if you want to link with dbmalloc for testing) AC_ARG_WITH(dbmalloc, [ --with-dbmalloc test: use Conor Cahill's dbmalloc library], [with_dbmalloc=$withval], [with_dbmalloc=no]) AC_MSG_RESULT($with_dbmalloc) if test $with_dbmalloc = yes ; then AC_CHECK_LIB(dbmalloc,debug_malloc) fi AC_MSG_CHECKING(if you want to link with dmalloc for testing) AC_ARG_WITH(dmalloc, [ --with-dmalloc test: use Gray Watson's dmalloc library], [with_dmalloc=$withval], [with_dmalloc=no]) AC_MSG_RESULT($with_dmalloc) if test $with_dmalloc = yes ; then AC_CHECK_LIB(dmalloc,dmalloc_debug) fi dnl -------------------------------------------------------------------------- dnl Checks for compiler & standard-library characteristics dnl -------------------------------------------------------------------------- dnl If we're able to run this script, this is true! AC_DEFINE(UNIX) AC_C_CONST dnl Only add to this case statement things that we cannot design tests for. CF_PROG_EXT 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" ;; dgux*) TRY_CFLAGS="$TRY_CFLAGS -DDGUX" ;; hpux*) TRY_CFLAGS="$TRY_CFLAGS -DSNAKE" 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.*) #(vi 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" ;; msdosdjgpp*) LIBS="$LIBS -lwatt" TRY_CFLAGS="$TRY_CFLAGS -DDOSPATH -DNOUSERS" ;; next*) TRY_CFLAGS="$TRY_CFLAGS -DNEXT" ;; openbsd* | ekkobsd* | mirbsd*) LIBS="$LIBS -lcompat" ;; 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 #(vi 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) cf_cv_ncurses_header=cursesX.h]) ;; esac CF_ANSI_CC_REQD dnl -------------------------------------------------------------------------- dnl -------------------------------------------------------------------------- CF_HELP_MESSAGE( Basic Configuration Options:) dnl internationalization macros 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]) 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) 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 CF_XOPEN_SOURCE(600,199506L) 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 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]) ]) if test "x$cf_cv_use_libssl" = "xno" ; then AC_CACHE_CHECK(if you want experimental gnutls support,cf_cv_use_libgnutls,[ AC_ARG_WITH(gnutls, [ --with-gnutls[=path] link with experimental gnutls support], [cf_cv_use_libgnutls=$withval], [cf_cv_use_libgnutls=no]) ]) fi 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 if test "x$cf_cv_use_libssl" != xno ; then CF_SSL($cf_cv_use_libssl) elif test "x$cf_cv_use_libgnutls" != xno ; then CF_GNUTLS($cf_cv_use_libgnutls) fi 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|ncursesw|pdcurses|slang) cf_cv_screen=$withval ;; *) AC_ERROR(Unexpected value) ;; esac], [cf_cv_screen=curses])]) case $cf_cv_screen in curses|ncurses*) CF_WITH_CURSES_DIR ;; esac case $cf_cv_screen in curses) CF_CURSES_CPPFLAGS CF_NCURSES_VERSION CF_CURSES_LIBS CF_CURS_PERFORMANCE CF_CURS_TOUCHLINE ;; ncurses) CF_NCURSES_CPPFLAGS CF_NCURSES_LIBS CF_NCURSES_VERSION ;; ncursesw) CF_UTF8_LIB CF_NCURSES_CPPFLAGS(ncursesw) CF_NCURSES_LIBS(ncursesw) CF_NCURSES_VERSION ;; pdcurses) cf_cv_ncurses_header=xcurses.h # do this last, since it changes definition of main: CF_PDCURSES_X11 ;; slang) CF_SLANG_UNIX_DEFS ;; esac dnl Get the actual value for $libdir, which we will compile into Lynx as part of dnl the config pathnames. eval cf_libdir=$libdir cf_libdir=`echo $cf_libdir | sed -e s%'^NONE/'%$prefix/% -e s%'^NONE/'%$ac_default_prefix/%` AC_MSG_CHECKING(for location of config-file) LYNX_CFG_FILE=$cf_libdir/lynx.cfg AC_DEFINE_UNQUOTED(LYNX_CFG_FILE,"$LYNX_CFG_FILE") AC_MSG_RESULT($LYNX_CFG_FILE) 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) 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 '^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_HEADER_STDC 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 \ stdlib.h \ string.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 \ unistd.h \ vfork.h \ ) CF_TERMIO_AND_TERMIOS CF_FUNC_SIGACTION CF_FUNC_WAIT CF_VARARGS AC_TYPE_GETGROUPS AC_TYPE_PID_T AC_TYPE_UID_T AC_TYPE_MODE_T CF_CHECK_TYPE(socklen_t, int, [#include ]) dnl -------------------------------------------------------------------------- dnl Checks for library units dnl -------------------------------------------------------------------------- AC_FUNC_ALLOCA AC_FUNC_VFORK CF_FIONBIO CF_REMOVE_BROKEN CF_FUNC_LSTAT AC_CHECK_FUNCS( \ cuserid \ ftime \ getcwd \ getgroups \ gettimeofday \ getuid \ mktemp \ mkdtemp \ popen \ putenv \ readdir \ setuid \ strerror \ truncate \ ttyname \ unsetenv \ usleep \ vasprintf \ waitpid \ ) AC_REPLACE_FUNCS( \ mktime \ strstr \ ) CF_SRAND(lynx_) CF_CHECK_FUNCDECLS([#include ], strstr) CF_CHECK_FUNCDECLS([ #include #include ], getgrgid getgrnam) dnl -------------------------------------------------------------------------- dnl Checks for external-data dnl -------------------------------------------------------------------------- CF_BOOL_DEFS CF_ERRNO CF_SET_ERRNO CF_LOCALE CF_NGROUPS CF_SYS_ERRLIST CF_UTMP CF_CHECK_EXTERN_DATA(h_errno,int) dnl -------------------------------------------------------------------------- dnl Experimental options that don't need to test system features dnl -------------------------------------------------------------------------- CF_HELP_MESSAGE( Experimental Options:) 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) 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) 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) 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) AC_MSG_CHECKING(if experimental address-list page should be used) CF_ARG_ENABLE(addrlist-page, [ --enable-addrlist-page use experimental address-list page], [use_addrlist_page=$enableval], [use_addrlist_page=no]) AC_MSG_RESULT($use_addrlist_page) test $use_addrlist_page != no && AC_DEFINE(EXP_ADDRLIST_PAGE) AC_MSG_CHECKING(if experimental charset-selection logic should be used) CF_ARG_ENABLE(charset-choice, [ --enable-charset-choice use experimental charset-selection logic], [use_charset_choice=$enableval], [use_charset_choice=no]) AC_MSG_RESULT($use_charset_choice) test $use_charset_choice != no && AC_DEFINE(EXP_CHARSET_CHOICE) AC_MSG_CHECKING(if experimental CJK logic should be used) CF_ARG_ENABLE(cjk, [ --enable-cjk use experimental CJK logic], [use_cjk=$enableval], [use_cjk=no]) AC_MSG_RESULT($use_cjk) test $use_cjk != no && AC_DEFINE(CJK_EX) AC_MSG_CHECKING(if experimental Japanese UTF-8 logic should be used) CF_ARG_ENABLE(japanese-utf8, [ --enable-japanese-utf8 use experimental Japanese UTF-8 logic], [use_ja_utf8=$enableval], [use_ja_utf8=no]) AC_MSG_RESULT($use_ja_utf8) if test $use_ja_utf8 != no ; then AC_DEFINE(EXP_JAPANESEUTF8_SUPPORT) AC_CHECK_LIB(iconv,libiconv_open) fi AC_MSG_CHECKING(if color-style code should be used) CF_ARG_ENABLE(color-style, [ --enable-color-style use optional/experimental color style (ncurses/curses)], [use_color_style=$enableval], [use_color_style=no]) case $use_color_style in no) AC_MSG_RESULT(no) INSTALL_LSS= ;; *) AC_DEFINE(USE_COLOR_STYLE) AC_MSG_RESULT(yes) AC_MSG_CHECKING(for location of style-sheet file) LYNX_LSS_FILE=$cf_libdir/lynx.lss AC_DEFINE_UNQUOTED(LYNX_LSS_FILE,"$LYNX_LSS_FILE") AC_MSG_RESULT($LYNX_LSS_FILE) INSTALL_LSS=install-lss ;; esac AC_SUBST(INSTALL_LSS) 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) fi AC_MSG_CHECKING(if experimental htmlized lynx.cfg should be built) CF_ARG_ENABLE(htmlized-cfg, [ --enable-htmlized-cfg build experimental htmlized lynx.cfg], [use_exp_htmlized_cfg=$enableval], [use_exp_htmlized_cfg=no]) AC_MSG_RESULT($use_exp_htmlized_cfg) LYNXCFG_MAKE='' LYNXCFG_URL='' if test $use_exp_htmlized_cfg = no ; then LYNXCFG_MAKE='#' LYNXCFG_URL='http://www.hippo.ru/%7Ehvv/' fi AC_SUBST(LYNXCFG_MAKE) AC_SUBST(LYNXCFG_URL) ### check for ipv6 support AC_MSG_CHECKING([whether to enable ipv6]) CF_ARG_ENABLE(ipv6, [ --enable-ipv6 use experimental ipv6 (with ipv4) support], [AC_DEFINE(ENABLE_IPV6)]) AC_MSG_RESULT($enableval) if test "$enableval" = "yes"; then CF_CHECK_IPV6 fi dnl AC_REPLACE_FUNCS(getaddrinfo getnameinfo) AC_MSG_CHECKING(if experimental element-justification logic should be used) CF_ARG_ENABLE(justify-elts, [ --enable-justify-elts use experimental element-justification logic], [use_exp_justify_elts=$enableval], [use_exp_justify_elts=no]) AC_MSG_RESULT($use_exp_justify_elts) test $use_exp_justify_elts != no && AC_DEFINE(EXP_JUSTIFY_ELTS) 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) dnl AC_MSG_CHECKING(if experimental JavaScript support should be used) dnl CF_ARG_ENABLE(libjs, dnl [ --enable-libjs use experimental JavaScript support (Mozilla libjs)], dnl [use_libjs=$enableval], dnl [use_libjs=no]) dnl AC_MSG_RESULT($use_libjs) dnl test $use_libjs != no && AC_DEFINE(EXP_LIBJS) AC_MSG_CHECKING(if experimental locale-charset selection logic should be used) CF_ARG_ENABLE(locale-charset, [ --enable-locale-charset use experimental 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(EXP_LOCALE_CHARSET) 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) AC_MSG_CHECKING(if scrollbar code should be used) CF_ARG_ENABLE(scrollbar, [ --enable-scrollbar use experimental scrollbar, with mouse], [use_scrollbar=$enableval], [use_scrollbar=no]) AC_MSG_RESULT($use_scrollbar) dnl -------------------------------------------------------------------------- dnl Miscellaneous options that don't need to test system features dnl -------------------------------------------------------------------------- CF_HELP_MESSAGE( Miscellaneous Options:) AC_MSG_CHECKING(if alternative line-edit bindings should be used) CF_ARG_ENABLE(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(EXP_ALT_BINDINGS) 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) AC_MSG_CHECKING(if file-upload logic should be used) CF_ARG_DISABLE(file-upload, [ --disable-file-upload use 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) AC_MSG_CHECKING(if partial-display should be used) CF_ARG_DISABLE(partial, [ --disable-partial use 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) 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) AC_MSG_CHECKING(if html source should be colorized) CF_ARG_DISABLE(prettysrc, [ --disable-prettysrc colorize HTML source], [use_prettysrc=$enableval], [use_prettysrc=yes]) AC_MSG_RESULT($use_prettysrc) test $use_prettysrc != no && AC_DEFINE(USE_PRETTYSRC) AC_MSG_CHECKING(if read-progress message should show ETA) CF_ARG_DISABLE(read-eta, [ --disable-read-eta 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) AC_MSG_CHECKING(if source caching should be used) CF_ARG_DISABLE(source-cache, [ --disable-source-cache 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) 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) LIBOBJS="$LIBOBJS LYExtern\$o" fi 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) test $use_setfont = yes && AC_DEFINE(EXP_CHARTRANS_AUTOSWITCH) 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)]) AC_MSG_RESULT($enableval) 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) 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) 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) 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 = no && AC_DEFINE(DONT_TRACK_INTERNAL_LINKS) 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) test $use_nsl_fork = yes && AC_DEFINE(NSL_FORK) 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) 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) test $use_underline = no && AC_DEFINE(UNDERLINE_LINKS,0) 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) 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 AC_DEFINE(USE_BZLIB) fi 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 AC_DEFINE(USE_ZLIB) fi CF_HELP_MESSAGE( Other Network Services:) 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) 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) 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) 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) 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 LIBOBJS="$LIBOBJS LYLocal\$o" AC_DEFINE(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)]) 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)]) 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)]) 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)]) 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)]) 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)]) 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)]) 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)]) AC_MSG_RESULT($enableval) fi 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)]) AC_MSG_RESULT($enableval) 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)]) AC_MSG_RESULT($enableval) 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(TAR, tar, pax gtar gnutar bsdtar star) CF_TAR_OPTIONS($TAR) AC_DEFINE_UNQUOTED(TAR_UP_OPTIONS, "$TAR_UP_OPTIONS") AC_DEFINE_UNQUOTED(TAR_DOWN_OPTIONS, "$TAR_DOWN_OPTIONS") AC_DEFINE_UNQUOTED(TAR_FILE_OPTIONS, "$TAR_FILE_OPTIONS") AC_DEFINE_UNQUOTED(TAR_PIPE_OPTIONS, "$TAR_PIPE_OPTIONS") 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*) # (vi AC_DEFINE_UNQUOTED(INSTALL_PATH,"install") ;; *) # (vi 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" 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:) CF_PDCURSES_X11 else CF_TERMIO_AND_CURSES(LYCurses.h) fi ### These tests must be run after establishing the curses library. if test $cf_cv_screen != slang ; then AC_CHECK_HEADERS($cf_cv_screen/term.h term.h) CF_ALT_CHAR_SET CF_FANCY_CURSES CF_FUNC_CURSES_VERSION CF_NCURSES_BROKEN CF_COLOR_CURSES CF_SIZECHANGE CF_TTYTYPE CF_WIDEC_CURSES CF_CURSES_FUNCS( \ assume_default_colors \ cbreak \ define_key \ delscreen \ getattrs \ getbegx \ getbegy \ keypad \ napms \ newpad \ newterm \ pnoutrefresh \ resizeterm \ touchline \ touchwin \ use_default_colors \ wattr_get \ wborder \ wredrawln \ wresize \ ) 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) fi fi ### Finally, build config.h and the makefiles test -z "$CONFIG_SHELL" && CONFIG_SHELL=/bin/sh AC_SUBST(CONFIG_SHELL) CFLAGS="$CFLAGS $EXTRA_CFLAGS" srcdir="$srcdir" SRCDIR_CLEAN="#" if test -n "$srcdir" ; then echo srcdir is $srcdir $CONFIG_SHELL $MKINSTALLDIRS WWW/Library/Implementation $CONFIG_SHELL $MKINSTALLDIRS src/chrtrans test "$USE_INCLUDED_LIBINTL" = yes && $CONFIG_SHELL $MKINSTALLDIRS intl test "$srcdir" != "." && SRCDIR_CLEAN="" fi 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 ] )