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
dnl You should have received a copy of the GNU General Public License
dnl along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
-AC_PREREQ(2.61)dnl
-AC_INIT(emacs, 23.0.60)
+AC_PREREQ(2.61)
+AC_INIT(emacs, 23.0.94)
AC_CONFIG_HEADER(src/config.h:src/config.in)
AC_CONFIG_SRCDIR(src/lisp.h)
AH_TEMPLATE(MAIL_USE_POP, [Define to support POP mail retrieval.])dnl
OPTION_DEFAULT_OFF([kerberos],[support Kerberos-authenticated POP])
-if test "$with_kerberos" = yes; then
+if test "$with_kerberos" != no; then
AC_DEFINE(KERBEROS)
fi
AH_TEMPLATE(KERBEROS,
[Define to support Kerberos-authenticated POP mail retrieval.])dnl
OPTION_DEFAULT_OFF([kerberos5],[support Kerberos version 5 authenticated POP])
-if test "${with_kerberos5}" = yes; then
- if test "${with_kerberos}" != yes; then
+if test "${with_kerberos5}" != no; then
+ if test "${with_kerberos}" = no; then
with_kerberos=yes
AC_DEFINE(KERBEROS)
fi
fi
OPTION_DEFAULT_OFF([hesiod],[support Hesiod to get the POP server host])
-if test "$with_hesiod" = yes; then
+if test "$with_hesiod" != no; then
AC_DEFINE(HESIOD, 1, [Define to support using a Hesiod database to find the POP server.])
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
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])
OPTION_DEFAULT_ON([toolkit-scroll-bars],[don't use Motif or Xaw3d scroll bars])
OPTION_DEFAULT_ON([xaw3d],[don't use Xaw3d])
OPTION_DEFAULT_ON([xim],[don't use X11 XIM])
-OPTION_DEFAULT_OFF([carbon],[use Carbon GUI on Mac OS X. This is unsupported!])
+OPTION_DEFAULT_OFF([ns],[use nextstep (Cocoa or GNUstep) windowing system])
OPTION_DEFAULT_ON([gpm],[don't use -lgpm for mouse support on a GNU/Linux console])
OPTION_DEFAULT_ON([dbus],[don't compile with D-Bus support])
dnl Can remove these in Emacs 24.
AC_ARG_WITH([gtk],,
- AC_MSG_ERROR([--with-gtk has been removed. Use --with-x-toolkit to
-specify a toolkit.]),,)
+ [AC_MSG_ERROR([--with-gtk has been removed. Use --with-x-toolkit to
+specify a toolkit.])],,)
AC_ARG_WITH([gcc],,
- AC_MSG_ERROR([--with-gcc has been removed. Set the `CC' environment
- variable to specify a compiler.]),,)
+ [AC_MSG_ERROR([--with-gcc has been removed. Set the `CC' environment
+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(carbon-app,
-[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_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],
+ [disable self contained build under NeXTstep])],
+ EN_NS_SELF_CONTAINED=$enableval,
+ EN_NS_SELF_CONTAINED=yes)
AC_ARG_ENABLE(asserts,
[AS_HELP_STRING([--enable-asserts], [compile code with asserts enabled])],
alpha*-*-freebsd*) machine=alpha ;;
arm*-*-freebsd*) machine=arm ;;
ia64-*-freebsd*) machine=ia64 ;;
+ sparc-*-freebsd*) machine=sparc ;;
sparc64-*-freebsd*) machine=sparc ;;
powerpc-*-freebsd*) machine=macppc ;;
i[3456]86-*-freebsd*) machine=intel386 ;;
case "${canonical}" in
alpha*-*-kfreebsd*) machine=alpha ;;
ia64-*-kfreebsd*) machine=ia64 ;;
+ sparc-*-kfreebsd*) machine=sparc ;;
sparc64-*-kfreebsd*) machine=sparc ;;
powerpc-*-kfreebsd*) machine=macppc ;;
i[3456]86-*-kfreebsd*) machine=intel386 ;;
arm-*-netbsd*) machine=arm ;;
x86_64-*-netbsd*) machine=amdx86-64 ;;
hppa-*-netbsd*) machine=hp800 ;;
+ m68k-*-netbsd*) machine=m68k ;;
esac
;;
sparc*-*-openbsd*) machine=sparc ;;
vax-*-openbsd*) machine=vax ;;
x86_64-*-openbsd*) machine=amdx86-64 ;;
+ hppa-*-openbsd*) machine=hp800 ;;
esac
;;
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
;;
machine=sparc opsys=gnu-linux
;;
- *-auspex-sunos* | *-sun-sunos* | *-sun-bsd* | *-sun-solaris* \
- | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \
- | rs6000-*-solaris2*)
+ *-sun-solaris* \
+ | 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 ;;
NON_GNU_CPP=/usr/ccs/lib/cpp
RANLIB="ar -ts"
;;
- *-sunos5* | *-solaris* )
+ *-sunos5.[7-9]* | *-solaris2.[7-9]* )
opsys=sol2-6
emacs_check_sunpro_c=yes
NON_GNU_CPP=/usr/ccs/lib/cpp
;;
+ *-sunos5* | *-solaris* )
+ opsys=sol2-10
+ emacs_check_sunpro_c=yes
+ NON_GNU_CPP=/usr/ccs/lib/cpp
+ ;;
esac
## Watch out for a compiler that we know will not work.
case "${canonical}" in
;;
## 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
;;
machine=xtensa opsys=gnu-linux
;;
+ ## SuperH Linux-based GNU system
+ sh[34]*-*-linux-gnu* )
+ machine=sh3 opsys=gnu-linux
+ ;;
+
* )
unported=yes
;;
### 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
fi
fi
-HAVE_CARBON=no
-if test "${with_carbon}" != no; then
- AC_CHECK_HEADER(Carbon/Carbon.h, HAVE_CARBON=yes)
-fi
-if test "${window_system}" = x11 && test "${HAVE_CARBON}" = yes; then
- if test "${with_carbon+set}" != set \
- && test "${carbon_appdir_x+set}" != set; then
- for var in with_x with_x_toolkit with_xim \
- with_xpm with_jpeg with_tiff with_gif with_png; do
- if eval test \"\${$var+set}\" = set; then
- HAVE_CARBON=no
- break
- fi
- done
+HAVE_NS=no
+NS_IMPL_COCOA=no
+NS_IMPL_GNUSTEP=no
+tmp_CPPFLAGS="$CPPFLAGS"
+tmp_CFLAGS="$CFLAGS"
+CPPFLAGS="$CPPFLAGS -x objective-c"
+CFLAGS="$CFLAGS -x objective-c"
+if test "${with_ns}" != no; then
+ if test "${opsys}" = darwin; then
+ NS_IMPL_COCOA=yes
+ ns_appdir=`pwd`/nextstep/Emacs.app
+ 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 $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
+ 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_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 <Foundation/NSObjCRuntime.h>],
+ [NSInteger i;])],
+ ns_have_nsinteger=yes,
+ ns_have_nsinteger=no)
+ if test $ns_have_nsinteger = no; then
+ NS_HAVE_NSINTEGER=no
fi
fi
-if test "${HAVE_CARBON}" = yes; then
- window_system=mac
+if test "${HAVE_NS}" = yes; then
+ window_system=nextstep
+ with_xft=no
+ # set up packaging dirs
+ exec_prefix=${ns_appbindir}
+ libexecdir=${ns_appbindir}/libexec
+ if test "${EN_NS_SELF_CONTAINED}" = yes; then
+ prefix=${ns_appresdir}
+ fi
fi
+CFLAGS="$tmp_CFLAGS"
+CPPFLAGS="$tmp_CPPFLAGS"
case "${window_system}" in
x11 )
* ) USE_X_TOOLKIT=maybe ;;
esac
;;
- mac | none )
+ nextstep | none )
HAVE_X_WINDOWS=no
HAVE_X11=no
USE_X_TOOLKIT=none
### 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 "${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, :, :)
[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 <gtk/gtk.h>])
+ 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 <gtk/gtk.h>])
+ 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
elif test "${HAVE_GTK}" = "yes"; then
AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
USE_TOOLKIT_SCROLL_BARS=yes
- elif test "${HAVE_CARBON}" = "yes"; then
+ elif test "${HAVE_NS}" = "yes"; then
AC_DEFINE(USE_TOOLKIT_SCROLL_BARS)
USE_TOOLKIT_SCROLL_BARS=yes
fi
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"; 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"; 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 "${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
+ 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
+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)
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
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.])])
-### Use Mac OS X Carbon API to implement GUI.
-if test "${HAVE_CARBON}" = "yes"; then
- AC_DEFINE(HAVE_CARBON, 1, [Define to 1 if you are using the Carbon API on Mac OS X.])
- AC_CHECK_HEADERS(AvailabilityMacros.h)
- ## Specify the install directory
- carbon_appdir=
- if test "${carbon_appdir_x}" != ""; then
- case ${carbon_appdir_x} in
- y | ye | yes) carbon_appdir=/Applications ;;
- * ) carbon_appdir=${carbon_appdir_x} ;;
- esac
+### Use NeXTstep API to implement GUI.
+if test "${HAVE_NS}" = "yes"; then
+ AC_DEFINE(HAVE_NS, 1, [Define to 1 if you are using the NeXTstep API, either GNUstep or Cocoa on Mac OS X.])
+ 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 "${NS_IMPL_GNUSTEP}" = "yes"; then
+ AC_DEFINE(NS_IMPL_GNUSTEP, 1, [Define to 1 if you are using NS windowing under GNUstep.])
+ GNU_OBJC_CFLAGS="-fgnu-runtime -Wno-import -fconstant-string-class=NSConstantString -DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGSWARN -DGSDIAGNOSE"
+ fi
+ if test "${NS_HAVE_NSINTEGER}" = "yes"; then
+ AC_DEFINE(NS_HAVE_NSINTEGER, 1, [Define to 1 if `NSInteger' is defined.])
fi
# We also have mouse menus.
HAVE_MENUS=yes
fi
+
### Use session management (-lSM -lICE) if available
HAVE_X_SM=no
if test "${HAVE_X11}" = "yes"; then
rename closedir mkdir rmdir sysinfo getrusage get_current_dir_name \
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 \
+utimes getrlimit setrlimit setpgid getcwd getwd shutdown getaddrinfo \
__fpending mblen mbrlen mbsinit strsignal setitimer ualarm index rindex \
sendto recvfrom getsockopt setsockopt getsockname getpeername \
gai_strerror mkstemp getline getdelim mremap memmove fsync sync bzero \
fi
# Do we need the Hesiod library to provide the support routines?
-if test "$with_hesiod" = yes ; then
+if test "$with_hesiod" != no ; then
# Don't set $LIBS here -- see comments above.
AC_CHECK_FUNC(res_send, , [AC_CHECK_FUNC(__res_send, ,
[AC_CHECK_LIB(resolv, res_send, resolv=yes,
fi
# These tell us which Kerberos-related libraries to use.
-if test "${with_kerberos+set}" = set; then
+if test "${with_kerberos}" != no; then
AC_CHECK_LIB(com_err, com_err)
AC_CHECK_LIB(k5crypto, mit_des_cbc_encrypt)
AC_CHECK_LIB(crypto, mit_des_cbc_encrypt)
AC_CHECK_LIB(krb5, krb5_init_context)
- if test "${with_kerberos5+set}" != set; then
+ if test "${with_kerberos5}" = no; then
AC_CHECK_LIB(des425, des_cbc_encrypt,,
[AC_CHECK_LIB(des, des_cbc_encrypt)])
AC_CHECK_LIB(krb4, krb_get_cred,,
[AC_CHECK_LIB(krb, krb_get_cred)])
fi
- if test "${with_kerberos5+set}" = set; then
- AC_CHECK_HEADERS(krb5.h)
+ if test "${with_kerberos5}" != no; then
+ AC_CHECK_HEADERS(krb5.h,
+ [AC_CHECK_MEMBERS([krb5_error.text, krb5_error.e_text],,,
+ [#include <krb5.h>])])
else
AC_CHECK_HEADERS(des.h,,
[AC_CHECK_HEADERS(kerberosIV/des.h,,
AC_SUBST(machfile)
AC_SUBST(opsysfile)
AC_SUBST(GETLOADAVG_LIBS)
-AC_SUBST(carbon_appdir)
+AC_SUBST(ns_appdir)
+AC_SUBST(ns_appbindir)
+AC_SUBST(ns_appresdir)
+AC_SUBST(ns_appsrc)
+AC_SUBST(GNUSTEP_MAKEFILES)
+AC_SUBST(GNUSTEP_SYSTEM_HEADERS)
+AC_SUBST(GNUSTEP_SYSTEM_LIBRARIES)
+AC_SUBST(GNU_OBJC_CFLAGS)
+AC_SUBST(LIB_SRC_EXTRA_INSTALLABLES)
AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "${canonical}",
[Define to the canonical Emacs configuration name.])
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.
])dnl
AH_BOTTOM([
-/* If we're using any sort of window system, define some consequences. */
-#ifdef HAVE_X_WINDOWS
+/* If we're using X11/Carbon/GNUstep, define some consequences. */
+#if defined(HAVE_X_WINDOWS) || defined(HAVE_NS)
#define HAVE_WINDOW_SYSTEM
-#define MULTI_KBOARD
#define HAVE_MOUSE
#endif
-/* Multi-tty support relies on MULTI_KBOARD. It seems safe to turn it
- on unconditionally. */
-#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
-#define HAVE_WINDOW_SYSTEM
-#define HAVE_MOUSE
-#endif
-
-/* Define USER_FULL_NAME to return a string
- that is the user's full name.
- It can assume that the variable `pw'
- points to the password file entry for this user.
-
- At some sites, the pw_gecos field contains
- the user's full name. If neither this nor any other
- field contains the right thing, use pw_name,
- giving the user's login name, since that is better than nothing. */
-#define USER_FULL_NAME pw->pw_gecos
-
/* 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. */
#define AMPERSAND_FULL_NAME
-/* We have blockinput.h. */
-#define DO_BLOCK_INPUT
-
/* Define HAVE_SOUND if we have sound support. We know it works
and compiles only on the specified platforms. For others,
it probably doesn't make sense to try. */
#define INLINE
#endif
+/* `subprocesses' should be defined if you want to
+ have code for asynchronous subprocesses
+ (as used in M-x compile and M-x shell).
+ Only MSDOS does not support this (it overrides
+ this in its config_opsysfile below). */
+
+#define subprocesses
+
/* Include the os and machine dependent files. */
#include config_opsysfile
#include config_machfile
-/* If no remapping takes place, static variables cannot be dumped as
- pure, so don't worry about the `static' keyword. */
-#ifdef NO_REMAP
-#undef static
-#endif
-
-/* Define `subprocesses' should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- These do not work for some USG systems yet;
- for the ones where they work, the s/SYSTEM.h file defines this flag. */
-
-#ifndef VMS
-#ifndef USG
-/* #define subprocesses */
-#endif
-#endif
+/* Set up some defines, C and LD flags for NeXTstep interface on GNUstep.
+ (There is probably a better place to do this, but right now the Cocoa
+ side does this in s/darwin.h and we cannot
+ parallel this exactly since GNUstep is multi-OS. */
+#ifdef HAVE_NS
+#define OTHER_FILES ns-app
+# ifdef NS_IMPL_GNUSTEP
+/* See also .m.o rule in Makefile.in */
+/* FIXME: are all these flags really needed? Document here why. */
+# define C_SWITCH_X_SYSTEM -D_REENTRANT -fPIC -fno-strict-aliasing
+/* GNUstep needs a bit more pure memory. Of the existing knobs,
+SYSTEM_PURESIZE_EXTRA seems like the least likely to cause problems. */
+# define SYSTEM_PURESIZE_EXTRA 30000
+# endif /* NS_IMPL_GNUSTEP */
+#endif /* HAVE_NS */
/* SIGTYPE is the macro we actually use. */
#ifndef SIGTYPE
echo " Does Emacs use -lotf? ${HAVE_LIBOTF}"
echo " Does Emacs use -lxft? ${HAVE_XFT}"
-echo " Does Emacs use X toolkit scroll bars? ${USE_TOOLKIT_SCROLL_BARS}"
+echo " Does Emacs use toolkit scroll bars? ${USE_TOOLKIT_SCROLL_BARS}"
echo
if test $USE_XASSERTS = yes; then
esac
fi
-
-if test "$HAVE_CARBON" = "yes"; then
+if test "$HAVE_NS" = "yes"; then
echo
- echo "Warning: The Mac Carbon port is currently unsupported and has
-known problems. It is not recommended for use by non-developers.
-Read the emacs-devel archives for more information."
+ echo "You must run \"make install\" in order to test the built application.
+The installed application will go to nextstep/Emacs.app and can be
+run or moved from there."
+ if test "$EN_NS_SELF_CONTAINED" = "yes"; then
+ echo "The application will be fully self-contained."
+ else
+ echo "The lisp resources for the application will be installed under ${prefix}.
+You may need to run \"make install\" with sudo. The application will fail
+to run if these resources are not installed."
+ fi
echo
fi