cosmetic fixes from Rudi
[sxemacs] / configure.ac
index f25ae84..a6d48ef 100644 (file)
@@ -31,7 +31,7 @@ AC_COPYRIGHT(
 #### Copyright (C) 2005 Malcolm Purvis.
 #### Copyright (C) 2005, 2006, 2007 Steve Youngs.
 #### Copyright (C) 2006, 2007, 2008 Sebastian Freundt.
-#### Copyright (C) 2007, 2010, 2011 Nelson Ferreira
+#### Copyright (C) 2007, 2010, 2011, 2012 Nelson Ferreira
 
 ### Don't edit this script!
 ### This script was automatically generated by the `autoconf' program
@@ -346,9 +346,6 @@ OG_MULTIARG_WITH([static-modules], [dnl
        OG_MULTIARG_ITEM([cl], [cl], [fast Common Lisp implementation])
 ])
 
-dnl _OG_MULTIARG_ITEM([ent], [int], [int], [native integer arithmetics])
-dnl _OG_MULTIARG_ITEM([ent], [fpfloat], [fpfloat], [native fixed precision floats])
-dnl _OG_MULTIARG_ITEM([ent], [indef], [indef], [abstract indefinites])
 OG_MULTIARG_WITH([ent], [dnl
        AS_HELP_STRING([--with-ent], [
                Compile in support for enhanced number types,
@@ -551,6 +548,27 @@ OG_ARG_WITH([ncurses],
                [Use the ncurses library for tty support.]),
        [auto], [Autodetect])
 
+OG_ARG_WITH([curses],
+       AS_HELP_STRING([--with-curses],
+               [Use the curses library for tty support.]),
+       [auto], [Autodetect])
+
+OG_ARG_WITH([terminfo],
+       AS_HELP_STRING([--with-terminfo],
+               [Use the terminfo library for tty support.]),
+       [auto], [Autodetect])
+
+OG_ARG_WITH([termlib],
+       AS_HELP_STRING([--with-termlib],
+               [Use the termlib library for tty support.]),
+       [auto], [Autodetect])
+
+OG_ARG_WITH([termcap],
+       AS_HELP_STRING([--with-termcap],
+               [Use the termcap library for tty support.]),
+       [auto], [Autodetect])
+
+
 OG_ARG_WITH([gpm],
        AS_HELP_STRING([--with-gpm],
                [Compile in GPM mouse support for ttys.]),
@@ -603,7 +621,6 @@ OG_MULTIARG_WITH([sound], [dnl
        [auto], [Autodetect all sound support (except Pulse)], [dnl
        OG_MULTIARG_ITEM([alsa], [ALSA], [kernel-based linux sound standard])
        OG_MULTIARG_ITEM([ao], [ao], [generic audio output layer])
-       OG_MULTIARG_ITEM([arts], [aRts], [discontinued realtime synthesizer])
        OG_MULTIARG_ITEM([esd], [ESD], [Enlightenment Sound Daemon])
        OG_MULTIARG_ITEM([jack], [Jack], [a low-latency audio server])
        OG_MULTIARG_ITEM([nas], [NAS], [Network Audio System])
@@ -741,9 +758,8 @@ dnl
 ## -------------------------------------------------------------------------
 ## Check for users who regularly forget about running autoconf
 ## -------------------------------------------------------------------------
-if test -f $0.ac -a $0.ac -nt $0; then
-       AC_MSG_ERROR([What are you doing? RUN autoreconf NOW!!!])
-fi
+AS_IF([test -f "$0.ac" -a "$0.ac" -nt "$0"],
+   AC_MSG_ERROR([What are you doing? RUN autoreconf NOW!!!]))
 
 #
 # Turn off core generation. We are already verifying the program fails, no need
@@ -788,6 +804,7 @@ dnl -------------------------------------------------------------------------
 SXE_CHECK_COMMAND_LINE
 
 AM_INIT_AUTOMAKE([foreign -Wall])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
 SXE_CHECK_BUILDCHAIN
 AC_SUBST(EGREP)
 
@@ -811,22 +828,16 @@ AC_CHECK_PROG([have_git], [git], [yes], [no])
 AC_MSG_CHECKING([for SXEmacs version])
 AC_MSG_RESULT([SXEmacs SXEM4CS_VERSION])
 dnl Must do the following first to determine verbosity for AC_DEFINE
-if test -n "[]SXEM4CS_BETA_P[]"; then
-       beta=yes
-else
-       beta=no
-fi
+AS_IF([test -n "[]SXEM4CS_BETA_P[]"],beta=yes,beta=no)
 : "${extra_verbose=$beta}"
 
 AC_MSG_CHECKING([for SXEmacs patchlevel])
 CURDIR=$(pwd)
 cd "$sxe_srcdir"
-if test "$have_git" = "yes"; then
-       sxemacs_git_version="$(git describe | head -1)"
-fi
-if test -z "$sxemacs_git_version" ; then
-       sxemacs_git_version="[]SXEM4CS_GIT_VERSION[]"
-fi
+AS_IF([test "$have_git" = "yes"], 
+           [sxemacs_git_version=`git describe | head -1`])
+AS_IF([test -z "$sxemacs_git_version"],
+       sxemacs_git_version="[]SXEM4CS_GIT_VERSION[]")
 AC_MSG_RESULT([$sxemacs_git_version])
 version="$sxemacs_git_version"
 cd "$CURDIR"
@@ -1251,9 +1262,8 @@ SXE_CHECK_FILE_LOCK
 
 case "$opsys" in decosf*)
        AC_CHECK_LIB([pthreads], [cma_open])
-       if test "$ac_cv_lib_pthreads_cma_open" = "yes"; then
-               c_switch_site="$c_switch_site -threads"
-       fi
+       AS_IF([test "$ac_cv_lib_pthreads_cma_open" = "yes"],
+               c_switch_site="$c_switch_site -threads")
        ;;
 esac
 
@@ -1675,7 +1685,12 @@ dnl Check for POSIX functions.
 dnl ----------------------------------------------------------------
 
 SXE_CHECK_BASIC_FUNS
-AC_CHECK_FUNCS([alarm cbrt closedir dup2 eaccess endpwent floor fmod fpathconf frexp fsync ftime ftruncate getaddrinfo getcwd gethostbyname gethostname getnameinfo getpagesize getrlimit gettimeofday getwd isascii link logb lrand48 matherr memchr memmove memset mkdir mktime munmap perror poll pow putenv random re_comp readlink regcomp rename res_init rint rmdir select setitimer setlocale setpgid setsid sigblock sighold sigprocmask snprintf socket sqrt stpcpy strcasecmp strchr strdup strerror strlwr strrchr strspn strtol strupr symlink tzset ulimit umask uname usleep utime vlimit vsnprintf waitpid wcscmp wcslen])
+AC_CHECK_FUNCS([alarm cbrt closedir dup2 eaccess endpwent floor fmod fpathconf frexp fsync ftime ftruncate getaddrinfo getcwd gethostbyname gethostname getnameinfo getpagesize getrlimit gettimeofday getwd isascii isatty link logb lrand48 matherr memchr memmove memset mkdir mktime munmap perror poll pow putenv random re_comp readlink regcomp rename res_init rint rmdir select setitimer setlocale setpgid setsid sigblock sighold sigprocmask snprintf socket sqrt stpcpy strncpy strncat strcasecmp strchr strdup strerror strlwr strrchr strspn strtol strupr symlink ttyname tzset ulimit umask uname usleep utime vlimit vsnprintf waitpid wcscmp wcslen])
+
+AS_IF([test "$have_isatty" = "yes"],
+       AC_DEFINE([HAVE_ISATTY], [1], [isatty is available]))
+AS_IF([test "$have_ttyname" = "yes"],
+       AC_DEFINE([HAVE_TTYNAME], [1], [ttyname is available]))
 
 
 ## combines all these time structures and funs
@@ -1771,24 +1786,21 @@ dnl     MOD_INSTALL_PROGRAM="true"
 dnl    OBJECT_TO_BUILD="\$(MODNAME).o"
 fi
 
-if test "$opsys" != "darwin"; then
-
-       if test "$with_modules_ase" = "yes"; then
-               have_modules_ase=yes
-       fi
-       if test "$with_static_modules_ase" = "yes"; then
-               have_static_modules_ase=yes
-       fi
+if test "$with_modules_ase" = "yes"; then
+       have_modules_ase=yes
+fi
+if test "$with_static_modules_ase" = "yes"; then
+       have_static_modules_ase=yes
 fi
 SXE_EMOD_STATMOD([ase])
-if test "$opsys" != "darwin"; then
-       have_ase_cart="yes"
-       have_ase_dig="yes"
-       have_ase_intv="yes"
-       have_ase_metric="yes"
-       have_ase_nbhood="yes"
-       have_ase_perm="yes"
-       have_ase_resclass="yes"
+if test "$have_modules_ase $have_static_modules_ase" != " "; then
+       have_ase_cart="yes"
+       have_ase_dig="yes"
+       have_ase_intv="yes"
+       have_ase_metric="yes"
+       have_ase_nbhood="yes"
+       have_ase_perm="yes"
+       have_ase_resclass="yes"
 fi
 if test "$have_bison" = "yes"; then
        if test "$with_modules_cl" = "yes" ; then
@@ -2379,9 +2391,8 @@ if test "$with_x11" = "yes"; then
        dnl Avoid version mismatch for shared library libXm.so on osf4
        case "$opsys" in
        decosf*)
-               if test "$GCC" = yes -a -d "/usr/shlib"; then
-                       SXE_APPEND([-L/usr/shlib], [X_LIBS]);
-               fi
+               AS_IF([test "$GCC" = yes -a -d "/usr/shlib"],
+                       SXE_APPEND([-L/usr/shlib], [X_LIBS]))
                ;;
        esac
 
@@ -2559,11 +2570,6 @@ fi
 
 dnl Test for features that require X11 support
 if test "$with_x11" != "yes"; then
-  dnl It ought to be reasonable to have no output device at all, and only use
-  dnl SXEmacs in --batch mode.
-  dnl if test "$with_tty" = "no" ; then
-  dnl   AC_MSG_ERROR([No window system support and no TTY support - Unable to proceed.])
-  dnl fi
   for feature in offix wmcommand xim xmu nas_sound
   do
     if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
@@ -2697,17 +2703,64 @@ dnl ---------------------
 dnl checks for header files
 AC_CHECK_HEADERS([libintl.h nlist.h sgtty.h termio.h termios.h])
 
-if test "$with_tty" != "no"  ; then
-       AS_MESSAGE(checking for TTY-related features)
-       AC_DEFINE([HAVE_TTY], [1], [Description here!])
-       AC_DEFINE([HAVE_UNIXOID_EVENT_LOOP], [1], [Description here!])
-       SXE_ADD_SXEUITTY_OBJS([console-tty.o device-tty.o event-tty.o frame-tty.o objects-tty.o redisplay-tty.o cm.o])
+AS_IF([test "$with_tty" != "no"],[
+   AS_MESSAGE(checking for TTY-related features)
+   dnl Check if needed calls are available at all...
+   tty_libs="ncurses curses terminfo termlib termcap"
+   tty_funcs="tgetent tgetstr tgetflag tparm tgoto tputs"
+   for func in $tty_funcs; do
+       AC_SEARCH_LIBS($func,$tty_libs)
+   done
+   AS_IF([test "$ac_cv_search_tgetent"  = "no" -a \
+              "$ac_cv_search_tgetflag" = "no" -a \
+              "$ac_cv_search_tgetstr"  = "no" -a \
+              "$ac_cv_search_tgoto"    = "no" -a \
+              "$ac_cv_search_tparm"    = "no" -a \
+              "$ac_cv_search_tputs"    = "no" ], 
+                  have_tty=no)
+   AS_IF([test "$with_tty" = "yes" -a "$have_tty" = "no" ],[
+      AC_MSG_ERROR([Your system lacks necessary functions for requested TTY support])])
+],[
+  for feature in ncurses curses termcap terminfo termlib gpm; do
+    if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
+      AC_MSG_WARN([--with-${feature} ignored:  Not valid without TTY support])
+    fi
+    eval "with_${feature}=no"
+  done
+])
 
-  dnl Autodetect ncurses.
-  AC_CHECK_LIB(ncurses, tgetent, , with_ncurses=no)
-  AC_CHECK_LIB(ncurses, tgetstr, , with_ncurses=no)
-  AC_CHECK_LIB(ncurses, tparm, , with_ncurses=no)
-  if test "$with_ncurses" != "no"; then
+AS_IF([test "$with_tty" != "no" -a "$have_tty" != "no" ],[
+   for lib in $tty_libs; do 
+      SXE_CHECK_LINK_LIB($lib, , eval have_${lib}=no)
+      with_lib_eval=`eval echo \\$with_$lib`
+      have_lib_eval=`eval echo \\$have_$lib`
+      AS_IF([test "$have_lib_eval" = "yes" ], [
+        for func in $tty_funcs; do
+            AC_CHECK_LIB($lib, tgetent)
+            AC_CHECK_LIB($lib, tgetstr)
+            AC_CHECK_LIB($lib, tgetflags)
+            AC_CHECK_LIB($lib, tparm)
+            AC_CHECK_LIB($lib, tgoto)
+            AC_CHECK_LIB($lib, tputs)
+        done
+      ])
+      have_lib_eval=`eval echo \\$have_$lib`
+      AS_IF([test "$with_lib_eval" = "yes" -a \
+                 "$have_lib_eval" = "no" ],
+       AC_MSG_WARN([Errors detected trying to use requested $lib. Continuing with autodetection.]))
+   done
+   AS_IF([test "$sxe_cv_c_lib_ncurses"  = "no" -a \
+               "$sxe_cv_c_lib_curses"   = "no" -a \
+              "$sxe_cv_c_lib_termcap"  = "no" -a \
+              "$sxe_cv_c_lib_terminfo" = "no" -a \
+              "$sxe_cv_c_lib_termlib"  = "no"], 
+                  have_tty=no)
+   AS_IF([test "$with_tty" = "yes" -a "$have_tty" = "no"],
+      AC_MSG_ERROR([Your system lacks necessary libraries for requested TTY support.]))
+])
+
+
+AS_IF([test "$with_tty" != "no" -a "$have_tty" != "no" ],[
     AC_DEFINE([HAVE_NCURSES], [1], [Description here!])
     with_ncurses=yes
     AC_CHECK_HEADER(ncurses/ncurses.h, curses_h_file=ncurses/ncurses.h)
@@ -2748,7 +2801,9 @@ if test "$with_tty" != "no"  ; then
        else c_switch_site="$save_c_switch_site"
       fi
     fi
-  fi
+])
+
+AS_IF([test "$with_tty" != "no" -a "$have_ncurses" != "no" ],[
   if test "$with_ncurses" = "no" -o -z "$curses_h_file" ; then
 
     # Check alternate library includes
@@ -2782,32 +2837,35 @@ if test "$with_tty" != "no"  ; then
   AC_DEFINE_UNQUOTED([CURSES_H_FILE], ["${curses_h_file-curses.h}"], [The curses.h header file])
   AC_DEFINE_UNQUOTED([TERMCAP_H_FILE], ["${termcap_h_file-termcap.h}"], [The termcap.h header file])
   AC_DEFINE_UNQUOTED([TERM_H_FILE], ["${term_h_file-term.h}"], [The term.h header file])
+])
 
+AS_IF([test "$with_tty" != "no" -a "$have_tty" != no], [
+       AC_DEFINE([HAVE_TTY], [1], [Include TTY support for SXEmacs])
+       AC_DEFINE([HAVE_UNIXOID_EVENT_LOOP], [1], [Include Unixoid event loop - TTY provided])
+       SXE_ADD_SXEUITTY_OBJS([console-tty.o device-tty.o event-tty.o frame-tty.o objects-tty.o redisplay-tty.o cm.o])
+])
+AS_IF([test "$with_tty" != "no" -a "$have_tty" != no], [
   dnl General Purpose Mouse (libgpm) support
-  if test "$with_gpm" != "no"; then
+  AS_IF([test "$with_gpm" != "no"], [
     AC_CHECK_HEADER(gpm.h, [
       AC_CHECK_LIB(gpm, Gpm_Open, have_gpm=yes)])
-    if test "$have_gpm" = "yes"; then
+    AS_IF([test "$have_gpm" = "yes"], [
       with_gpm=yes
       AC_DEFINE([HAVE_GPM], [1], [General Purpose Mouse (libgpm) is available])
       SXE_ADD_SXEUITTY_OBJS(gpmevent.o)
-      SXE_PREPEND(-lgpm, LIBS)
-    else
-      with_gpm=no
-    fi
-  fi
-
-else dnl "$with_tty" = "no"
-  for feature in ncurses gpm; do
-    if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
-      AC_MSG_WARN([--with-${feature} ignored:  Not valid without TTY support])
-    fi
-    eval "with_${feature}=no"
-  done
-fi dnl with_tty
+      SXE_PREPEND(-lgpm, LIBS) ],[ with_gpm=no ])
+  ])
+])
 
 SXE_CHECK_UI_SUFFICIENCY
 
+AS_IF([test -z "$window_system" -o "$window_system" != "none" ], [
+    dnl It ought to be reasonable to have no output device at all, and only use
+    dnl SXEmacs in --batch mode.
+    AS_IF([test "$with_tty" = "no"],
+       AC_MSG_WARN([No window system nor TTY support. You only can use --batch mode.]))
+])
+
 ## Uncertain options
 ## =================
 echo
@@ -3126,29 +3184,6 @@ if test "$with_pulseaudio" != "no"; then
        fi
 fi
 
-dnl aRts Sound support
-if test "$with_sound_arts" != "no"; then
-       SXE_MM_CHECK_ARTS([have_sound_arts=yes], [have_sound_arts=no])
-
-       AC_MSG_CHECKING([for sufficient aRts support])
-       if test "$have_sound_arts" = "yes"; then
-               AC_MSG_RESULT([yes])
-               ARTS_VERSION=`$ARTSC_CONFIG --arts-version`
-               ARTS_LIBS=`$ARTSC_CONFIG --libs`
-               ARTS_CPPFLAGS=`$ARTSC_CONFIG --cflags`
-               SXE_ADD_MM_OBJS([sound-arts.o])
-               SXE_PREPEND([$ARTS_LIBS], [MM_LIBS])
-               SXE_PREPEND_UNDUP([$ARTS_CPPFLAGS], [MM_CPPFLAGS])
-               AC_DEFINE([HAVE_ARTS_SOUND], [1], [Description here!])
-               AC_DEFINE_UNQUOTED([ARTS_VERSION], [$ARTS_VERSION],
-                       [Version number of the underlying arts library])
-       else
-               AC_MSG_RESULT(no)
-               have_sound_arts=no
-       fi
-
-fi
-
 dnl Jack Sound support
 if test "$with_sound_jack" != "no"; then
        SXE_MM_CHECK_JACK([have_sound_jack=yes], [have_sound_jack=no])
@@ -3208,11 +3243,10 @@ fi
 if test \
    "$have_sound_alsa \
     $have_sound_ao \
-    $have_sound_arts \
     $have_sound_esd \
     $have_sound_jack \
     $have_sound_nas \
-    $have_sound_pulse" != "no no no no no no no"; then
+    $have_sound_pulse" != "no no no no no no"; then
        AC_DEFINE([HAVE_AUDIO], [1], [Description here!])
 fi
 if test "$need_internal_media" = "yes"; then