dnl autoconf
dnl in the directory containing this script.
dnl
-dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
dnl 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; see the file COPYING. If not, write to the
-dnl Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-dnl Boston, MA 02111-1307, USA.
+dnl Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+dnl Boston, MA 02110-1301, USA.
AC_PREREQ(2.54)dnl
AC_INIT(src/lisp.h)
fi
AC_SUBST(MAINT)
+AC_ARG_ENABLE(locallisppath,
+[ --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
+ locallisppath=${enableval}
+fi)
+
#### Make srcdir absolute, if it isn't already. It's important to
#### avoid running the path through pwd unnecessarily, since pwd can
#### give you automounter prefixes, which can go away. We do all this
case "${canonical}" in
alpha*-*-freebsd*) machine=alpha ;;
i[3456]86-*-freebsd*) machine=intel386 ;;
+ amd64-*-freebsd*|x86_64-*-freebsd*) machine=amdx86-64 ;;
esac
;;
esac
;;
+ ## LynxOS ports
+ *-*-lynxos* )
+ opsys=lynxos
+ case "${canonical}" in
+ i[3456]86-*-lynxos*) machine=intel386 ;;
+ powerpc-*-lynxos*) machine=powerpc ;;
+ esac
+ ;;
+
## Acorn RISCiX:
arm-acorn-riscix1.1* )
machine=acorn opsys=riscix1-1
;;
hppa*-hp-hpux1[1-9]* )
machine=hp800 opsys=hpux11
+ CFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CFLAGS"
;;
hppa*-*-linux-gnu* )
s390-*-linux-gnu* )
machine=ibms390 opsys=gnu-linux
;;
+ s390x-*-linux-gnu* )
+ machine=ibms390x opsys=gnu-linux
+ ;;
rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1* )
machine=ibmrs6000 opsys=aix3-1
;;
machine=intel386
case "${canonical}" in
*-cygwin ) opsys=cygwin ;;
- *-lynxos* ) opsys=lynxos ;;
+ *-darwin* ) opsys=darwin
+ CPP="${CC-cc} -E -no-cpp-precomp"
+ ;;
*-isc1.* | *-isc2.[01]* ) opsys=386-ix ;;
*-isc2.2* ) opsys=isc2-2 ;;
*-isc4.0* ) opsys=isc4-0 ;;
CC="$CC $NON_GCC_TEST_OPTIONS"
fi
+dnl checks for Unix variants
+AC_AIX
+AC_GNU_SOURCE
+
+### Use -Wno-pointer-sign if the compiler supports it
+AC_MSG_CHECKING([whether gcc understands -Wno-pointer-sign])
+SAVE_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -Wno-pointer-sign"
+AC_TRY_COMPILE([], [], has_option=yes, has_option=no,)
+if test $has_option = yes; then
+ C_WARNINGS_SWITCH="-Wno-pointer-sign $C_WARNINGS_SWITCH"
+fi
+AC_MSG_RESULT($has_option)
+CFLAGS="$SAVE_CFLAGS"
+unset has_option
+unset SAVE_CFLAGS
+
#### Some other nice autoconf tests.
dnl checks for programs
AC_PATH_PROG(INSTALL_INFO, install-info)
AC_PATH_PROG(INSTALL_INFO, install-info,, /usr/sbin)
AC_PATH_PROG(INSTALL_INFO, install-info,:, /sbin)
+dnl Don't use GZIP, which is used by gzip for additional parameters.
+AC_PATH_PROG(GZIP_PROG, gzip)
dnl Add our options to ac_link now, after it is set up.
LDFLAGS="$LDFLAGS -znocombreloc"
fi
-AC_MSG_CHECKING([For -znocombreloc])
+AC_MSG_CHECKING([for -znocombreloc])
AC_LINK_IFELSE([main(){return 0;}],
[AC_MSG_RESULT(yes)],
LDFLAGS=$late_LDFLAGS
[AC_MSG_RESULT(no)])
-dnl checks for Unix variants
-AC_AIX
-
-
#### Extract some information from the operating system and machine files.
AC_CHECKING([the machine- and system-dependent files to find out
#endif
#endif
+#ifndef C_WARNINGS_SWITCH
+#define C_WARNINGS_SWITCH ${C_WARNINGS_SWITCH}
+#endif
+
#ifndef LD_SWITCH_MACHINE
#define LD_SWITCH_MACHINE
#endif
/* Get the CFLAGS for real compilation. */
#ifdef __GNUC__
-configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
+configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH C_WARNINGS_SWITCH '${SPECIFIED_CFLAGS}'
#else
configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
#endif
dnl For AC_FUNC_GETLOADAVG, at least:
AC_CONFIG_LIBOBJ_DIR(src)
-AC_GNU_SOURCE
-
dnl Do this early because it can frob feature test macros for Unix-98 &c.
AC_SYS_LARGEFILE
+
+dnl This function defintion taken from Gnome 2.0
+dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not)
+dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page
+dnl also defines GSTUFF_PKG_ERRORS on error
+AC_DEFUN([PKG_CHECK_MODULES], [
+ succeeded=no
+
+ if test -z "$PKG_CONFIG"; then
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+ fi
+
+ if test "$PKG_CONFIG" = "no" ; then
+ ifelse([$4], , [AC_MSG_ERROR([
+ *** The pkg-config script could not be found. Make sure it is in your path, or give the full path to pkg-config with the PKG_CONFIG environment variable or --with-pkg-config-prog. Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config.])], [$4])
+ else
+ PKG_CONFIG_MIN_VERSION=0.9.0
+ if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
+ AC_MSG_CHECKING(for $2)
+
+ if $PKG_CONFIG --exists "$2" ; then
+ AC_MSG_RESULT(yes)
+ succeeded=yes
+
+ AC_MSG_CHECKING($1_CFLAGS)
+ $1_CFLAGS=`$PKG_CONFIG --cflags "$2"`
+ AC_MSG_RESULT($$1_CFLAGS)
+
+ AC_MSG_CHECKING($1_LIBS)
+ $1_LIBS=`$PKG_CONFIG --libs "$2"`
+ AC_MSG_RESULT($$1_LIBS)
+ else
+ AC_MSG_RESULT(no)
+ $1_CFLAGS=""
+ $1_LIBS=""
+ ## If we have a custom action on failure, don't print errors, but
+ ## do set a variable so people can do so.
+ $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
+ ifelse([$4], ,echo $$1_PKG_ERRORS,)
+ fi
+
+ AC_SUBST($1_CFLAGS)
+ AC_SUBST($1_LIBS)
+ else
+ echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
+ echo "*** See http://www.freedesktop.org/software/pkgconfig"
+ fi
+ fi
+
+ if test $succeeded = yes; then
+ ifelse([$3], , :, [$3])
+ else
+ ifelse([$4], , [AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.])], [$4])
+ fi
+])
+
+
if test "${with_sound}" != "no"; then
# Sound support for GNU/Linux and the free BSDs.
AC_CHECK_HEADERS(machine/soundcard.h sys/soundcard.h soundcard.h)
# Emulation library used on NetBSD.
AC_CHECK_LIB(ossaudio, _oss_ioctl, LIBSOUND=-lossaudio, LIBSOUND=)
AC_SUBST(LIBSOUND)
+
+ ALSA_REQUIRED=1.0.0
+ ALSA_MODULES="alsa >= $ALSA_REQUIRED"
+ 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(ALSA, $ALSA_MODULES, HAVE_ALSA=yes, HAVE_ALSA=no)
+ if test $HAVE_ALSA = yes; then
+ LIBSOUND="$LIBSOUND $ALSA_LIBS"
+ CFLAGS_SOUND="$CFLAGS_SOUND $ALSA_CFLAGS"
+ AC_DEFINE(HAVE_ALSA, 1, [Define to 1 if ALSA is available.])
+ fi
+ AC_SUBST(CFLAGS_SOUND)
fi
dnl checks for header files
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
+ HAVE_CARBON=no
+ fi
+fi
+if test "${HAVE_CARBON}" = yes; then
+ window_system=mac
+fi
+
case "${window_system}" in
x11 )
HAVE_X_WINDOWS=yes
* ) USE_X_TOOLKIT=maybe ;;
esac
;;
- none )
+ mac | none )
HAVE_X_WINDOWS=no
HAVE_X11=no
USE_X_TOOLKIT=none
esac
fi
-HAVE_CARBON=no
-if test "${HAVE_X11}" != "yes"; then
- if test "${with_carbon}" != "no"; then
- AC_CHECK_HEADER(Carbon/Carbon.h, HAVE_CARBON=yes)
- fi
-fi
-
### Compute the unexec source name from the object name.
UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
fi
fi
-dnl This function defintion taken from Gnome 2.0
-dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not)
-dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page
-dnl also defines GSTUFF_PKG_ERRORS on error
-AC_DEFUN([PKG_CHECK_MODULES], [
- succeeded=no
-
- if test -z "$PKG_CONFIG"; then
- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
- fi
-
- if test "$PKG_CONFIG" = "no" ; then
- echo "*** The pkg-config script could not be found. Make sure it is"
- echo "*** in your path, or give the full path to pkg-config with"
- echo "*** the PKG_CONFIG environment variable or --with-pkg-config-prog."
- echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
- else
- PKG_CONFIG_MIN_VERSION=0.9.0
- if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
- AC_MSG_CHECKING(for $2)
-
- if $PKG_CONFIG --exists "$2" ; then
- AC_MSG_RESULT(yes)
- succeeded=yes
-
- AC_MSG_CHECKING($1_CFLAGS)
- $1_CFLAGS=`$PKG_CONFIG --cflags "$2"`
- AC_MSG_RESULT($$1_CFLAGS)
-
- AC_MSG_CHECKING($1_LIBS)
- $1_LIBS=`$PKG_CONFIG --libs "$2"`
- AC_MSG_RESULT($$1_LIBS)
- else
- $1_CFLAGS=""
- $1_LIBS=""
- ## If we have a custom action on failure, don't print errors, but
- ## do set a variable so people can do so.
- $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
- ifelse([$4], ,echo $$1_PKG_ERRORS,)
- fi
-
- AC_SUBST($1_CFLAGS)
- AC_SUBST($1_LIBS)
- else
- echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
- echo "*** See http://www.freedesktop.org/software/pkgconfig"
- fi
- fi
-
- if test $succeeded = yes; then
- ifelse([$3], , :, [$3])
- else
- ifelse([$4], , [AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.])], [$4])
- fi
-])
-
HAVE_GTK=no
if test "${with_gtk}" = "yes" || test "$USE_X_TOOLKIT" = "gtk"; then
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.0.1
- GTK_REQUIRED=2.0.1
+ GLIB_REQUIRED=2.4
+ GTK_REQUIRED=2.4
GTK_MODULES="gtk+-2.0 >= $GTK_REQUIRED glib-2.0 >= $GLIB_REQUIRED"
dnl Check if --with-pkg-config-prog has been given.
### Is -lXaw3d available?
HAVE_XAW3D=no
if test "${HAVE_X11}" = "yes"; then
- if test "${USE_X_TOOLKIT}" != "none"; then
+ if test "${USE_X_TOOLKIT}" != "none" && test "${with_toolkit_scroll_bars}" != "no"; then
dnl Fixme: determine what Scrollbar.h needs to avoid compilation
dnl errors from the test without the `-'.
AC_CHECK_HEADER(X11/Xaw3d/Scrollbar.h,
### 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.])
- window_system=mac
## Specify the install directory
carbon_appdir=
if test "${carbon_appdir_x}" != ""; then
fi
# We also have mouse menus.
HAVE_MENUS=yes
+
+ tmp_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -framework Carbon"
+ AC_CHECK_FUNC(CancelMenuTracking, have_cmt=yes, have_cmt=no)
+ if test "$have_cmt" = yes; then
+ AC_DEFINE(HAVE_CANCELMENUTRACKING, 1,
+ [Define to 1 if CancelMenuTracking is available (Mac OSX).])
+ fi
+ CFLAGS="$tmp_CFLAGS"
fi
### Use session management (-lSM -lICE) if available
AC_CHECK_HEADERS(maillock.h)
AC_CHECK_FUNCS(gethostname getdomainname dup2 \
-rename closedir mkdir rmdir sysinfo getrusage \
+rename closedir mkdir rmdir sysinfo getrusage get_current_dir_name \
random lrand48 bcopy bcmp logb frexp fmod rint cbrt ftime res_init setsid \
strerror fpathconf select mktime euidaccess getpagesize tzset setlocale \
utimes setrlimit setpgid getcwd getwd shutdown getaddrinfo \
AC_FUNC_FSEEKO
+# Configure getopt.
+m4_include([m4/getopt.m4])
+gl_GETOPT_IFELSE([
+ gl_GETOPT_SUBSTITUTE_HEADER
+ gl_PREREQ_GETOPT
+ GETOPTOBJS='getopt.o getopt1.o'
+])
+AC_SUBST(GETOPTOBJS)
+
AC_FUNC_GETPGRP
AC_FUNC_STRFTIME
fi
AH_TOP([/* GNU Emacs site configuration template file.
- Copyright (C) 1988, 1993, 1994, 1999, 2000, 2002, 2004
+ Copyright (C) 1988, 1993, 1994, 1999, 2000, 2002, 2004, 2005, 2006
Free Software Foundation, Inc.
This file is part of GNU Emacs.
You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. */
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* No code in Emacs #includes config.h twice, but some bits of code
#ifdef HAVE_SOUNDCARD_H
#define HAVE_SOUND 1
#endif
+#ifdef HAVE_ALSA
+#define HAVE_SOUND 1
+#endif
#endif /* __FreeBSD__ || __NetBSD__ || __linux__ */
/* If using GNU, then support inline function declarations. */