X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/6623890a73421cb0d0605969fd054687be74c5a6..2a1cf2b9aad0bc5685d1ea3c3e85afd212c659d3:/configure.in diff --git a/configure.in b/configure.in index 8e3c8e998c..a70ea1606d 100644 --- a/configure.in +++ b/configure.in @@ -4,7 +4,7 @@ dnl autoconf dnl in the directory containing this script. dnl dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003, -dnl 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +dnl 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. dnl dnl This file is part of GNU Emacs. dnl @@ -22,7 +22,7 @@ dnl You should have received a copy of the GNU General Public License dnl along with GNU Emacs. If not, see . AC_PREREQ(2.61) -AC_INIT(emacs, 23.0.60) +AC_INIT(emacs, 23.0.94) AC_CONFIG_HEADER(src/config.h:src/config.in) AC_CONFIG_SRCDIR(src/lisp.h) @@ -97,7 +97,7 @@ fi OPTION_DEFAULT_ON([sound],[don't compile with sound support]) -OPTION_DEFAULT_ON([sync-input],[Process async input synchronously]) +OPTION_DEFAULT_ON([sync-input],[process async input synchronously]) if test "$with_sync_input" = yes; then AC_DEFINE(SYNC_INPUT, 1, [Process async input synchronously.]) fi @@ -133,7 +133,6 @@ OPTION_DEFAULT_ON([gif],[don't compile with GIF image support]) OPTION_DEFAULT_ON([png],[don't compile with PNG image support]) OPTION_DEFAULT_ON([rsvg],[don't compile with SVG image support]) -OPTION_DEFAULT_ON([freetype],[don't use Freetype for local font support]) OPTION_DEFAULT_ON([xft],[don't use XFT for anti aliased fonts]) OPTION_DEFAULT_ON([libotf],[don't use libotf for OpenType font support]) OPTION_DEFAULT_ON([m17n-flt],[don't use m17n-flt for text shaping]) @@ -162,18 +161,19 @@ variable to specify a compiler.])],,) AC_ARG_WITH([pkg-config-prog],dnl [AS_HELP_STRING([--with-pkg-config-prog=PATH], - [Path to pkg-config for finding GTK and librsvg])]) + [path to pkg-config for finding GTK and librsvg])]) if test "X${with_pkg_config_prog}" != X; then if test "${with_pkg_config_prog}" != yes; then PKG_CONFIG="${with_pkg_config_prog}" fi fi -AC_ARG_ENABLE(cocoa-experimental-ctrl-g, -[AS_HELP_STRING([--enable-cocoa-experimental-ctrl-g], - [enable experimental improved ctrl-g recognition])], - EN_COCOA_EXPERIMENTAL_CTRL_G=$enableval, - EN_COCOA_EXPERIMENTAL_CTRL_G=no) +AC_ARG_WITH([gnustep-conf],dnl +[AS_HELP_STRING([--with-gnustep-conf=PATH],[path to GNUstep.conf; default $GNUSTEP_CONFIG_FILE, or /etc/GNUstep/GNUstep.conf])]) +test "X${with_gnustep_conf}" != X && test "${with_gnustep_conf}" != yes && \ + GNUSTEP_CONFIG_FILE="${with_gnustep_conf}" +test "X$GNUSTEP_CONFIG_FILE" = "X" && \ + GNUSTEP_CONFIG_FILE=/etc/GNUstep/GNUstep.conf AC_ARG_ENABLE(ns-self-contained, [AS_HELP_STRING([--disable-ns-self-contained], @@ -335,6 +335,7 @@ dnl see the `changequote' comment above. arm-*-netbsd*) machine=arm ;; x86_64-*-netbsd*) machine=amdx86-64 ;; hppa-*-netbsd*) machine=hp800 ;; + m68k-*-netbsd*) machine=m68k ;; esac ;; @@ -349,6 +350,7 @@ dnl see the `changequote' comment above. sparc*-*-openbsd*) machine=sparc ;; vax-*-openbsd*) machine=vax ;; x86_64-*-openbsd*) machine=amdx86-64 ;; + hppa-*-openbsd*) machine=hp800 ;; esac ;; @@ -416,7 +418,7 @@ dnl see the `changequote' comment above. rs6000-ibm-aix5* | powerpc-ibm-aix5* ) machine=ibmrs6000 opsys=aix4-2 ;; - rs6000-ibm-aix5* | powerpc-ibm-aix6* ) + rs6000-ibm-aix6* | powerpc-ibm-aix6* ) machine=ibmrs6000 opsys=aix4-2 ;; @@ -442,8 +444,9 @@ dnl see the `changequote' comment above. ;; *-sun-solaris* \ - | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \ - | rs6000-*-solaris2*) + | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* \ + | x86_64-*-solaris2* | x86_64-*-sunos5* \ + | powerpc*-*-solaris2* | rs6000-*-solaris2*) case "${canonical}" in i[3456]86-*-* ) machine=intel386 ;; amd64-*-*|x86_64-*-*) machine=amdx86-64 ;; @@ -471,7 +474,7 @@ dnl see the `changequote' comment above. NON_GNU_CPP=/usr/ccs/lib/cpp RANLIB="ar -ts" ;; - *-sunos5.[7-9]* | *-solaris[7-9]* ) + *-sunos5.[7-9]* | *-solaris2.[7-9]* ) opsys=sol2-6 emacs_check_sunpro_c=yes NON_GNU_CPP=/usr/ccs/lib/cpp @@ -531,7 +534,8 @@ dnl see the `changequote' comment above. ;; ## Mips Linux-based GNU system - mips-*-linux-gnu* | mipsel-*-linux-gnu* ) + mips-*-linux-gnu* | mipsel-*-linux-gnu* \ + | mips64-*-linux-gnu* | mips64el-*-linux-gnu* ) machine=mips opsys=gnu-linux ;; @@ -900,9 +904,11 @@ AC_SYS_LARGEFILE ### The standard library on x86-64 and s390x GNU/Linux distributions can ### be located in either /usr/lib64 or /usr/lib. +### In some rare cases, /usr/lib64 exists but does not contain the +### relevant files (bug#1287). Hence test for crtn.o. case "${canonical}" in x86_64-*-linux-gnu* | s390x-*-linux-gnu* ) - if test -d /usr/lib64; then + if test -e /usr/lib64/crtn.o; then AC_DEFINE(HAVE_LIB64_DIR, 1, [Define to 1 if the directory /usr/lib64 exists.]) fi @@ -1233,21 +1239,24 @@ if test "${with_ns}" != no; then ns_appbindir=`pwd`/nextstep/Emacs.app/Contents/MacOS ns_appresdir=`pwd`/nextstep/Emacs.app/Contents/Resources ns_appsrc=${srcdir}/nextstep/Cocoa/Emacs.base - elif test -f /etc/GNUstep/GNUstep.conf; then + elif test -f $GNUSTEP_CONFIG_FILE; then NS_IMPL_GNUSTEP=yes ns_appdir=`pwd`/nextstep/Emacs.app ns_appbindir=`pwd`/nextstep/Emacs.app ns_appresdir=`pwd`/nextstep/Emacs.app/Resources ns_appsrc=${srcdir}/nextstep/GNUstep/Emacs.base - GNUSTEP_MAKEFILES="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_MAKEFILES)" - GNUSTEP_SYSTEM_HEADERS="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_SYSTEM_HEADERS)" - GNUSTEP_SYSTEM_LIBRARIES="$(source /etc/GNUstep/GNUstep.conf; echo $GNUSTEP_SYSTEM_LIBRARIES)" + dnl FIXME sourcing this 3 times in subshells seems inefficient. + GNUSTEP_MAKEFILES="$(. $GNUSTEP_CONFIG_FILE; echo $GNUSTEP_MAKEFILES)" + GNUSTEP_SYSTEM_HEADERS="$(. $GNUSTEP_CONFIG_FILE; echo $GNUSTEP_SYSTEM_HEADERS)" + GNUSTEP_SYSTEM_LIBRARIES="$(. $GNUSTEP_CONFIG_FILE; echo $GNUSTEP_SYSTEM_LIBRARIES)" CPPFLAGS="$CPPFLAGS -I${GNUSTEP_SYSTEM_HEADERS}" CFLAGS="$CFLAGS -I${GNUSTEP_SYSTEM_HEADERS}" REAL_CFLAGS="$REAL_CFLAGS -I${GNUSTEP_SYSTEM_HEADERS}" LDFLAGS="$LDFLAGS -L${GNUSTEP_SYSTEM_LIBRARIES}" fi - AC_CHECK_HEADER(AppKit/AppKit.h, HAVE_NS=yes) + AC_CHECK_HEADER([AppKit/AppKit.h], [HAVE_NS=yes], + [AC_MSG_ERROR([`--with-ns' was specified, but the include + files are missing or cannot be compiled.])]) NS_HAVE_NSINTEGER=yes AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ], [NSInteger i;])], @@ -1260,7 +1269,6 @@ fi if test "${HAVE_NS}" = yes; then window_system=nextstep with_xft=no - with_freetype=no # set up packaging dirs exec_prefix=${ns_appbindir} libexecdir=${ns_appbindir}/libexec @@ -1481,9 +1489,9 @@ fi ### Use -lrsvg-2 if available, unless `--with-rsvg=no' is specified. HAVE_RSVG=no -if test "${HAVE_X11}" = "yes"; then +if test "${HAVE_X11}" = "yes" || test "${HAVE_NS}" = "yes"; then if test "${with_rsvg}" != "no"; then - RSVG_REQUIRED=2.0.0 + RSVG_REQUIRED=2.11.0 RSVG_MODULE="librsvg-2.0 >= $RSVG_REQUIRED" PKG_CHECK_MODULES(RSVG, $RSVG_MODULE, :, :) @@ -1563,15 +1571,28 @@ if test "${HAVE_GTK}" = "yes"; then [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. + dnl Check if we have the old file selection dialog declared and + dnl in the link library. In 2.x it may be in the library, + dnl but not declared if deprecated featured has been selected out. + dnl AC_CHECK_DECL checks for a macro, so check for GTK_TYPE_FILE_SELECTION. HAVE_GTK_FILE_SELECTION=no - AC_CHECK_FUNCS(gtk_file_selection_new, HAVE_GTK_FILE_SELECTION=yes) + AC_CHECK_DECL(GTK_TYPE_FILE_SELECTION, HAVE_GTK_FILE_SELECTION=yes, + HAVE_GTK_FILE_SELECTION=no, [AC_INCLUDES_DEFAULT +#include ]) + if test "$HAVE_GTK_FILE_SELECTION" = yes; then + AC_CHECK_FUNCS(gtk_file_selection_new, HAVE_GTK_FILE_SELECTION=yes, + HAVE_GTK_FILE_SELECTION=no) + fi dnl Check if we have the new file chooser dialog - dnl If gdk_display_open exists, assume all others are there also. HAVE_GTK_FILE_CHOOSER=no - AC_CHECK_FUNCS(gtk_file_chooser_dialog_new, HAVE_GTK_FILE_CHOOSER=yes) + AC_CHECK_DECL(GTK_TYPE_FILE_CHOOSER, HAVE_GTK_FILE_CHOOSER=yes, + HAVE_GTK_FILE_CHOOSER=no, [AC_INCLUDES_DEFAULT +#include ]) + if test "$HAVE_GTK_FILE_CHOOSER" = yes; then + AC_CHECK_FUNCS(gtk_file_chooser_dialog_new, HAVE_GTK_FILE_CHOOSER=yes, + HAVE_GTK_FILE_CHOOSER=no) + fi if test "$HAVE_GTK_FILE_SELECTION" = yes \ && test "$HAVE_GTK_FILE_CHOOSER" = yes; then @@ -1814,86 +1835,99 @@ either XPointer or XPointer*.])dnl CFLAGS=$late_CFLAGS fi -### Start of font-backend section. +### Start of font-backend (under any platform) section. +# (nothing here yet -- this is a placeholder) +### End of font-backend (under any platform) section. -## Use -lXft if available, unless `--with-freetype=no' nor `--with-xft=no'. -HAVE_XFT=maybe -if test "x${with_freetype}" = "xno" || test "x${with_x}" = "xno"; then - with_xft="no"; -fi -if test "x${with_xft}" != "xno"; then +### Start of font-backend (under X11) section. +if test "${HAVE_X11}" = "yes"; then + PKG_CHECK_MODULES(FONTCONFIG, fontconfig >= 2.2.0, HAVE_FC=yes, HAVE_FC=no) + + ## Use -lXft if available, unless `--with-xft=no'. + HAVE_XFT=maybe + if test "${HAVE_FC}" = "no" || test "x${with_x}" = "xno"; then + with_xft="no"; + fi + if test "x${with_xft}" != "xno"; then + + 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 + CPPFLAGS="$OLD_CPPFLAGS" + CFLAGS="$OLD_CFLAGS" + LIBS="$OLD_LIBS" + fi # "${HAVE_XFT}" = "yes" + fi # "$HAVE_XFT" != no + fi # "x${with_xft}" != "xno" + + dnl For the "Does Emacs use" message at the end. + if test "$HAVE_XFT" != "yes"; then + HAVE_XFT=no + 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)) + HAVE_FREETYPE=no + ## We used to allow building with FreeType and without Xft. + ## However, the ftx font backend driver is not in good shape. 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 - CPPFLAGS="$OLD_CPPFLAGS" - CFLAGS="$OLD_CFLAGS" - LIBS="$OLD_LIBS" - fi # "${HAVE_XFT}" = "yes" - fi # "$HAVE_XFT" != no -fi # "x${with_xft}" != "xno" - -dnl For the "Does Emacs use" message at the end. -if test "$HAVE_XFT" != "yes"; then - HAVE_XFT=no -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" && test "x${with_x}" != "xno"; then - - 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 Without fontconfig, we can't use freetype at the moment. - HAVE_FREETYPE=no + dnl As we use Xft, we anyway use freetype. + dnl There's no need for additional CFLAGS and LIBS. + HAVE_FREETYPE=yes + FONTCONFIG_CFLAGS= + FONTCONFIG_LIBS= fi - fi -fi -HAVE_LIBOTF=no -if test "${HAVE_FREETYPE}" = "yes"; then - AC_DEFINE(HAVE_FREETYPE, 1, - [Define to 1 if using the freetype and fontconfig libraries.]) - if test "${with_libotf}" != "no"; then - PKG_CHECK_MODULES(LIBOTF, libotf, HAVE_LIBOTF=yes, - HAVE_LIBOTF=no) - if test "$HAVE_LIBOTF" = "yes"; then - AC_DEFINE(HAVE_LIBOTF, 1, [Define to 1 if using libotf.]) + HAVE_LIBOTF=no + if test "${HAVE_FREETYPE}" = "yes"; then + AC_DEFINE(HAVE_FREETYPE, 1, + [Define to 1 if using the freetype and fontconfig libraries.]) + if test "${with_libotf}" != "no"; then + PKG_CHECK_MODULES(LIBOTF, libotf, HAVE_LIBOTF=yes, + HAVE_LIBOTF=no) + if test "$HAVE_LIBOTF" = "yes"; then + AC_DEFINE(HAVE_LIBOTF, 1, [Define to 1 if using libotf.]) + AC_CHECK_LIB(otf, OTF_get_variation_glyphs, + HAVE_OTF_GET_VARIATION_GLYPHS=yes, + HAVE_OTF_GET_VARIATION_GLYPHS=no) + if test "${HAVE_OTF_GET_VARIATION_GLYPHS}" = "yes"; then + AC_DEFINE(HAVE_OTF_GET_VARIATION_GLYPHS, 1, + [Define to 1 if libotf has OTF_get_variation_glyphs.]) + fi + fi + fi + dnl FIXME should there be an error if HAVE_FREETYPE != yes? + dnl Does the new font backend require it, or can it work without it? fi - fi -dnl FIXME should there be an error if HAVE_FREETYPE != yes? -dnl Does the new font backend require it, or can it work without it? -fi -HAVE_M17N_FLT=no -if test "${HAVE_LIBOTF}" = yes; then - if test "${with_m17n_flt}" != "no"; then - PKG_CHECK_MODULES(M17N_FLT, m17n-flt, HAVE_M17N_FLT=yes, HAVE_M17N_FLT=no) - if test "$HAVE_M17N_FLT" = "yes"; then - AC_DEFINE(HAVE_M17N_FLT, 1, [Define to 1 if using libm17n-flt.]) + HAVE_M17N_FLT=no + if test "${HAVE_LIBOTF}" = yes; then + if test "${with_m17n_flt}" != "no"; then + PKG_CHECK_MODULES(M17N_FLT, m17n-flt, HAVE_M17N_FLT=yes, HAVE_M17N_FLT=no) + if test "$HAVE_M17N_FLT" = "yes"; then + AC_DEFINE(HAVE_M17N_FLT, 1, [Define to 1 if using libm17n-flt.]) + fi + fi fi - fi +else + HAVE_XFT=no + HAVE_FREETYPE=no + HAVE_LIBOTF=no + HAVE_M17N_FLT=no fi +### End of font-backend (under X11) section. AC_SUBST(FREETYPE_CFLAGS) AC_SUBST(FREETYPE_LIBS) @@ -1904,8 +1938,6 @@ AC_SUBST(LIBOTF_LIBS) AC_SUBST(M17N_FLT_CFLAGS) AC_SUBST(M17N_FLT_LIBS) -### End of font-backend section. - ### Use -lXpm if available, unless `--with-xpm=no'. HAVE_XPM=no if test "${HAVE_X11}" = "yes"; then @@ -2062,10 +2094,6 @@ if test "${HAVE_NS}" = "yes"; then if test "${NS_IMPL_COCOA}" = "yes"; then AC_DEFINE(NS_IMPL_COCOA, 1, [Define to 1 if you are using NS windowing under MacOS X.]) GNU_OBJC_CFLAGS= - LIB_SRC_EXTRA_INSTALLABLES=mac-fix-env - fi - if test "${EN_COCOA_EXPERIMENTAL_CTRL_G}" = "yes"; then - AC_DEFINE(COCOA_EXPERIMENTAL_CTRL_G, 1, [Define to 1 if you are trying experimental enhanced Ctrl-g support using NS windowing under MacOS X.]) fi if test "${NS_IMPL_GNUSTEP}" = "yes"; then AC_DEFINE(NS_IMPL_GNUSTEP, 1, [Define to 1 if you are using NS windowing under GNUstep.]) @@ -2546,7 +2574,7 @@ fi AH_TOP([/* GNU Emacs site configuration template file. Copyright (C) 1988, 1993, 1994, 1999, 2000, 2001, 2002, 2004, 2005, - 2006, 2007, 2008 Free Software Foundation, Inc. + 2006, 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -2578,11 +2606,6 @@ AH_BOTTOM([ #define HAVE_MOUSE #endif -/* Sadly for now, GNUstep dump does not work. */ -#ifdef NS_IMPL_GNUSTEP -#define CANNOT_DUMP -#endif - /* Define AMPERSAND_FULL_NAME if you use the convention that & in the full name stands for the login id. */ /* Turned on June 1996 supposing nobody will mind it. */