#### Copyright (C) 1993-1995 Board of Trustees, University of Illinois.
#### Copyright (C) 1996, 1997 Sun Microsystems, Inc.
#### Copyright (C) 1995, 1996 Ben Wing.
+#### Copyright (C) 1998, 1999 J. Kean Johnston.
### Don't edit this script!
### This script was automatically generated by the `autoconf' program
### from the file `./configure.in'.
### To rebuild it, execute the command
### autoconf
-### in the this directory. You must have autoconf version 2.12 or later.
+### in the this directory. You must have autoconf version 2.13 or later.
### This file is part of XEmacs.
dnl We use the m4 quoting characters [ ] (as established by the
dnl autoconf system), so quote them like this: [[foo]]
-AC_PREREQ(2.12)dnl
+AC_PREREQ(2.13)dnl
dnl Redefine some standard autoconf macros
dnl here is how XEmacs is different:
dnl - no cache file
if test "$extra_verbose" = "yes"; then echo " Prepending \"[$1]\" to \$[$2]"; fi])
dnl XE_DIE(message)
-define([XE_DIE], [{ echo $1 >&2; exit 1; }])
+define([XE_DIE], [{ echo "Error:" $1 >&2; exit 1; }])
dnl XE_STRIP_4TH_COMPONENT(var)
dnl Changes i986-pc-linux-gnu to i986-pc-linux, as God (not RMS) intended.
dnl Initialize some other variables.
subdirs=
MFLAGS= MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
dnl Maximum number of lines to put in a shell here document.
ac_max_here_lines=12
])dnl AC_INIT_PARSE_ARGS
statedir='${prefix}/lib'
libdir='${exec_prefix}/lib'
mandir='${prefix}/man/man1'
-infodir='${datadir}/${PROGNAME}-${version}/info'
+inststaticdir='${PROGNAME}'
+instvardir='${PROGNAME}-${version}'
+infodir='${datadir}/${instvardir}/info'
infopath=''
install_pp=''
-lispdir='${datadir}/${PROGNAME}-${version}/lisp'
-dnl sitelispdir='${datadir}/xemacs/site-lisp'
-pkgdir='${datadir}/${PROGNAME}-${version}/lisp'
+lispdir='${datadir}/${instvardir}/lisp'
+moduledir='${datadir}/${instvardir}/${configuration}/modules'
+sitelispdir='${datadir}/${inststaticdir}/site-lisp'
+sitemoduledir='${datadir}/${inststaticdir}/site-modules'
+pkgdir='${datadir}/${instvardir}/lisp'
package_path=''
-etcdir='${datadir}/${PROGNAME}-${version}/etc'
-lockdir='${statedir}/${PROGNAME}/lock'
-archlibdir='${libdir}/${PROGNAME}-${version}/${configuration}'
+etcdir='${datadir}/${instvardir}/etc'
+lockdir='${statedir}/${inststaticdir}/lock'
+archlibdir='${datadir}/${instvardir}/${configuration}'
+docdir='${archlibdir}'
+with_prefix='yes'
with_site_lisp='no'
+with_site_modules='yes'
with_menubars=''
with_scrollbars=''
+with_widgets=''
with_dialogs=''
with_file_coding=''
-dnl const_is_losing is removed - we rely on AC_C_CONST instead.
-dnl We accept (and ignore) the --const-is-losing option for compatibility.
-dnl const_is_losing='yes'
-puresize=''
cpp='' cppflags='' libs='' ldflags=''
dynamic=''
with_x11=''
with_tty=""
use_union_type="no"
with_dnet=""
+pdump="no"
+dnl dragndrop is still experimental. When it is stable, comment out the following line:
+with_dragndrop="no"
dnl ------------------
dnl Options Processing
dnl Process (many) boolean options
with_site_lisp | \
+ with_prefix | \
+ with_site_modules | \
with_x | \
with_x11 | \
with_msw | \
with_jpeg | \
with_png | \
with_tiff | \
- with_session | \
+ with_wmcommand | \
with_xmu | \
with_purify | \
with_quantify | \
with_sparcworks | \
with_tooltalk | \
with_ldap | \
+ with_postgresql | \
with_pop | \
with_kerberos | \
with_hesiod | \
external_widget | \
verbose | \
extra_verbose | \
- const_is_losing | \
usage_tracking | \
use_union_type | \
+ pdump | \
debug | \
use_assertions | \
- gung_ho | \
- use_minimal_tagbits | \
- use_indexed_lrecord_implementation | \
memory_usage_stats | \
with_clash_detection | \
- with_shlib | \
- no_doc_file )
+ with_modules | \
+ quick_build )
dnl Make sure the value given was either "yes" or "no".
case "$val" in
y | ye | yes ) val=yes ;;
eval "$opt=\"$val\"" ;;
- dnl Options that take a user-supplied value, as in --puresize=8000000
+ dnl Options that take a user-supplied value, as in --x-includes=/usr/X11R6/include
dnl The cache-file option is ignored (for compatibility with other configures)
srcdir | \
compiler | \
cppflags | \
libs | \
ldflags | \
- puresize | \
cache_file | \
native_sound_lib| \
site_lisp | \
"with_database" )
with_database_berkdb=no
with_database_dbm=no
- with_database_gnudbm=no
+ with_database_gdbm=no
for x in `echo "$val" | sed -e 's/,/ /g'` ; do
case "$x" in
- no ) ;;
- b | be | ber | berk | berkd | berkdb ) with_database_berkdb=yes ;;
- d | db | dbm ) with_database_dbm=yes ;;
- g | gn | gnu | gnud | gnudb | gnudbm ) with_database_gnudbm=yes ;;
- * ) USAGE_ERROR(["The \`--$optname' option value
+ no ) ;;
+ b | be | ber | berk | berkd | berkdb ) with_database_berkdb=yes ;;
+ d | db | dbm ) with_database_dbm=yes ;;
+ g | gn | gnu | gnud | gnudb | gnudbm | gdbm) with_database_gdbm=yes ;;
+ * ) USAGE_ERROR(["The \`--$optname' option value
must be either \`no' or a comma-separated list
of one or more of \`berkdb' and either \`dbm' or \`gnudbm'."]) ;;
esac
done
- if test "$with_database_dbm" = "yes" -a \
- "$with_database_gnudbm" = "yes"; then
+ if test "$with_database_dbm" = "yes" -a \
+ "$with_database_gdbm" = "yes"; then
USAGE_ERROR("Only one of \`dbm' and \`gnudbm' may be specified
with the \`--$optname' option.")
fi
dnl Has the user requested sound support?
"with_sound" )
- dnl value can be native, nas or both. yes is allowed
- dnl as a backwards compatible synonym for native
+ dnl values is a subset of all,native,nas,esd
+ dnl or their negatives: none,nonative,nonas,noesd
+ for x in `echo "$val" | sed -e 's/,/ /g'` ; do
+ case "$x" in
+ dnl all and none are only permitted as the first in the list.
+ n | no | non | none ) new_sdefault=no ;;
+ a | al | all | both ) new_sdefault=yes ;;
+
+ native ) with_native_sound=yes ;;
+ nonative ) with_native_sound=no ;;
+
+ nas ) with_nas_sound=yes ;;
+ nonas ) with_nas_sound=no ;;
+
+ esd ) with_esd_sound=yes ;;
+ noesd ) with_esd_sound=no ;;
+
+ * ) bogus_sound=yes ;;
+ esac
+ if test "$bogus_sound" -o \
+ \( -n "$new_sdefault" -a -n "$sound_notfirst" \) ; then
+ types="\`all', \`none', \`(no)native', \`no(nas)', \`(no)esd'."
+ USAGE_ERROR(["Valid types for the \`--$optname' option are:
+ $types.
+The default is to autodetect all sound support."])
+ elif test -n "$new_sdefault" ; then
+ with_native_sound=$new_sdefault
+ with_nas_sound=$new_sdefault
+ with_esd_sound=$new_sdefault
+ new_sdefault= # reset this
+ fi
+ sound_notfirst=true
+ done
+ ;;
+
+ dnl Has the user specified a prefered Athena widget set?
+ dnl This bit expands any alias names out for us...
+ "with_athena" )
case "$val" in
- y | ye | yes ) val=native ;;
- n | no | non | none ) val=no;;
- na | nat | nati | nativ | native ) val=native ;;
- ne | net | neta | netau | netaud | netaudi | netaudio | nas ) val=nas ;;
- b | bo | bot | both ) val=both;;
+ xa | xaw ) val=xaw ;;
+ 3 | 3d | xaw3d ) val=3d ;;
+ dnl No `n' for next, someone may try `no'
+ ne | nex | next | naxtaw) val=next ;;
+ dnl Have not tested the next two...
+ 9 | 95 | xaw95 ) val=95 ;;
+ xp | xpm | xawxpm ) val=xpm ;;
* ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
- \`native', \`nas', \`both', or \`none'."]) ;;
+ \`xaw', \`3d', \`next', \`95', or \`xpm'."]) ;;
esac
eval "$opt=\"$val\""
;;
case "$val" in
lockf ) val=lockf ;;
flock ) val=flock ;;
- file ) val=file ;;
+ file | dot ) val=file ;;
+ locking ) val=locking ;;
* ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
- \`lockf', \`flock', or \`file'."]) ;;
+ \`lockf', \`flock', \`file', \`locking', or \`mmdf'."]) ;;
esac
eval "$opt=\"$val\""
;;
malloc ) error_check_malloc=yes ;;
nomalloc ) error_check_malloc=no ;;
+ byte_code ) error_check_byte_code=yes ;;
+ nobyte_code ) error_check_byte_code=no ;;
+
+ glyphs ) error_check_glyphs=yes ;;
+ noglyphs ) error_check_glyphs=no ;;
+
* ) bogus_error_check=yes ;;
esac
if test "$bogus_error_check" -o \
\( -n "$new_default" -a -n "$echeck_notfirst" \) ; then
if test "$error_check_default" = yes ; then
- types="\`all' (default), \`none', \`noextents', \`notypecheck', \`nobufpos', \`nogc', and \`nomalloc'."
+ types="\`all' (default), \`none', \`noextents', \`notypecheck', \`nobufpos', \`nogc', \`nomalloc', \`noglyphs' and \`nobyte-code'."
else
- types="\`all', \`none' (default), \`extents', \`typecheck', \`bufpos', \`gc', and \`malloc'."
+ types="\`all', \`none' (default), \`extents', \`typecheck', \`bufpos', \`gc', \`malloc', \`glyphs' and \`byte-code'."
fi
USAGE_ERROR(["Valid types for the \`--$optname' option are:
$types."])
error_check_bufpos=$new_default
error_check_gc=$new_default
error_check_malloc=$new_default
+ error_check_byte_code=$new_default
+ error_check_glyphs=$new_default
new_default= # reset this
fi
echeck_notfirst=true
dnl You need to synchronize this with the way the
dnl default values are built.
case "$opt" in
+ dnl prefix is taken care of by --with-prefix
+ exec_prefix ) AC_DEFINE(EXEC_PREFIX_USER_DEFINED) ;;
lispdir ) AC_DEFINE(LISPDIR_USER_DEFINED) ;;
-dnl sitelispdir ) AC_DEFINE(SITELISPDIR_USER_DEFINED) ;;
+ sitelispdir ) AC_DEFINE(SITELISPDIR_USER_DEFINED) ;;
+ moduledir ) AC_DEFINE(MODULEDIR_USER_DEFINED) ;;
etcdir ) AC_DEFINE(ETCDIR_USER_DEFINED) ;;
infodir ) AC_DEFINE(INFODIR_USER_DEFINED) ;;
infopath ) AC_DEFINE(INFOPATH_USER_DEFINED) ;;
datadir )
AC_DEFINE(INFODIR_USER_DEFINED)
AC_DEFINE(LISPDIR_USER_DEFINED)
+ AC_DEFINE(MODULEDIR_USER_DEFINED)
AC_DEFINE(ETCDIR_USER_DEFINED) ;;
statedir | lockdir ) AC_DEFINE(LOCKDIR_USER_DEFINED) ;;
+ docdir ) AC_DEFINE(DOCDIR_USER_DEFINED) ;;
exec_prefix | libdir | archlibdir ) AC_DEFINE(ARCHLIBDIR_USER_DEFINED) ;;
esac
;;
dnl Has the user specified the toolkit(s) to use for GUI elements?
"with_menubars" | \
"with_scrollbars" | \
- "with_dialogs" )
+ "with_dialogs" | \
+ "with_widgets" )
case "$val" in
l | lu | luc | luci | lucid ) val=lucid ;;
m | mo | mot | moti | motif ) val=motif ;;
- athena3d | athena-3d ) val=athena3d ;;
a | at | ath | athe | athen | athena ) val=athena ;;
n | no | non | none ) val=no ;;
* ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
- \`lucid', \`motif', \`athena', \`athena3d', or \`no'."]) ;;
+ \`lucid', \`motif', \`athena', or \`no'."]) ;;
esac
eval "$opt=\"$val\""
;;
dnl Obsolete legacy argument? Warn, but otherwise ignore.
+ "use_minimal_tagbits" | \
+ "use_indexed_lrecord_implementation" | \
"run_in_place" | \
+ "const_is_losing" | \
"with_gnu_make" )
AC_MSG_WARN([Obsolete option \`--$optname' ignored.])
;;
test "$with_system_malloc" = "default" && with_system_malloc=yes
fi
-dnl --gung-ho=val is a synonym for
-dnl --use-minimal-tagbits=val --use-indexed-lrecord-implementation=val
-if test -n "$gung_ho"; then
- test -z "$use_minimal_tagbits" && use_minimal_tagbits="$gung_ho"
- test -z "$use_indexed_lrecord_implementation" && \
- use_indexed_lrecord_implementation="$gung_ho"
-fi
-if test "$use_minimal_tagbits" = "no"; then
- test "$with_dlmalloc" = "yes" && \
- USAGE_ERROR("--with-dlmalloc requires --use-minimal-tagbits")
- with_dlmalloc=no
-fi
-
dnl XE_CHECK_FEATURE_DEPENDENCY(feature1, feature2)
define([XE_CHECK_FEATURE_DEPENDENCY],
[if test "$with_$1 $with_$2" = "yes no"; then
dnl have stuck the source on a read-only partition. Instead we
dnl create it as an actual directory later on if it does not already
dnl exist.
-for dir in lisp etc man info; do
+for dir in lisp etc man info tests; do
if test ! -d "$dir" ; then
echo Making symbolic link to "$srcdir/$dir"
${LN_S} "$srcdir/$dir" "$dir"
fi
done
+dnl Do our best to deal with automounter brokenness
+dnl CANONICALIZE_PATH(varname)
+define([CANONICALIZE_PATH],
+[if test -d "/net"; then
+ if test -d "/tmp_mnt/net"; then tdir="tmp_mnt/net"; else tdir="tmp_mnt"; fi
+ $1=`echo "[$]$1" | \
+ sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"`
+fi])dnl
+
dnl Calculate canonical name for blddir (i.e. current directory).
dnl PWD may already be the preferable absolute name for ".",
dnl but we can't trust it - it is sometimes inaccurate.
absolute_pwd="`pwd`";
if test -n "$PWD" -a "`cd $PWD && pwd`" = "$absolute_pwd"
then blddir="$PWD"
-else blddir="$absolute_pwd"
+else blddir="$absolute_pwd"; CANONICALIZE_PATH(blddir)
fi
AC_SUBST(blddir)
case "$srcdir" in
/* ) ;;
. ) srcdir="$blddir" ;;
- * ) srcdir="`cd $srcdir && pwd`" ;;
+ * ) srcdir="`cd $srcdir && pwd`"; CANONICALIZE_PATH(srcdir) ;;
esac
dnl Check if the source directory already has a configured system in it.
dnl ----------------------------------------
. "$srcdir/version.sh" || exit 1;
dnl Must do the following first to determine verbosity for AC_DEFINE
-if test -n "$emacs_beta_version"; then beta=yes; else beta=no; fi
+if test -n "$emacs_is_beta"; then beta=yes; else beta=no; fi
: "${extra_verbose=$beta}"
version="${emacs_major_version}.${emacs_minor_version}"
AC_DEFINE_UNQUOTED(EMACS_MAJOR_VERSION, $emacs_major_version)
AC_DEFINE_UNQUOTED(EMACS_MINOR_VERSION, $emacs_minor_version)
-if test -n "$emacs_beta_version"; then
- version="${version}-b${emacs_beta_version}"
- AC_DEFINE_UNQUOTED(EMACS_BETA_VERSION, $emacs_beta_version)
+if test -n "$emacs_beta_version" ; then
+ if test "$beta" = "yes"; then
+ version="${version}-b${emacs_beta_version}"
+ AC_DEFINE_UNQUOTED(EMACS_BETA_VERSION, $emacs_beta_version)
+ else
+ version="${version}.${emacs_beta_version}"
+ AC_DEFINE_UNQUOTED(EMACS_PATCH_LEVEL, $emacs_beta_version)
+ fi
fi
AC_DEFINE_UNQUOTED(XEMACS_CODENAME, "$xemacs_codename")
AC_DEFINE_UNQUOTED(EMACS_VERSION, "$version")
if test "$with_infodock" = "yes"; then
- if test ! -f ../ID-INSTALL; then
+ if test ! -f ../../ID-INSTALL; then
echo "Cannot build InfoDock without InfoDock sources"
with_infodock=no
fi
PROGNAME=xemacs
fi
+AC_DEFINE_UNQUOTED(EMACS_PROGNAME, "$PROGNAME")
+
dnl ----------------------------------
dnl Error checking and debugging flags
dnl ----------------------------------
dnl Error checking default to "yes" in beta versions, to "no" in releases.
dnl Same goes for --debug and --extra-verbosity.
-if test -n "$emacs_beta_version"; then beta=yes; else beta=no; fi
+if test -n "$emacs_is_beta"; then beta=yes; else beta=no; fi
test "${error_check_extents=$beta}" = yes && AC_DEFINE(ERROR_CHECK_EXTENTS)
test "${error_check_typecheck=$beta}" = yes && AC_DEFINE(ERROR_CHECK_TYPECHECK)
test "${error_check_bufpos=$beta}" = yes && AC_DEFINE(ERROR_CHECK_BUFPOS)
test "${error_check_gc=$beta}" = yes && AC_DEFINE(ERROR_CHECK_GC)
test "${error_check_malloc=$beta}" = yes && AC_DEFINE(ERROR_CHECK_MALLOC)
+test "${error_check_byte_code=$beta}" = yes && AC_DEFINE(ERROR_CHECK_BYTE_CODE)
+test "${error_check_glyphs=$beta}" = yes && AC_DEFINE(ERROR_CHECK_GLYPHS)
dnl debug=yes must be set when error checking is present. This should be
dnl fixed up.
dnl debug implies other options
if test "${debug:=$beta}" = "yes"; then
use_assertions=yes memory_usage_stats=yes
XE_ADD_OBJS(debug.o)
+ XE_ADD_OBJS(tests.o)
AC_DEFINE(DEBUG_XEMACS)
fi
test "$use_assertions" = "yes" && AC_DEFINE(USE_ASSERTIONS)
alpha*-*-* ) machine=alpha ;;
vax-*-* ) machine=vax ;;
mips-dec-* ) machine=pmax ;;
+ mips-sgi-irix6* ) machine=iris6d ;;
mips-sgi-* ) machine=iris4d ;;
+ mips*-linux ) machine=mips ;;
romp-ibm-* ) machine=ibmrt ;;
rs6000-ibm-aix* ) machine=ibmrs6000 ;;
powerpc-ibm-aix* ) machine=ibmrs6000 ;;
m68*-sony-* ) machine=news ;;
mips-sony-* ) machine=news-risc ;;
clipper-* ) machine=clipper ;;
- arm-* ) machine=arm ;;
+ arm* ) machine=arm ;;
ns32k-* ) machine=ns32000 ;;
esac
*-xenix* ) opsys=xenix ;;
*-sco3.2v4* ) opsys=sco4 NON_GNU_CPP=/lib/cpp ;;
*-bsd386* | *-bsdi1* ) opsys=bsd386 ;;
+ *-bsdi4* ) opsys=bsdos4 ;;
*-bsdi3* ) opsys=bsdos3 ;;
*-bsdi2.1* ) opsys=bsdos2-1 ;;
*-bsdi2* ) opsys=bsdos2 ;;
else
NON_GNU_CPP="/lib/cpp -D_XOPEN_SOURCE" ;
fi ;;
+ *-sysv5* ) opsys=sco7 ;;
*-386bsd* ) opsys=386bsd ;;
*-freebsd* ) opsys=freebsd ;;
*-nextstep* ) opsys=nextstep ;;
- *-pc-cygwin32 ) opsys=cygwin32 ;;
+ *-pc-cygwin* ) opsys=cygwin32 ;;
+ *-pc-mingw* ) opsys=mingw32 ;
+ test -z "$with_tty" && with_tty="no";;
dnl Otherwise, we fall through to the generic opsys code at the bottom.
esac
;;
if test -z "$dynamic"; then
case "$opsys" in
- hpux* | sunos4* | sco5 ) dynamic=no ;;
+ hpux* | sunos4* ) dynamic=no ;;
*) dynamic=yes ;;
esac
fi
XE_ADD_OBJS(sunpro.o)
fi
-if test "$with_clash_detection" = "yes"; then
+if test "$with_clash_detection" != "no"; then
AC_DEFINE(CLASH_DETECTION)
XE_ADD_OBJS(filelock.o)
fi
AC_PROG_CPP
-AC_AIX
+dnl --------------------------------------------------------------------
+dnl Compiler feature macros
+dnl --------------------------------------------------------------------
+
+AC_AIX dnl Defines _ALL_SOURCE on AIX.
+
+dnl Determine which SMART_INCLUDE macro will work for this system
+cat > $srcdir/conffoo.h <<EOF
+#define CONFFOO 1
+EOF
+AC_MSG_CHECKING(for a working inclusion macro)
+AC_TRY_COMPILE(,[
+#define SMART_INCLUDE(path,file) <path/file>
+#define CONFFOO_H_PATH $srcdir
+#define CONFFOO_INCLUDE(file) SMART_INCLUDE (CONFFOO_H_PATH,file)
+#include CONFFOO_INCLUDE(conffoo.h)
+], [ AC_MSG_RESULT(direct); AC_DEFINE(SMART_INCLUDE_INDIRECTIONS,0) ],
+AC_TRY_COMPILE(,[
+#define GLUE_INCLUDE(path,file) <##path##/##file##>
+#define SMART_INCLUDE(path,file) GLUE_INCLUDE(path,file)
+#define CONFFOO_H_PATH $srcdir
+#define CONFFOO_INCLUDE(file) SMART_INCLUDE(CONFFOO_H_PATH,file)
+#include CONFFOO_INCLUDE(conffoo.h)
+], [ AC_MSG_RESULT(simple); AC_DEFINE(SMART_INCLUDE_INDIRECTIONS,1) ],
+AC_TRY_COMPILE(,[
+#define GLUE_INCLUDE_2(path,file) <##path##/##file##>
+#define GLUE_INCLUDE_1(path,file) GLUE_INCLUDE_2(path,file)
+#define SMART_INCLUDE(path,file) GLUE_INCLUDE_1(path,file)
+#define CONFFOO_H_PATH $srcdir
+#define CONFFOO_INCLUDE(file) SMART_INCLUDE (CONFFOO_H_PATH,file)
+#include CONFFOO_INCLUDE(conffoo.h)
+], [ AC_MSG_RESULT(double); AC_DEFINE(SMART_INCLUDE_INDIRECTIONS,2) ],
+ AC_MSG_ERROR([Cannot define a proper SMART_INCLUDE macro. Please report.]))))
+rm -f $srcdir/conffoo.h
+
+
+dnl We want feature macros defined here and in config.h.in, so that
+dnl the compilation environment at configure time and compile time agree.
AC_MSG_CHECKING(for GNU libc)
AC_TRY_COMPILE([#include <features.h>],[
dnl Well. then why not fix fucking pop?
test "$have_glibc" = "yes" && AC_DEFINE(_GNU_SOURCE)
+dnl We'd like to use vendor extensions, where available.
+dnl We'd like to use functions from the latest Unix98 standards.
+dnl See http://www.opengroup.org/onlinepubs/007908799/xsh/compilation.html
+case "$opsys" in
+ sol2)
+ AC_DEFINE(__EXTENSIONS__)
+ dnl Solaris 2 before 2.5 had some bugs with feature test macro interaction.
+ if test "$os_release" -ge 55; then
+ AC_DEFINE(_XOPEN_SOURCE,500)
+ AC_DEFINE(_XOPEN_SOURCE_EXTENDED)
+ fi ;;
+ linux)
+ AC_DEFINE(_POSIX_C_SOURCE,199506L)
+ AC_DEFINE(_XOPEN_SOURCE,500)
+ AC_DEFINE(_XOPEN_SOURCE_EXTENDED)
+ ;;
+esac
dnl Identify compilers to enable compiler-specific hacks.
dnl Add support for other compilers HERE!
CPP_to_sh(LD_SWITCH_SHARED, ld_switch_shared, -c)
+#define ORDINARY_LD "\$(CC) \$(CFLAGS)"
+configure___ ordinary_ld=ORDINARY_LD
+
#ifdef ORDINARY_LINK
-#define LD "\$(CC) \$(CFLAGS)"
+#define LD ORDINARY_LD
#else /* no ORDINARY LINK */
#ifdef COFF_ENCAPSULATE
#define LD "\$(CC) -nostdlib"
CPP_boolean_to_sh(ORDINARY_LINK, ordinary_link)
CPP_boolean_to_sh(SYSTEM_MALLOC, system_malloc)
CPP_boolean_to_sh(TERMINFO, have_terminfo)
+dnl The MAIL_USE_xxx variables come from the s&m headers
CPP_boolean_to_sh(MAIL_USE_FLOCK, mail_use_flock)
CPP_boolean_to_sh(MAIL_USE_LOCKF, mail_use_lockf)
+CPP_boolean_to_sh(MAIL_USE_LOCKING, mail_use_locking)
+CPP_boolean_to_sh(HAVE_WIN32_PROCESSES, win32_processes)
EOF
dnl The value of CPP is a quoted variable reference, so we need to do this
rm $tempcname
+if test "$pdump" = "yes"; then
+ ordinary_link="yes"
+ ld="${ordinary_ld}"
+ start_files=
+ libs_standard=
+ unexec=
+ lib_gcc=
+fi
+
dnl For debugging...
test "$extra_verbose" = "yes" && \
PRINT_VAR(libs_machine libs_system libs_termcap libs_standard
ld lib_gcc ld_text_start_addr start_files ordinary_link
have_terminfo mail_use_flock mail_use_lockf) && echo ""
+dnl Pick up mingw32 include path
+case "$opsys" in mingw*) mingw_include=`eval "gcc -print-file-name=libc.a"` ;
+ mingw_include=`eval "dirname $mingw_include"` ;
+ mingw_include="-I$mingw_include/../include/mingw32" ;
+ XE_APPEND($mingw_include, c_switch_system) ;;
+esac
+
dnl Non-ordinary link usually requires -lc
test "$ordinary_link" = "no" -a -z "$libs_standard" && libs_standard="-lc"
dnl Following values of CFLAGS are known to work well.
dnl Should we take debugging options into consideration?
if test "$GCC" = "yes"; then
- CFLAGS="-g -O3 -Wall -Wno-switch"
+ CFLAGS="-g -O3 -Wall -Wno-switch -Wpointer-arith -Winline -Wmissing-prototypes -Wshadow"
dnl I'm not convinced this is a good idea any more. -sb
dnl test "$opsys $machine" = "linux intel386" && \
dnl CFLAGS="$CFLAGS -fno-strength-reduce -malign-loops=2 -malign-jumps=2 -malign-functions=2"
- dnl cygwin can't cope with -O3
- test "$opsys $machine" = "cygwin32 intel386" && \
- CFLAGS="-g -O2 -Wall -Wno-switch"
elif test "$__SUNPRO_C" = "yes"; then
case "$opsys" in
sol2 ) CFLAGS="-v -xO4" ;;
fi
fi
+dnl Search for GCC specific build problems we know about
+if test "$GCC" = "yes"; then
+AC_MSG_CHECKING(for buggy gcc versions)
+GCC_VERSION=`$CC --version`
+case `uname -s`:`uname -m`:$GCC_VERSION in
+ dnl egcs 2.90.21 (egcs-1.00 release)
+ dnl egcs 2.90.29 (egcs-1.0.3 release)
+ *:sun4*:2.8.1|*:sun4*:egcs-2.90.*)
+ dnl Don't use -O2 with gcc 2.8.1 and egcs 1.0 under SPARC architectures
+ dnl without also using `-fno-schedule-insns'.
+ case "$CFLAGS" in
+ *-O2*|*-O3*)
+ case "$CFLAGS" in
+ *-fno-schedule-insns*) ;;
+ *)
+ AC_MSG_RESULT(Yes)
+ AC_MSG_WARN(Don't use -O2 with gcc 2.8.1 and egcs 1.0 under SPARC architectures)
+ AC_MSG_WARN(without also using -fno-schedule-insns.)
+ AC_MSG_ERROR(Aborting due to known problem)
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ dnl egcs-2.91.57 (egcs-1.1 release)
+ dnl egcs-2.91.66 (egcs-1.1.2 release)
+ Linux:alpha:egcs-2.91.*)
+ AC_MSG_RESULT(Yes)
+ AC_MSG_WARN(There have been reports of egcs-1.1 not compiling XEmacs correctly on)
+ AC_MSG_WARN(Alpha Linux. There have also been reports that egcs-1.0.3a is O.K.)
+ AC_MSG_ERROR(Aborting due to known problem)
+ ;;
+ *:i*86*:2.7.2*)
+ case "$GCC_VERSION" in
+ 2.7.2)
+ case "$CFLAGS" in
+ *-O2*|*-O3*)
+ case "$CFLAGS" in
+ *-fno-strength-reduce*) ;;
+ *)
+ AC_MSG_RESULT(Yes)
+ AC_MSG_WARN(Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using)
+ AC_MSG_WARN(-fno-strength-reduce.)
+ AC_MSG_ERROR(Aborting due to known problem)
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ esac
+ case "$CFLAGS" in
+ *-fno-caller-saves*) ;;
+ *)
+ AC_MSG_RESULT(Yes)
+ AC_MSG_WARN(Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using)
+ AC_MSG_WARN(-fno-caller-saves.)
+ AC_MSG_ERROR(Aborting due to known problem)
+ ;;
+ esac
+ ;;
+esac
+fi
+AC_MSG_RESULT(No)
+
dnl Inform compiler that certain flags are meant for the linker
dnl XE_PROTECT_LINKER_FLAGS(shell_var)
define([XE_PROTECT_LINKER_FLAGS], [
dnl Add s&m-determined objects (including unexec) to link line
test -n "$objects_machine" && XE_ADD_OBJS($objects_machine)
test -n "$objects_system" && XE_ADD_OBJS($objects_system)
-test -n "$unexec" && XE_ADD_OBJS($unexec)
+test -n "$unexec" && test ! "$pdump" = "yes" && XE_ADD_OBJS($unexec)
+test "$pdump" = "yes" && XE_ADD_OBJS(dumper.o)
dnl Dynodump (Solaris 2.x, x<6)
AC_MSG_CHECKING(for dynodump)
COLON_TO_SPACE(site_prefixes)
if test -n "$site_prefixes"; then
for dir in $site_prefixes; do
- inc_dir="${dir}/include"
lib_dir="${dir}/lib"
+ inc_dir="${dir}/include"
if test ! -d "$dir"; then
XE_DIE("Invalid site prefix \`$dir': no such directory")
- elif test ! -d "$inc_dir"; then
- XE_DIE("Invalid site prefix \`$dir': no such directory \`$inc_dir'")
elif test ! -d "$lib_dir"; then
XE_DIE("Invalid site prefix \`$dir': no such directory \`$lib_dir'")
else
- XE_APPEND("-I$inc_dir", c_switch_site)
+ if test -d "$inc_dir"; then
+ XE_APPEND("-I$inc_dir", c_switch_site)
+ fi
XE_APPEND("-L$lib_dir", ld_switch_site)
fi
done
dnl Extra system-specific library directories - please add to list
for dir in "/usr/ccs/lib"; do
- test -d "$dir" && XE_APPEND(-L${dir}, ld_switch_site)
+ test -d "$dir" && XE_APPEND(-L${dir}, ld_switch_system)
done
dnl --site-runtime-libraries (multiple dirs)
export LD_RUN_PATH
fi
+dnl Linux systems have dynamic runtime library directories listed in
+dnl /etc/ld.so.conf. Since those are used at run time, it seems pretty
+dnl safe to use them at link time, and less controversial than forcing
+dnl the run-time to use the link-time libraries. This also helps avoid
+dnl mismatches between the link-time and run-time libraries.
+
+dnl #### Unfortunately, there are horrible libc4 and libc5 libraries
+dnl listed in /etc/ld.so.conf on some systems, and including them on
+dnl the link path leads to linking in utterly broken libc's.
+dnl There are many clever ways of approaching this problem,
+dnl but finding out that actually works...
+
+dnl if test -z "$LD_RUN_PATH" -a -r "/etc/ld.so.conf"; then
+dnl for dir in `cat /etc/ld.so.conf`; do
+dnl test -d "$dir" && XE_APPEND(-L${dir}, ld_switch_system)
+dnl done
+dnl add_runtime_path=no
+dnl fi
+
dnl -------------------------------------
dnl Compute runtime library path
dnl -------------------------------------
-if test "$dynamic" = "no"; then add_runtime_path=no
+if test -n "$add_runtime_path"; then :;
+elif test "$dynamic" = "no"; then add_runtime_path=no
elif test -n "$LD_RUN_PATH"; then add_runtime_path=yes
else case "$opsys" in
sol2 | irix* | *bsd* | decosf* ) add_runtime_path=yes ;;
AC_MSG_CHECKING("for runtime libraries flag")
case "$opsys" in
sol2 ) dash_r="-R" ;;
- decosf* | linux* ) dash_r="-rpath " ;;
+ decosf* | linux* | irix*) dash_r="-rpath " ;;
*)
dash_r=""
for try_dash_r in "-R" "-R " "-rpath "; do
])dnl
XE_COMPUTE_RUNPATH()
+dnl JKJ REMOVEME
+dnl XE_SHLIB_STUFF
+
dnl -----------------------------------
dnl Do some misc autoconf-special tests
dnl -----------------------------------
if test "$system_malloc" = "yes" ; then
GNU_MALLOC=no
GNU_MALLOC_reason="
- (The GNU allocators don't work with this system configuration)."
+ - The GNU allocators don't work with this system configuration."
elif test "$with_system_malloc" = "yes" ; then
GNU_MALLOC=no
GNU_MALLOC_reason="
- (User chose not to use GNU allocators)."
+ - User chose not to use GNU allocators."
elif test "$with_debug_malloc" = "yes" ; then
GNU_MALLOC=no
GNU_MALLOC_reason="
- (User chose to use Debugging Malloc)."
+ - User chose to use Debugging Malloc."
fi
if test "$doug_lea_malloc" = "yes" ; then
if test "$GNU_MALLOC" = yes ; then
GNU_MALLOC_reason="
- (Using Doug Lea's new malloc from the GNU C Library.)"
+ - Using Doug Lea's new malloc from the GNU C Library."
fi
AC_DEFINE(DOUG_LEA_MALLOC)
if test "$after_morecore_hook_exists" = "no" ; then
GNU_MALLOC_reason="
- (Using Doug Lea's new malloc from the Linux C Library.)"
+ - Using Doug Lea's new malloc from the Linux C Library."
AC_DEFINE(_NO_MALLOC_WARNING_)
fi
use_minimal_tagbits=yes
AC_PROG_YACC
dnl checks for header files
-AC_CHECK_HEADERS(mach/mach.h sys/stropts.h sys/timeb.h sys/time.h unistd.h)
-AC_CHECK_HEADERS(utime.h locale.h libgen.h fcntl.h ulimit.h cygwin/version.h)
-AC_CHECK_HEADERS(kstat.h sys/pstat.h inttypes.h sys/un.h a.out.h)
+AC_CHECK_HEADERS(dnl
+ a.out.h dnl
+ cygwin/version.h dnl
+ fcntl.h dnl
+ inttypes.h dnl
+ libgen.h dnl
+ locale.h dnl
+ mach/mach.h dnl
+ sys/param.h dnl
+ sys/pstat.h dnl
+ sys/stropts.h dnl
+ sys/time.h dnl
+ sys/timeb.h dnl
+ sys/un.h dnl
+ kstat.h dnl
+ ulimit.h dnl
+ unistd.h dnl
+ utime.h dnl
+)
AC_HEADER_SYS_WAIT
AC_HEADER_STDC
AC_HEADER_TIME
AC_TYPE_UID_T
AC_TYPE_MODE_T
AC_TYPE_OFF_T
+AC_CHECK_TYPE(ssize_t, int)
AC_MSG_CHECKING(for struct timeval)
AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
AC_SYS_LONG_FILE_NAMES
dnl -lm is required by LISP_FLOAT_TYPE, among other things
-AC_CHECK_LIB(m, sin)
+AC_CHECK_FUNC(sin, ,AC_CHECK_LIB(m, sin))
dnl Floating operation support is now unconditional
AC_DEFINE(LISP_FLOAT_TYPE)
dnl Determine type of mail locking from configure args and s&m headers
AC_CHECKING(type of mail spool file locking)
+AC_CHECK_FUNCS(lockf flock)
+dnl The mail_use_xxx variables are set according to the s&m headers.
test -z "$mail_locking" -a "$mail_use_flock" = "yes" && mail_locking=flock
test -z "$mail_locking" -a "$mail_use_lockf" = "yes" && mail_locking=lockf
-if test "$mail_locking" = "lockf"; then AC_DEFINE(REAL_MAIL_USE_LOCKF)
-elif test "$mail_locking" = "flock"; then AC_DEFINE(REAL_MAIL_USE_FLOCK)
-else mail_locking="dot-locking"
+test -z "$mail_locking" -a "$mail_use_locking" = "yes" && mail_locking=locking
+if test "$mail_locking" = "lockf"; then AC_DEFINE(MAIL_LOCK_LOCKF)
+elif test "$mail_locking" = "flock"; then AC_DEFINE(MAIL_LOCK_FLOCK)
+elif test "$mail_locking" = "locking"; then AC_DEFINE(MAIL_LOCK_LOCKING)
+else mail_locking="dot-locking"; AC_DEFINE(MAIL_LOCK_DOT)
fi
-
-dnl Used by getloadavg() - does not require root priveleges
-AC_CHECK_LIB(kstat, kstat_open)
-
-dnl Another way to get the load average
-AC_CHECK_LIB(kvm, kvm_read)
+test "$mail_locking" = "lockf" -a "$ac_cv_func_lockf" != "yes" && \
+ XE_DIE("lockf mail locking requested but not available.")
+test "$mail_locking" = "flock" -a "$ac_cv_func_flock" != "yes" && \
+ XE_DIE("flock mail locking requested but not available.")
+test "$mail_locking" = "locking" -a "$ac_cv_func_locking" != "yes" && \
+ XE_DIE("locking mail locking requested but not available.")
case "$opsys" in decosf*)
AC_CHECK_LIB(pthreads, cma_open)
fi
dnl Link with "-z ignore" on Solaris if supported
-if test "$opsys" = "sol2" && test "$OS_RELEASE" -ge 56; then
- AC_MSG_CHECKING(for \"-z ignore\" linker flag)
- case "`ld -h 2>&1`" in
- *-z\ ignore\|record* ) AC_MSG_RESULT(yes)
- XE_PREPEND(-z ignore, ld_switch_site) ;;
- *) AC_MSG_RESULT(no) ;;
- esac
+if test "$opsys" = "sol2"; then
+ if test "$os_release" -ge 56; then
+ AC_MSG_CHECKING(for \"-z ignore\" linker flag)
+ case "`ld -h 2>&1`" in
+ *-z\ ignore\|record* ) AC_MSG_RESULT(yes)
+ XE_PREPEND(-z ignore, ld_switch_site) ;;
+ *) AC_MSG_RESULT(no) ;;
+ esac
+ fi
fi
dnl ----------------------
AC_MSG_RESULT(R${x11_release})
AC_DEFINE_UNQUOTED(THIS_IS_X11R${x11_release})
+ AC_CHECK_FUNCS(XConvertCase)
+
AC_CHECK_HEADERS(X11/Xlocale.h)
dnl remove this - we should avoid checking for specific OS
if test "$with_msw" = "yes"; then
AC_DEFINE(HAVE_MS_WINDOWS)
install_pp="$blddir/lib-src/installexe.sh"
- XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomctl32, libs_system)
+ XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomctl32 -lwinspool, libs_system)
test "$with_dragndrop" != no && XE_APPEND(msw, dragndrop_proto)
if test "$window_system" != x11; then
window_system=msw
&& XE_ADD_OBJS(toolbar-msw.o)
test "$with_dialogs" != "no" && with_dialogs=msw \
&& XE_ADD_OBJS(dialog-msw.o)
+ test "$with_widgets" != "no" && with_widgets=msw
else
test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar-msw.o)
test "$with_menubars" != "no" && XE_ADD_OBJS(menubar-msw.o)
AC_TRY_RUN([#include <fcntl.h>
int main() { return (open("/dev/windows", O_RDONLY, 0) > 0)? 0 : 1; }],
[AC_DEFINE(HAVE_MSG_SELECT)])
- const_is_losing=no
with_file_coding=yes
- use_minimal_tagbits=yes
- use_indexed_lrecord_implementation=yes
- XE_ADD_OBJS(console-msw.o device-msw.o event-msw.o frame-msw.o objects-msw.o select-msw.o redisplay-msw.o glyphs-msw.o)
+ XE_ADD_OBJS(console-msw.o device-msw.o event-msw.o frame-msw.o objects-msw.o select-msw.o redisplay-msw.o glyphs-msw.o gui-msw.o)
fi
fi
dnl Test for features that require a window system - ANY window system
if test "$window_system" = "none"; then
- for feature in menubars scrollbars toolbars dialogs dragndrop
+ for feature in menubars scrollbars toolbars dialogs dragndrop xface
do
if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
AC_MSG_WARN([--with-$feature ignored: Not valid without window system support])
dnl if test "$with_tty" = "no" ; then
dnl AC_MSG_ERROR([No window system support and no TTY support - Unable to proceed.])
dnl fi
- for feature in tooltalk cde offix session xim xmu \
- xface
+ for feature in tooltalk cde offix wmcommand xim xmu nas_sound
do
if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
AC_MSG_WARN([--with-$feature ignored: Not valid without X support])
test "$opsys" = "hpux9-shr" && opsysfile="s/hpux9shxr4.h"
esac
-dnl Enable or disable proper session-management
-AC_CHECKING(for session-management option);
-dnl if test "$with_session" = "yes"; then
-if test "$with_session" != "no"; then
- AC_DEFINE(HAVE_SESSION)
+dnl Enable or disable proper handling of WM_COMMAND
+AC_CHECKING(for WM_COMMAND option);
+dnl if test "$with_wmcommand" = "yes"; then
+if test "$with_wmcommand" != "no"; then
+ AC_DEFINE(HAVE_WMCOMMAND)
fi
dnl Autodetect Xauth
dnl autodetect the location of tt_c.h
dnl tt_c.h might be in Tt or desktop include directories
for dir in "" "Tt/" "desktop/" ; do
- AC_CHECK_HEADER(${dir}tt_c.h, tt_c_h_path="${dir}tt_c.h"; break)
+ AC_CHECK_HEADER(${dir}tt_c.h, tt_c_h_file="${dir}tt_c.h"; break)
done
- if test -z "$tt_c_h_path"; then
+ if test -z "$tt_c_h_file"; then
if test "$with_tooltalk" = "yes"; then
USAGE_ERROR("Unable to find required tooltalk header files.")
fi
test -z "$with_tooltalk" && with_tooltalk=yes
if test "$with_tooltalk" = "yes"; then
AC_DEFINE(TOOLTALK)
- AC_DEFINE_UNQUOTED(TT_C_H_PATH, "$tt_c_h_path")
+ AC_DEFINE_UNQUOTED(TT_C_H_FILE, "$tt_c_h_file")
XE_PREPEND($tt_libs, libs_x)
XE_ADD_OBJS(tooltalk.o)
fi
test -z "$with_ldap" && { AC_CHECK_HEADER(ldap.h, ,with_ldap=no) }
test -z "$with_ldap" && { AC_CHECK_HEADER(lber.h, ,with_ldap=no) }
if test "$with_ldap" != "no"; then
- test -z "$with_umich_ldap" && { AC_CHECK_LIB(ldap, ldap_open, with_umich_ldap=yes, with_umich_ldap=no, -llber) }
- test "$with_umich_ldap" = "no" && { AC_CHECK_LIB(ldap10, ldap_set_option, with_ns_ldap=yes, with_ns_ldap=no) }
- test -z "$with_ldap" -a \( "$with_umich_ldap" = "yes" -o "$with_ns_ldap" = "yes" \) && with_ldap=yes
+ AC_CHECK_LIB(ldap, ldap_search, with_ldap_nolber=yes, with_ldap_nolber=no)
+ test "$with_ldap_nolber" = "no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_lber=yes, with_ldap_lber=no, -llber) }
+ test "$with_ldap_nolber" = "no" -a "$with_ldap_lber" = "no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_krb=yes, with_ldap_krb=no, -llber -lkrb) }
+ test "$with_ldap_nolber" = "no" -a "$with_ldap_lber" = "no" -a "$with_ldap_krb" = "no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_krbdes=yes, with_ldap_krbdes=no, -llber -lkrb -ldes) }
+ test -z "$with_ldap" -a \( "$with_ldap_lber" = "yes" -o "$with_ldap_nolber" = "yes" -o "$with_ldap_krb" = "yes" -o "$with_ldap_krbdes" = "yes" \) && with_ldap=yes
fi
if test "$with_ldap" = "yes"; then
AC_DEFINE(HAVE_LDAP)
XE_ADD_OBJS(eldap.o)
- if test "$with_umich_ldap" = "yes" ; then
- AC_DEFINE(HAVE_UMICH_LDAP)
- XE_PREPEND(-llber, LIBS)
+ if test "$with_ldap_nolber" = "yes" ; then
XE_PREPEND(-lldap, LIBS)
- elif test "$with_ldap" = "yes" -a "$with_ns_ldap" = "yes" ; then
- AC_DEFINE(HAVE_NS_LDAP)
- XE_PREPEND(-lldap10, LIBS)
- elif test "$with_ldap" = "yes" ; then
+ else
+ if test "$with_ldap_krb" = "yes" ; then
+ XE_PREPEND(-lkrb, LIBS)
+ fi
+ if test "$with_ldap_krbdes" = "yes" ; then
+ XE_PREPEND(-ldes, LIBS)
+ XE_PREPEND(-lkrb, LIBS)
+ fi
+ XE_PREPEND(-llber, LIBS)
XE_PREPEND(-lldap, LIBS)
fi
+ AC_CHECK_FUNCS(ldap_set_option ldap_get_lderrno ldap_result2error ldap_parse_result)
+fi
+
+dnl Autodetect PostgreSQL
+dnl The default installation location (non-Linux) is /usr/local/pgsql;
+dnl a different prefix can be selected at build/install time. If PostgreSQL
+dnl is installed into a different prefix, that prefix must be specified in
+dnl in the --site-prefixes flag.
+dnl The default RPM-based Linux installation location is /usr.
+AC_CHECKING(for PostgreSQL)
+postgres_h_path=""
+postgres_includes_found=no
+save_c_switch_site="$c_switch_site"
+
+dnl First, test standard location and site prefixes only:
+if test "$with_postgresql" != "no"; then
+ AC_CHECK_HEADER(libpq-fe.h,postgres_includes_found=yes)
+fi
+
+dnl Otherwise, test different known headers locations on linux:
+if test "$postgres_includes_found" = "no" -a "$with_postgresql" != "no" -a \
+ -d "/usr/local/pgsql/include"; then
+ c_switch_site="$c_switch_site -I/usr/local/pgsql/include"
+ AC_CHECK_HEADER(libpq-fe.h,postgres_includes_found=yes)
+ if test "$postgres_includes_found" != "yes"; then
+ postgres_h_path="/usr/local/pgsql/include"
+ fi
+ c_switch_site="$save_c_switch_site"
+fi
+if test "$postgres_includes_found" = "no" -a "$with_postgresql" != "no" -a \
+ -d "/usr/include/pgsql"; then
+ c_switch_site="$c_switch_site -I/usr/include/pgsql"
+ AC_CHECK_HEADER(libpq-fe.h,postgres_includes_found=yes)
+ if test "$postgres_includes_found" = "yes"; then
+ postgres_h_path="pgsql"
+ fi
+ c_switch_site="$save_c_switch_site"
+ fi
+if test "$postgres_includes_found" = "no" -a "$with_postgresql" != "no" -a \
+ -d "/usr/include/postgresql"; then
+ c_switch_site="$c_switch_site -I/usr/include/postgresql"
+ AC_CHECK_HEADER(libpq-fe.h,postgres_includes_found=yes)
+ if test "$postgres_includes_found" = "yes"; then
+ postgres_h_path="postgresql"
+fi
+ c_switch_site="$save_c_switch_site"
+fi
+
+dnl Finally, check if we can link with libpq:
+if test "$postgres_includes_found" = "yes"; then
+ AC_CHECK_LIB(pq,PQconnectdb,with_postgresql=yes,with_postgresql=no)
+fi
+if test "$with_postgresql" = "yes"; then
+ AC_CHECK_LIB(pq,PQconnectStart,with_postgresqlv7=yes,with_postgresqlv7=no)
+fi
+if test "$with_postgresql" = "yes"; then
+ if test -n "$postgres_h_path"; then
+ AC_DEFINE_UNQUOTED(POSTGRES_H_PATH, $postgres_h_path)
+ fi
+ AC_DEFINE(HAVE_POSTGRESQL)
+ if test "$with_postgresqlv7" = "yes"; then
+ AC_DEFINE(HAVE_POSTGRESQLV7)
+ fi
+ XE_PREPEND(-lpq, LIBS)
+ XE_ADD_OBJS(postgresql.o)
fi
dnl ----------------------
if test -z "$with_xpm"; then
AC_MSG_CHECKING(for Xpm - no older than 3.4f)
xe_check_libs=-lXpm
- AC_TRY_RUN([#include <X11/xpm.h>
+ AC_TRY_RUN([#define XPM_NUMBERS
+#include <X11/xpm.h>
int main(int c, char **v) {
return c == 1 ? 0 :
XpmIncludeVersion != XpmLibraryVersion() ? 1 :
fi
fi
+ dnl Autodetect XFACE
+ test -z "$with_xface" && { AC_CHECK_HEADER(compface.h, ,with_xface=no) }
+ test -z "$with_xface" && { AC_CHECK_LIB(compface, UnGenFace,[:] ,with_xface=no) }
+ test -z "$with_xface" && with_xface=yes
+ if test "$with_xface" = "yes"; then
+ AC_DEFINE(HAVE_XFACE)
+ XE_PREPEND(-lcompface, libs_x)
+ fi
+
dnl For a brief period we had the GIF code split out into a separate library,
dnl but patent problems, etc. sort of squashed that idea.
dnl We default to building with builtin GIF decoding
AC_CHECKING(for X11 graphics libraries)
- dnl Autodetect XFACE
- test -z "$with_xface" && { AC_CHECK_HEADER(compface.h, ,with_xface=no) }
- test -z "$with_xface" && { AC_CHECK_LIB(compface, UnGenFace,[:] ,with_xface=no) }
- test -z "$with_xface" && with_xface=yes
- if test "$with_xface" = "yes"; then
- AC_DEFINE(HAVE_XFACE)
- XE_PREPEND(-lcompface, libs_x)
+ AC_CHECKING(for the Athena widgets)
+
+ dnl What in heck did the user actually want?
+ case "$with_athena" in
+ dnl This is the default, old fashioned flat Athena.
+ "xaw" | "") athena_variant=Xaw athena_3d=no ;;
+ "3d") athena_variant=Xaw3d athena_3d=yes ;;
+ "next") athena_variant=neXtaw athena_3d=yes ;;
+ "95") athena_variant=Xaw95 athena_3d=yes ;;
+ "xpm") athena_variant=XawXpm athena_3d=yes ;;
+ *) XE_DIE("Unknown Athena widget set \`$with_athena'. This should not happen.") ;;
+ esac
+
+ dnl Search for the Athena library...
+ if test "$athena_3d" = "no"; then
+ AC_CHECK_LIB($athena_variant, XawScrollbarSetThumb,
+ [
+ dnl Must not be a 3d library...
+ AC_CHECK_LIB($athena_variant, threeDClassRec,
+ AC_MSG_WARN("Could not find a non-3d Athena widget library."),
+ athena_lib=$athena_variant)
+ ],
+ AC_MSG_WARN("Could not find an Athena widget library."))
+ else
+ dnl The real configuration, need 3d library
+ AC_CHECK_LIB($athena_variant, threeDClassRec, athena_lib=$athena_variant,
+ dnl OK, couldn't find it with a proper name, try the standard Athena lib
+ dnl If that is 3d, presume the user asked for what they have installed.
+ AC_CHECK_LIB(Xaw, threeDClassRec,
+ [
+ athena_lib=Xaw;
+ AC_MSG_WARN("Assuming that libXaw is actually $athena_variant.");
+ ],
+ AC_MSG_WARN("Could not find a 3d Athena widget library that looked like $athena_variant.")))
fi
- dnl Autodetect -lXaw
- AC_CHECK_LIB(Xaw, XawScrollbarSetThumb, have_xaw=yes, have_xaw=no)
- dnl if test "$have_xaw" = "yes"; then
- dnl AC_CHECK_HEADER(X11/Xaw/Reports.h, [
- dnl XE_APPEND(pkg-src/tree-x, MAKE_SUBDIR)
- dnl XE_APPEND(pkg-src/tree-x, INSTALL_ARCH_DEP_SUBDIR)])
- dnl fi
+ dnl Now we locate the Athena headers that we need.
+ if test "$athena_3d" = "no"; then
+ AC_CHECK_HEADER(X11/Xaw/ThreeD.h,
+ AC_MSG_WARN("Could not find a non-3d Athena header set."),
+ AC_CHECK_HEADER(X11/Xaw/XawInit.h,
+ athena_h_path=X11/Xaw,
+ AC_MSG_WARN("Could not find a non-3d Athena header set.")))
+ else
+ dnl The three-d Athena headers are so much more slippery.
+ dnl Curse this `Lets replace standard libraries' thing that they did. :/
+ AC_CHECK_HEADER(X11/$athena_variant/XawInit.h,
+ AC_CHECK_HEADER(X11/$athena_variant/ThreeD.h,
+ athena_h_path=X11/$athena_variant,))
+
+ dnl Is the variant specific header directory directly under include?
+ if test -z "$athena_h_path"; then
+ AC_CHECK_HEADER($athena_variant/XawInit.h,
+ AC_CHECK_HEADER($athena_variant/ThreeD.h,
+ athena_h_path=$athena_variant,))
+ fi
+
+ dnl If we couldn't find the specific variant, try the generic Athena 3d headers
+ if test -z "$athena_h_path" -a "$athena_variant" != "Xaw3d"; then
+ AC_CHECK_HEADER(X11/Xaw3d/XawInit.h,
+ AC_CHECK_HEADER(X11/Xaw3d/ThreeD.h,
+ [
+ AC_MSG_WARN("Assuming that X11/Xaw3d headers are suitable for $athena_variant.")
+ athena_h_path=X11/Xaw3d
+ ],))
+ fi
+
+ dnl Also generic 3d headers directly under include dir
+ if test -z "$athena_h_path" -a "$athena_variant" != "Xaw3d"; then
+ AC_CHECK_HEADER(Xaw3d/XawInit.h,
+ AC_CHECK_HEADER(Xaw3d/ThreeD.h,
+ [
+ AC_MSG_WARN("Assuming that Xaw3d headers are suitable for $athena_variant.")
+ athena_h_path=Xaw3d
+ ],))
+ fi
+
+ dnl If nothing yet found, see if Xaw is a 3d header set...
+ dnl We AC_MSG_WARN if we fail because I am all out of ideas...
+ if test -z "$athena_h_path"; then
+ AC_CHECK_HEADER(X11/Xaw/ThreeD.h,
+ [
+ AC_MSG_WARN("Assuming that X11/Xaw headers are suitable for $athena_variant.")
+ athena_h_path=X11/Xaw
+ ],
+ AC_MSG_WARN("Could not find a suitable 3d Athena header set."))
+ fi
+ fi
+
+ dnl Do we actually have a usable Athena widget set? Please?
+ if test -n "$athena_lib" -a -n "$athena_h_path"; then
+ have_xaw=yes
+ else
+ have_xaw=no
+ fi
dnl autodetect Motif - but only add to libs_x later (if necessary)
AC_CHECK_HEADER(Xm/Xm.h,
dnl Not all toolkits support all widgets
dnl if Motif is available we use it for the dialog boxes.
-case "$with_menubars" in "" | "yes" | "athena" | "athena3d" )
+case "$with_menubars" in "" | "yes" | "athena" )
with_menubars="lucid" ;;
esac
case "$with_dialogs" in "" | "yes" | "lucid" )
- if test "$have_motif" = "yes"; then with_dialogs="motif"
- elif test "$have_xaw" = "yes"; then with_dialogs="athena"
+ if test "$have_motif" = "yes"; then with_dialogs="motif"
+ elif test "$have_xaw" = "yes"; then with_dialogs="athena"
else with_dialogs=no
fi ;;
esac
case "$with_scrollbars" in "" | "yes" )
with_scrollbars="lucid" ;;
esac
+case "$with_widgets" in "" | "yes" | "lucid")
+ if test "$have_motif" = "yes"; then with_widgets="motif"
+ elif test "$have_xaw" = "yes"; then with_widgets="athena"
+ else with_widgets=no
+ fi ;;
+esac
-all_widgets="$with_menubars $with_scrollbars $with_dialogs $with_toolbars"
+all_widgets="$with_menubars $with_scrollbars $with_dialogs $with_toolbars $with_widgets"
-case "$all_widgets" in *athena* )
- AC_DEFINE(LWLIB_USES_ATHENA)
- AC_DEFINE(NEED_ATHENA)
- XE_APPEND(lwlib-Xaw.o, lwlib_objs)
- XE_PREPEND(-lXaw, libs_x) ;;
+case "$all_widgets" in
+ *athena* )
+ if test "$have_xaw" != "yes"; then
+ XE_DIE("Could not find a suitable Athena library to build with.")
+ fi
+
+ dnl Add the Lucid widget Athena code
+ XE_APPEND(lwlib-Xaw.o, lwlib_objs)
+
+ dnl Add the Athena widget library we located earlier
+ XE_PREPEND(-l$athena_lib, libs_x)
+
+ dnl Export the path for lwlib, used to build and include the headers
+ dnl from the right place later on.
+ AC_DEFINE_UNQUOTED(ATHENA_H_PATH, $athena_h_path)
+
+ AC_DEFINE(LWLIB_USES_ATHENA)
+ AC_DEFINE(NEED_ATHENA)
+
+ if test "$athena_3d" = "yes"; then
+ AC_DEFINE(HAVE_ATHENA_3D)
+ fi
+ ;;
esac
case "$all_widgets" in *motif* )
test "$with_menubars" = "lucid" && XE_APPEND(xlwmenu.o, lwlib_objs)
test "$with_menubars" = "motif" && XE_APPEND(xlwmenu.o, lwlib_objs)
test "$with_scrollbars" = "lucid" && XE_APPEND(xlwscrollbar.o, lwlib_objs)
+test "$with_widgets" != "no" && test "$with_widgets" != "msw" && \
+ XE_APPEND(xlwtabs.o xlwgcs.o, lwlib_objs)
+case "$with_widgets" in athena* )
+ XE_APPEND(xlwradio.o xlwcheckbox.o xlwgauge.o, lwlib_objs);;
+esac
case "$all_widgets" in *lucid* )
AC_DEFINE(NEED_LUCID)
XE_APPEND(lwlib-Xlw.o, lwlib_objs) ;;
AC_SUBST(lwlib_objs)
-case "$with_scrollbars" in athena* ) AC_DEFINE(LWLIB_SCROLLBARS_ATHENA);; esac
-case "$with_dialogs" in athena* ) AC_DEFINE(LWLIB_DIALOGS_ATHENA) ;; esac
-test "$with_scrollbars" = "athena3d" && AC_DEFINE(LWLIB_SCROLLBARS_ATHENA3D)
-test "$with_dialogs" = "athena3d" && AC_DEFINE(LWLIB_DIALOGS_ATHENA3D)
+test "$with_scrollbars" = "athena" && AC_DEFINE(LWLIB_SCROLLBARS_ATHENA)
+test "$with_dialogs" = "athena" && AC_DEFINE(LWLIB_DIALOGS_ATHENA)
+
+if test "$athena_3d" = "yes"; then
+ test "$with_scrollbars" = "athena" && AC_DEFINE(LWLIB_SCROLLBARS_ATHENA3D)
+ test "$with_dialogs" = "athena" && AC_DEFINE(LWLIB_DIALOGS_ATHENA3D)
+fi
+
+case "$with_widgets" in athena* ) AC_DEFINE(LWLIB_WIDGETS_ATHENA);; esac
+test "$with_widgets" != "no" && test "$with_widgets" != "msw" && \
+ AC_DEFINE(LWLIB_TABS_LUCID)
test "$with_menubars" != "no" && AC_DEFINE(HAVE_MENUBARS)
test "$with_scrollbars" != "no" && AC_DEFINE(HAVE_SCROLLBARS)
test "$with_dialogs" != "no" && AC_DEFINE(HAVE_DIALOGS)
test "$with_toolbars" != "no" && AC_DEFINE(HAVE_TOOLBARS)
+test "$with_widgets" != "no" && AC_DEFINE(HAVE_WIDGETS)
test "$with_menubars" = "lucid" && AC_DEFINE(LWLIB_MENUBARS_LUCID)
test "$with_scrollbars" = "lucid" && AC_DEFINE(LWLIB_SCROLLBARS_LUCID)
test "$with_menubars" = "motif" && AC_DEFINE(LWLIB_MENUBARS_MOTIF)
test "$with_scrollbars" = "motif" && AC_DEFINE(LWLIB_SCROLLBARS_MOTIF)
test "$with_dialogs" = "motif" && AC_DEFINE(LWLIB_DIALOGS_MOTIF)
+test "$with_widgets" = "motif" && AC_DEFINE(LWLIB_WIDGETS_MOTIF)
-test "$with_menubars" != "no" && XE_ADD_OBJS(menubar.o)
-test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar.o)
-test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog.o)
-test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar.o)
-test "$all_widgets" != "no no no no" && XE_ADD_OBJS(gui.o)
+test "$with_menubars" != "no" && XE_ADD_OBJS(menubar.o)
+test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar.o)
+test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog.o)
+test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar.o)
if test "$with_x11" = "yes"; then
- test "$with_menubars" != "no" && XE_ADD_OBJS(menubar-x.o)
- test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar-x.o)
- test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog-x.o)
- test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar-x.o)
- test "$all_widgets" != "no no no no" && XE_ADD_OBJS(gui-x.o)
-else
- if test \( "$with_sound" = "nas" \) -o \( "$with_sound" = "both" \); then
- echo "Attempt to Build NAS sound without X"
- echo "Please remove NAS configuration or build with X"
- exit 1
- fi
+ test "$with_menubars" != "no" && XE_ADD_OBJS(menubar-x.o)
+ test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar-x.o)
+ test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog-x.o)
+ test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar-x.o)
+ test "$all_widgets" != "no no no no no" && XE_ADD_OBJS(gui-x.o)
fi
-test "$use_minimal_tagbits" = "yes" && AC_DEFINE(USE_MINIMAL_TAGBITS)
-test "$use_indexed_lrecord_implementation" = "yes" && \
- AC_DEFINE(USE_INDEXED_LRECORD_IMPLEMENTATION)
-
dnl ----------------------
dnl Mule-dependent options
dnl ----------------------
AC_CHECKING(for Mule-related features)
AC_DEFINE(MULE)
AC_DEFINE(FILE_CODING)
- XE_ADD_OBJS(mule.o mule-ccl.o mule-charset.o mule-coding.o file-coding.o)
+ XE_ADD_OBJS(mule.o mule-ccl.o mule-charset.o file-coding.o)
dnl Use -lintl to get internationalized strerror for Mule
AC_CHECK_HEADERS(libintl.h)
dnl test -z "$with_xim" -a "$opsys" != "sol2" && with_xim=no
case "$with_xim" in "" | "yes" )
AC_CHECKING(for XIM)
+ AC_CHECK_LIB(X11, XOpenIM, with_xim=xlib, with_xim=no)
dnl XIM + Lesstif is not (yet?) usable
- if test "$have_lesstif" = "yes"; then with_xim=xlib
- else AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif, with_xim=xlib)
- fi
+ if test "$have_motif $have_lesstif" = "yes no"; then
+ AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif)
+ fi ;;
esac
if test "$with_xim" != "no"; then
AC_DEFINE(HAVE_XIM)
fi
fi
- dnl "with_xim" = "yes"
+ dnl "with_xfs" = "yes"
if test "$with_xfs" = "yes" ; then
AC_CHECKING(for XFontSet)
AC_CHECK_LIB(X11, XmbDrawString, [:], with_xfs=no)
XE_ADD_OBJS(input-method-xfs.o)
fi
fi
- fi dnl with_xim
+ fi dnl with_xfs
dnl Autodetect WNN
test "$with_wnn6" = "yes" && with_wnn=yes # wnn6 implies wnn support
XE_COMPUTE_RUNPATH()
fi
-AC_CHECK_FUNCS(cbrt closedir dup2 eaccess fmod fpathconf frexp ftime gethostname getpagesize gettimeofday getcwd getwd logb lrand48 matherr mkdir mktime perror poll random rename res_init rint rmdir select setitimer setpgid setlocale setsid sigblock sighold sigprocmask snprintf strcasecmp strerror tzset ulimit usleep utimes waitpid vsnprintf)
+AC_CHECK_FUNCS(cbrt closedir dup2 eaccess fmod fpathconf frexp ftime getaddrinfo gethostname getnameinfo getpagesize gettimeofday getcwd getpt getwd logb lrand48 matherr mkdir mktime perror poll random rename res_init rint rmdir select setitimer setpgid setlocale setsid sigblock sighold sigprocmask snprintf stpcpy strcasecmp strerror tzset ulimit usleep utimes waitpid vsnprintf fsync ftruncate umask)
-dnl realpath is buggy on linux, decosf and aix4
+dnl Use our own realpath always.
+XE_ADD_OBJS(realpath.o)
-dnl The realpath() in linux libc (4.6.27) sometimes fails with ELOOP.
-dnl The realpath in ELF linux libc's is O.K.
-dnl For example, call realpath on a file thirty-five or so directories deep
-dnl and you get ELOOP even if no symlinks at all are involved.
-dnl Reports as of 11/1997 indicate BSDi has problems too.
-dnl The realpath() in UnixWare2.1.3 could not get any pathname fragment in error condition.
-case "$opsys" in
- linuxaout* | bsdos3* | freebsd* | decosf4-0* | aix4* ) XE_ADD_OBJS(realpath.o) ;;
- * )
- case "$canonical" in
- *-*-sysv4.2uw2* ) XE_ADD_OBJS(realpath.o) ;;
- * ) AC_CHECK_FUNCS(realpath)
- test "$ac_cv_func_realpath" != "yes" && XE_ADD_OBJS(realpath.o) ;;
- esac ;;
-esac
+dnl Check whether the system provides getloadavg (Solaris 7 has it)
+AC_CHECK_FUNCS(getloadavg)
+
+if test "$ac_cv_func_getloadavg" != "yes"
+then
+ XE_ADD_OBJS(getloadavg.o)
+
+ dnl Used by getloadavg() - does not require root priveleges
+ AC_CHECK_LIB(kstat, kstat_open)
+
+ dnl Another way to get the load average
+ AC_CHECK_LIB(kvm, kvm_read)
+fi
dnl If netdb.h does not declare h_errno, we must declare it by hand.
AC_MSG_CHECKING(whether netdb declares h_errno)
],
[
struct timeval time;
- struct timezone dummy;
- gettimeofday (&time, &dummy);
+ gettimeofday (&time, 0);
],
[AC_MSG_RESULT(two)],
[AC_MSG_RESULT(one)
AC_C_INLINE
-if test "$ac_cv_c_inline" != "no"; then
- AC_DEFINE(HAVE_INLINE)
- test "$GCC" = "yes" && XE_ADD_OBJS(inline.o)
-fi
+test "$ac_cv_c_inline" != "no" -a "$GCC" = "yes" && XE_ADD_OBJS(inline.o)
dnl HP-UX has a working alloca in libPW.
dnl case "${GCC}${opsys}" in hpux* )
esac
AC_MSG_RESULT($have_mmap)
test "$have_mmap" = "yes" && AC_DEFINE(HAVE_MMAP)
-AC_FUNC_MMAP
dnl rel_alloc requires either GNU malloc or system malloc with mmap
dnl We only turn rel_alloc on by default if mmap is available.
-test "$GNU_MALLOC" != "yes" -a "$have_mmap" != "yes" && rel_alloc=no
-test "$rel_alloc" = "default" -a "$have_mmap" = "yes" && rel_alloc=yes
+test "$GNU_MALLOC" != "yes" -a "$have_mmap" != "yes" && rel_alloc=no
+if test "$rel_alloc $have_mmap" = "default yes"; then
+ if test "$doug_lea_malloc" = "yes"; then
+ dnl Check if malloc() calls mmap(), making rel_alloc pointless.
+ AC_MSG_CHECKING(for M_MMAP_THRESHOLD)
+ AC_TRY_COMPILE([#include <malloc.h>],[
+#ifndef M_MMAP_THRESHOLD
+#error No M_MMAP_THRESHOLD :-(
+!@+$%^&*_)(_ - unlikely to compile...
+#endif
+], [rel_alloc=no; AC_MSG_RESULT(yes);], [rel_alloc=yes; AC_MSG_RESULT(no);])
+ else
+ rel_alloc=yes
+ fi
+fi
test "$rel_alloc" = "yes" && AC_DEFINE(REL_ALLOC)
dnl Check for terminal I/O variants
dnl Autodetect native sound
AC_CHECKING("for sound support")
-case "$with_sound" in
- native | both ) with_native_sound=yes;;
- nas | no ) with_native_sound=no;;
-esac
test -z "$with_native_sound" -a -n "$native_sound_lib" && with_native_sound=yes
if test "$with_native_sound" != "no"; then
for dir in "machine" "sys" "linux"; do
AC_CHECK_HEADER(${dir}/soundcard.h,
sound_found=yes
+ need_miscplay=yes
XE_ADD_OBJS(linuxplay.o)
- [AC_DEFINE_UNQUOTED(SOUNDCARD_H_PATH, "${dir}/soundcard.h")]
+ [AC_DEFINE_UNQUOTED(SOUNDCARD_H_FILE, "${dir}/soundcard.h")]
break)
done
fi
test "$sound_found" = "yes" && with_native_sound=yes
fi
-if test -z "$with_sound"; then
- if test "$with_native_sound" = "yes" -o -n "$native_sound_lib"; then
- with_sound=native
- fi
-fi
-
if test "$with_native_sound" = "yes"; then
AC_DEFINE(HAVE_NATIVE_SOUND)
test -n "$native_sound_lib" && XE_PREPEND($native_sound_lib, LIBS)
fi
-case "$with_sound" in both | nas )
- AC_DEFINE(HAVE_NAS_SOUND)
- XE_ADD_OBJS(nas.o)
- XE_PREPEND(-laudio, libs_x)
- dnl If the nas library does not contain the error jump point,
- dnl then we force safer behavior.
- AC_EGREP_HEADER(AuXtErrorJump,audio/Xtutil.h,,[AC_DEFINE(NAS_NO_ERROR_JUMP)])
-esac
+dnl NAS Sound support
+if test "$with_nas_sound" != "no"; then
+ AC_CHECK_HEADER(audio/audiolib.h, [
+ AC_CHECK_LIB(audio, AuOpenServer, have_nas_sound=yes)])
+ if test "$have_nas_sound" = "yes"; then
+ with_nas_sound=yes
+ AC_DEFINE(HAVE_NAS_SOUND)
+ XE_ADD_OBJS(nas.o)
+ XE_PREPEND(-laudio, libs_x)
+ dnl If the nas library does not contain the error jump point,
+ dnl then we force safer behavior.
+ AC_EGREP_HEADER(AuXtErrorJump,audio/Xtutil.h,,[old_nas=yes; AC_DEFINE(NAS_NO_ERROR_JUMP)])
+ else
+ test "$with_nas_sound" = "yes" && \
+ XE_DIE("Required NAS sound support cannot be provided.")
+ with_nas_sound=no
+ fi
+fi
+
+dnl ESD Sound support
+if test "$with_esd_sound" != "no"; then
+ AC_CHECK_PROG(have_esd_config, esd-config, yes, no)
+ if test "$have_esd_config" = "yes"; then
+ save_c_switch_site="$c_switch_site" save_LIBS="$LIBS"
+ XE_APPEND(`esd-config --cflags`, c_switch_site)
+ XE_PREPEND(`esd-config --libs`, LIBS)
+ AC_CHECK_FUNC(esd_play_stream,
+ have_esd_sound=yes,
+ c_switch_site="$save_c_switch_site" LIBS="$save_LIBS")
+ fi
+
+ if test "$have_esd_sound" = "yes"; then
+ with_esd_sound=yes
+ need_miscplay=yes
+ XE_ADD_OBJS(esd.o)
+ AC_DEFINE(HAVE_ESD_SOUND)
+ else
+ test "$with_esd_sound" = "yes" && \
+ XE_DIE("Required ESD sound support cannot be provided.")
+ with_esd_sound=no
+ fi
+fi
+
+test "$need_miscplay" = "yes" && XE_ADD_OBJS(miscplay.o)
dnl ---------------------
dnl TTY-dependent options
fi
if test "$with_ncurses" = "yes"; then
AC_DEFINE(HAVE_NCURSES)
- AC_CHECK_HEADER(ncurses/curses.h, curses_h_path=ncurses/curses.h)
- AC_CHECK_HEADER(ncurses/term.h, term_h_path=ncurses/term.h)
+ AC_CHECK_HEADER(ncurses/curses.h, curses_h_file=ncurses/curses.h)
+ AC_CHECK_HEADER(ncurses/term.h, term_h_file=ncurses/term.h)
XE_ADD_OBJS(terminfo.o)
XE_PREPEND(-lncurses, LIBS)
dnl <ncurses/unctrl.h>)
save_c_switch_site="$c_switch_site"
c_switch_site="$c_switch_site -I/usr/include/ncurses"
- AC_CHECK_HEADER(ncurses/curses.h, curses_h_path=ncurses/curses.h)
+ AC_CHECK_HEADER(ncurses/curses.h, curses_h_file=ncurses/curses.h)
if test "$ac_cv_header_ncurses_curses_h" = "yes"
then AC_MSG_WARN("Your system has the bogus ncurses include bug.")
else c_switch_site="$save_c_switch_site"
fi
fi
fi
- AC_DEFINE_UNQUOTED(CURSES_H_PATH, "${curses_h_path-curses.h}")
- AC_DEFINE_UNQUOTED(TERM_H_PATH, "${term_h_path-term.h}")
+ AC_DEFINE_UNQUOTED(CURSES_H_FILE, "${curses_h_file-curses.h}")
+ AC_DEFINE_UNQUOTED(TERM_H_FILE, "${term_h_file-term.h}")
dnl Autodetect gpm
test -z "$with_gpm" && { AC_CHECK_HEADER(gpm.h, , with_gpm=no) }
test "$with_x11" = "yes" -o "$with_tty" = "yes" && XE_ADD_OBJS(event-unixoid.o)
dnl Database support
-dnl <mdiers@logware.de>
dnl We do not necessarily have to have libdb/lib(g)dbm for DB/(G)DBM support.
dnl On FreeBSD, both DB and DBM are part of libc.
-dnl Note that unless support for DB/(G)DBM is explicitly disabled, we always
-dnl want to check for libdb/lib(g)dbm. Also note that libc will not be
-dnl checked if we have the libraries.
-dnl If support for DB/(G)DBM is requested, but we neither have libdb/lib(g)dbm,
-dnl nor does libc implement it, we are a bit lost :)
-
-AC_CHECKING(for database support)
-
-if test "$with_database_gnudbm" != "no"; then
- AC_CHECK_HEADERS(ndbm.h, have_ndbm_h=yes)
- if test "$have_ndbm_h" = "yes"; then
- AC_CHECK_LIB(gdbm, dbm_open, with_database_gnudbm=yes have_libgdbm=yes)
- fi
- if test "$with_database_gnudbm" != "yes"; then
- AC_CHECK_FUNC(dbm_open, with_database_gnudbm=yes)
- fi
- if test "$with_database_gnudbm" = "yes"; then
- AC_DEFINE(HAVE_DBM)
- test "$have_libgdbm" = "yes" && XE_PREPEND(-lgdbm, LIBS)
- with_database_dbm=no
- else with_database_gnudbm=no
- fi
+dnl By default, we check for DBM support in libgdbm, then libc, then libdbm.
+
+test "$with_database_gdbm $with_database_dbm $with_database_berkdb" \
+ != "no no no" && AC_CHECKING(for database support)
+
+dnl Check for ndbm.h, required for either kind of DBM support.
+if test "$with_database_gdbm $with_database_dbm" != "no no"; then
+ AC_CHECK_HEADER(ndbm.h, [:], [
+ test "$with_database_gdbm" = "yes" -o \
+ "$with_database_dbm" = "yes" && \
+ XE_DIE("Required DBM support cannot be provided.")
+ with_database_gdbm=no with_database_dbm=no])
fi
+dnl Check for DBM support in libgdbm.
+if test "$with_database_gdbm" != "no"; then
+ AC_CHECK_LIB(gdbm, dbm_open, [
+ with_database_gdbm=yes with_database_dbm=no libdbm=-lgdbm], [
+ if test "$with_database_gdbm" = "yes"; then
+ XE_DIE("Required GNU DBM support cannot be provided.")
+ fi
+ with_database_gdbm=no])
+fi
+
+dnl Check for DBM support in libc and libdbm.
if test "$with_database_dbm" != "no"; then
- AC_CHECK_FUNC(dbm_open, with_database_dbm=yes need_libdbm=no)
- if test "$need_libdbm" != "no"; then
- AC_CHECK_LIB(dbm, dbm_open, with_database_dbm=yes need_libdbm=yes)
- fi
- if test "$with_database_dbm" = "yes"; then
- AC_DEFINE(HAVE_DBM)
- test "$need_libdbm" = "yes" && XE_PREPEND(-ldbm, LIBS)
- else with_database_dbm=no
- fi
+ AC_CHECK_FUNC(dbm_open, [with_database_dbm=yes libdbm=], [
+ AC_CHECK_LIB(dbm, dbm_open, [with_database_dbm=yes libdbm=-ldbm], [
+ test "$with_database_dbm" = "yes" && \
+ XE_DIE("Required DBM support cannot be provided.")
+ with_database_dbm=no])])
fi
+dnl Tell make about the DBM support we detected.
+test -n "$libdbm" && XE_PREPEND("$libdbm", LIBS)
+test "$with_database_gdbm" = "yes" -o \
+ "$with_database_dbm" = "yes" && \
+ AC_DEFINE(HAVE_DBM)
+
+dnl Check for Berkeley DB.
if test "$with_database_berkdb" != "no"; then
AC_MSG_CHECKING(for Berkeley db.h)
- for path in "db/db.h" "db.h"; do
- AC_TRY_COMPILE([#ifdef HAVE_INTTYPES_H
+ for header in "db/db.h" "db.h"; do
+ AC_TRY_COMPILE([
+#include <stdlib.h>
+#if !(defined __GLIBC__ && __GLIBC_MINOR__ >= 1)
+#ifdef HAVE_INTTYPES_H
#define __BIT_TYPES_DEFINED__
#include <inttypes.h>
typedef uint8_t u_int8_t;
typedef uint64_t u_int64_t;
#endif
#endif
-#include <$path>
-],[], db_h_path="$path"; break)
+#endif
+#include <$header>
+],[], db_h_file="$header"; break)
done
- if test -z "$db_h_path"
+ if test -z "$db_h_file"
then AC_MSG_RESULT(no); with_database_berkdb=no
- else AC_MSG_RESULT($db_h_path)
+ else AC_MSG_RESULT($db_h_file)
fi
if test "$with_database_berkdb" != "no"; then
AC_MSG_CHECKING(for Berkeley DB version)
AC_EGREP_CPP(yes,
-[#include <$db_h_path>
+[#include <$db_h_file>
#if DB_VERSION_MAJOR > 1
yes
#endif
fi
if test "$with_database_berkdb" = "yes"; then
- AC_DEFINE_UNQUOTED(DB_H_PATH, "$db_h_path")
+ AC_DEFINE_UNQUOTED(DB_H_FILE, "$db_h_file")
AC_DEFINE(HAVE_BERKELEY_DB)
test "$need_libdb" = "yes" && XE_PREPEND(-ldb, LIBS)
else with_database_berkdb=no
fi
fi
-if test "$with_database_gnudbm $with_database_dbm $with_database_berkdb" \
+if test "$with_database_gdbm $with_database_dbm $with_database_berkdb" \
!= "no no no"; then
AC_DEFINE(HAVE_DATABASE)
XE_ADD_OBJS(database.o)
XE_PREPEND(-Bstatic -lut -Bdynamic, LIBS)
fi
-dnl cygwin can't cope with dlfcn at the moment
-test -z "$with_shlib" && test "$opsys $machine" = "cygwin32 intel386" && with_shlib=no
-
dnl autodetect dll support
-AC_CHECK_HEADERS(dlfcn.h, have_dlfcn=yes)
-test -z "$with_shlib" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(dl, dlopen, [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=dl; with_shlib=yes]) }
-test -z "$with_shlib" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(c, _dlopen, [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=; with_shlib=yes]) }
-test -z "$with_shlib" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(c, dlopen, [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=; with_shlib=yes]) }
-test -z "$with_shlib" && { AC_CHECK_LIB(dld, shl_load, [ AC_DEFINE(HAVE_SHL_LOAD) DLL_LIB=dld; with_shlib=yes]) }
-test -z "$with_shlib" && { AC_CHECK_LIB(dld, dld_init, [ AC_DEFINE(HAVE_DLD_INIT) DLL_LIB=dld; with_shlib=yes]) }
-if test "$with_shlib" = "yes"; then
- AC_DEFINE(HAVE_SHLIB)
- XE_ADD_OBJS(sysdll.o)
- XE_ADD_OBJS(dll.o)
- test ! -z "$DLL_LIB" && XE_PREPEND(-l${DLL_LIB}, LIBS)
- XE_MAKE_SHAREDLIB
- AC_CHECK_FUNCS(dlerror)
- ld_dynamic_link_flags=
- dnl Fill this in with other values as this gets more testing
- case "$opsys" in
- hpux*) ld_dynamic_link_flags="-Wl,-E" ;;
- linux*) ld_dynamic_link_flags="-rdynamic" ;;
- *) ;;
- esac
+if test "$with_modules" != "no"; then
+ AC_CHECKING(for module support)
+
+ dnl Find headers and libraries
+ AC_CHECK_HEADER(dlfcn.h, [
+ AC_CHECK_LIB(dl, dlopen, [ have_dl=yes libdl=dl], [
+ AC_CHECK_LIB(c, dlopen, [ have_dl=yes ])])])
+ if test -n "$have_dl"; then
+ AC_DEFINE(HAVE_DLOPEN)
+ else
+ AC_CHECK_LIB(dld, shl_load, [
+ libdl=dld have_dl=yes;
+ AC_DEFINE(HAVE_SHL_LOAD)], [
+ AC_CHECK_LIB(dld, dld_init, [
+ libdl=dld have_dl=yes;
+ AC_DEFINE(HAVE_DLD_INIT)])])
+ fi
+
+ if test -n "$have_dl"; then
+ dnl XE_SHLIB_STUFF (in aclocal.m4) defines $can_build_shared
+ XE_SHLIB_STUFF
+ fi
+
+ if test "$can_build_shared" = "yes"; then
+ AC_DEFINE(HAVE_SHLIB)
+ XE_ADD_OBJS(sysdll.o emodules.o)
+ XE_APPEND(src, INSTALL_ARCH_DEP_SUBDIR)
+ test -n "$libdl" && XE_PREPEND(-l${libdl}, LIBS)
+ AC_CHECK_FUNCS(dlerror _dlerror)
+ with_modules=yes
+ else
+ if test "$with_modules" = "yes"; then
+ XE_DIE("Required module support cannot be provided.")
+ else
+ AC_MSG_WARN("Module support cannot be provided.")
+ fi
+ with_modules=no
+ fi
fi
dnl Unfortunately, just because we can link doesn't mean we can run.
echo "*** PANIC *** on your system. Don't do that."
exit 1])
-dnl Process support (hardcoded)
-dnl every system that supports this runs configure, the others don't
-
-dnl We're not ready for this yet.
-AC_DEFINE(HAVE_UNIX_PROCESSES)
-XE_ADD_OBJS(process-unix.o)
+dnl Process support
+if test "$win32_processes" = "yes"; then
+ XE_ADD_OBJS(process-nt.o)
+else
+ AC_DEFINE(HAVE_UNIX_PROCESSES)
+ XE_ADD_OBJS(process-unix.o)
+fi
dnl --------------------------------
dnl Compute SUBST-itutable variables
done ) ;;
* ) test -d "$dir" || mkdir "$dir" ;;
esac
- XE_SPACE(SUBDIR_MAKEFILES, $SUBDIR_MAKEFILES $dir/Makefile)
+ XE_SPACE(SUBDIR_MAKEFILES, $SUBDIR_MAKEFILES $dir/Makefile $dir/GNUmakefile)
XE_SPACE(internal_makefile_list, $internal_makefile_list $dir/Makefile.in)
done
AC_SUBST(INSTALL_ARCH_DEP_SUBDIR)
echo ""
fi
-dnl Create some auxiliary files
-if test -f $srcdir/src/gdbinit -a ! -f src/gdbinit ; then
- echo "creating src/gdbinit"; echo ""
- echo "source $srcdir/src/gdbinit" > src/gdbinit
+dnl ----------------------------------------------
+dnl Create some auxiliary files for developers.
+dnl ----------------------------------------------
+
+dnl Create a .gdbinit useful for debugging XEmacs
+if test -f "$srcdir/src/.gdbinit" -a ! -f "src/.gdbinit"; then
+ test "$extra_verbose" = "yes" && echo "creating src/.gdbinit"
+ echo "source $srcdir/src/.gdbinit" > "src/.gdbinit"
+fi
+
+dnl Create a .dbxrc useful for debugging XEmacs
+if test -f "$srcdir/src/.dbxrc" -a ! -f "src/.dbxrc"; then
+ test "$extra_verbose" = "yes" && echo "creating src/.dbxrc"
+ echo ". $srcdir/src/.dbxrc" > "src/.dbxrc"
+fi
+
+dnl Create a useful TAGS file
+if test -f "$srcdir/TAGS" -a ! -f "TAGS"; then
+ test "$extra_verbose" = "yes" && echo "creating TAGS"
+ echo "\f
+$srcdir/TAGS,include" > "TAGS"
fi
dnl Create top level .sbinit for Sun compilers
if test "$__SUNPRO_C" = "yes"; then
- echo "creating .sbinit"; echo ""
+ test "$extra_verbose" = "yes" && echo "creating .sbinit"
( echo "# For use with Sun WorkShop's Source browser."
echo "# See sbquery(1) and sbinit(4) for more information"
for dir in $MAKE_SUBDIR; do echo "import $dir"; done
AC_SUBST(version)
AC_SUBST(configuration)
AC_SUBST(canonical)
+AC_SUBST(inststaticdir)
+AC_SUBST(instvardir)
AC_SUBST(srcdir)
AC_SUBST(bindir)
AC_SUBST(datadir)
AC_SUBST(mandir)
AC_SUBST(prefix)
+AC_SUBST(PREFIX_USER_DEFINED)
dnl Yo, Stephen Bourne! I want to marry you!
PREFIX=$prefix
while true; do
AC_SUBST(PREFIX)
AC_SUBST(exec_prefix)
+AC_SUBST(EXEC_PREFIX_USER_DEFINED)
EXEC_PREFIX=$exec_prefix
while true; do
case "$EXEC_PREFIX" in
done
AC_SUBST(LISPDIR)
-dnl AC_SUBST(sitelispdir)
-dnl AC_SUBST(SITELISPDIR_USER_DEFINED)
-dnl SITELISPDIR=$sitelispdir
-dnl while true; do
-dnl case "$SITELISPDIR" in
-dnl *\$* ) eval "SITELISPDIR=$SITELISPDIR" ;;
-dnl *) break ;;
-dnl esac
-dnl done
-dnl AC_SUBST(SITELISPDIR)
+AC_SUBST(moduledir)
+AC_SUBST(MODULEDIR_USER_DEFINED)
+MODULEDIR=$moduledir
+while true; do
+ case "$MODULEDIR" in
+ *\$* ) eval "MODULEDIR=$MODULEDIR" ;;
+ *) break ;;
+ esac
+done
+AC_SUBST(MODULEDIR)
+
+AC_SUBST(sitelispdir)
+AC_SUBST(SITELISPDIR_USER_DEFINED)
+SITELISPDIR=$sitelispdir
+while true; do
+ case "$SITELISPDIR" in
+ *\$* ) eval "SITELISPDIR=$SITELISPDIR" ;;
+ *) break ;;
+ esac
+done
+AC_SUBST(SITELISPDIR)
+
+AC_SUBST(sitemoduledir)
+AC_SUBST(SITEMODULEDIR_USER_DEFINED)
+SITEMODULEDIR=$sitemoduledir
+while true; do
+ case "$SITEMODULEDIR" in
+ *\$* ) eval "SITEMODULEDIR=$SITEMODULEDIR" ;;
+ *) break ;;
+ esac
+done
+AC_SUBST(SITEMODULEDIR)
AC_SUBST(etcdir)
AC_SUBST(ETCDIR_USER_DEFINED)
done
AC_SUBST(LOCKDIR)
+AC_SUBST(docdir)
+AC_SUBST(DOCDIR_USER_DEFINED)
+DOCDIR=$docdir
+while true; do
+ case "$DOCDIR" in
+ *\$* ) eval "DOCDIR=$DOCDIR" ;;
+ *) break ;;
+ esac
+done
+AC_SUBST(DOCDIR)
+
AC_SUBST(archlibdir)
AC_SUBST(ARCHLIBDIR_USER_DEFINED)
ARCHLIBDIR=$archlibdir
AC_SUBST(docdir)
AC_SUBST(bitmapdir)
AC_SUBST(extra_objs)
-AC_SUBST(ld_dynamic_link_flags)
dnl The following flags combine all the information from:
dnl - command line options (user always gets priority)
dnl - user environment variables
dnl - determined by configure
-dnl - the s&m header files (deprecated)
+dnl - the s&m header files (required for ellcc)
AC_SUBST(machfile)
AC_SUBST(opsysfile)
AC_SUBST(c_switch_general)
: ${XEMACS_CC:=$CC}
AC_SUBST(XEMACS_CC)
-
dnl The default is yes
+if test "$with_prefix" = "yes"; then
+ AC_DEFINE(PREFIX_USER_DEFINED)
+fi
+
+dnl The default is no
if test "$with_site_lisp" = "no"; then
AC_DEFINE(INHIBIT_SITE_LISP)
fi
+dnl The default is yes
+if test "$with_site_modules" = "no"; then
+ AC_DEFINE(INHIBIT_SITE_MODULES)
+fi
XE_SPACE(ac_configure_args, $ac_configure_args)
-AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "$canonical")
+AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "$configuration")
AC_DEFINE_UNQUOTED(EMACS_CONFIG_OPTIONS, "$ac_configure_args")
AC_DEFINE_UNQUOTED(config_machfile, "$machfile")
AC_DEFINE_UNQUOTED(config_opsysfile, "$opsysfile")
dnl so that the user gets immediate feedback on the results of the
dnl autodetection.
-test -n "$puresize" && AC_DEFINE_UNQUOTED(RAW_PURESIZE, $puresize)
-
if test "$GNU_MALLOC" = "yes"; then AC_DEFINE(GNU_MALLOC)
elif test "$with_system_malloc" = "yes"; then AC_DEFINE(USE_SYSTEM_MALLOC)
elif test "$with_debug_malloc" = "yes"; then AC_DEFINE(USE_DEBUG_MALLOC)
test "$with_i18n3" = "yes" && AC_DEFINE(I18N3)
test "$GCC" = "yes" && AC_DEFINE(USE_GCC)
test "$external_widget" = "yes" && AC_DEFINE(EXTERNAL_WIDGET)
-test "$no_doc_file" = "yes" && AC_DEFINE(NO_DOC_FILE)
-dnl test "$const_is_losing" = "yes" && AC_DEFINE(CONST_IS_LOSING)
+test "$quick_build" = "yes" && AC_DEFINE(QUICK_BUILD)
test "$with_purify" = "yes" && AC_DEFINE(PURIFY)
test "$with_quantify" = "yes" && AC_DEFINE(QUANTIFY)
test "$with_pop" = "yes" && AC_DEFINE(MAIL_USE_POP)
test "$with_kerberos" = "yes" && AC_DEFINE(KERBEROS)
test "$with_hesiod" = "yes" && AC_DEFINE(HESIOD)
test "$use_union_type" = "yes" && AC_DEFINE(USE_UNION_TYPE)
+test "$pdump" = "yes" && AC_DEFINE(PDUMP)
dnl -------------------------------
dnl Report on what we decided to do
echo "$0 $quoted_arguments"
) > Installation
-xemacs_betaname=""
-test ! -z "${emacs_beta_version}" && xemacs_betaname="-b${emacs_beta_version}"
+if test ! -z ${emacs_beta_version} ; then
+ if test -z "${emacs_is_beta}" ; then
+ xemacs_betaname=".${emacs_beta_version}"
+ else
+ xemacs_betaname="-b${emacs_beta_version}"
+ fi
+else
+ xemacs_betaname=""
+fi
dnl Start stdout redirection to '| tee -a Installation'
(
echo "
XEmacs ${emacs_major_version}.${emacs_minor_version}${xemacs_betaname} \"$xemacs_codename\" configured for \`$canonical'.
-
- Where should the build process find the source code? $srcdir
- What installation prefix should install use? $prefix
- What operating system and machine description files should XEmacs use?
- \`$opsysfile' and \`$machfile'
- What compiler should XEmacs be built with? $CC $CFLAGS
- Should XEmacs use the GNU version of malloc? ${GNU_MALLOC}${GNU_MALLOC_reason}
- Should XEmacs use the relocating allocator for buffers? $rel_alloc
- What window system should XEmacs use? ${window_system}"
-if test "$with_x11" = "yes"; then
- echo " Where do we find X Windows header files? $x_includes"
- echo " Where do we find X Windows libraries? $x_libraries"
-fi
+"
+echo "
+Compilation / Installation:"
+echo " Source code location: $srcdir"
+echo " Installation prefix: $prefix"
if test -n "$site_includes"; then
- echo " Additional header files: $site_includes"
+ echo " Additional header files: $site_includes"
fi
if test -n "$site_libraries"; then
- echo " Additional libraries: $site_libraries"
+ echo " Additional libraries: $site_libraries"
fi
if test -n "$site_prefixes"; then
- echo " Additional prefixes: $site_prefixes"
+ echo " Additional prefixes: $site_prefixes"
fi
if test -n "$runpath"; then
- echo " Runtime library search path: $runpath"
+ echo " Runtime library search path: $runpath"
fi
-test "$with_dnet" = yes && echo " Compiling in support for DNET."
-test "$with_socks" = yes && echo " Compiling in support for SOCKS."
-test "$with_xauth" = yes && echo " Compiling in support for XAUTH."
-if test "$with_xmu" != yes -a "$with_x11" = yes; then
- echo " No Xmu; substituting equivalent routines."
+echo " Operating system description file: \`$opsysfile'"
+echo " Machine description file: \`$machfile'"
+echo " Compiler: $CC $CFLAGS"
+echo " Relocating allocator for buffers: $rel_alloc"
+echo " GNU version of malloc: ${GNU_MALLOC}${GNU_MALLOC_reason}"
+
+echo "
+Window System:"
+if test "$with_msw" = "yes"; then
+ echo " Compiling in support for the Microsoft window system."
+fi
+if test "$with_x11" = "yes"; then
+ echo " Compiling in support for the X window system:"
+ echo " - X Windows headers location: $x_includes"
+ echo " - X Windows libraries location: $x_libraries"
+ if test "$with_xauth" != yes; then
+ echo " - Xau (X authority) not available."
+ fi
+ if test "$with_xmu" != yes; then
+ echo " - Xmu library not available; substituting equivalent routines."
+ fi
+ if test "$with_wmcommand" != no; then
+ echo " - Handling WM_COMMAND properly."
+ fi
+fi
+if test "$have_xaw" = "yes"; then
+ echo " Compiling in support for the Athena widget set:"
+ echo " - Athena headers location: $athena_h_path"
+ echo " - Athena library to link: $athena_lib"
+fi
+case "$with_menubars" in
+ lucid ) echo " Using Lucid menubars." ;;
+ motif ) echo " Using Motif menubars."
+ echo " *WARNING* The Motif menubar implementation is currently buggy."
+ echo " We recommend using the Lucid menubar instead."
+ echo " Re-run configure with --with-menubars='lucid'." ;;
+ msw ) echo " Using MS-Windows menubars." ;;
+esac
+case "$with_scrollbars" in
+ lucid ) echo " Using Lucid scrollbars." ;;
+ motif ) echo " Using Motif scrollbars." ;;
+ athena ) echo " Using Athena scrollbars." ;;
+ msw ) echo " Using MS-Windows scrollbars." ;;
+esac
+case "$with_dialogs" in
+ motif ) echo " Using Motif dialog boxes."
+ if test "$unexec" = "unexaix.o"; then if test "`uname -v`" = 4 -a "`uname -r`" -ge 3; then
+ echo " *WARNING* The Motif dialog boxes cause problems on AIX 4.3 and higher."
+ echo " We recommend using the Athena dialog boxes instead."
+ echo " Install libXaw and re-run configure with --with-dialogs='athena'."
+ echo " Read the PROBLEMS file for more information."
+ fi; fi ;;
+ athena ) echo " Using Athena dialog boxes." ;;
+ msw ) echo " Using MS-Windows dialog boxes." ;;
+esac
+case "$with_widgets" in
+ motif ) echo " Using Motif native widgets." ;;
+ athena ) echo " Using Athena native widgets." ;;
+ msw ) echo " Using MS-Windows native widgets." ;;
+esac
+if test "$with_dragndrop" = yes; then
+ echo " Compiling in support for Drag'n'Drop (EXPERIMENTAL)."
+ echo " - Drag'n'Drop prototype: $dragndrop_proto."
fi
+echo "
+TTY:"
+test "$with_ncurses" = yes && echo " Compiling in support for ncurses."
+test "$with_gpm" = yes && echo " Compiling in support for GPM (General Purpose Mouse)."
+
+echo "
+Images:"
+test "$with_gif" = yes && echo " Compiling in support for GIF images (builtin)."
if test "$with_xpm" = yes; then
- echo " Compiling in support for XPM images."
+ echo " Compiling in support for XPM images."
elif test "$with_x11" = yes; then
- echo " --------------------------------------------------------------------"
- echo " WARNING: Compiling without XPM support."
+ echo " WARNING: -----------------------------------------------------------"
+ echo " WARNING: Compiling without XPM image support."
if test "$xpm_problem" != ""; then
echo " Reason: $xpm_problem"
fi
echo " WARNING: You should strongly consider installing XPM."
echo " WARNING: Otherwise toolbars and other graphics will look suboptimal."
echo " WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)"
- echo " --------------------------------------------------------------------"
+ echo " WARNING: -----------------------------------------------------------"
fi
if test "$with_png" = yes; then
- echo " Compiling in support for PNG image handling."
+ echo " Compiling in support for PNG images."
elif test "$window_system" != "none"; then
- echo " --------------------------------------------------------------------"
+ echo " WARNING: -----------------------------------------------------------"
echo " WARNING: Compiling without PNG image support."
if test "$png_problem" != ""; then
echo " Reason: $png_problem"
echo " WARNING: You should strongly consider installing the PNG libraries."
echo " WARNING: Otherwise certain images and glyphs may not display."
echo " WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)"
- echo " --------------------------------------------------------------------"
+ echo " WARNING: -----------------------------------------------------------"
fi
-test "$with_gif" = yes && echo " Compiling in support for (builtin) GIF image handling."
-test "$with_jpeg" = yes && echo " Compiling in support for JPEG image handling."
-test "$with_tiff" = yes && echo " Compiling in support for TIFF image handling."
+test "$with_jpeg" = yes && echo " Compiling in support for JPEG images."
+test "$with_tiff" = yes && echo " Compiling in support for TIFF images."
test "$with_xface" = yes && echo " Compiling in support for X-Face message headers."
-case "$with_sound" in
- nas ) echo " Compiling in network sound (NAS) support." ;;
- native ) echo " Compiling in native sound support." ;;
- both ) echo " Compiling in both network and native sound support." ;;
-esac
-test "$old_nas" = yes && echo " nas library lacks error trapping, will play synchronously."
-test "$with_database_berkdb" = yes && echo " Compiling in support for Berkeley DB."
+echo "
+Sound:"
+test "$with_native_sound" = yes && echo " Compiling in support for sound (native)."
+test "$with_nas_sound" = yes && echo " Compiling in support for NAS (network audio system)."
+test "$old_nas" = yes && echo " - NAS library lacks error trapping; will play synchronously."
+test "$with_esd_sound" = yes && echo " Compiling in support for ESD (Enlightened Sound Daemon)."
+
+echo "
+Databases:"
+test "$with_database_berkdb" = yes && echo " Compiling in support for Berkeley database."
test "$with_database_dbm" = yes && echo " Compiling in support for DBM."
-test "$with_database_gnudbm" = yes && echo " Compiling in support for GNU DBM."
-
-test "$with_umich_ldap" = yes && echo " Compiling in support for LDAP (UMich libs)."
-test "$with_ns_ldap" = yes && echo " Compiling in support for LDAP (Netscape SDK)."
-test "$with_ldap" = yes -a "$with_umich_ldap" = no -a "$with_ns_ldap" = no && echo " Compiling in support for LDAP (Generic)."
-
-test "$with_ncurses" = yes && echo " Compiling in support for ncurses."
-test "$with_gpm" = yes && echo " Compiling in support for GPM (General Purpose Mouse)."
-
-test "$with_mule" = yes && echo " Compiling in Mule (multi-lingual) support."
-test "$with_file_coding" = yes && echo " Compiling in File coding support."
-test "$with_xim" != no && echo " Compiling in XIM (X11R5+ I18N input method) support."
-test "$with_xim" = motif && echo " Using Motif to provide XIM support."
-test "$with_xim" = xlib && echo " Using raw Xlib to provide XIM support."
-test "$with_xfs" = yes && echo " Using XFontSet to provide bilingual menubar."
-test "$with_canna" = yes && echo " Compiling in support for Canna on Mule."
+test "$with_database_gdbm" = yes && echo " Compiling in support for GNU DBM."
+test "$with_ldap" = yes && echo " Compiling in support for LDAP."
+if test "$with_postgresql" = yes; then
+ echo " Compiling in support for PostgreSQL."
+ if test "$with_postgresqlv7" = yes; then
+ echo " - Using PostgreSQL V7 bindings."
+ fi
+ if test -n "$postgres_h_path"; then
+ echo " - PostgreSQL headers location: $postgres_h_path"
+ fi
+fi
+
+echo "
+Internationalization:"
+test "$with_mule" = yes && echo " Compiling in support for Mule (multi-lingual Emacs)."
+test "$with_file_coding" = yes && echo " Compiling in support for file coding."
+test "$with_xim" != no && echo " Compiling in support for XIM (X11R5+ I18N input method)."
+test "$with_xim" = motif && echo " - Using Motif to provide XIM support."
+test "$with_xim" = xlib && echo " - Using raw Xlib to provide XIM support."
+test "$with_xfs" = yes && echo " - Using XFontSet to provide bilingual menubar."
+test "$with_canna" = yes && echo " Compiling in support for Canna on Mule."
if test "$with_wnn" = yes; then
echo " Compiling in support for the WNN input method on Mule."
- test "$with_wnn6" = yes && echo " Using WNN version 6."
+ test "$with_wnn6" = yes && echo " - Using WNN version 6."
fi
-test "$with_i18n3" = yes && echo " Compiling in I18N support, level 3 (doesn't currently work)."
+test "$with_i18n3" = yes && echo " Compiling in support for I18N level 3 (doesn't currently work)."
-test "$with_cde" = yes && echo " Compiling in support for CDE."
+echo "
+Mail:"
+test "$with_pop" = yes && echo " Compiling in support for POP mail retrieval."
+test "$with_kerberos" = yes && echo " Compiling in support for Kerberos POP authentication."
+test "$with_hesiod" = yes && echo " Compiling in support for Hesiod POP server access."
+echo " Compiling in support for \"$mail_locking\" mail spool file locking method."
+
+echo "
+Other Features:"
test "$with_tooltalk" = yes && echo " Compiling in support for ToolTalk."
-test "$with_offix" = yes && echo " Compiling in support for OffiX."
-test "$with_dragndrop" = yes && echo " Compiling in EXPERIMENTAL support for Drag'n'Drop ($dragndrop_proto )."
test "$with_workshop" = yes && echo " Compiling in support for Sun WorkShop."
-test "$with_session" != no && echo " Compiling in support for proper session-management."
-case "$with_menubars" in
- lucid ) echo " Using Lucid menubars." ;;
- motif ) echo " Using Motif menubars."
- echo " *WARNING* The Motif menubar implementation is currently buggy."
- echo " We recommend using the Lucid menubar instead."
- echo " Re-run configure with --with-menubars='lucid'." ;;
-esac
-case "$with_scrollbars" in
- lucid ) echo " Using Lucid scrollbars." ;;
- motif ) echo " Using Motif scrollbars." ;;
- athena ) echo " Using Athena scrollbars." ;;
- athena3d ) echo " Using Athena-3d scrollbars." ;;
-esac
-case "$with_dialogs" in
- motif ) echo " Using Motif dialog boxes." ;;
- athena ) echo " Using Athena dialog boxes." ;;
- athena3d ) echo " Using Athena-3d dialog boxes." ;;
-esac
-test "$with_shlib" = "yes" && echo " Compiling in DLL support."
-test "$with_clash_detection" = yes && \
+test "$with_socks" = yes && echo " Compiling in support for SOCKS."
+test "$with_dnet" = yes && echo " Compiling in support for DNET."
+test "$with_modules" = "yes" && echo " Compiling in support for dynamic shared object modules."
+test "$with_clash_detection" != "no" && \
echo " Clash detection will use \"$lockdir\" for locking files."
-echo " movemail will use \"$mail_locking\" for locking mail spool files."
-test "$with_pop" = yes && echo " Using POP for mail access."
-test "$with_kerberos" = yes && echo " Using Kerberos for POP authentication."
-test "$with_hesiod" = yes && echo " Using Hesiod to get POP server host."
-test "$use_union_type" = yes && echo " Using the union type for Lisp_Objects."
-test "$use_minimal_tagbits" = yes && echo " Using Lisp_Objects with minimal tagbits."
-test "$use_indexed_lrecord_implementation" = yes && echo " Using indexed lrecord implementation."
-test "$debug" = yes && echo " Compiling in extra code for debugging."
-test "$memory_usage_stats" = yes && echo " Compiling in code for checking XEmacs memory usage."
-test "$usage_tracking" = yes && echo " Compiling with usage tracking active (Sun internal)."
-if test "$error_check_extents $error_check_typecheck $error_check_bufpos $error_check_gc $error_check_malloc" \
- != "no no no no no"; then
+test "$use_union_type" = yes && echo " Using the union type for Lisp_Objects."
+test "$pdump" = yes && echo " Using the new portable dumper."
+test "$debug" = yes && echo " Compiling in support for extra debugging code."
+test "$usage_tracking" = yes && echo " Compiling in support for active usage tracking (Sun internal)."
+if test "$error_check_extents $error_check_typecheck $error_check_bufpos $error_check_gc $error_check_malloc $error_check_glyphs" \
+ != "no no no no no no"; then
echo " WARNING: ---------------------------------------------------------"
echo " WARNING: Compiling in support for runtime error checking."
echo " WARNING: XEmacs will run noticeably more slowly as a result."
dnl echo "The above configure report is appended to \"Installation\" file."
echo ""
-dnl Generate Installation.el
-echo '(setq Installation-string "' > Installation.el
-sed 's/"/\\"/g' Installation >> Installation.el
-echo '")' >> Installation.el
-
dnl -----------------------------------
dnl Now generate config.h and Makefiles
dnl -----------------------------------
for file in $internal_makefile_list; do
test "$file" = src/Makefile.in && \
file="src/Makefile.in:src/Makefile.in.in:src/depend"
- ac_output_files="${ac_output_files+$ac_output_files }$file"
+ XE_APPEND($file, ac_output_files)
done
ac_output_files="$ac_output_files src/paths.h lib-src/config.values"
+test "$with_modules" = "yes" && XE_APPEND(lib-src/ellcc.h, ac_output_files)
AC_OUTPUT($ac_output_files,
[for dir in . $MAKE_SUBDIR; do