Mercurial > gftp.yaz
view configure.in @ 122:76e2b58a9440
2003-4-5 Brian Masney <masneyb@gftp.org>
* lib/config_file.c lib/options.h lib/gftp.h lib/rfc959.c
lib/rfc2068.c lib/ssh.c - added new internal configuration interface.
Rather than having a global variable for each option, I have a global
hash table (gftp_global_options_htable) that I can look up option names
by name using gftp_lookup_global_option(). I also an options hash
associated with a request structure, so I will be able to call
gftp_lookup_request_option(). I will be able to override options with
bookmarks or while transfers are in progress very easily now. Also, all
options no longer have to appear in config_file.c, the per protocol
options can appear inside their own file
* lib/gftp.h lib/bookmarks.c lib/local.c lib/rfc959.c lib/rfc2068.c -
remove set_data_type and protocol name from struct gftp_request
* lib/rfc959.c - renamed all firewall_* variables to ftp_proxy_* in
the config file
* lib/gftp.h lib/protocols.c lib/rfc959.c - renamed all GFTP_TYPE_*
vars to GFTP_DIRTYPE_*
* lib/gftp.h - removed ascii field and renamed the node pointer to
user_data in struct gftp_file. In gftp_request, removed any setting
that is now stored in the global/local hash tables. Added
register_module() pointer that will be called whenever the protocol is
first loaded into gftp
* lib/rfc959.c src/text/gftp-text.c - moved the ascii/binary
translation to rfc959.c. Also, moved any instance of automatically
setting the data type to rfc959.c as well.
* lib/misc.c lib/sshv2.c - moved all ssh functions from misc.c to
sshv2.c. I had these origionally in misc.c because I used to have 2
different SSH protocols
* lib/protocols.c src/text/gftp-text.c - added gftp_calc_kbs() to
protocols.c. This no longer needs to be in the different ports
* src/text/gftp-text.c - read/write options based on new configuration
interface
* Use new configuration interface in all source files
* Updated copyright dates on all source files
* Note: GTK+ port is completely broken at the moment. I'll upload
those changes whenever I get them done
author | masneyb |
---|---|
date | Sat, 05 Apr 2003 16:30:45 +0000 |
parents | 1b41e6945e9d |
children | 5c952c5cb438 |
line wrap: on
line source
dnl Process this file with autoconf to produce a configure script. AC_INIT(lib/gftp.h) AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE(gftp,2.0.14) AC_ARG_ENABLE(gtk20, [ --disable-gtk20 Don't look for GTK+ 2.0 libraries], enable_gtk20=$enableval, enable_gtk20="yes") AC_ARG_ENABLE(gtkport, [ --disable-gtkport Disable compiling the GTK+ port], enable_gtkport=$enableval, enable_gtkport="yes") AC_ARG_ENABLE(textport, [ --disable-textport Disable compiling the text port], enable_textport=$enableval, enable_textport="yes") AC_SUBST(PACKAGE) AC_SUBST(VERSION) AC_SUBST(PREFIX) ALL_LINGUAS="am ar bg ca cs da de es fi fr hu it ja ko nl no pl pt pt_BR ro ru sv tr uk zh_CN zh_TW" AC_DEFINE(_GNU_SOURCE, 1, [Define for setting a GNU environment]) AC_CANONICAL_HOST AC_PROG_CC AC_AIX AC_MINIX AC_EXEEXT AC_PROG_RANLIB AC_SYS_LARGEFILE dnl AC_ISC_POSIX AM_C_PROTOTYPES AC_C_CONST AC_C_INLINE AM_MAINTAINER_MODE AC_PROG_AWK AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_SYS_WAIT AC_CHECK_HEADERS(fcntl.h limits.h malloc.h strings.h sys/ioctl.h sys/time.h unistd.h) AC_TYPE_MODE_T AC_TYPE_PID_T AC_TYPE_SIZE_T AC_HEADER_TIME AC_STRUCT_TM AC_FUNC_ALLOCA AC_PROG_GCC_TRADITIONAL AC_FUNC_MMAP AC_TYPE_SIGNAL AC_FUNC_STRFTIME AC_FUNC_UTIME_NULL AC_CHECK_FUNCS(gai_strerror getaddrinfo getcwd gettimeofday getwd mkdir mktime putenv rmdir select socket strdup strstr strtod strtol uname grantpt) if test "x$enable_gtk20" = "xyes" ; then PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.0.0, found_glib20=1, found_glib20=0) else found_glib20=0; fi if test "x$GFTP_TEXT" = "x" -a $found_glib20 = 0 ; then AM_PATH_GLIB(1.2.3, , AC_MSG_ERROR(gFTP needs GLIB 1.2.3 or higher)) fi EXTRA_LIBS="" AC_CHECK_LIB(socket, socket, EXTRA_LIBS="-lsocket") AC_CHECK_LIB(nsl, gethostbyname, EXTRA_LIBS="$EXTRA_LIBS -lnsl") GFTP_TEXT="" USE_READLINE="yes" READLINE_LIBS="" if test "x$enable_textport" = "xyes" ; then AC_MSG_CHECKING([whether to use readline]) AC_ARG_WITH(readline, [ --with-readline turn on readline [default=yes, default tries -lncurses, -lcurses, -ltermcap]], [case "${withval}" in yes) USE_READLINE="yes" ; AC_MSG_RESULT([yes]) ;; no) USE_READLINE="no" ; AC_MSG_RESULT([no]) ;; only) USE_READLINE="yes" EXTRA_LIBREADLINE_DEPS=" " AC_MSG_RESULT([yes (using only readline)]) ;; *) USE_READLINE="yes" EXTRA_LIBREADLINE_DEPS="${withval}" AC_MSG_RESULT([yes (using extra libraries ${withval})]) ;; esac],[AC_MSG_RESULT([${USE_READLINE}])]) dnl Checks for libraries. dnl When checking readline, check using extra libraries first. dnl We want to protect against the link somehow succeeding, but only dnl failing at runtime, as seems to happen on some BSD systems. if test "$USE_READLINE" = yes ; then if test "$EXTRA_LIBREADLINE_DEPS" = "" ; then unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, -lncurses) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline -lncurses" EXTRA_LIBREADLINE_DEPS=-lncurses AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline]) else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, -lcurses) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline -lcurses" EXTRA_LIBREADLINE_DEPS=-lcurses AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline]) else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, -ltermcap) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline -ltermcap" EXTRA_LIBREADLINE_DEPS=-ltermcap AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline]) else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false) if test x${HAVE_LIBREADLINE} = xtrue ; then AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline]) else AC_DEFINE(HAVE_LIBREADLINE, [0], [Define if the text port uses readline]) fi fi fi fi else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, ${EXTRA_LIBREADLINE_DEPS}) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline ${EXTRA_LIBREADLINE_DEPS}" AC_DEFINE(HAVE_LIBREADLINE, [1], [Define if the text port uses readline]) else AC_DEFINE(HAVE_LIBREADLINE, [0], [Define if the text port uses readline]) fi fi else HAVE_LIBREADLINE=false AC_DEFINE(HAVE_LIBREADLINE, [0], [Define if the text port uses readline]) fi if test x${HAVE_LIBREADLINE} = xtrue; then READLINE_LIBS="-lreadline ${EXTRA_LIBREADLINE_DEPS}" GFTP_TEXT="gftp-text" fi fi AC_CHECK_LIB(m, log10, EXTRA_LIBS="$EXTRA_LIBS -lm") AM_WITH_DMALLOC AC_SUBST(EXTRA_LIBS) AC_SUBST(READLINE_LIBS) AC_SUBST(GFTP_TEXT) GFTP_GTK="" PTHREAD_CFLAGS="" PTHREAD_LIBS="" # I don't have PKG_CHECK_MODULES or AM_PATH_GLIB check for gthread because # the text port doesn't need to be compiled against the thread libraries GTHREAD_LIBS="" if test "x$enable_gtkport" = "xyes" ; then if test $found_glib20 = 1 -a "x$enable_gtk20" = "xyes" ; then PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.0.0, GFTP_GTK=gftp-gtk, AC_MSG_ERROR(You have GLIB 2.0 installed but I cannot find GTK+ 2.0. Run configure with --disable-gtk20 or install GTK+ 2.0)) fi if test "x$GFTP_GTK" = "x" ; then AM_PATH_GTK(1.2.3, GFTP_GTK=gftp-gtk, AC_MSG_WARN(gFTP needs GTK+ 1.2.3 or higher for the graphical version. Only building the text version)) GTHREAD_LIBS="-lgthread" else GTHREAD_LIBS="-lgthread-2.0" fi if test "x$GFTP_GTK" = xgftp-gtk; then AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIBS="-lpthread") if test "x$PTHREAD_LIBS" = x ; then AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIBS="-lpthreads") fi if test "x$PTHREAD_LIBS" = x ; then AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIBS="-lc_r") fi if test "x$PTHREAD_LIBS" = x ; then echo ; echo "Error: Cannot find the pthread libraries. If you don't have them installed," ; echo "your X libraries probably aren't thread safe either. You can download the" ; echo "pthread library and the thread safe X libraries from my webpage at" ; echo "http://www.gftp.org/. Note the pthread library and the thread safe" ; echo "X libraries on my webpage are for Linux libc5 machines ONLY" ; echo ; exit fi PTHREAD_CFLAGS="-D_REENTRANT" # I took some of these from the glib 1.3.3 configure.in case $host in *-hpux*) # From H.Merijn Brand <h.m.brand@hccnet.nl> echo '#define pthread_attr_init(x) __pthread_attr_init_system(x)' +>>confdefs.h ;; *-aix*) PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE" if test x"$GCC" = xyes; then PTHREAD_CFLAGS="$PTHREAD_CFLAGS -mthreads" fi ;; *-freebsd*) PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE" # FreeBSD 2.2.x shiped with gcc 2.7.2.x, which doesn't support # -mthreads flag. ;; *-openbsd*) PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE" if test "x$PTHREAD_LIBS" = "x-lc_r"; then PTHREAD_LIBS="-pthread" fi ;; *-sysv5uw7*) # UnixWare 7 if test "$GCC" != "yes"; then PTHREAD_CFLAGS="$PTHREAD_CFLAGS -Kthread" else PTHREAD_CFLAGS="$PTHREAD_CFLAGS -pthread" fi ;; *-dg-dgux*) # DG/UX PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_POSIX4A_DRAFT10_SOURCE" esac fi fi AC_SUBST(PTHREAD_CFLAGS) AC_SUBST(PTHREAD_LIBS) AC_SUBST(GTHREAD_LIBS) AC_SUBST(GFTP_GTK) AM_GNU_GETTEXT AC_OUTPUT(Makefile docs/Makefile docs/sample.gftp/Makefile intl/Makefile lib/Makefile po/Makefile.in src/gftp src/Makefile src/gtk/Makefile src/text/Makefile gftp.spec)