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,
a | at | ath | athe | athen | athena ) val=athena ;;
m | mo | mot | moti | motif ) val=motif ;;
g | gt | gtk ) val=gtk ;;
-dnl These don't currently work.
-dnl o | op | ope | open | open- | open-l | open-lo \
-dnl | open-loo | open-look ) val=open-look ;;
* )
-dnl AC_MSG_ERROR([the `--with-x-toolkit' option is supposed to have a value
-dnl which is `yes', `no', `lucid', `athena', `motif' or `open-look'.])
AC_MSG_ERROR([`--with-x-toolkit=$withval' is invalid;
this option's value should be `yes', `no', `lucid', `athena', `motif' or `gtk'.
`yes' and `gtk' are synonyms. `athena' and `lucid' are synonyms.])
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(freetype,
+[ --with-freetype use -lfreetype for local fonts support])
+AC_ARG_WITH(xft,
+[ --with-xft use -lXft for anti aliased fonts])
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])
specify install directory for Emacs.app on Mac OS X]],
[ carbon_appdir_x=${enableval}])
+AC_ARG_ENABLE(font-backend,
+[ --enable-font-backend compile code of font-backend support],
+ USE_FONT_BACKEND=$enableval,
+ USE_FONT_BACKEND=no)
+
AC_ARG_ENABLE(asserts,
[ --enable-asserts compile code with asserts enabled],
USE_XASSERTS=$enableval,
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
fi
fi
-### Link with -lXft if available to work around a bug.
-HAVE_XFT=maybe
-if test "${HAVE_GTK}" = "yes"; 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
-
- PKG_CHECK_MODULES(XFT, xft >= 0.13.0, , HAVE_XFT=no)
- if test "$HAVE_XFT" != no; then
- OLD_CFLAGS="$CPPFLAGS"
- OLD_CPPFLAGS="$CFLAGS"
- OLD_LIBS="$LIBS"
- CPPFLAGS="$CPPFLAGS $XFT_CFLAGS"
- 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))
-
- if test "${HAVE_XFT}" = "yes"; then
- AC_DEFINE(HAVE_XFT, 1, [Define to 1 if you have the Xft library.])
- AC_SUBST(XFT_LIBS)
- C_SWITCH_X_SITE="$C_SWITCH_X_SITE $XFT_CFLAGS"
- else
- CFLAGS="$OLD_CPPFLAGS"
- CFLAGS="$OLD_CFLAGS"
- LIBS="$OLD_LIBS"
- fi
- fi
-fi
-
dnl Do not put whitespace before the #include statements below.
dnl Older compilers (eg sunos4 cc) choke on it.
HAVE_XAW3D=no
CFLAGS=$late_CFLAGS
fi
+### For font-backend
+if test "${USE_FONT_BACKEND}" = "yes"; then
+
+AC_DEFINE(USE_FONT_BACKEND, 1,
+ [Define to 1 if we should use font-backend.])
+
+### Use -lXft if available, unless `--with-freetype=no' nor `--with-xft=no'.
+HAVE_XFT=maybe
+if test "${HAVE_X11}" = "yes"; then
+ if test "x${with_freetype}" = "xno"; then
+ with_xft="no";
+ fi
+ if test "x${with_xft}" != "xno"; 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
+
+ PKG_CHECK_MODULES(XFT, xft >= 0.13.0, , HAVE_XFT=no)
+ if test "$HAVE_XFT" != no; then
+ OLD_CPPFLAGS="$CPPFLAGS"
+ OLD_CFLAGS="$CFLAGS"
+ OLD_LIBS="$LIBS"
+ CPPFLAGS="$CPPFLAGS $XFT_CFLAGS"
+ 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))
+
+ if test "${HAVE_XFT}" = "yes"; then
+ AC_DEFINE(HAVE_XFT, 1, [Define to 1 if you have the Xft library.])
+ AC_SUBST(XFT_LIBS)
+ C_SWITCH_X_SITE="$C_SWITCH_X_SITE $XFT_CFLAGS"
+ else
+ CFLAGS="$OLD_CPPFLAGS"
+ CFLAGS="$OLD_CFLAGS"
+ LIBS="$OLD_LIBS"
+ fi
+ fi
+ fi
+fi
+
+HAVE_FREETYPE=no
+### Use -lfreetype if available, unless `--with-freetype=no'.
+if test "${HAVE_XFT}" = "yes"; then
+ dnl As we use Xft, we anyway use freetype.
+ dnl In this case, there's no need of additional CFLAGS and LIBS.
+ HAVE_FREETYPE=yes
+elif test "x${with_freetype}" != "xno"; 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
+
+ PKG_CHECK_MODULES(FREETYPE, freetype2, HAVE_FREETYPE=yes, HAVE_FREETYPE=no)
+ if test "${HAVE_FREETYPE}" = "yes"; then
+ PKG_CHECK_MODULES(FONTCONFIG, fontconfig, HAVE_FC=yes, HAVE_FC=no)
+ if test "${HAVE_FC}" = "no"; then
+ dnl Witout fontconfig, we can't use freetype at the moment.
+ HAVE_FREETYPE=no
+ fi
+ fi
+fi
+if test "${HAVE_FREETYPE}" = "yes"; then
+ AC_DEFINE(HAVE_FREETYPE, 1,
+ [Define to 1 if you have freetype and fontconfig libraries.])
+ AC_CHECK_PROG(HAVE_LIBOTF, libotf-config, yes, no)
+ if test "${HAVE_LIBOTF}" = "yes"; then
+ AC_CHECK_LIB(otf, OTF_get_features, , HAVE_LIBOTF=no)
+ if test "${HAVE_LIBOTF}" = "yes"; then
+ AC_DEFINE(HAVE_LIBOTF, 1,
+ [Define to 1 if you have libotf library.])
+ LIBOTF_CFLAGS=`libotf-config --cflags`
+ LIBOTF_LIBS=`libotf-config --libs`
+ fi
+ fi
+fi
+AC_SUBST(FREETYPE_CFLAGS)
+AC_SUBST(FREETYPE_LIBS)
+AC_SUBST(FONTCONFIG_CFLAGS)
+AC_SUBST(FONTCONFIG_LIBS)
+AC_SUBST(LIBOTF_CFLAGS)
+AC_SUBST(LIBOTF_LIBS)
+
+fi
+
### Use -lXpm if available, unless `--with-xpm=no'.
HAVE_XPM=no
if test "${HAVE_X11}" = "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
+
+dnl Check for required libraries.
+if test "${HAVE_X11}" = "yes"; then
+ MISSING=""
+ WITH_NO=""
+ test "${with_xpm}" != "no" && test "${HAVE_XPM}" != "yes" &&
+ MISSING="libXpm" && WITH_NO="--with-xpm=no"
+ test "${with_jpeg}" != "no" && test "${HAVE_JPEG}" != "yes" &&
+ MISSING="$MISSING libjpeg" && WITH_NO="$WITH_NO --with-jpeg=no"
+ test "${with_png}" != "no" && test "${HAVE_PNG}" != "yes" &&
+ MISSING="$MISSING libpng" && WITH_NO="$WITH_NO --with-png=no"
+ test "${with_gif}" != "no" && test "${HAVE_GIF}" != "yes" &&
+ MISSING="$MISSING libgif/libungif" && WITH_NO="$WITH_NO --with-gif=no"
+ test "${with_tiff}" != "no" && test "${HAVE_TIFF}" != "yes" &&
+ MISSING="$MISSING libtiff" && WITH_NO="$WITH_NO --with-tiff=no"
+
+ if test "X${MISSING}" != X; then
+ 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
+ $WITH_NO
+as options to configure])
fi
fi
buffer space.])
fi
+
AH_TOP([/* GNU Emacs site configuration template file.
Copyright (C) 1988, 1993, 1994, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007
Free Software Foundation, Inc.
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,
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
sed -e '1,/start of cpp stuff/d'\
-e 's,/\*\*/#\(.*\)$,/* \1 */,' \
< Makefile.c > junk.c
+ if test -f ${srcdir}/admin/unidata/UnicodeData.txt; then
+ CPPFLAGS="$CPPFLAGS -DHAVE_UNIDATA"
+ fi
$CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
sed -e 's/^ / /' -e '/^#/d' -e '/^[ \f]*$/d' > junk2.c
cat junk1.c junk2.c > Makefile.new