XEmacs 21.2.9
[chise/xemacs-chise.git.1] / configure.in
index 8c422dc..5243fb0 100644 (file)
@@ -7,6 +7,7 @@ define([AC_INIT_NOTICE],
 #### 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
@@ -348,13 +349,16 @@ infodir='${datadir}/${PROGNAME}-${version}/info'
 infopath=''
 install_pp=''
 lispdir='${datadir}/${PROGNAME}-${version}/lisp'
-dnl sitelispdir='${datadir}/xemacs/site-lisp'
+moduledir='${datadir}/${PROGNAME}-${version}/${configuration}/modules'
+sitelispdir='${datadir}/xemacs/site-lisp'
+sitemoduledir='${datadir}/xemacs/site-modules'
 pkgdir='${datadir}/${PROGNAME}-${version}/lisp'
 package_path=''
 etcdir='${datadir}/${PROGNAME}-${version}/etc'
 lockdir='${statedir}/${PROGNAME}/lock'
-archlibdir='${libdir}/${PROGNAME}-${version}/${configuration}'
+archlibdir='${datadir}/${PROGNAME}-${version}/${configuration}'
 with_site_lisp='no'
+with_site_modules='yes'
 with_menubars=''
 with_scrollbars=''
 with_dialogs=''
@@ -460,6 +464,7 @@ while test $# != 0; do
 
       dnl Process (many) boolean options
        with_site_lisp  | \
+    with_site_modules | \
        with_x          | \
        with_x11        | \
        with_msw        | \
@@ -706,7 +711,8 @@ while test $# != 0; do
            dnl default values are built.
           case "$opt" in
              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) ;;
@@ -714,6 +720,7 @@ dnl             sitelispdir ) AC_DEFINE(SITELISPDIR_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) ;;
              exec_prefix | libdir | archlibdir ) AC_DEFINE(ARCHLIBDIR_USER_DEFINED) ;;
@@ -1486,7 +1493,7 @@ fi
 
 if test -z "$dynamic"; then
   case "$opsys" in
-    hpux* | sunos4* | sco5 ) dynamic=no ;;
+    hpux* | sunos4* ) dynamic=no ;;
     *) dynamic=yes ;;
   esac
 fi
@@ -1745,9 +1752,9 @@ if test "$cflags_specified" = "no"; then
     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"
+    dnl cygwin b19 can't cope with -O3, but most people use 20.1 or egcs now.
+    dnl    test "$opsys $machine" = "cygwin32 intel386" && \
+    dnl      CFLAGS="-g -O2 -Wall -Wno-switch"
   elif test "$__SUNPRO_C" = "yes"; then
     case "$opsys" in
       sol2    ) CFLAGS="-v -xO4" ;;
@@ -2022,6 +2029,9 @@ fi
 ])dnl
 XE_COMPUTE_RUNPATH()
 
+dnl JKJ REMOVEME
+dnl XE_SHLIB_STUFF
+
 dnl -----------------------------------
 dnl Do some misc autoconf-special tests
 dnl -----------------------------------
@@ -2493,7 +2503,7 @@ test -z "$window_system" && window_system="none"
 
 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])
@@ -2525,8 +2535,7 @@ if test "$with_x11" != "yes"; then
   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 session xim xmu 
   do
     if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
        AC_MSG_WARN([--with-$feature ignored:  Not valid without X support])
@@ -2740,6 +2749,15 @@ if test "$window_system" != "none"; then
     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
@@ -2822,15 +2840,6 @@ if test "$with_x11" = "yes"; then
 
   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)
-  fi
-
   dnl Autodetect -lXaw
   AC_CHECK_LIB(Xaw, XawScrollbarSetThumb, have_xaw=yes, have_xaw=no)
   dnl if test "$have_xaw" = "yes"; then
@@ -3585,30 +3594,27 @@ if test "$usage_tracking" = "yes"; then
   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)
+AC_CHECK_HEADERS(dlfcn.h, [have_dlfcn=yes
+  AC_DEFINE(HAVE_DLFCN_H)])
 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
+  XE_SHLIB_STUFF
+  if test "$can_build_shared" = "yes"; then
+    AC_DEFINE(HAVE_SHLIB)
+    XE_ADD_OBJS(sysdll.o)
+    XE_ADD_OBJS(emodules.o)
+    XE_APPEND(src, INSTALL_ARCH_DEP_SUBDIR)
+    test ! -z "$DLL_LIB" && XE_PREPEND(-l${DLL_LIB}, LIBS)
+    AC_CHECK_FUNCS(dlerror _dlerror)
+  else
+    AC_MSG_WARN(disabling shared library support)
+    with_shlib=no
+  fi
 fi
 
 dnl Unfortunately, just because we can link doesn't mean we can run.
@@ -3796,16 +3802,38 @@ while true; do
 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)
@@ -3843,13 +3871,12 @@ AC_SUBST(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)
@@ -3878,10 +3905,14 @@ dnl Useful for building XEmacs with a C++ or 64-bit compiler.
 AC_SUBST(XEMACS_CC)
 
 
-dnl The default is yes
+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")
@@ -4114,6 +4145,9 @@ for file in $internal_makefile_list; do
   ac_output_files="${ac_output_files+$ac_output_files }$file"
 done
 ac_output_files="$ac_output_files src/paths.h lib-src/config.values"
+if test "$with_shlib" = "yes"; then
+  ac_output_files="$ac_output_files lib-src/ellcc.h"
+fi
 
 AC_OUTPUT($ac_output_files,
 [for dir in . $MAKE_SUBDIR; do