about summary refs log blame commit diff stats
path: root/configure.in
blob: a1145e2149f7a279620dd03bd1b50d173603a4e8 (plain) (tree)
1
2
3
4
5
6
7
8

                                                                  
                                               
                                              

                                                                     
                                             
                        








                                                                             
 
                        
                   




                                                                               
                                      
 

                                      
 




                                                                    
 
            

                                                             
                   




                  

                                                                                                                      
 
                             




                                                                              


                                                                            

                                               



                   

           
            
                
               
                                                  



            
                   
 



                                     






                                                                              
               
 







                                 







                                                                   


                                                                            

                                                 
                                                                                                 




                                    
                     
                                                                    






                                            

                                                        
                                                                    

                  
                                                                    



                  






                                                                     
 







                                                             









                                                          
                         



                       



















                                                                              
                                                                              







                                                                              
                                                                           
           
           
                
      
                                                        


                          
                                                   


                          
                                                       

          
                                       
          





                                                                             
        
                                                  
          
        
                                                        
                             
          
      
                                       

          
                                        
                                                                          


                                                                                      
                                                 

                                            


                                             
      


                                                                              
          
       
                                        
          
            
                           
                                                    
          
      
                                       
          
                              

                             


                                                                  
                                                    
          

                                                                        
                                                                  
                                                    
          
          
                                                                     












                                                                              
            
                                                                        

             
                                                 
          
             
                                                    

                                   
     
                                                        

          
                                      

          
                                             
          

                                                                        
                                                                      
                                         


                                                 


          
               







                                                                              
                                 



























                                                                                    
                                


                                           
  
 
                            
 

                                                     
                                    

  



                                                                              

                                                                                






                                                                       








                                                                            




















                                                                          
            

                                           

                                               
  
 
                                                                       
                                              
                   

                                                                       

                
                                       





                                  
 
                     

                          
          
    


                     
                          
                          

                           
                         

          
                           
                       
                          
          





                                     
         
                                      

                                                                            
      
                          


          


                                                                                
                                                                                            
 
                                            
                                 
                                                  
                             
 
                                                                              






                                                                              
                                                                       















                                                                                            


                                                                                 

                                                                                                 













                                                                                               
                                                     
                                                                                     








                                                                              





                                                                              
                                                                        
                   
                     

                  
                  



                     
                     
                     
                    
                  


                   
                 

                     
                 
            
          


                 
              
                                                        




                                                                              
              
             
          
                
             

                 
               
                
                   
                      
                
                
                 
               
                
                 
                
                  
                  
                 
                  
                
                   
                 
 




                   
               
                                                 


                                     




                                                                              
            
        
            
         

              
       
                                 
 
                                                                              
                                                                
                                                                              

                

                      







                                                           






                                                                 
 

                                                                       
                                                        












                                                          






                                                                 
 







                                                                       







                                                         










                                                                    
                                                   
                          
                                                                                   

                                     
 
                        

                         
                    
          

                                  
                          

                                                         
                                         

                                                          
                               

          
                     
 
                 
                     
                      


                            










                                                                         















                                                                  










                                                                              







                                                                           







                                                                     






                                                                                    
 







                                                                              







                                                                  




                                                                   
                             
 






                                                                              







                                                                   







                                                              







                                                         







                                                          































                                                                     





                                                     

                                   
                                      
  








                                                                        





                                                                


                                                               



                                                                 
 
                                               
                         
                                                                               




                                                   

                                                 
                           
                                                                                




                                                       
 
                                                   
                             
                                                                           

                                 


                                                                     







                                                                           







                                                           





                                                                       

                                                         
 






                                                       











                                                                                
                                                                             
                 





                                                                          
                    


                           


                        

                                                   
                                                 




                                                     

                                                   
                                                 




                                                     

                                                 
                                               



                                                 
 







                                                






                                                                              


                                                                      
                     
                                                                      




                                     
                                     

                                
                                                                                
                                       
                                                                                             

                                 
                                                           
                                      
                                                                                             



                                                                            
                                                                                          



                                                                                      
                                                                                                       

                                 
                                                                       
                                 
                                                                               

                                 
                                                                            
                                      
                                                                                          

                                 
                                                                                   
                                 
                                                                                          

                                 
                                                                                     
                                  
                                                                                            




                                                    
                                                                     


                               
                                                             
                               
                            
                                                                       

                                             
 





                               
                             



                               






                                                         


                                                                              


                                     
                           


                                 
 













                                                                         








                                           
                                       
                                                            



                                        
 




                                                                  
                              

















                                       
                            


                                    
                           
                         


                           


















                                                                               
                                             


                                               
                              
                
                

                              


                                                                               
                                                
  

                      
          
                   
                                             

                               


                                       
                                                

                                         
                                                                   
                                                           



                                                      
          

                        
                                          
         
 
dnl Process this file with autoconf to produce a configure script.
dnl written jan/1997
dnl by T.E.Dickey <dickey@invisible-island.net>
dnl and Jim Spath <jspath@mail.bcpl.lib.md.us>
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 <sys/socket.h>])

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 <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
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
	]
)