X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=configure.in;h=444d5392663bbda37b4191fdaaff19bc21933218;hb=cde762e8ef3de99f205189eb40df327d59ba05e5;hp=1cbb4d2f545f0384420345d413bc9d34407ac37a;hpb=e4df90ccc595f18d2a42b27309bdfcdb5115dc0a;p=chise%2Fxemacs-chise.git diff --git a/configure.in b/configure.in index 1cbb4d2..444d539 100644 --- a/configure.in +++ b/configure.in @@ -57,7 +57,7 @@ dnl - no cache file dnl - non-standard options dnl - suport for extra-verbosity dnl - ordinary libs are handled separately from X libs (might be a mistake) -dnl - various random kludges (e.g. -with-dnet=no +dnl - various random kludges (e.g. -with-dnet=no) dnl PRINT_VAR(var var ...) prints values of shell variables define([PRINT_VAR],[for var in patsubst([$1],[[ @@ -369,6 +369,7 @@ with_widgets='' with_dialogs='' with_file_coding='' cpp='' cppflags='' libs='' ldflags='' +extra_includes='' dynamic='' with_x11='' with_msw='' @@ -639,7 +640,7 @@ The default is to autodetect all sound support."]) done ;; - dnl Has the user specified a prefered Athena widget set? + dnl Has the user specified a preferred Athena widget set? dnl This bit expands any alias names out for us... "with_athena" ) case "$val" in @@ -789,15 +790,17 @@ The default is to autodetect all sound support."]) 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 ;; a | at | ath | athe | athen | athena ) val=athena ;; - n | no | non | none ) val=no ;; + n | no | non | none ) val=no ;; + y | ye | yes ) val=yes ;; + m | ms | msw ) val=msw ;; * ) USAGE_ERROR(["The \`--$optname' option must have one of these values: - \`lucid', \`motif', \`athena', or \`no'."]) ;; + \`lucid', \`motif', \`athena', \`yes', or \`no'."]) ;; esac eval "$opt=\"$val\"" ;; @@ -1109,7 +1112,7 @@ case "$canonical" in *-dec-osf1.2 | *-dec-osf1* ) opsys=decosf1-2 ;; *-dec-osf3.[[2-9]] ) opsys=decosf3-2 ;; *-dec-osf3* ) opsys=decosf3-1 ;; - *-dec-osf4* ) opsys=decosf4-0 ;; + *-dec-osf[[4-9]]* ) opsys=decosf4-0 ;; dnl DEC Ultrix *-*-ultrix[[0-3]].* | *-*-ultrix4.0* ) opsys=bsd4-2 ;; @@ -1552,13 +1555,28 @@ case "$canonical" in esac -if test -z "$machine" -o -z "$opsys"; then - (echo "$progname: XEmacs hasn't been ported to \`$canonical' systems." - echo "$progname: Check \`etc/MACHINES' for recognized configuration names." - ) >&2 - exit 1 +dnl Initialize machine and opsys from $canonical if not in our database above. +test -z "$machine" && machine=`echo $canonical | sed 's/-.*$//'` +test -z "$opsys" && opsys=`echo $canonical | sed 's/^[^-]*-[^-]*-//'` + +dnl Use configure-time autodetection if s&m not available +if test -r "${srcdir}/src/m/${machine}.h"; then + machfile="m/${machine}.h" + AC_DEFINE_UNQUOTED(config_machfile, "$machfile") +else + echo "XEmacs has no builtin knowledge of \`$machine' machines." + echo "Using configure-time autodetection only." +fi + +if test -r "${srcdir}/src/s/${opsys}.h"; then + opsysfile="s/${opsys}.h" + AC_DEFINE_UNQUOTED(config_opsysfile, "$opsysfile") +else + echo "XEmacs has no builtin knowledge of \`$opsys' operating systems." + echo "Using configure-time autodetection only." fi + if test -z "$dynamic"; then case "$opsys" in hpux* | sunos4* ) dynamic=no ;; @@ -1587,9 +1605,6 @@ case "$opsys" in aix*) NON_GNU_CC=xlc ;; esac stack_trace_eye_catcher=`echo ${PROGNAME}_${version}_${canonical} | sed 'y/.-/__/'` AC_DEFINE_UNQUOTED(STACK_TRACE_EYE_CATCHER, $stack_trace_eye_catcher) -machfile="m/${machine}.h" -opsysfile="s/${opsys}.h" - dnl -------------------------------------------------- dnl Determine the compiler, set up for feature testing dnl -------------------------------------------------- @@ -1655,37 +1670,7 @@ dnl -------------------------------------------------------------------- AC_AIX dnl Defines _ALL_SOURCE on AIX. -dnl Determine which SMART_INCLUDE macro will work for this system -cat > $srcdir/conffoo.h < -#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 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) @@ -1726,6 +1711,8 @@ AC_TRY_RUN([int main () { return 11; #elif defined __DECC return 12; +#elif defined __USLC__ && defined __SCO_VERSION__ +return 13; #else return 0; #endif @@ -1733,6 +1720,7 @@ return 0; [case "$conftest_rc" in 11) echo "You appear to be using the SunPro C compiler."; __SUNPRO_C=yes ;; 12) echo "You appear to be using the DEC C compiler." ; __DECC=yes ;; + 13) echo "You appear to be using the SCO C compiler." ; __USLC__=yes ;; esac]) @@ -1768,7 +1756,8 @@ configure___ [$2]=no [#]endif ])dnl CPP_boolean_to_sh -cat > $tempcname < $tempcname < confdefs.h +cat >> $tempcname < $tempcname < +socklen_t x; +],[],[AC_MSG_RESULT(yes)],[ +AC_TRY_COMPILE([#include +int accept (int, struct sockaddr *, size_t *); +],[],[ +AC_MSG_RESULT(size_t) +AC_DEFINE(socklen_t,size_t)], [ +AC_MSG_RESULT(int) +AC_DEFINE(socklen_t,int)])]) + AC_MSG_CHECKING(for struct timeval) AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME #include @@ -2443,9 +2471,18 @@ 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 test -z "$mail_locking" -a "$mail_use_locking" = "yes" && mail_locking=locking +if test -z "$mail_locking"; then + case "$opsys" in cygwin* | mingw*) + mail_locking=pop ;; + esac +fi + 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) +elif test "$mail_locking" = "pop"; then + with_pop=yes + mail_locking= else mail_locking="dot-locking"; AC_DEFINE(MAIL_LOCK_DOT) fi test "$mail_locking" = "lockf" -a "$ac_cv_func_lockf" != "yes" && \ @@ -2576,7 +2613,9 @@ if test "$with_x11" = "yes"; then done dnl Avoid version mismatch for shared library libXm.so on osf4 - if test "$GCC" = yes -a -d /usr/shlib; then XE_APPEND(-L/usr/shlib, X_LIBS); fi + case "$opsys" in + decosf*) if test "$GCC" = yes -a -d /usr/shlib; then XE_APPEND(-L/usr/shlib, X_LIBS); fi ;; + esac ld_switch_x_site="$X_LIBS" @@ -2623,10 +2662,19 @@ EOF cd .. rm -fr conftestdir for word in $xmkmf_defines; do - case "$word" in - -D*=* ) ;; - -D* ) word=`echo '' $word | sed -e 's:^ *-D::'` - AC_DEFINE_UNQUOTED($word) ;; + case "$word" in -D* ) + sym=`echo '' $word | sed -e 's:^ *-D::' -e 's:=.*::'` + case "$word" in + -D*=* ) val=`echo '' $word | sed -e 's:^.*=::'` ;; + * ) val=1 ;; + esac +dnl Avoid re-AC_DEFINE-ing xmkmf symbols we've already defined above. + if grep "^#define $sym " confdefs.h >/dev/null; then :; else + if test "$val" = "1" + then AC_DEFINE_UNQUOTED($sym) + else AC_DEFINE_UNQUOTED($sym,$val) + fi + fi ;; esac done fi @@ -2661,21 +2709,29 @@ EOF AC_MSG_RESULT(R${x11_release}) AC_DEFINE_UNQUOTED(THIS_IS_X11R${x11_release}) + if test "${x11_release}" = "4"; then + case "$with_widgets" in + "" | "no") with_widgets=no ;; + *) XE_DIE("Widget support requires X11R5 or greater") ;; + esac + fi + AC_CHECK_FUNCS(XConvertCase) AC_CHECK_HEADERS(X11/Xlocale.h) - dnl remove this - we should avoid checking for specific OS - AC_MSG_CHECKING(for XFree86) - if test -d "/usr/X386/include" -o \ - -f "/etc/XF86Config" -o \ - -f "/etc/X11/XF86Config" -o \ - -f "/usr/X11R6/lib/X11/XF86Config"; then - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_XFREE386) - else - AC_MSG_RESULT(no) - fi + dnl XFree86 has a non-standard prototype for this X11R6 function + AC_CHECK_FUNCS(XRegisterIMInstantiateCallback) + AC_MSG_CHECKING(for standard XRegisterIMInstantiateCallback prototype) + AC_TRY_COMPILE([ +#define NeedFunctionPrototypes 1 +#include +extern Bool XRegisterIMInstantiateCallback( + Display*, struct _XrmHashBucketRec*, char*, char*, XIMProc, XPointer*); +], [], + [AC_MSG_RESULT(yes)], + [AC_MSG_RESULT(no) + AC_DEFINE(XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE)]) dnl autodetect -lXmu test -z "$with_xmu" && { AC_CHECK_LIB(Xmu, XmuReadBitmapDataFromFile, @@ -2713,8 +2769,14 @@ if test "$with_msw" != "no"; then AC_CHECK_LIB(gdi32,main,with_msw=yes) if test "$with_msw" = "yes"; then AC_DEFINE(HAVE_MS_WINDOWS) + + dnl The net installer only works with MS-Windows currently + XE_APPEND(netinstall, MAKE_SUBDIR) + XE_APPEND(netinstall, SRC_SUBDIR_DEPS) + XE_APPEND(netinstall, INSTALL_ARCH_DEP_SUBDIR) + install_pp="$blddir/lib-src/installexe.sh" - XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomctl32 -lwinspool, libs_system) + XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lwinspool, libs_system) test "$with_dragndrop" != no && XE_APPEND(msw, dragndrop_proto) if test "$window_system" != x11; then window_system=msw @@ -2789,6 +2851,14 @@ if test "$with_x11" != "yes"; then done fi +dnl Balloon Help requires the Shape extension, not available everywhere, +dnl for example not on AIX 4.3. +if test "$with_x11" = "yes"; then + AC_CHECK_HEADER(X11/extensions/shape.h, [ + AC_DEFINE(HAVE_BALLOON_HELP) + XE_ADD_OBJS(balloon_help.o balloon-x.o)]) +fi + dnl FSF 19.29 has some bitmapdir stuff here. bitmapdir= @@ -2903,8 +2973,8 @@ fi dnl Autodetect Drag'n'Drop support dnl always included if CDE, Offix, or MSWindows are defined -AC_MSG_CHECKING(if drag and drop API is needed) if test "$with_dragndrop" != "no" ; then + AC_MSG_CHECKING(if drag and drop API is needed) if test -n "$dragndrop_proto" ; then with_dragndrop=yes AC_MSG_RESULT([yes (${dragndrop_proto} )]) @@ -2947,67 +3017,35 @@ if test "$with_ldap" = "yes"; then 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: +dnl On many Linux systems, PostgreSQL is packaged to be installed in /usr; +dnl in this case, configure will easily detect it there. +dnl +dnl If PostgreSQL is installed into a different prefix, +dnl (such as the default /usr/local/pgsql when building from source), +dnl that prefix must be specified using the --site-prefixes flag. if test "$with_postgresql" != "no"; then - AC_CHECK_HEADER(libpq-fe.h,postgres_includes_found=yes) -fi + AC_CHECKING(for PostgreSQL) -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 Look for these standard header file locations, known to be used on Linux + for header_dir in "" "pgsql/" "postgresql/"; do + AC_CHECK_HEADER(${header_dir}libpq-fe.h, + libpq_fe_h_file=${header_dir}libpq-fe.h; break) + done -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) + test -n "$libpq_fe_h_file" && { AC_CHECK_LIB(pq,PQconnectdb,have_libpq=yes) } + + if test -n "$libpq_fe_h_file" -a "$have_libpq" = "yes"; then + with_postgresql=yes + AC_DEFINE(HAVE_POSTGRESQL) + AC_CHECK_LIB(pq,PQconnectStart, [ + with_postgresqlv7=yes; + AC_DEFINE(HAVE_POSTGRESQLV7)]) + AC_DEFINE_UNQUOTED(LIBPQ_FE_H_FILE, "$libpq_fe_h_file") + XE_PREPEND(-lpq, LIBS) + XE_ADD_OBJS(postgresql.o) + elif test "$with_postgresql" = "yes"; then + XE_DIE("Required PostgreSQL support cannot be provided. Check --site-prefixes.") + fi fi dnl ---------------------- @@ -3308,12 +3346,24 @@ case "$all_widgets" in 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) + dnl Tell lwlib where to find the Athena header files. + dnl Many people have tried to create a `smart' way of doing this, + dnl but all have failed. Before changing the following ugly definitions, + dnl consult the veterans of many a battle. + AC_DEFINE_UNQUOTED(ATHENA_Scrollbar_h_,"$athena_h_path/Scrollbar.h") + AC_DEFINE_UNQUOTED(ATHENA_Dialog_h_,"$athena_h_path/Dialog.h") + AC_DEFINE_UNQUOTED(ATHENA_Form_h_,"$athena_h_path/Form.h") + AC_DEFINE_UNQUOTED(ATHENA_Command_h_,"$athena_h_path/Command.h") + AC_DEFINE_UNQUOTED(ATHENA_Label_h_,"$athena_h_path/Label.h") + AC_DEFINE_UNQUOTED(ATHENA_LabelP_h_,"$athena_h_path/LabelP.h") + AC_DEFINE_UNQUOTED(ATHENA_Toggle_h_,"$athena_h_path/Toggle.h") + AC_DEFINE_UNQUOTED(ATHENA_ToggleP_h_,"$athena_h_path/ToggleP.h") + AC_DEFINE_UNQUOTED(ATHENA_AsciiText_h_,"$athena_h_path/AsciiText.h") + AC_DEFINE_UNQUOTED(ATHENA_XawInit_h_,"$athena_h_path/XawInit.h") AC_DEFINE(LWLIB_USES_ATHENA) AC_DEFINE(NEED_ATHENA) + need_athena="yes" if test "$athena_3d" = "yes"; then AC_DEFINE(HAVE_ATHENA_3D) @@ -3457,7 +3507,7 @@ if test "$with_mule" = "yes" ; then if test "$with_xfs" = "yes" && test "$with_menubars" = "lucid"; then AC_DEFINE(USE_XFONTSET) if test "$with_xim" = "no" ; then - XE_ADD_OBJS(input-method-xfs.o) + XE_ADD_OBJS(input-method-xlib.o) fi fi fi dnl with_xfs @@ -3532,20 +3582,50 @@ if test "$need_motif" = "yes" ; then XE_COMPUTE_RUNPATH() fi -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) +AC_CHECK_FUNCS(cbrt closedir dup2 eaccess fmod fpathconf frexp ftime getaddrinfo gethostname getnameinfo 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 stpcpy strerror tzset ulimit usleep utimes waitpid vsnprintf fsync ftruncate umask) + +dnl Check for PTY support functions. +dnl getpt is the preferred pty allocation method on glibc systems. +dnl _getpty is the preferred pty allocation method on SGI systems. +dnl grantpt, unlockpt, ptsname are defined by Unix98. +AC_CHECK_FUNCS(getpt _getpty grantpt unlockpt ptsname killpg tcgetpgrp) + +dnl openpty is the preferred pty allocation method on BSD and Tru64 systems. +dnl openpty might be declared in pty.h or in libutil.h. +AC_CHECK_FUNC(openpty, have_openpty=yes, [ + AC_CHECK_LIB(util, openpty, have_openpty=yes need_libutil=yes)]) +if test "$have_openpty" = "yes"; then + AC_DEFINE(HAVE_OPENPTY) + AC_CHECK_HEADERS(pty.h libutil.h) + test "$need_libutil" = "yes" && XE_APPEND(-lutil, libs_system) +fi + +dnl Check for STREAM support functions. +dnl Confusingly, "str" means both "string" and "SysV Streams". +AC_CHECK_HEADERS(stropts.h) +if test "$ac_cv_header_stropts_h" = "yes"; then + AC_CHECK_FUNCS(isastream) + AC_CHECK_HEADERS(strtio.h) dnl TIOCSIGNAL +fi dnl Use our own realpath always. XE_ADD_OBJS(realpath.o) -dnl Check whether the system provides getloadavg (Solaris 7 has it) +dnl Check whether the system provides getloadavg(). AC_CHECK_FUNCS(getloadavg) -if test "$ac_cv_func_getloadavg" != "yes" -then +if test "$ac_cv_func_getloadavg" = "yes"; then + dnl Solaris 8 declares getloadavg() in . + dnl glibc 2.2 declares getloadavg() in ... + dnl ...if we #define _GNU_SOURCE, which we do. + AC_CHECK_HEADERS(sys/loadavg.h) +else + dnl We define our own getloadavg() using lower level functions. XE_ADD_OBJS(getloadavg.o) dnl Used by getloadavg() - does not require root priveleges AC_CHECK_LIB(kstat, kstat_open) + AC_CHECK_HEADERS(kstat.h) dnl Another way to get the load average AC_CHECK_LIB(kvm, kvm_read) @@ -3645,8 +3725,11 @@ dnl case "${GCC}${opsys}" in hpux* ) dnl AC_CHECK_FUNC(alloca, [:], [AC_CHECK_LIB(PW, alloca)]) dnl esac -AC_FUNC_ALLOCA -test -n "$ALLOCA" && XE_ADD_OBJS($ALLOCA) +dnl AC_FUNC_ALLOCA doesn't know about DEC C's #pragma intrinsic(alloca) +if test "$__DECC" != "yes"; then + AC_FUNC_ALLOCA + test -n "$ALLOCA" && XE_ADD_OBJS($ALLOCA) +fi dnl Check whether vfork exists and works correctly. (This does more dnl than just check for its existence.) If so, it defines HAVE_VFORK_H. @@ -3833,6 +3916,14 @@ if test "$with_native_sound" != "no"; then done fi + dnl Win32 Native uses native sound + if test -z "$sound_found"; then + if test "$with_msw" = "yes"; then + sound_found=yes + native_sound_lib= + fi + fi + test "$sound_found" = "yes" && with_native_sound=yes fi @@ -4045,7 +4136,14 @@ typedef uint64_t u_int64_t; #if DB_VERSION_MAJOR > 1 yes #endif -], [AC_MSG_RESULT(2); dbfunc=db_open], [AC_MSG_RESULT(1); dbfunc=dbopen]) +], [AC_EGREP_CPP(yes, +[#include <$db_h_file> +#if DB_VERSION_MAJOR > 2 +yes +#endif +], [AC_MSG_RESULT(3); dbfunc=db_create],[ + AC_MSG_RESULT(2); dbfunc=db_open])],[ + AC_MSG_RESULT(1); dbfunc=dbopen]) AC_CHECK_FUNC($dbfunc, with_database_berkdb=yes need_libdb=no, [ AC_CHECK_LIB(db, $dbfunc, with_database_berkdb=yes need_libdb=yes)]) fi @@ -4080,20 +4178,33 @@ dnl autodetect dll support 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) + dnl Check for MS-Windows + if test "$with_msw" = "yes"; then + have_dl=yes; 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 + dnl Find headers and libraries + AC_CHECK_HEADER(dlfcn.h, [ + AC_MSG_CHECKING([for dlopen in -lc]) + AC_TRY_LINK([#include ],dnl + [dlopen ("", 0);], [ have_dl=yes ], [ + AC_MSG_CHECKING([for dlopen in -ldl]) + ac_save_LIBS="$LIBS" + LIBS="-ldl $LIBS" + AC_TRY_LINK([#include ],dnl + [dlopen ("", 0);], [ have_dl=yes ], + [LIBS="$ac_save_LIBS"]) + ac_save_LIBS=])]) + 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 + fi dnl end !MS-Windows if test -n "$have_dl"; then dnl XE_SHLIB_STUFF (in aclocal.m4) defines $can_build_shared @@ -4256,6 +4367,7 @@ AC_SUBST(pkgdir) AC_SUBST(statedir) AC_SUBST(libdir) AC_SUBST(mandir) +AC_SUBST(extra_includes) AC_SUBST(prefix) AC_SUBST(PREFIX_USER_DEFINED) @@ -4443,8 +4555,6 @@ fi XE_SPACE(ac_configure_args, $ac_configure_args) 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 Following are deprecated @@ -4525,8 +4635,16 @@ fi if test -n "$runpath"; then echo " Runtime library search path: $runpath" fi -echo " Operating system description file: \`$opsysfile'" -echo " Machine description file: \`$machfile'" + +if test -n "$opsysfile" +then echo " Operating system description file: \`$opsysfile'" +else echo " Not using any operating system description file" +fi +if test -n "$machfile" +then echo " Machine description file: \`$machfile'" +else echo " Not using any machine description file" +fi + echo " Compiler: $CC $CFLAGS" echo " Relocating allocator for buffers: $rel_alloc" echo " GNU version of malloc: ${GNU_MALLOC}${GNU_MALLOC_reason}" @@ -4550,7 +4668,7 @@ if test "$with_x11" = "yes"; then echo " - Handling WM_COMMAND properly." fi fi -if test "$have_xaw" = "yes"; then +if test "$need_athena" = "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" @@ -4643,12 +4761,8 @@ 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 + echo " - Using PostgreSQL header file: $libpq_fe_h_file" + test "$with_postgresqlv7" = yes && echo " - Using PostgreSQL V7 bindings." fi echo " @@ -4673,7 +4787,7 @@ 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." +test -n "$mail_locking" && echo " Compiling in support for \"$mail_locking\" mail spool file locking method." echo " Other Features:" @@ -4757,9 +4871,9 @@ dnl Delete spurious blanks inserted by $CPP -e 's/^[ TAB][ TAB]*$//'\ -e 's/^ /TAB/' \ dnl Delete blank lines - | sed -n -e '/^..*$/p' \ + -e '/^[ ]*$/d' \ dnl Restore lines quoted above to original contents. - | sed '/^\"/ { + -e '/^\"/ { s/\\\([\"]\)/\1/g s/^[ TAB]*\"// s/\"[ TAB]*$//