X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/c982cf7d879ba60689923257bf4ea90b1eb5c6d0..b957dc707e62ff9bc37ee719fe48871f6b866720:/configure.in diff --git a/configure.in b/configure.in index b5f4eb8e6d..c6fca82646 100644 --- a/configure.in +++ b/configure.in @@ -3,8 +3,8 @@ dnl To rebuild the `configure' script from this, execute the command dnl autoconf dnl in the directory containing this script. dnl -dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 -dnl Free Software Foundation, Inc. +dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003, +dnl 2004, 2005, 2006, 2007 Free Software Foundation, Inc. dnl dnl This file is part of GNU Emacs. dnl @@ -42,25 +42,33 @@ gamedir='${localstatedir}/games/emacs' gameuser=games -AC_ARG_WITH(gcc, -[ --without-gcc don't use GCC to compile Emacs if GCC is found]) -AC_ARG_WITH(pop, -[ --without-pop don't support POP mail retrieval with movemail], +dnl Autoconf is so much less fun under VMS, maybe +dnl because everything is less fun under VMS. --ttn +AC_DEFUN([EMACS_ARG_Y],[dnl +AC_ARG_WITH([$1],[AS_HELP_STRING([--with-$1],[$2])],[$3],[$4])dnl +])dnl +AC_DEFUN([EMACS_ARG_N],[dnl +AC_ARG_WITH([$1],[AS_HELP_STRING([--without-$1],[$2])],[$3],[$4])dnl +])dnl + +EMACS_ARG_N([gcc],[don't use GCC to compile Emacs if GCC is found]) + +EMACS_ARG_N([pop],[don't support POP mail retrieval with movemail], [if test "$withval" = yes; then AC_DEFINE(MAIL_USE_POP) else : fi], AC_DEFINE(MAIL_USE_POP)) AH_TEMPLATE(MAIL_USE_POP, [Define to support POP mail retrieval.])dnl -AC_ARG_WITH(kerberos, -[ --with-kerberos support Kerberos-authenticated POP], + +EMACS_ARG_Y([kerberos],[support Kerberos-authenticated POP], [if test "$withval" = yes; then AC_DEFINE(KERBEROS) fi]) AH_TEMPLATE(KERBEROS, [Define to support Kerberos-authenticated POP mail retrieval.])dnl -AC_ARG_WITH(kerberos5, -[ --with-kerberos5 support Kerberos version 5 authenticated POP], + +EMACS_ARG_Y([kerberos5],[support Kerberos version 5 authenticated POP], [if test "${with_kerberos5+set}" = set; then if test "${with_kerberos+set}" != set; then with_kerberos=yes @@ -68,21 +76,19 @@ AC_ARG_WITH(kerberos5, fi AC_DEFINE(KERBEROS5, 1, [Define to use Kerberos 5 instead of Kerberos 4.]) fi]) -AC_ARG_WITH(hesiod, -[ --with-hesiod support Hesiod to get the POP server host], + +EMACS_ARG_Y([hesiod],[support Hesiod to get the POP server host], [if test "$withval" = yes; then AC_DEFINE(HESIOD, 1, [Define to support using a Hesiod database to find the POP server.]) fi]) -AC_ARG_WITH(sound, -[ --without-sound don't compile with sound support]) +EMACS_ARG_N([sound],[don't compile with sound support]) dnl This should be the last --with option, because --with-x is dnl added later on when we find the path of X, and it's best to dnl keep them together visually. -AC_ARG_WITH(x-toolkit, -[ --with-x-toolkit=KIT use an X toolkit - (KIT = yes/lucid/athena/motif/gtk/no)], +AC_ARG_WITH([x-toolkit],[AS_HELP_STRING([--with-x-toolkit=KIT], + [use an X toolkit (KIT one of: yes, lucid, athena, motif, gtk, no)])], [ case "${withval}" in y | ye | yes ) val=gtk ;; n | no ) val=no ;; @@ -98,46 +104,36 @@ this option's value should be `yes', `no', `lucid', `athena', `motif' or `gtk'. esac with_x_toolkit=$val ]) -AC_ARG_WITH(xpm, -[ --with-xpm use -lXpm for displaying XPM images]) -AC_ARG_WITH(jpeg, -[ --with-jpeg use -ljpeg for displaying JPEG images]) -AC_ARG_WITH(tiff, -[ --with-tiff use -ltiff for displaying TIFF images]) -AC_ARG_WITH(gif, -[ --with-gif use -lgif (or -lungif) for displaying GIF images]) -AC_ARG_WITH(png, -[ --with-png use -lpng for displaying PNG images]) -AC_ARG_WITH(gpm, -[ --with-gpm use -lgpm for mouse support on a GNU/Linux console]) -AC_ARG_WITH(rsvg, -[ --with-rsvg use -lrsvg-2 for displaying SVG images]) -AC_ARG_WITH(gtk, -[ --with-gtk use GTK (same as --with-x-toolkit=gtk)]) -AC_ARG_WITH(pkg-config-prog, -[ --with-pkg-config-prog Path to pkg-config to use for finding GTK and librsvg]) -AC_ARG_WITH(toolkit-scroll-bars, -[ --without-toolkit-scroll-bars - don't use Motif or Xaw3d scroll bars]) -AC_ARG_WITH(xpm, -[ --without-xaw3d don't use Xaw3d]) -AC_ARG_WITH(xim, -[ --without-xim don't use X11 XIM]) -AC_ARG_WITH(carbon, -[ --without-carbon don't use Carbon GUI on Mac OS X]) + +EMACS_ARG_Y([xpm],[use -lXpm for displaying XPM images]) +EMACS_ARG_Y([jpeg],[use -ljpeg for displaying JPEG images]) +EMACS_ARG_Y([tiff],[use -ltiff for displaying TIFF images]) +EMACS_ARG_Y([gif],[use -lgif (or -lungif) for displaying GIF images]) +EMACS_ARG_Y([png],[use -lpng for displaying PNG images]) +EMACS_ARG_Y([gpm],[use -lgpm for mouse support on a GNU/Linux console]) +EMACS_ARG_Y([rsvg],[use -lrsvg-2 for displaying SVG images]) +EMACS_ARG_Y([gtk],[use GTK (same as --with-x-toolkit=gtk)]) +EMACS_ARG_Y([pkg-config-prog],[Path to pkg-config for finding GTK and librsvg]) +EMACS_ARG_N([toolkit-scroll-bars],[don't use Motif or Xaw3d scroll bars]) +EMACS_ARG_N([xaw3d],[don't use Xaw3d]) +EMACS_ARG_N([xim],[don't use X11 XIM]) +EMACS_ARG_N([carbon],[don't use Carbon GUI on Mac OS X]) + AC_ARG_ENABLE(carbon-app, -[[ --enable-carbon-app[=DIR] [DIR=/Application] - specify install directory for Emacs.app on Mac OS X]], +[AS_HELP_STRING([--enable-carbon-app@<:@=DIR@:>@], + [specify install directory for Emacs.app on Mac OS X + [DIR=/Application]])], [ carbon_appdir_x=${enableval}]) AC_ARG_ENABLE(asserts, -[ --enable-asserts compile code with asserts enabled], +[AS_HELP_STRING([--enable-asserts], [compile code with asserts enabled])], USE_XASSERTS=$enableval, USE_XASSERTS=no) AC_ARG_ENABLE(maintainer-mode, -[ --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer], +[AS_HELP_STRING([--enable-maintainer-mode], + [enable make rules and dependencies not useful (and sometimes + confusing) to the casual installer])], USE_MAINTAINER_MODE=$enableval, USE_MAINTAINER_MODE=no) if test $USE_MAINTAINER_MODE = yes; then @@ -148,9 +144,9 @@ fi AC_SUBST(MAINT) AC_ARG_ENABLE(locallisppath, -[ --enable-locallisppath=PATH - directories Emacs should search for lisp files - specific to this site], +[AS_HELP_STRING([--enable-locallisppath=PATH], + [directories Emacs should search for lisp files specific + to this site])], if test "${enableval}" = "no"; then locallisppath= elif test "${enableval}" != "yes"; then @@ -1351,7 +1347,7 @@ AC_PATH_PROG(MAKEINFO, makeinfo, no) dnl By this stage, configure has already checked for egrep and set EGREP, dnl or exited with an error if no egrep was found. if test "$MAKEINFO" != "no" && \ - test x"`$MAKEINFO --version 2> /dev/null | $EGREP 'texinfo[[^0-9]]*([[5-9]]|4\.[[6-9]])'`" = x; then + test x"`$MAKEINFO --version 2> /dev/null | $EGREP 'texinfo[[^0-9]]*([[1-4]][[0-9]]+|[[5-9]]|4\.[[6-9]]|4\.[[1-5]][[0-9]]+)'`" = x; then MAKEINFO=no fi @@ -2176,8 +2172,8 @@ if test "${with_gtk}" = "yes" || test "$USE_X_TOOLKIT" = "gtk" || \ if test "$USE_X_TOOLKIT" != "none" && test "$USE_X_TOOLKIT" != "maybe"; then AC_MSG_ERROR([Conflicting options, --with-gtk is incompatible with --with-x-toolkit=${with_x_toolkit}]); fi - GLIB_REQUIRED=2.4 - GTK_REQUIRED=2.4 + GLIB_REQUIRED=2.6 + GTK_REQUIRED=2.6 GTK_MODULES="gtk+-2.0 >= $GTK_REQUIRED glib-2.0 >= $GLIB_REQUIRED" dnl Check if --with-pkg-config-prog has been given. @@ -2257,7 +2253,10 @@ if test "${HAVE_GTK}" = "yes"; then AC_CHECK_LIB(pthread, pthread_self, HAVE_GTK_AND_PTHREAD=yes) fi if test "$HAVE_GTK_AND_PTHREAD" = yes; then - GTK_LIBS="$GTK_LIBS -lpthread" + case "${canonical}" in + *-hpux*) ;; + *) GTK_LIBS="$GTK_LIBS -lpthread" ;; + esac AC_DEFINE(HAVE_GTK_AND_PTHREAD, 1, [Define to 1 if you have GTK and pthread (-lpthread).]) fi @@ -2281,7 +2280,7 @@ if test "${HAVE_GTK}" = "yes"; then CFLAGS="$CFLAGS $XFT_CFLAGS" LIBS="$XFT_LIBS $LIBS" AC_CHECK_HEADER(X11/Xft/Xft.h, - AC_CHECK_LIB(Xft, XftFontOpen, HAVE_XFT=yes, , $XFT_LIBS)) + [AC_CHECK_LIB(Xft, XftFontOpen, HAVE_XFT=yes, , $XFT_LIBS)]) if test "${HAVE_XFT}" = "yes"; then AC_DEFINE(HAVE_XFT, 1, [Define to 1 if you have the Xft library.]) @@ -2458,8 +2457,8 @@ AC_TRY_COMPILE([ #include #include ], [XIMProc callback;], - HAVE_XIM=yes - AC_DEFINE(HAVE_XIM, 1, [Define to 1 if XIM is available]), + [HAVE_XIM=yes + AC_DEFINE(HAVE_XIM, 1, [Define to 1 if XIM is available])], HAVE_XIM=no) dnl `--with-xim' now controls only the initial value of use_xim at run time. @@ -2509,7 +2508,7 @@ HAVE_XPM=no if test "${HAVE_X11}" = "yes"; then if test "${with_xpm}" != "no"; then AC_CHECK_HEADER(X11/xpm.h, - AC_CHECK_LIB(Xpm, XpmReadFileToPixmap, HAVE_XPM=yes, , -lX11)) + [AC_CHECK_LIB(Xpm, XpmReadFileToPixmap, HAVE_XPM=yes, , -lX11)]) if test "${HAVE_XPM}" = "yes"; then AC_MSG_CHECKING(for XpmReturnAllocPixels preprocessor define) AC_EGREP_CPP(no_return_alloc_pixels, @@ -2539,7 +2538,7 @@ if test "${HAVE_X11}" = "yes"; then dnl Checking for jpeglib.h can lose because of a redefinition of dnl HAVE_STDLIB_H. AC_CHECK_HEADER(jerror.h, - AC_CHECK_LIB(jpeg, jpeg_destroy_compress, HAVE_JPEG=yes)) + [AC_CHECK_LIB(jpeg, jpeg_destroy_compress, HAVE_JPEG=yes)]) fi AH_TEMPLATE(HAVE_JPEG, [Define to 1 if you have the jpeg library (-ljpeg).])dnl @@ -2549,7 +2548,7 @@ if test "${HAVE_X11}" = "yes"; then [#include version=JPEG_LIB_VERSION ], - AC_DEFINE(HAVE_JPEG), + [AC_DEFINE(HAVE_JPEG)], [AC_MSG_WARN([libjpeg found, but not version 6b or later]) HAVE_JPEG=no]) fi @@ -2577,10 +2576,10 @@ HAVE_TIFF=no if test "${HAVE_X11}" = "yes"; then if test "${with_tiff}" != "no"; then AC_CHECK_HEADER(tiffio.h, - tifflibs="-lz -lm" + [tifflibs="-lz -lm" # At least one tiff package requires the jpeg library. if test "${HAVE_JPEG}" = yes; then tifflibs="-ljpeg $tifflibs"; fi - AC_CHECK_LIB(tiff, TIFFGetVersion, HAVE_TIFF=yes, , $tifflibs)) + AC_CHECK_LIB(tiff, TIFFGetVersion, HAVE_TIFF=yes, , $tifflibs)]) fi if test "${HAVE_TIFF}" = "yes"; then @@ -2594,7 +2593,7 @@ if test "${HAVE_X11}" = "yes" && test "${with_gif}" != "no"; then AC_CHECK_HEADER(gif_lib.h, # EGifPutExtensionLast only exists from version libungif-4.1.0b1. # Earlier versions can crash Emacs. - AC_CHECK_LIB(gif, EGifPutExtensionLast, HAVE_GIF=yes, try_libungif=yes)) + [AC_CHECK_LIB(gif, EGifPutExtensionLast, HAVE_GIF=yes, try_libungif=yes)]) if test "$HAVE_GIF" = yes; then ac_gif_lib_name="-lgif" @@ -2644,7 +2643,7 @@ fi HAVE_GPM=no if test "${with_gpm}" != "no"; then AC_CHECK_HEADER(gpm.h, - AC_CHECK_LIB(gpm, Gpm_Open, HAVE_GPM=yes)) + [AC_CHECK_LIB(gpm, Gpm_Open, HAVE_GPM=yes)]) fi if test "${HAVE_GPM}" = "yes"; then @@ -2652,7 +2651,7 @@ if test "${HAVE_GPM}" = "yes"; then fi dnl Check for malloc/malloc.h on darwin -AC_CHECK_HEADER(malloc/malloc.h, AC_DEFINE(HAVE_MALLOC_MALLOC_H, 1, [Define to 1 if you have the header file.])) +AC_CHECK_HEADER(malloc/malloc.h, [AC_DEFINE(HAVE_MALLOC_MALLOC_H, 1, [Define to 1 if you have the header file.])]) ### Use Mac OS X Carbon API to implement GUI. if test "${HAVE_CARBON}" = "yes"; then @@ -2673,7 +2672,7 @@ fi HAVE_X_SM=no if test "${HAVE_X11}" = "yes"; then AC_CHECK_HEADER(X11/SM/SMlib.h, - AC_CHECK_LIB(SM, SmcOpenConnection, HAVE_X_SM=yes, , -lICE)) + [AC_CHECK_LIB(SM, SmcOpenConnection, HAVE_X_SM=yes, , -lICE)]) if test "${HAVE_X_SM}" = "yes"; then AC_DEFINE(HAVE_X_SM, 1, [Define to 1 if you have the SM library (-lSM).]) @@ -2696,6 +2695,13 @@ fi AC_FUNC_ALLOCA +dnl src/alloca.c has been removed. Could also check if $ALLOCA is set? +dnl FIXME is there an autoconf test that does the right thing, without +dnl needing to call A_M_E afterwards? +if test x"$ac_cv_func_alloca_works" != xyes; then + AC_MSG_ERROR( [a system implementation of alloca is required] ) +fi + # fmod, logb, and frexp are found in -lm on most systems. # On HPUX 9.01, -lm does not contain logb, so check for sqrt. AC_CHECK_LIB(m, sqrt) @@ -2725,7 +2731,7 @@ AC_CHECK_HEADERS(maillock.h) AC_CHECK_FUNCS(gethostname getdomainname dup2 \ rename closedir mkdir rmdir sysinfo getrusage get_current_dir_name \ -random lrand48 bcopy bcmp logb frexp fmod rint cbrt ftime res_init setsid \ +random lrand48 bcopy bcmp logb frexp fmod rint cbrt ftime setsid \ strerror fpathconf select mktime euidaccess getpagesize tzset setlocale \ utimes setrlimit setpgid getcwd getwd shutdown getaddrinfo \ __fpending mblen mbrlen mbsinit strsignal setitimer ualarm index rindex \ @@ -2769,26 +2775,53 @@ AC_CHECK_FUNCS(getpt) # than to expect to find it in ncurses. AC_CHECK_LIB(ncurses, tparm) +# Do we have res_init, for detecting changes in /etc/resolv.conf? + +resolv=no +AC_CHECK_FUNC(res_init, have_res_init=yes, have_res_init=no) +if test "$have_res_init" = no; then + OLIBS="$LIBS" + LIBS="$LIBS -lresolv" + AC_MSG_CHECKING(for res_init with -lresolv) + AC_TRY_LINK([#include +#include +#include ], + [res_init();], + have_res_init=yes, have_res_init=no) + AC_MSG_RESULT($have_res_init) + if test "$have_res_init" = yes ; then + resolv=yes + fi + LIBS="$OLIBS" +fi + +if test "$have_res_init" = yes; then + AC_DEFINE(HAVE_RES_INIT, 1, [Define to 1 if res_init is available.]) +fi + # Do we need the Hesiod library to provide the support routines? if test "$with_hesiod" = yes ; then # Don't set $LIBS here -- see comments above. - resolv=no AC_CHECK_FUNC(res_send, , [AC_CHECK_FUNC(__res_send, , [AC_CHECK_LIB(resolv, res_send, resolv=yes, [AC_CHECK_LIB(resolv, __res_send, resolv=yes)])])]) if test "$resolv" = yes ; then RESOLVLIB=-lresolv - AC_DEFINE(HAVE_LIBRESOLV, 1, - [Define to 1 if you have the resolv library (-lresolv).]) else RESOLVLIB= fi AC_CHECK_FUNC(hes_getmailhost, , [AC_CHECK_LIB(hesiod, hes_getmailhost, - AC_DEFINE(HAVE_LIBHESIOD, 1, - [Define to 1 if you have the hesiod library (-lhesiod).]), + [AC_DEFINE(HAVE_LIBHESIOD, 1, + [Define to 1 if you have the hesiod library (-lhesiod).])], :, $RESOLVLIB)]) fi +# Do we need libresolv (due to res_init or Hesiod)? +if test "$resolv" = yes ; then + AC_DEFINE(HAVE_LIBRESOLV, 1, + [Define to 1 if you have the resolv library (-lresolv).]) +fi + # These tell us which Kerberos-related libraries to use. if test "${with_kerberos+set}" = set; then AC_CHECK_LIB(com_err, com_err) @@ -2797,9 +2830,9 @@ if test "${with_kerberos+set}" = set; then AC_CHECK_LIB(krb5, krb5_init_context) if test "${with_kerberos5+set}" != set; then AC_CHECK_LIB(des425, des_cbc_encrypt,, - AC_CHECK_LIB(des, des_cbc_encrypt)) + [AC_CHECK_LIB(des, des_cbc_encrypt)]) AC_CHECK_LIB(krb4, krb_get_cred,, - AC_CHECK_LIB(krb, krb_get_cred)) + [AC_CHECK_LIB(krb, krb_get_cred)]) fi if test "${with_kerberos5+set}" = set; then @@ -3120,6 +3153,13 @@ AH_BOTTOM([ #define HAVE_MOUSE #endif +/* Multi-tty support relies on MULTI_KBOARD. It seems safe to turn it + on unconditionally. Note that src/s/darwin.h disables this at + present. */ +#ifndef MULTI_KBOARD +#define MULTI_KBOARD +#endif + /* If we're using the Carbon API on Mac OS X, define a few more variables as well. */ #ifdef HAVE_CARBON @@ -3452,8 +3492,9 @@ AC_EGREP_CPP(yes..yes, CPP_NEED_TRADITIONAL=yes) AC_OUTPUT(Makefile lib-src/Makefile.c:lib-src/Makefile.in oldXMenu/Makefile \ - man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in \ - lisp/Makefile lispref/Makefile lispintro/Makefile leim/Makefile, [ + doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile \ + doc/lispref/Makefile src/Makefile.c:src/Makefile.in \ + lwlib/Makefile lisp/Makefile leim/Makefile, [ ### Make the necessary directories, if they don't exist. for dir in etc lisp ; do