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
dnl GNU Emacs is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
-dnl the Free Software Foundation; either version 2, or (at your option)
+dnl the Free Software Foundation; either version 3, or (at your option)
dnl any later version.
dnl
dnl GNU Emacs is distributed in the hope that it will be useful,
AC_ARG_WITH(tiff,
[ --with-tiff use -ltiff for displaying TIFF images])
AC_ARG_WITH(gif,
-[ --with-gif use -lungif (or -lgif) for displaying GIF images])
+[ --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])
+[ --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(xaw3d,
+[ --without-xaw3d don't use Xaw3d])
AC_ARG_WITH(xim,
[ --without-xim don't use X11 XIM])
AC_ARG_WITH(carbon,
dnl Don't use GZIP, which is used by gzip for additional parameters.
AC_PATH_PROG(GZIP_PROG, gzip)
+
+## Need makeinfo >= 4.6 (?) to build the manuals.
+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
+ MAKEINFO=no
+fi
+
+if test "$MAKEINFO" = "no"; then
+ AC_MSG_ERROR( [makeinfo >= 4.6 is required] )
+fi
+
+
dnl Add our options to ac_link now, after it is set up.
if test x$GCC = xyes && test "x$GCC_LINK_TEST_OPTIONS" != x
;;
esac
+if test "$window_system" = none && test "X$with_x" != "Xno"; then
+ AC_CHECK_PROG(HAVE_XSERVER, X, true, false)
+ if test "$HAVE_XSERVER" = true ||
+ test -n "$DISPLAY" ||
+ test "`echo /usr/lib/libX11.*`" != "/usr/lib/libX11.*"; then
+ AC_MSG_ERROR([You seem to be running X, but no X development libraries
+were found. You should install the relevant development files for X
+and for the toolkit you want, such as Gtk+, Lesstif or Motif. Also make
+sure you have development files for image handling, i.e.
+tiff, gif, jpeg, png and xpm.
+If you are sure you want Emacs compiled without X window support, pass
+ --without-x
+to configure.])
+ fi
+fi
+
### If we're using X11, we should use the X menu package.
HAVE_MENUS=no
case ${HAVE_X11} in
fi
fi
+### Use -lrsvg-2 if available, unless `--with-rsvg=no' is specified.
+HAVE_RSVG=no
+if test "${HAVE_X11}" = "yes" || test "${HAVE_CARBON}" = "yes"; then
+ if test "${with_rsvg}" != "no"; then
+ dnl Check if `--with-pkg-config-prog' has been given.
+ if test "X${with_pkg_config_prog}" != X; then
+ PKG_CONFIG="${with_pkg_config_prog}"
+ fi
+
+ RSVG_REQUIRED=2.0.0
+ RSVG_MODULE="librsvg-2.0 >= $RSVG_REQUIRED"
+
+ PKG_CHECK_MODULES(RSVG, $RSVG_MODULE, :, :)
+ AC_SUBST(RSVG_CFLAGS)
+ AC_SUBST(RSVG_LIBS)
+
+ if test ".${RSVG_CFLAGS}" != "."; then
+ HAVE_RSVG=yes
+ AC_DEFINE(HAVE_RSVG, 1, [Define to 1 if using librsvg.])
+ CFLAGS="$CFLAGS $RSVG_CFLAGS"
+ LIBS="$RSVG_LIBS $LIBS"
+ fi
+ fi
+fi
+
+
HAVE_GTK=no
if test "${with_gtk}" = "yes" && test "$USE_X_TOOLKIT" = "gtk"; then
USE_X_TOOLKIT=none
AC_DEFINE(HAVE_GTK_MULTIDISPLAY, 1,
[Define to 1 if GTK can handle more than one display.])
fi
+
dnl Check if we have the old file selection dialog.
dnl If gdk_display_open exists, assume all others are there also.
HAVE_GTK_FILE_SELECTION=no
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.])
if test x"${HAVE_X11R5}" != xyes; then
USE_X_TOOLKIT=none
else
- AC_MSG_CHECKING(for xaw3d)
- AC_CACHE_VAL(emacs_cv_xaw3d,
- [AC_TRY_LINK([
+ if test "$with_xaw3d" != no; then
+ AC_MSG_CHECKING(for xaw3d)
+ AC_CACHE_VAL(emacs_cv_xaw3d,
+ [AC_TRY_LINK([
#include <X11/Intrinsic.h>
#include <X11/Xaw3d/Simple.h>],
- [],
- emacs_cv_xaw3d=yes,
- emacs_cv_xaw3d=no)])
+ [],
+ emacs_cv_xaw3d=yes,
+ emacs_cv_xaw3d=no)])
+ else
+ emacs_cv_xaw3d=no
+ fi
if test $emacs_cv_xaw3d = yes; then
AC_MSG_RESULT([yes; using Lucid toolkit])
USE_X_TOOLKIT=LUCID
#include <X11/Xlib.h>
#include <X11/Xresource.h>],
[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.
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,
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
[#include <jpeglib.h>
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
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
AC_CHECK_HEADER(gif_lib.h,
# EGifPutExtensionLast only exists from version libungif-4.1.0b1.
# Earlier versions can crash Emacs.
- AC_CHECK_LIB(ungif, EGifPutExtensionLast, HAVE_GIF=yes, try_libgif=yes))
+ [AC_CHECK_LIB(gif, EGifPutExtensionLast, HAVE_GIF=yes, try_libungif=yes)])
if test "$HAVE_GIF" = yes; then
- ac_gif_lib_name="-lungif"
+ ac_gif_lib_name="-lgif"
fi
-# If gif_lib.h but no libungif, try libgif.
- if test x"$try_libgif" = xyes; then
- AC_CHECK_LIB(gif, EGifPutExtensionLast, HAVE_GIF=yes)
+# If gif_lib.h but no libgif, try libungif.
+ if test x"$try_libungif" = xyes; then
+ AC_CHECK_LIB(ungif, EGifPutExtensionLast, HAVE_GIF=yes)
if test "$HAVE_GIF" = yes; then
- AC_DEFINE(LIBGIF, -lgif, [Compiler option to link with the gif library (if not -lungif).])
- ac_gif_lib_name="-lgif"
+ AC_DEFINE(LIBGIF, -lungif, [Compiler option to link with the gif library (if not -lgif).])
+ ac_gif_lib_name="-lungif"
fi
fi
if test "${HAVE_GIF}" = "yes"; then
- AC_DEFINE(HAVE_GIF, 1, [Define to 1 if you have a gif library (default -lungif; otherwise specify with LIBGIF).])
+ AC_DEFINE(HAVE_GIF, 1, [Define to 1 if you have a gif library (default -lgif; otherwise specify with LIBGIF).])
fi
fi
MISSING="$MISSING libtiff" && WITH_NO="$WITH_NO --with-tiff=no"
if test "X${MISSING}" != X; then
- AC_MSG_ERROR([The following required libraries was not found:
+ AC_MSG_ERROR([The following required libraries were not found:
$MISSING
Maybe some development libraries/packages are missing?
If you don't want to link with them give
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
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 <malloc/malloc.h> header file.]))
+AC_CHECK_HEADER(malloc/malloc.h, [AC_DEFINE(HAVE_MALLOC_MALLOC_H, 1, [Define to 1 if you have the <malloc/malloc.h> header file.])])
### Use Mac OS X Carbon API to implement GUI.
if test "${HAVE_CARBON}" = "yes"; then
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).])
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
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
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
+the Free Software Foundation; either version 3, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
#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
echo " Does Emacs use -ltiff? ${HAVE_TIFF}"
echo " Does Emacs use a gif library? ${HAVE_GIF} $ac_gif_lib_name"
echo " Does Emacs use -lpng? ${HAVE_PNG}"
+echo " Does Emacs use -lrsvg-2? ${HAVE_RSVG}"
echo " Does Emacs use -lgpm? ${HAVE_GPM}"
echo " Does Emacs use X toolkit scroll bars? ${USE_TOOLKIT_SCROLL_BARS}"
echo