1 dnl Define our own header notice with own copyright
2 define([AC_INIT_NOTICE],
3 [#### Configuration script for XEmacs. Largely divergent from FSF.
4 #### Guess values for system-dependent variables and create Makefiles.
5 #### Generated automatically using autoconf version] AC_ACVERSION [
6 #### Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
7 #### Copyright (C) 1993-1995 Board of Trustees, University of Illinois.
8 #### Copyright (C) 1996, 1997 Sun Microsystems, Inc.
9 #### Copyright (C) 1995, 1996 Ben Wing.
11 ### Don't edit this script!
12 ### This script was automatically generated by the `autoconf' program
13 ### from the file `./configure.in'.
14 ### To rebuild it, execute the command
16 ### in the this directory. You must have autoconf version 2.12 or later.
18 ### This file is part of XEmacs.
20 ### XEmacs is free software; you can redistribute it and/or modify it
21 ### under the terms of the GNU General Public License as published by
22 ### the Free Software Foundation; either version 2, or (at your
23 ### option) any later version.
25 ### XEmacs is distributed in the hope that it will be useful, but
26 ### WITHOUT ANY WARRANTY; without even the implied warranty of
27 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
28 ### General Public License for more details.
30 ### You should have received a copy of the GNU General Public License
31 ### along with XEmacs; see the file COPYING. If not, write to the Free
32 ### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
35 ### For usage, run `./configure --help'
36 ### For more detailed information on building and installing XEmacs,
37 ### read the file `INSTALL'.
39 ### If configure succeeds, it leaves its status in config.status.
40 ### A log of configuration tests can be found in config.log.
41 ### If configure fails after disturbing the status quo,
42 ### config.status is removed.
45 dnl Since XEmacs has configuration requirements that autoconf cannot
46 dnl meet, this file is an unholy marriage of custom-baked
47 dnl configuration code and autoconf macros.
49 dnl We use the m4 quoting characters [ ] (as established by the
50 dnl autoconf system), so quote them like this: [[foo]]
53 dnl Redefine some standard autoconf macros
54 dnl here is how XEmacs is different:
56 dnl - non-standard options
57 dnl - suport for extra-verbosity
58 dnl - ordinary libs are handled separately from X libs (might be a mistake)
59 dnl - various random kludges (e.g. -with-dnet=no
61 dnl PRINT_VAR(var var ...) prints values of shell variables
62 define([PRINT_VAR],[for var in patsubst([$1],[[
63 ]+],[ ]); do eval "echo \"$var = '\$$var'\""; done])
65 dnl Disable cache files:
66 dnl This is controversial, but I am convinced this is the right way to go,
67 dnl at least by default. Otherwise there are too many surprises.
68 define([AC_CACHE_LOAD], )dnl
69 define([AC_CACHE_SAVE], )dnl
70 define([AC_CACHE_VAL], [
74 dnl Redefine AC_TRY_RUN_NATIVE to not throw away stderr while running
75 dnl AC_TRY_RUN_NATIVE(PROGRAM, [ACTION-IF-TRUE [, ACTION-IF-FALSE]])
76 define([AC_TRY_RUN_NATIVE],
77 [cat > conftest.$ac_ext <<EOF
78 [#]line __oline__ "configure"
82 if AC_TRY_EVAL(ac_link) && test -s conftest && (./conftest; exit $?) 2>&AC_FD_CC
84 dnl Do not remove the temporary files here, so they can be examined.
85 ifelse([$2], , :, [$2])
88 echo "configure: failed program was:" >&AC_FD_CC
89 cat conftest.$ac_ext >&AC_FD_CC
90 ifelse([$3], , , [ rm -fr conftest*
94 rm -fr conftest*])dnl AC_TRY_RUN_NATIVE
97 dnl Avoid spurious cross-compiling warnings from AC_TRY_RUN
98 dnl XEmacs is unlikely to ever cross-compile
99 define([AC_TRY_RUN],[AC_TRY_RUN_NATIVE([$1], [$2], [$3])])dnl
101 dnl Redefine AC_DEFINE* to provide more output if extra_verbose
102 dnl Set VARIABLE to VALUE, verbatim, or 1.
103 dnl AC_DEFINE(VARIABLE [, VALUE])
105 [{ test "$extra_verbose" = "yes" && cat << \EOF
106 Defining $1[]ifelse($#, 2, [ = $2],)
108 cat >> confdefs.h <<\EOF
109 [#define] $1 ifelse($#, 2, [$2], 1)
114 define([AC_DEFINE_UNQUOTED],
115 [{ test "$extra_verbose" = "yes" && cat << EOF
116 Defining $1[]ifelse($#, 2, [ = $2],)
118 cat >> confdefs.h <<EOF
119 [#define] $1 ifelse($#, 2, [$2], 1)
122 ])dnl AC_DEFINE_UNQUOTED
124 dnl redefine AC_CHECK_LIB in accordance with our own value of ac_link
125 dnl Add in extra kludgy check to support with_dnet=no
126 dnl Add in extra LDFLAGS arg, which PRECEDE libs
127 dnl Support --with-dnet=no
129 dnl AC_CHECK_LIB(LIBRARY, FUNCTION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
130 dnl [, OTHER-LIBRARIES] [, LDFLAGS]]]])
131 define([AC_CHECK_LIB],
132 [ifelse([$1],dnet, [if test "$with_dnet" = "no" ; then
133 ac_cv_lib_dnet_dnet_ntoa=no
134 ifelse([$4], , , [$4]
138 AC_CHECK_LIB_ORIG_HACKED([$1],[$2],[$3],[$4],[$5], [$6])
139 [ifelse([$1],dnet,[fi
143 define([AC_CHECK_LIB_ORIG_HACKED],
144 [ifelse([$5],,AC_MSG_CHECKING([for $2 in -l$1]),
145 xe_msg_checking="for [$2] in -l[$1]"
146 test -n "[$5]" && xe_msg_checking="$xe_msg_checking using extra libs [$5]"
147 AC_MSG_CHECKING("$xe_msg_checking"))
148 dnl Use a cache variable name containing both the library and function name,
149 dnl because the test really is for library $1 defining function $2, not
150 dnl just for library $1. Separate tests with the same $1 and different $2s
151 dnl may have different results.
152 ac_lib_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'`
153 AC_CACHE_VAL(ac_cv_lib_$ac_lib_var,
154 [xe_check_libs="$6 -l$1 $5"
156 ifelse([$2], [main], , dnl Avoid conflicting decl of main.
157 [/* Override any gcc2 internal prototype to avoid an error. */
158 ]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
162 [/* We use char because int might match the return type of a gcc2
163 builtin and then its argument prototype would still apply. */
167 eval "ac_cv_lib_$ac_lib_var=yes",
168 eval "ac_cv_lib_$ac_lib_var=no")
171 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
175 ac_tr_lib=HAVE_LIB`echo $1 | sed -e 's/[^a-zA-Z0-9_]/_/g' \
176 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
178 AC_DEFINE_UNQUOTED($ac_tr_lib)
179 XE_PREPEND([-l$1], LIBS)
186 ])dnl AC_CHECK_LIB_ORIG_HACKED
191 [define([AC_LANG], [C])dnl
193 dnl CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
194 dnl ac_cpp='$CPP $CPPFLAGS'
195 dnl ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&AC_FD_CC'
196 dnl ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC'
197 xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS'
198 xe_ldflags='$LDFLAGS $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_x_site $ld_switch_run'
199 xe_libs='$ld_call_shared $xe_check_libs $X_EXTRA_LIBS $libs_x $X_PRE_LIBS $LIBS $libs_machine $libs_system $libs_standard'
200 ac_cpp='$CPP '"$xe_cppflags"
201 ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&AC_FD_CC'
202 ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&AC_FD_CC'
206 dnl The construct foo=`echo $w1 $w2 $w3` fails on some systems if $w1 = -e or -n
207 dnl So we use the following instead.
208 dnl XE_SPACE(var, words)
211 for W in $2; do if test -z "$T"; then T="$W"; else T="$T $W"; fi; done
215 dnl XE_ADD_OBJS(foo.o ...)
216 define([XE_ADD_OBJS],
217 [extra_objs="$extra_objs [$1]" && dnl
218 if test "$extra_verbose" = "yes"; then
219 echo " xemacs will be linked with \"[$1]\""
222 dnl XE_APPEND(value, varname)
224 [[$2]="$[$2] [$1]" && dnl
225 if test "$extra_verbose" = "yes"; then echo " Appending \"[$1]\" to \$[$2]"; fi])
227 dnl XE_PREPEND(value, varname)
229 [[$2]="[$1] $[$2]" && dnl
230 if test "$extra_verbose" = "yes"; then echo " Prepending \"[$1]\" to \$[$2]"; fi])
233 dnl Initialize some variables set by options.
234 dnl The variables have the same names as the options, with
235 dnl dashes changed to underlines.
237 define([AC_INIT_PARSE_ARGS],[
239 dnl Get sane consistent behavior from various shells
240 dnl Avoid losing with weird user CDPATHs
242 if test -n "$ZSH_VERSION"; then
243 dnl zsh's Bourne shell emulation options
244 setopt NO_BAD_PATTERN NO_BANG_HIST NO_BG_NICE NO_EQUALS NO_FUNCTION_ARGZERO
245 setopt GLOB_SUBST NO_HUP INTERACTIVE_COMMENTS KSH_ARRAYS NO_MULTIOS NO_NOMATCH
246 setopt RM_STAR_SILENT POSIX_BUILTINS SH_FILE_EXPANSION SH_GLOB SH_OPTION_LETTERS
247 setopt SH_WORD_SPLIT BSD_ECHO IGNORE_BRACES
248 dnl zsh-3.1-beta drops core on the following
250 if test -n "$CDPATH"; then CDPATH="."; export CDPATH; fi
251 elif test -n "$BASH_VERSION"; then
252 dnl Use Posix mode with bash
256 if test -n "$CDPATH"; then CDPATH="."; export CDPATH; fi
259 dnl Initialize some variables set by options.
260 dnl The variables have the same names as the options, with
261 dnl dashes changed to underlines.
270 program_transform_name=s,x,x,
279 dnl Installation directory options.
280 dnl These are left unexpanded so users can "make install exec_prefix=/foo"
281 dnl and all the variables that are supposed to be based on exec_prefix
282 dnl by default will actually change.
283 dnl Use braces instead of parens because sh, perl, etc. also accept them.
284 dnl If you change these, you need to synchronize with the settings of the
285 dnl various ..._USER_DEFINED variables further down.
286 bindir='${exec_prefix}/bin'
287 sbindir='${exec_prefix}/sbin'
288 libexecdir='${exec_prefix}/libexec'
289 datadir='${prefix}/share'
290 sysconfdir='${prefix}/etc'
291 sharedstatedir='${prefix}/com'
292 localstatedir='${prefix}/var'
293 libdir='${{exec_prefix}}/lib'
294 includedir='${prefix}/include'
295 oldincludedir='/usr/include'
296 infodir='${prefix}/info'
297 mandir='${prefix}/man'
299 dnl Initialize some other variables.
302 dnl Maximum number of lines to put in a shell here document.
304 ])dnl AC_INIT_PARSE_ARGS
306 AC_INIT(src/lisp.h)dnl
307 AC_CONFIG_HEADER(src/config.h lwlib/config.h)
308 dnl Remove any more than one leading "." element from the path name.
309 dnl If we do not remove them, then another "./" will be prepended to
310 dnl the file name each time we use config.status, and the program name
311 dnl will get larger and larger. This would not be a problem, except
312 dnl that since progname gets recorded in all the Makefiles this script
313 dnl produces, move-if-change thinks they're different when they're
316 dnl It would be nice if we could put the ./ in a \( \) group and then
317 dnl apply the * operator to that, so we remove as many leading './././'s
318 dnl as are present, but some seds (like Ultrix's sed) don't allow you to
319 dnl apply * to a \( \) group. Bleah.
320 progname="`echo $0 | sed 's:^\./\./:\./:'`"
322 dnl -----------------------------
323 dnl Establish some default values
324 dnl -----------------------------
326 XE_APPEND(lib-src, MAKE_SUBDIR)
327 XE_APPEND(lib-src, INSTALL_ARCH_DEP_SUBDIR)
329 dnl run_in_place='no'
331 exec_prefix='${prefix}'
332 bindir='${exec_prefix}/bin'
333 dnl FSF 19.29 changes to:
334 dnl datadir='${prefix}/share'
335 dnl sharedstatedir='${prefix}/com'
336 dnl libexecdir='${exec_prefix}/libexec'
337 datadir='${prefix}/lib'
338 statedir='${prefix}/lib'
339 libdir='${exec_prefix}/lib'
340 mandir='${prefix}/man/man1'
341 infodir='${datadir}/${PROGNAME}-${version}/info'
344 lispdir='${datadir}/${PROGNAME}-${version}/lisp'
345 dnl sitelispdir='${datadir}/xemacs/site-lisp'
346 pkgdir='${datadir}/${PROGNAME}-${version}/lisp'
348 etcdir='${datadir}/${PROGNAME}-${version}/etc'
349 lockdir='${statedir}/${PROGNAME}/lock'
350 archlibdir='${libdir}/${PROGNAME}-${version}/${configuration}'
356 dnl const_is_losing is removed - we rely on AC_C_CONST instead.
357 dnl We accept (and ignore) the --const-is-losing option for compatibility.
358 dnl const_is_losing='yes'
360 cpp='' cppflags='' libs='' ldflags=''
365 with_system_malloc='default'
366 with_dlmalloc='default'
368 dnl use_assertions should be 'yes' by default. Too many people in this
369 dnl world have core dumps turned off by default or \"cannot find where the
370 dnl core file went\". At least we should get some useful output ...
372 dnl the following is set to yes or no later.
378 dnl ------------------
379 dnl Options Processing
380 dnl ------------------
382 define([USAGE_ERROR],
383 [(echo "$progname: Usage error:"
385 echo " Use \`$progname --help' to show usage.") >&2 && exit 1])
387 dnl Record all the arguments, so we can save them in config.status.
390 dnl Shell Magic: Quote the quoted arguments in ARGUMENTS. At a later date,
391 dnl in order to get the arguments back in $@, we have to do an
392 dnl 'eval set x "$quoted_arguments"; shift'
393 dnl # We use sed to turn embedded ' into '"'"'. I truly hate sh quoting.
394 quoted_sed_magic=s/"'"/"'"'"'"'"'"'"'"/g
398 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
399 | --no-cr | --no-c) ;;
400 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
401 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
403 quoted_i="`echo '' $i | sed -e 's:^ ::' -e $quoted_sed_magic`"
404 quoted_arguments="$quoted_arguments '$quoted_i'" ;;
408 dnl Do not use shift -- that destroys the argument list, which autoconf needs
409 dnl to produce config.status. It turns out that "set - $arguments" does not
411 dnl However, it also turns out that many shells cannot expand ${10} at all.
412 dnl So using an index variable does not work either. It is possible to use
413 dnl some shell magic to make 'set x "$arguments"; shift' work portably.
414 while test $# != 0; do
417 --no-create|--no-recursion) ;;
418 dnl Anything starting with a hyphen we assume is an option.
420 dnl Separate the switch name from the value it is being given.
423 opt=`echo '' $arg | sed -e 's:^ ::' -e 's:^-*\([[^=]]*\)=.*$:\1:'`
424 val=`echo '' $arg | sed -e 's:^ ::' -e 's:^-*[[^=]]*=\(.*\)$:\1:'`
427 dnl special case these strings since echo may silently eat them:
428 dnl --help ) opt=help val=yes valomitted=yes ;;
429 dnl --version ) opt=version val=yes valomitted=yes ;;
430 dnl -e ) opt=e val=yes valomitted=yes ;;
431 dnl -E ) opt=E val=yes valomitted=yes ;;
432 dnl -n ) opt=n val=yes valomitted=yes ;;
434 dnl If FOO is a boolean argument, --FOO is equivalent to
435 dnl --FOO=yes. Otherwise, the value comes from the next
436 dnl argument - see below.
437 opt=`echo '' $arg | sed -e 's:^ ::' -e 's:^-*\(.*\)$:\1:'`
438 val="yes" valomitted=yes
442 dnl translate "-" in option string to "_"
444 opt="`echo '' $opt | sed -e 's:^ ::' | tr - _`"
446 dnl Support --without-FOO as a synonym for --with-FOO=no
447 case "${valomitted}-${opt}" in yes-without_* )
448 opt=`echo $opt | sed 's/without/with/'`
449 valomitted="no" val="no" ;;
452 dnl Process the option.
455 dnl Process (many) boolean options
506 use_minimal_tagbits | \
507 use_indexed_lrecord_implementation | \
510 memory_usage_stats | \
511 with_clash_detection | \
514 dnl Make sure the value given was either "yes" or "no".
516 y | ye | yes ) val=yes ;;
518 * ) USAGE_ERROR("The \`--$optname' option requires a boolean value: \`yes' or \`no'.") ;;
520 eval "$opt=\"$val\"" ;;
523 dnl Options that take a user-supplied value, as in --puresize=8000000
524 dnl The cache-file option is ignored (for compatibility with other configures)
541 site_runtime_libraries )
542 dnl If the value was omitted, get it from the next argument.
543 if test "$valomitted" = "yes" ; then
544 dnl Get the next argument from the argument list, if there is one.
545 if test "$#" = 0 ; then
546 USAGE_ERROR("The \`--$optname' option requires a value.");
553 dnl Options that take "yes", "no", or "default" values
556 with_debug_malloc | use_debug_malloc | \
557 with_system_malloc | use_system_malloc )
559 y | ye | yes ) val=yes ;;
561 d | de | def | defa | defau | defaul | default ) val=default ;;
562 * ) USAGE_ERROR(["The \`--$optname' option requires one of these values:
563 \`yes', \`no', or \`default'."]) ;;
565 case "$opt" in use_* ) opt="`echo $opt | sed s/use/with/`" ;; esac
569 dnl Has the user requested database support?
571 with_database_berkdb=no
573 with_database_gnudbm=no
574 for x in `echo "$val" | sed -e 's/,/ /g'` ; do
577 b | be | ber | berk | berkd | berkdb ) with_database_berkdb=yes ;;
578 d | db | dbm ) with_database_dbm=yes ;;
579 g | gn | gnu | gnud | gnudb | gnudbm ) with_database_gnudbm=yes ;;
580 * ) USAGE_ERROR(["The \`--$optname' option value
581 must be either \`no' or a comma-separated list
582 of one or more of \`berkdb', \`dbm', or \`gnudbm'."]) ;;
585 if test "$with_database_dbm" = "yes" -a \
586 "$with_database_gnudbm" = "yes"; then
587 USAGE_ERROR("Only one of \`dbm' and \`gnudbm' may be specified
588 with the \`--$optname' option.")
592 dnl Has the user requested sound support?
594 dnl value can be native, nas or both. yes is allowed
595 dnl as a backwards compatible synonym for native
597 y | ye | yes ) val=native ;;
598 n | no | non | none ) val=no;;
599 na | nat | nati | nativ | native ) val=native ;;
600 ne | net | neta | netau | netaud | netaudi | netaudio | nas ) val=nas ;;
601 b | bo | bot | both ) val=both;;
602 * ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
603 \`native', \`nas', \`both', or \`none'."]) ;;
608 dnl Has the user requested XIM support?
611 y | ye | yes ) val=yes ;;
612 n | no | non | none ) val=no ;;
613 x | xl | xli | xlib ) val=xlib ;;
614 m | mo | mot | moti | motif ) val=motif ;;
615 * ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
616 \`motif', \`xlib', \`yes', or \`no'."]) ;;
621 dnl XFontSet support?
624 y | ye | yes ) val=yes ;;
625 n | no | non | none ) val=no ;;
626 * ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
627 \`yes', or \`no'."]) ;;
632 dnl Mail locking specification
638 * ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
639 \`lockf', \`flock', or \`file'."]) ;;
644 dnl Has the user requested error-checking?
646 dnl value can be all, none, and/or a list of categories to check.
647 dnl Example: --error-checking=all,noextents,nobufpos
648 dnl Example: --error-checking=none,malloc,gc
650 for x in `echo "$val" | sed -e 's/,/ /g'` ; do
652 dnl all and none are only permitted as the first in the list.
653 n | no | non | none ) new_default=no ;;
654 a | al | all ) new_default=yes ;;
656 extents ) error_check_extents=yes ;;
657 noextents ) error_check_extents=no ;;
659 typecheck ) error_check_typecheck=yes ;;
660 notypecheck ) error_check_typecheck=no ;;
662 bufpos ) error_check_bufpos=yes ;;
663 nobufpos ) error_check_bufpos=no ;;
665 gc ) error_check_gc=yes ;;
666 nogc ) error_check_gc=no ;;
668 malloc ) error_check_malloc=yes ;;
669 nomalloc ) error_check_malloc=no ;;
671 * ) bogus_error_check=yes ;;
673 if test "$bogus_error_check" -o \
674 \( -n "$new_default" -a -n "$echeck_notfirst" \) ; then
675 if test "$error_check_default" = yes ; then
676 types="\`all' (default), \`none', \`noextents', \`notypecheck', \`nobufpos', \`nogc', and \`nomalloc'."
678 types="\`all', \`none' (default), \`extents', \`typecheck', \`bufpos', \`gc', and \`malloc'."
680 USAGE_ERROR(["Valid types for the \`--$optname' option are:
682 elif test -n "$new_default" ; then
683 error_check_extents=$new_default
684 error_check_typecheck=$new_default
685 error_check_bufpos=$new_default
686 error_check_gc=$new_default
687 error_check_malloc=$new_default
688 new_default= # reset this
694 dnl Has the user tried to tell us where the X files are?
695 dnl I think these are dopey, but no less than three alpha
696 dnl testers, at large sites, have said they have their X files
697 dnl installed in odd places.
699 dnl Has the user specified one of the path options?
700 prefix | exec_prefix | bindir | datadir | statedir | libdir | \
701 mandir | infodir | infopath | lispdir | etcdir | lockdir | pkgdir | \
702 archlibdir | docdir | package_path )
703 dnl If the value was omitted, get it from the next argument.
704 if test "$valomitted" = "yes"; then
705 if test "$#" = 0; then
706 USAGE_ERROR("The \`--$optname' option requires a value.");
712 dnl You need to synchronize this with the way the
713 dnl default values are built.
715 lispdir ) AC_DEFINE(LISPDIR_USER_DEFINED) ;;
716 dnl sitelispdir ) AC_DEFINE(SITELISPDIR_USER_DEFINED) ;;
717 etcdir ) AC_DEFINE(ETCDIR_USER_DEFINED) ;;
718 infodir ) AC_DEFINE(INFODIR_USER_DEFINED) ;;
719 infopath ) AC_DEFINE(INFOPATH_USER_DEFINED) ;;
720 package_path ) AC_DEFINE(PACKAGE_PATH_USER_DEFINED) ;;
722 AC_DEFINE(INFODIR_USER_DEFINED)
723 AC_DEFINE(LISPDIR_USER_DEFINED)
724 AC_DEFINE(ETCDIR_USER_DEFINED) ;;
725 statedir | lockdir ) AC_DEFINE(LOCKDIR_USER_DEFINED) ;;
726 exec_prefix | libdir | archlibdir ) AC_DEFINE(ARCHLIBDIR_USER_DEFINED) ;;
730 dnl --no-create added by autoconf for use by config.status
733 dnl Has the user asked for some help?
734 "usage" | "help" ) ${PAGER-more} ${srcdir}/configure.usage; exit 0 ;;
736 dnl Has the user specified what toolkit to use for the menubars,
737 dnl scrollbar or dialogs?
738 "with_menubars" | "with_scrollbars" | "with_dialogs" )
740 l | lu | luc | luci | lucid ) val=lucid ;;
741 m | mo | mot | moti | motif ) val=motif ;;
742 athena3d | athena-3d ) val=athena3d ;;
743 a | at | ath | athe | athen | athena ) val=athena ;;
744 n | no | non | none ) val=no ;;
745 * ) USAGE_ERROR(["The \`--$optname' option must have one of these values:
746 \`lucid', \`motif', \`athena', \`athena3d', or \`no'."]) ;;
751 dnl Fail on unrecognized arguments.
752 * ) USAGE_ERROR("Unrecognized option: $arg") ;;
757 dnl Assume anything with multiple hyphens is a configuration name.
758 *-*-*) configuration="$arg" ;;
760 dnl Anything else is an error
761 *) USAGE_ERROR("Unrecognized argument: $arg") ;;
766 dnl -------------------------
767 dnl Finish options processing
768 dnl -------------------------
770 dnl Several options are equivalent to, and override, environment variables.
771 test -n "$cpp" && CPP="$cpp"
772 test -n "$cppflags" && CPPFLAGS="$cppflags"
773 test -n "$libs" && LIBS="$libs"
774 test -n "$ldflags" && LDFLAGS="$ldflags"
776 dnl Get the arguments back. See the diatribe on Shell Magic above.
777 eval set x "$quoted_arguments"; shift
779 dnl --extra-verbose implies --verbose
780 test "$extra_verbose" = "yes" && verbose=yes
782 dnl Allow use of either ":" or spaces for lists of directories
783 define(COLON_TO_SPACE,
784 [case "$[$1]" in *:* [)] [$1]="`echo '' $[$1] | sed -e 's/^ //' -e 's/:/ /g'`";; esac])dnl
785 COLON_TO_SPACE(site_includes)
786 COLON_TO_SPACE(site_libraries)
787 COLON_TO_SPACE(site_prefixes)
788 COLON_TO_SPACE(site_runtime_libraries)
790 dnl with_x is an obsolete synonym for with_x11
791 test -n "$with_x" && with_x11="$with_x"
793 dnl --gung-ho=val is a synonym for
794 dnl --use-minimal-tagbits=val --use-indexed-lrecord-implementation=val
796 if test -n "$gung_ho"; then
797 test -z "$use_minimal_tagbits" && use_minimal_tagbits="$gung_ho"
798 test -z "$use_indexed_lrecord_implementation" && \
799 use_indexed_lrecord_implementation="$gung_ho"
801 if test "$use_minimal_tagbits" = "no"; then
802 test "$with_dlmalloc" = "yes" && \
803 USAGE_ERROR("--with-dlmalloc requires --use-minimal-tagbits")
807 dnl XE_CHECK_FEATURE_DEPENDENCY(feature1, feature2)
808 define([XE_CHECK_FEATURE_DEPENDENCY],
809 [if test "$with_$1 $with_$2" = "yes no"; then
810 USAGE_ERROR("--with-$1 requires --with-$2")
811 elif test "$with_$2" = "no" ; then with_$1=no
812 elif test "$with_$1" = "yes"; then with_$2=yes
816 dnl CDE requires tooltalk
817 XE_CHECK_FEATURE_DEPENDENCY(cde, tooltalk)
819 dnl Ignore useless run-in-place flag
820 if test "$run_in_place" = "yes"; then
821 AC_MSG_WARN("The --run-in-place option is ignored because it is unnecessary.")
824 dnl Find the source directory.
827 dnl If srcdir is not specified, see if "." or ".." might work.
829 for dir in "`echo $0 | sed 's|//|/|' | sed 's|/[[^/]]*$||'`" "." ".." ; do
830 if test -f "$dir/src/lisp.h" -a \
831 -f "$dir/lisp/version.el" ; then
836 if test -z "$srcdir" ; then
837 USAGE_ERROR(["Neither the current directory nor its parent seem to
838 contain the XEmacs sources. If you do not want to build XEmacs in its
839 source tree, you should run \`$progname' in the directory in which
840 you wish to build XEmacs, using the \`--srcdir' option to say where the
841 sources may be found."])
845 dnl Otherwise, check if the directory they specified is okay.
847 if test ! -f "$srcdir/src/lisp.h" -o \
848 ! -f "$srcdir/lisp/version.el" ; then
849 USAGE_ERROR(["The directory specified with the \`--srcdir' option,
850 \`$srcdir', doesn't seem to contain the XEmacs sources. You should
851 either run the \`$progname' script at the top of the XEmacs source
852 tree, or use the \`--srcdir' option to specify the XEmacs source directory."])
857 dnl ###########################################################################
858 if test -z "$configuration"; then
859 AC_MSG_CHECKING("host system type")
860 dnl Guess the configuration and remove 4th name component, if present.
861 if configuration=`${CONFIG_SHELL-/bin/sh} $srcdir/config.guess | \
862 sed '[s/^\([^-][^-]*-[^-][^-]*-[^-][^-]*\)-.*$/\1/]'` ; then
863 AC_MSG_RESULT($configuration)
865 AC_MSG_RESULT(unknown)
866 USAGE_ERROR(["XEmacs has not been ported to this host type.
867 Try explicitly specifying the CONFIGURATION when rerunning configure."])
873 dnl Make symlinks for etc, lisp, and info directories while the path
874 dnl is still relative. We do not symlink lock because someone may
875 dnl have stuck the source on a read-only partition. Instead we
876 dnl create it as an actual directory later on if it does not already
878 for dir in lisp etc man info; do
879 if test ! -d "$dir" ; then
880 echo Making symbolic link to "$srcdir/$dir"
881 ${LN_S} "$srcdir/$dir" "$dir"
885 dnl Calculate canonical name for blddir (i.e. current directory).
886 dnl PWD may already be the preferable absolute name for ".",
887 dnl but we can't trust it - it is sometimes inaccurate.
888 absolute_pwd="`pwd`";
889 if test -n "$PWD" -a "`cd $PWD && pwd`" = "$absolute_pwd"
891 else blddir="$absolute_pwd"
895 dnl Make srcdir absolute, if not already. It is important to
896 dnl avoid running the path through pwd unnecessary, since pwd can
897 dnl give you automounter prefixes, which can go away.
900 . ) srcdir="$blddir" ;;
901 * ) srcdir="`cd $srcdir && pwd`" ;;
904 dnl Check if the source directory already has a configured system in it.
905 if test `pwd` != `sh -c cd $srcdir && pwd` \
906 && test -f "$srcdir/src/config.h"; then
907 (echo "$progname: WARNING: The directory tree \`$srcdir' is being used"
908 echo " as a build directory right now; it has been configured in its own"
909 echo " right. To configure in another directory as well, you MUST"
910 echo " use GNU make. If you do not have GNU make, then you must"
911 echo " now do \`make distclean' in $srcdir,"
912 echo " and then run $progname again.") >&2
913 extrasub='/^VPATH[[ ]]*=/c\
919 vpath %.in $(srcdir)'
922 dnl ----------------------------------------
923 dnl Find out which version of XEmacs this is
924 dnl ----------------------------------------
925 . "$srcdir/version.sh" || exit 1;
926 dnl Must do the following first to determine verbosity for AC_DEFINE
927 if test -n "$emacs_beta_version"; then beta=yes; else beta=no; fi
928 : "${extra_verbose=$beta}"
929 version="${emacs_major_version}.${emacs_minor_version}"
930 AC_DEFINE_UNQUOTED(EMACS_MAJOR_VERSION, $emacs_major_version)
931 AC_DEFINE_UNQUOTED(EMACS_MINOR_VERSION, $emacs_minor_version)
932 if test -n "$emacs_beta_version"; then
933 version="${version}-b${emacs_beta_version}"
934 AC_DEFINE_UNQUOTED(EMACS_BETA_VERSION, $emacs_beta_version)
936 AC_DEFINE_UNQUOTED(XEMACS_CODENAME, "$xemacs_codename")
937 AC_DEFINE_UNQUOTED(EMACS_VERSION, "$version")
939 if test "$with_infodock" = "yes"; then
940 if test ! -f ../ID-INSTALL; then
941 echo "Cannot build InfoDock without InfoDock sources"
946 if test "$with_infodock" = "yes"; then
947 dnl InfoDock version numbers. XEmacs will use the same style of numbering
948 dnl after the release of XEmacs 21.0.
949 AC_DEFINE_UNQUOTED(INFODOCK_MAJOR_VERSION, $infodock_major_version)
950 AC_DEFINE_UNQUOTED(INFODOCK_MINOR_VERSION, $infodock_minor_version)
951 AC_DEFINE_UNQUOTED(INFODOCK_BUILD_VERSION, $infodock_build_version)
952 version=${infodock_major_version}.${infodock_minor_version}.${infodock_build_version}
954 CPPFLAGS="$CPPFLAGS -DINFODOCK"
959 dnl ----------------------------------
960 dnl Error checking and debugging flags
961 dnl ----------------------------------
962 dnl Error checking default to "yes" in beta versions, to "no" in releases.
963 dnl Same goes for --debug and --extra-verbosity.
964 if test -n "$emacs_beta_version"; then beta=yes; else beta=no; fi
965 test "${error_check_extents=$beta}" = yes && AC_DEFINE(ERROR_CHECK_EXTENTS)
966 test "${error_check_typecheck=$beta}" = yes && AC_DEFINE(ERROR_CHECK_TYPECHECK)
967 test "${error_check_bufpos=$beta}" = yes && AC_DEFINE(ERROR_CHECK_BUFPOS)
968 test "${error_check_gc=$beta}" = yes && AC_DEFINE(ERROR_CHECK_GC)
969 test "${error_check_malloc=$beta}" = yes && AC_DEFINE(ERROR_CHECK_MALLOC)
970 dnl debug=yes must be set when error checking is present. This should be
972 dnl debug implies other options
973 if test "${debug:=$beta}" = "yes"; then
974 use_assertions=yes memory_usage_stats=yes
976 AC_DEFINE(DEBUG_XEMACS)
978 test "$use_assertions" = "yes" && AC_DEFINE(USE_ASSERTIONS)
979 test "$memory_usage_stats" = "yes" && AC_DEFINE(MEMORY_USAGE_STATS)
981 dnl ------------------------------
982 dnl Determine the s&m files to use
983 dnl ------------------------------
984 dnl Given the configuration name, set machfile and opsysfile to the
985 dnl names of the m/*.h and s/*.h files we should use.
987 dnl Canonicalize the configuration name.
988 AC_CHECKING("the configuration name")
989 dnl allow -workshop suffix on configuration name
990 internal_configuration=`echo $configuration | sed 's/-\(workshop\)//'`
991 if canonical=`$srcdir/config.sub "$internal_configuration"` ; then : ; else
995 dnl If you add support for a new configuration, add code to this
996 dnl switch statement to recognize your configuration name and select
997 dnl the appropriate operating system and machine description files.
999 dnl You would hope that you could choose an m/*.h file pretty much
1000 dnl based on the machine portion of the configuration name, and an s-
1001 dnl file based on the operating system portion. However, it turns out
1002 dnl that each m/*.h file is pretty manufacturer-specific - for
1003 dnl example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are
1004 dnl all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS
1005 dnl machines. So we basically have to have a special case for each
1006 dnl configuration name.
1008 dnl As far as handling version numbers on operating systems is
1009 dnl concerned, make sure things will fail in a fixable way. If
1010 dnl /etc/MACHINES says nothing about version numbers, be
1011 dnl prepared to handle anything reasonably. If version numbers
1012 dnl matter, be sure /etc/MACHINES says something about it.
1014 dnl Eric Raymond says we should accept strings like "sysvr4" to mean
1015 dnl "System V Release 4"; he writes, "The old convention encouraged"
1016 dnl "confusion between `system' and `release' levels'."
1020 dnl Straightforward machine determination
1021 case "$canonical" in
1022 sparc-*-* ) machine=sparc ;;
1023 alpha*-*-* ) machine=alpha ;;
1024 vax-*-* ) machine=vax ;;
1025 mips-dec-* ) machine=pmax ;;
1026 mips-sgi-* ) machine=iris4d ;;
1027 romp-ibm-* ) machine=ibmrt ;;
1028 rs6000-ibm-aix* ) machine=ibmrs6000 ;;
1029 powerpc-ibm-aix* ) machine=ibmrs6000 ;;
1030 powerpc*-* ) machine=powerpc ;;
1031 hppa-*-* ) machine=hp800 ;;
1032 m88k-dg-* ) machine=aviion ;;
1033 m68*-sony-* ) machine=news ;;
1034 mips-sony-* ) machine=news-risc ;;
1035 clipper-* ) machine=clipper ;;
1038 dnl Straightforward OS determination
1039 case "$canonical" in
1040 *-*-linux* ) opsys=linux ;;
1041 *-*-netbsd* ) opsys=netbsd ;;
1042 *-*-openbsd* ) opsys=openbsd ;;
1043 *-*-nextstep* ) opsys=nextstep ;;
1044 *-*-vms ) opsys=vms ;;
1047 *-dec-osf1.3 | *-dec-osf2* ) opsys=decosf1-3 ;;
1048 *-dec-osf1.2 | *-dec-osf1* ) opsys=decosf1-2 ;;
1049 *-dec-osf3.[[2-9]] ) opsys=decosf3-2 ;;
1050 *-dec-osf3* ) opsys=decosf3-1 ;;
1051 *-dec-osf4* ) opsys=decosf4-0 ;;
1054 *-*-ultrix[[0-3]].* | *-*-ultrix4.0* ) opsys=bsd4-2 ;;
1055 *-*-ultrix4.[[12]]* ) opsys=bsd4-3 ;;
1056 *-*-ultrix* ) opsys=ultrix4-3 ;;
1059 *-*-aix3.1* ) opsys=aix3-1 ;;
1060 *-*-aix3.2.5 ) opsys=aix3-2-5 ;;
1061 *-*-aix3* ) opsys=aix3-2 ;;
1062 *-*-aix4.0* ) opsys=aix4 ;;
1063 *-*-aix4.1* ) opsys=aix4-1 ;;
1064 *-*-aix4* ) opsys=aix4-2 ;;
1066 dnl Other generic OSes
1067 *-gnu* ) opsys=gnu ;;
1068 *-*-bsd4.[[01]] ) opsys=bsd4-1 ;;
1069 *-*-bsd4.2 ) opsys=bsd4-2 ;;
1070 *-*-bsd4.3 ) opsys=bsd4-3 ;;
1071 *-*-aos4.2 ) opsys=bsd4-2 ;;
1072 *-*-aos* ) opsys=bsd4-3 ;;
1073 *-*-sysv0 | *-*-sysvr0 ) opsys=usg5-0 ;;
1074 *-*-sysv2 | *-*-sysvr2 ) opsys=usg5-2 ;;
1075 *-*-sysv2.2 | *-*-sysvr2.2 ) opsys=usg5-2-2 ;;
1076 *-*-sysv3* | *-*-sysvr3* ) opsys=usg5-3 ;;
1077 *-*-sysv4.1* | *-*-sysvr4.1* )opsys=usg5-4 NON_GNU_CPP=/usr/lib/cpp ;;
1078 *-*-sysv4.[[2-9]]* | *-sysvr4.[[2-9]]* )
1079 if test -z "$NON_GNU_CPP" ; then
1080 for prog in "/usr/ccs/lib/cpp" "/lib/cpp"; do
1081 if test -f "$prog"; then NON_GNU_CPP="$prog"; break; fi
1085 *-sysv4* | *-sysvr4* ) opsys=usg5-4 ;;
1086 *-*-mach_bsd4.3* ) opsys=mach-bsd4-3 ;;
1089 case "$canonical" in
1093 case "$canonical" in
1094 i[[3-9]]86-*-netbsd*) machine=intel386 ;;
1095 hp300-*-netbsd* | amiga-*-netbsd* | sun3-*-netbsd* | mac68k-*-netbsd* | da30-*-netbsd* | m68k-*-netbsd* )
1096 dnl Yes, this is somewhat bogus.
1097 machine=hp9000s300 ;;
1098 pc532-*-netbsd* | ns32k-*-netbsd* ) machine=ns32000 ;;
1099 pmax-*-netbsd* | mips-*-netbsd* ) machine=pmax ;;
1105 case "${canonical}" in
1106 alpha*-*-openbsd*) machine=alpha ;;
1107 i386-*-openbsd*) machine=intel386 ;;
1108 m68k-*-openbsd*) machine=hp9000s300 ;;
1109 mipsel-*-openbsd*) machine=pmax ;;
1110 ns32k-*-openbsd*) machine=ns32000 ;;
1111 sparc-*-openbsd*) machine=sparc ;;
1112 vax-*-openbsd*) machine=vax ;;
1117 arm-acorn-riscix1.1* ) machine=acorn opsys=riscix1-1 ;;
1118 arm-acorn-riscix1.2* | arm-acorn-riscix ) machine=acorn opsys=riscix1-2 ;;
1120 dnl Alliant machines
1121 fx80-alliant-* ) machine=alliant4 opsys=bsd4-2 ;;
1122 i860-alliant-* ) machine=alliant-2800 opsys=bsd4-3 ;;
1125 m68*-altos-sysv* ) machine=altos opsys=usg5-2 ;;
1128 580-amdahl-sysv* ) machine=amdahl opsys=usg5-2-2 ;;
1130 dnl Apollo, Domain/OS
1131 m68*-apollo-* ) machine=apollo opsys=bsd4-3 ;;
1133 dnl AT&T 3b2, 3b5, 3b15, 3b20
1134 we32k-att-sysv* ) machine=att3b opsys=usg5-2-2 ;;
1136 dnl AT&T 3b1 - The Mighty Unix PC!
1137 m68*-att-sysv* ) machine=7300 opsys=usg5-2-2 ;;
1140 rs6000-bull-bosx* ) machine=ibmrs6000 opsys=aix3-2 ;; # dpx20
1141 m68*-bull-sysv3* ) machine=dpx2 opsys=usg5-3 ;; # dpx2
1142 m68*-bull-sysv2* ) machine=sps7 opsys=usg5-2 ;; # sps7
1144 dnl CCI 5/32, 6/32 -- see "Tahoe".
1147 celerity-celerity-bsd* ) machine=celerity opsys=bsd4-2 ;;
1150 *-convex-bsd* | *-convex-convexos* )
1151 machine=convex opsys=bsd4-3
1152 NON_GNU_CPP="cc -E -P"
1156 i[[3-9]]86-cubix-sysv* ) machine=intel386 opsys=usg5-3 ;;
1158 dnl Data General AViiON Machines
1159 i586-dg-dgux*R4* | i586-dg-dgux5.4.4* ) machine=aviion opsys=dgux5-4r4 ;;
1160 m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* ) opsys=dgux5-4r3 ;;
1161 m88k-dg-dgux5.4R2* | m88k-dg-dgux5.4.2* ) opsys=dgux5-4r2 ;;
1162 m88k-dg-dgux* ) opsys=dgux ;;
1164 dnl Motorola Delta machines
1165 m68k-motorola-sysv* | m68000-motorola-sysv* ) machine=delta opsys=usg5-3 ;;
1166 m88k-motorola-sysv4* )
1167 dnl jbotte@bnr.ca says that UNIX_System_V <hostName> 4.0 R40V4.3 m88k mc88110
1168 dnl needs POSIX_SIGNALS and therefore needs usg5-4-2.
1169 dnl I hope there are not other 4.0 versions for this machine
1170 dnl which really need usg5-4 instead.
1171 machine=delta88k opsys=usg5-4-2
1173 m88k-motorola-sysv* | m88k-motorola-m88kbcs* ) machine=delta88k opsys=usg5-3 ;;
1176 m68*-dual-sysv* ) machine=dual opsys=usg5-2 ;;
1177 m68*-dual-uniplus* ) machine=dual opsys=unipl5-2 ;;
1180 ns16k-encore-bsd* ) machine=ns16000 opsys=umax ;;
1182 dnl Gould Power Node and NP1
1183 pn-gould-bsd4.2* ) machine=gould opsys=bsd4-2 ;;
1184 pn-gould-bsd4.3* ) machine=gould opsys=bsd4-3 ;;
1185 np1-gould-bsd* ) machine=gould-np1 opsys=bsd4-3 ;;
1187 dnl Harris Night Hawk machines running CX/UX (a 5000 looks just like a 4000
1188 dnl as far as XEmacs is concerned).
1190 dnl Build needs to be different on 7.0 and later releases
1191 case "`uname -r`" in
1192 [[56]].[[0-9]] ) machine=nh4000 opsys=cxux ;;
1193 [[7]].[[0-9]] ) machine=nh4000 opsys=cxux7 ;;
1195 NON_GNU_CPP="/lib/cpp"
1197 dnl Harris ecx or gcx running CX/UX (Series 1200, Series 3000)
1198 m68k-harris-cxux* ) machine=nh3000 opsys=cxux ;;
1199 dnl Harris power pc NightHawk running Power UNIX (Series 6000)
1200 powerpc-harris-powerunix ) machine=nh6000 opsys=powerunix NON_GNU_CPP="cc -Xo -E -P" ;;
1202 dnl Honeywell XPS100
1203 xps*-honeywell-sysv* ) machine=xps100 opsys=usg5-2 ;;
1205 dnl HP 9000 series 200 or 300
1206 m68*-hp-bsd* ) machine=hp9000s300 opsys=bsd4-3 ;;
1210 dnl Figure out machine and opsys orthogonally
1211 case "$canonical" in
1212 m68* ) machine=hp9000s300 ;;
1213 hppa* ) machine=hp800 ;;
1216 case "$canonical" in
1217 *-hp-hpux7* ) opsys=hpux ;;
1218 *-hp-hpux8* ) opsys=hpux8 ;;
1219 *-hp-hpux9* ) opsys=hpux9 ;;
1220 *-hp-hpux10* ) opsys=hpux10 ;;
1221 *-hp-hpux11* ) opsys=hpux11 ;;
1225 dnl HP has a broken "strcat"
1226 case "$opsys" in hpux9 | hpux10 ) XE_ADD_OBJS(strcat.o) ;; esac
1228 if test "$opsys" = "hpux10" -o "$opsys" = "hpux11"; then \
1229 ansi_flag="-Ae"; else ansi_flag="-Aa"; fi
1230 NON_GNU_CC="cc $ansi_flag" NON_GNU_CPP="cc $ansi_flag -E"
1232 case "$canonical" in *-hp-hpux*shr* ) opsys="${opsys}-shr" ;; esac
1236 orion-orion-bsd* ) machine=orion opsys=bsd4-2 ;;
1237 clipper-orion-bsd* ) machine=orion105 opsys=bsd4-2 ;;
1240 i[[3-9]]86-ibm-aix1.1* ) machine=ibmps2-aix opsys=usg5-2-2 ;;
1241 i[[3-9]]86-ibm-aix1.[[23]]* | i[[3-9]]86-ibm-aix* ) machine=ibmps2-aix opsys=usg5-3 ;;
1242 i370-ibm-aix*) machine=ibm370aix opsys=usg5-3 ;;
1243 romp-ibm-aos* ) opsys=bsd4-3 ;;
1244 romp-ibm-bsd* ) opsys=bsd4-3 ;;
1245 romp-ibm-mach* ) opsys=mach-bsd4-3 ;;
1247 dnl Integrated Solutions "Optimum V"
1248 m68*-isi-bsd4.2* ) machine=isi-ov opsys=bsd4-2 ;;
1249 m68*-isi-bsd4.3* ) machine=isi-ov opsys=bsd4-3 ;;
1251 dnl Intel 386 machines where we do care about the manufacturer
1252 i[[3-9]]86-intsys-sysv* ) machine=is386 opsys=usg5-2-2 ;;
1255 i[[3-9]]86-prime-sysv* ) machine=i386 opsys=usg5-3 ;;
1257 dnl Sequent Symmetry running Dynix
1258 i[[3-9]]86-sequent-bsd* ) machine=symmetry opsys=bsd4-3 ;;
1260 dnl Sequent Symmetry running DYNIX/ptx
1261 i[[3-9]]86-sequent-ptx* ) machine=sequent-ptx opsys=ptx NON_GNU_CPP="/lib/cpp" ;;
1263 dnl Unspecified sysv on an ncr machine defaults to svr4.2.
1264 dnl (Plain usg5-4 does not turn on POSIX signals, which we need.)
1265 i[[3-9]]86-ncr-sysv* ) machine=ncr386 opsys=usg5-4-2 ;;
1267 dnl Intel Paragon OSF/1
1268 i860-intel-osf1* ) machine=paragon opsys=osf1 NON_GNU_CPP=/usr/mach/lib/cpp ;;
1271 i860-*-sysv4* ) machine=i860 opsys=usg5-4 NON_GNU_CC="/bin/cc" NON_GNU_CPP="/usr/ccs/lib/cpp" ;;
1273 dnl Masscomp machines
1274 m68*-masscomp-rtu* ) machine=masscomp opsys=rtu ;;
1276 dnl Megatest machines
1277 m68*-megatest-bsd* ) machine=mega68 opsys=bsd4-2 ;;
1279 dnl Workstations sold by MIPS
1280 dnl This is not necessarily all workstations using the MIPS processor -
1281 dnl Irises are produced by SGI, and DECstations by DEC.
1282 mips-mips-usg* ) machine=mips4 ;;
1285 NON_GNU_CC="cc -systype bsd43"
1286 NON_GNU_CPP="cc -systype bsd43 -E"
1287 case "$canonical" in
1288 mips-mips-riscos4* ) opsys=bsd4-3 ;;
1289 mips-mips-riscos5* ) opsys=riscos5 ;;
1292 mips-mips-bsd* ) machine=mips opsys=bsd4-3 ;;
1293 mips-mips-* ) machine=mips opsys=usg5-2-2 ;;
1296 m68*-next-* | m68k-*-nextstep* ) machine=m68k opsys=nextstep ;;
1298 dnl The complete machine from National Semiconductor
1299 ns32k-ns-genix* ) machine=ns32000 opsys=usg5-2 ;;
1302 m68*-ncr-sysv2* | m68*-ncr-sysvr2* ) machine=tower32 opsys=usg5-2-2 ;;
1303 m68*-ncr-sysv3* | m68*-ncr-sysvr3* ) machine=tower32v3 opsys=usg5-3 ;;
1305 dnl Nixdorf Targon 31
1306 m68*-nixdorf-sysv* ) machine=targon31 opsys=usg5-2-2 ;;
1309 m68*-nu-sysv* ) machine=nu opsys=usg5-2 ;;
1312 m68*-plexus-sysv* ) machine=plexus opsys=usg5-2 ;;
1314 dnl Pyramid machines
1315 pyramid-pyramid-bsd* ) machine=pyramid opsys=bsd4-2 ;;
1318 ns32k-sequent-bsd4.2* ) machine=sequent opsys=bsd4-2 ;;
1319 ns32k-sequent-bsd4.3* ) machine=sequent opsys=bsd4-3 ;;
1322 mips-siemens-sysv* | mips-sni-sysv*)
1323 machine=mips-siemens opsys=usg5-4
1324 NON_GNU_CC=/usr/ccs/bin/cc
1325 NON_GNU_CPP=/usr/ccs/lib/cpp
1331 NON_GNU_CC=/usr/ccs/bin/cc
1332 NON_GNU_CPP=/usr/ccs/lib/cpp
1335 dnl Silicon Graphics machines
1336 dnl Iris 2500 and Iris 2500 Turbo (aka the Iris 3030)
1337 m68*-sgi-iris3.5* ) machine=irist opsys=iris3-5 ;;
1338 m68*-sgi-iris3.6* | m68*-sgi-iris*) machine=irist opsys=iris3-6 ;;
1340 mips-sgi-irix3.* ) opsys=irix3-3 ;;
1341 mips-sgi-irix4.* ) opsys=irix4-0 ;;
1342 mips-sgi-irix6* ) opsys=irix6-0 ;;
1343 mips-sgi-irix5.1* ) opsys=irix5-1 ;;
1344 mips-sgi-irix5.2* ) opsys=irix5-2 ;;
1345 mips-sgi-irix5.* ) opsys=irix5-3 ;;
1346 mips-sgi-irix* ) opsys=irix5-0 ;;
1349 *-sony-newsos[[34]]* | *-sony-news[[34]]* ) opsys=bsd4-3 ;;
1350 *-sony-news* ) opsys=newsos5 ;;
1353 m68*-stride-sysv* ) machine=stride opsys=usg5-2 ;;
1356 *-*-solaris* | *-*-sunos* | *-sun-mach* | *-sun-bsd* )
1358 case "$canonical" in
1359 m68*-sunos1* ) machine=sun1 ;;
1360 m68*-sunos2* ) machine=sun2 ;;
1361 m68* ) machine=sun3 ;;
1362 i*86*-sun-sunos[[34]]* ) machine=sun386 ;;
1363 i*86-*-* ) machine=intel386 ;;
1364 rs6000* ) machine=rs6000 ;;
1367 dnl Make $canonical even more so.
1368 case "$canonical" in *-sunos5*)
1369 canonical=`echo $canonical | sed -e s/sunos5/solaris2/`;;
1372 dnl On SunOS 4, use /usr/lib/cpp, sans dynodump, /bin/ranlib
1373 dnl On SunOS 5, use cc -E, need dynodump, RANLIB not needed
1374 dnl But, SunOS 5.6 no longer needs dynodump because it has a similar
1375 dnl function integrated.
1376 case "$canonical" in
1378 #test -f /usr/lib/cpp && NON_GNU_CPP=/usr/lib/cpp ;;
1381 #test -f /usr/ccs/lib/cpp && NON_GNU_CPP=/usr/ccs/lib/cpp
1385 case "$canonical" in
1388 os_release=`uname -r | sed -e 's/^\([[0-9]]\)\.\([[0-9]]\).*/\1\2/'`
1389 AC_DEFINE_UNQUOTED(OS_RELEASE, $os_release) ;;
1391 dnl The last Sun386 ran 4.0.
1392 i*86-*-sunos4* ) opsys=sunos4-0 ;;
1393 *-sunos4.0* ) opsys=sunos4-0 ;;
1394 *-sunos4.1.2* ) opsys=sunos4-1-2 ;;
1395 *-sunos4.1.3* ) opsys=sunos4-1-3 ;;
1396 *-sunos4.1.[[4-9]]* ) opsys=sunos4-1-4 ;;
1397 *-sunos4* | *-sunos ) opsys=sunos4-1 ;;
1398 *-mach* ) opsys=mach-bsd4-3 ;;
1402 case "$canonical" in *-sunos4*shr* ) opsys="${opsys}-shr" ;; esac
1404 dnl Watch out for a compiler guaranteed not to work.
1405 test "$opsys $CC" = "sol2 /usr/ucb/cc" && CC=""
1409 m68*-tadpole-sysv* ) machine=tad68k opsys=usg5-3 ;;
1412 tahoe-tahoe-bsd4.2* ) machine=tahoe opsys=bsd4-2 ;;
1413 tahoe-tahoe-bsd4.3* ) machine=tahoe opsys=bsd4-3 ;;
1415 dnl Tandem Integrity S2
1416 mips-tandem-sysv* ) machine=tandem-s2 opsys=usg5-3 ;;
1419 m88k-tektronix-sysv3* ) machine=tekxd88 opsys=usg5-3 ;;
1421 dnl Tektronix 16000 box (6130?)
1422 ns16k-tektronix-bsd* ) machine=ns16000 opsys=bsd4-2 ;;
1424 dnl src/m/tek4300.h hints that this is a m68k machine.
1425 m68*-tektronix-bsd* ) machine=tek4300 opsys=bsd4-3 ;;
1428 titan-titan-sysv* ) machine=titan opsys=usg5-3 ;;
1430 dnl Ustation E30 (SS5E)
1431 m68*-unisys-uniplus* ) machine=ustation opsystem=unipl5-2 ;;
1435 case "$canonical" in
1436 *-sysv[[01]]* | *-sysvr[[01]]* ) opsys=usg5-0 ;;
1437 *-sysv2* | *-sysvr2* ) opsys=usg5-2 ;;
1438 *-mach* ) opsys=mach-bsd4-3 ;;
1443 ns16k-whitechapel-* ) machine=mg1 ;;
1446 m68*-wicat-sysv* ) machine=wicat opsys=usg5-2 ;;
1448 dnl Intel 386 machines where we do not care about the manufacturer
1451 case "$canonical" in
1452 *-isc1.* | *-isc2.[[01]]* ) opsys=386-ix ;;
1453 *-isc2.2* ) opsys=isc2-2 ;;
1454 *-isc4.0* ) opsys=isc4-0 ;;
1455 *-isc4.* ) opsys=isc4-1
1456 GCC_TEST_OPTIONS=-posix
1457 NON_GCC_TEST_OPTIONS=-Xp
1459 *-isc* ) opsys=isc3-0 ;;
1460 *-esix5* ) opsys=esix5r4 NON_GNU_CPP=/usr/lib/cpp ;;
1461 *-esix* ) opsys=esix ;;
1462 *-mach* ) opsys=mach-bsd4-3 ;;
1463 *-xenix* ) opsys=xenix ;;
1464 *-sco3.2v4* ) opsys=sco4 NON_GNU_CPP=/lib/cpp ;;
1465 *-bsd386* | *-bsdi1* ) opsys=bsd386 ;;
1466 *-bsdi3* ) opsys=bsdos3 ;;
1467 *-bsdi2.1* ) opsys=bsdos2-1 ;;
1468 *-bsdi2* ) opsys=bsdos2 ;;
1469 *-sco3.2v5* ) opsys=sco5 ;
1470 dnl This is a pain. Like the current USL cc, SCO cc -E
1471 dnl tokenizes as it preprocesses, making configure very
1472 dnl unhappy. Unfortunately, /lib/cpp does not understand
1473 dnl flags like "-b elf", so we have to cheat in order to
1474 dnl pick up the right defines for UNEXEC from the s-file.
1475 dnl 01/05/95 robertl@dgii.com
1476 if test "$dynamic" = "yes" ; then
1477 NON_GNU_CPP="/lib/cpp -D_XOPEN_SOURCE -D_SCO_ELF" ;
1479 NON_GNU_CPP="/lib/cpp -D_XOPEN_SOURCE" ;
1481 *-386bsd* ) opsys=386bsd ;;
1482 *-freebsd* ) opsys=freebsd ;;
1483 *-nextstep* ) opsys=nextstep ;;
1484 *-pc-cygwin32 ) opsys=cygwin32 ;;
1485 dnl Otherwise, we fall through to the generic opsys code at the bottom.
1490 m68k-*-linux* ) machine=m68k opsys=linux ;;
1493 arm-*-linux* ) machine=arm opsys=linux ;;
1497 if test -z "$machine" -o -z "$opsys"; then
1498 (echo "$progname: XEmacs hasn't been ported to \`$canonical' systems."
1499 echo "$progname: Check \`etc/MACHINES' for recognized configuration names."
1504 if test -z "$dynamic"; then
1506 hpux* | sunos4* | sco5 ) dynamic=no ;;
1510 if test "$dynamic" = "yes"; then
1512 hpux* | sunos4* | sco5 ) opsys="${opsys}-shr" ;;
1513 decosf* ) ld_call_shared="-call_shared" ;;
1515 else dnl "$dynamic" = "no"
1518 echo "Static linking is not supported on Solaris 2."
1519 echo "Rerun configure without specifying --dynamic=no."
1521 linux ) ld_call_shared="-Bstatic" ;;
1522 decosf* ) ld_call_shared="-non_shared" ;;
1526 dnl Use xlc by default on AIX
1527 case "$opsys" in aix*) NON_GNU_CC=xlc ;; esac
1529 stack_trace_eye_catcher=`echo ${PROGNAME}_${version}_${canonical} | sed 'y/.-/__/'`
1530 AC_DEFINE_UNQUOTED(STACK_TRACE_EYE_CATCHER, $stack_trace_eye_catcher)
1532 machfile="m/${machine}.h"
1533 opsysfile="s/${opsys}.h"
1535 dnl --------------------------------------------------
1536 dnl Determine the compiler, set up for feature testing
1537 dnl --------------------------------------------------
1539 dnl Sun Development environment support
1540 test "$with_sparcworks" = "yes" && with_workshop=yes # compatibility alias
1541 XE_CHECK_FEATURE_DEPENDENCY(workshop, tooltalk)
1542 if test "$with_workshop" = "yes"; then
1544 XE_ADD_OBJS(sunpro.o)
1547 if test "$with_clash_detection" = "yes"; then
1548 AC_DEFINE(CLASH_DETECTION)
1549 XE_ADD_OBJS(filelock.o)
1552 dnl Choose a compiler from (in order)
1553 dnl --compiler, env var CC, with_gcc=no && ${NON_GNU_CC:-cc}, AC_PROG_CC
1554 test -n "$compiler" && CC="$compiler"
1555 if test "$with_gcc" = "no"; then dnl Try to find a non-gcc compiler
1556 case "$CC" in "" | *gcc* ) CC="${NON_GNU_CC-cc}" ;; esac
1559 dnl If we don't set CFLAGS here, AC_PROG_CC will set it.
1560 dnl But we know better what's good for us, so we do our own
1561 dnl computation of real CFLAGS later.
1562 dnl --cflags overrides environment variable CFLAGS
1563 test "${cflags-unset}" != unset && CFLAGS="$cflags"
1564 if test "${CFLAGS-unset}" != unset
1565 then cflags_specified=yes;
1566 else cflags_specified=no;
1569 xe_save_CFLAGS="$CFLAGS"
1571 AC_PROG_CC dnl Autoconf has its own magic for compiler autodetection
1573 dnl Retry using random guesswork if AC_PROG_CC got it wrong...
1574 if test "$with_gcc" = "no" -a "$GCC" = "yes"; then
1577 elif test "$with_gcc" = "yes" -a "$GCC" != "yes" ; then
1581 CFLAGS="$xe_save_CFLAGS"
1583 dnl Figure out what C preprocessor to use.
1585 dnl On Sun systems, people sometimes set up the variable CPP
1586 dnl with a value that is a directory, not an executable at all.
1587 dnl Detect that case, and ignore that value.
1588 test -n "$CPP" -a -d "$CPP" && CPP=
1590 test -n "$NON_GNU_CPP" -a "$GCC" != "yes" -a -z "$CPP" && CPP="$NON_GNU_CPP"
1596 AC_MSG_CHECKING(for GNU libc)
1597 AC_TRY_COMPILE([#include <features.h>],[
1598 #if ! (defined __GLIBC__ || defined __GNU_LIBRARY__)
1599 #error Not a GNU libc system :-(
1600 ******* ======= ******** &&&&&&&&
1602 ], have_glibc=yes, have_glibc=no)
1603 AC_MSG_RESULT($have_glibc)
1604 dnl I'm tired of pop being broken with GLIBC -slb
1605 dnl Well. then why not fix fucking pop?
1606 test "$have_glibc" = "yes" && AC_DEFINE(_GNU_SOURCE)
1609 dnl Identify compilers to enable compiler-specific hacks.
1610 dnl Add support for other compilers HERE!
1611 dnl GCC is already identified elsewhere.
1612 AC_TRY_RUN([int main () {
1613 #if defined __SUNPRO_C
1615 #elif defined __DECC
1621 [case "$conftest_rc" in
1622 11) echo "You appear to be using the SunPro C compiler."; __SUNPRO_C=yes ;;
1623 12) echo "You appear to be using the DEC C compiler." ; __DECC=yes ;;
1627 dnl case "$canonical" in
1628 dnl *-sun-sunos* ) test "$CPP" = "acc -E" && CPP="acc -E -Xs" ;;
1631 dnl --------------------------------------------------------------------
1632 dnl Extract some information from the operating system and machine files
1633 dnl --------------------------------------------------------------------
1635 echo "Extracting information from the machine- and system-dependent headers..."
1637 dnl It is not important that this name contain the PID; you cannot run
1638 dnl two configures in the same directory and have anything work
1640 tempcname="conftest.c"
1642 dnl CPP_to_sh(CPP_SYMBOL, SH_VAR, DEFAULT_VALUE)
1645 [#]define [$1]ifelse([$3],,, [ "$3"])
1647 configure___ [$2]=[$1]
1650 dnl CPP_boolean_to_sh(CPP_SYMBOL, SH_VAR)
1651 define([CPP_boolean_to_sh],
1653 configure___ [$2]=yes
1655 configure___ [$2]=no
1657 ])dnl CPP_boolean_to_sh
1659 cat > $tempcname <<EOF
1661 #define C_SWITCH_SITE
1662 #define C_SWITCH_X_SITE
1663 #define LD_SWITCH_SITE
1664 #define LD_SWITCH_X_SITE
1665 #define LD_SWITCH_X_SITE_AUX
1666 #define OS_RELEASE $os_release
1667 #include "$srcdir/src/$opsysfile"
1668 #include "$srcdir/src/$machfile"
1670 CPP_to_sh(LIBS_MACHINE, libs_machine)
1671 CPP_to_sh(LIBS_SYSTEM, libs_system)
1672 CPP_to_sh(LIBS_TERMCAP, libs_termcap)
1673 CPP_to_sh(LIB_STANDARD, libs_standard)
1675 CPP_to_sh(OBJECTS_MACHINE, objects_machine)
1676 CPP_to_sh(OBJECTS_SYSTEM, objects_system)
1678 CPP_to_sh(C_SWITCH_MACHINE, c_switch_machine)
1679 CPP_to_sh(C_SWITCH_SYSTEM, c_switch_system)
1681 CPP_to_sh(LD_SWITCH_MACHINE, ld_switch_machine)
1682 CPP_to_sh(LD_SWITCH_SYSTEM, ld_switch_system)
1684 CPP_to_sh(UNEXEC, unexec, unexec.o)
1686 CPP_to_sh(LD_SWITCH_SHARED, ld_switch_shared, -c)
1688 #ifdef ORDINARY_LINK
1689 #define LD "\$(CC) \$(CFLAGS)"
1690 #else /* no ORDINARY LINK */
1691 #ifdef COFF_ENCAPSULATE
1692 #define LD "\$(CC) -nostdlib"
1693 #else /* not COFF_ENCAPSULATE */
1696 #else /* ! defined (LINKER) */
1698 #endif /* ! defined (LINKER) */
1699 #endif /* ! defined (COFF_ENCAPSULATE) */
1700 #endif /* not ORDINARY_LINK */
1703 CPP_to_sh(LIB_GCC, lib_gcc)
1704 CPP_to_sh(LD_TEXT_START_ADDR, ld_text_start_addr)
1706 #if ! defined (ORDINARY_LINK) && !defined (START_FILES)
1708 #ifdef COFF_ENCAPSULATE
1709 #define START_FILES "pre-crt0.o /usr/local/lib/gcc-crt0.o"
1710 #else /* ! defined (COFF_ENCAPSULATE) */
1711 #define START_FILES "pre-crt0.o /lib/crt0.o"
1712 #endif /* ! defined (COFF_ENCAPSULATE) */
1713 #else /* ! defined (NO_REMAP) */
1714 #define START_FILES "ecrt0.o"
1715 #endif /* ! defined (NO_REMAP) */
1716 #endif /* no ORDINARY_LINK */
1720 configure___ start_files=START_FILES
1722 CPP_boolean_to_sh(ORDINARY_LINK, ordinary_link)
1723 CPP_boolean_to_sh(SYSTEM_MALLOC, system_malloc)
1724 CPP_boolean_to_sh(TERMINFO, have_terminfo)
1725 CPP_boolean_to_sh(MAIL_USE_FLOCK, mail_use_flock)
1726 CPP_boolean_to_sh(MAIL_USE_LOCKF, mail_use_lockf)
1729 dnl The value of CPP is a quoted variable reference, so we need to do this
1730 dnl to get its actual value...
1731 CPP=`eval "echo $CPP"`
1734 eval `$CPP -Isrc $tempcname \
1735 | sed -n -e "s/[ TAB]*=[ TAB\"]*/='/" -e "s/[ TAB\"]*\$/'/" -e "s/^configure___//p"`
1736 changequote([, ])dnl
1740 dnl For debugging...
1741 test "$extra_verbose" = "yes" && \
1742 PRINT_VAR(libs_machine libs_system libs_termcap libs_standard
1743 objects_machine objects_system c_switch_machine c_switch_system
1744 ld_switch_machine ld_switch_system unexec ld_switch_shared
1745 ld lib_gcc ld_text_start_addr start_files ordinary_link
1746 have_terminfo mail_use_flock mail_use_lockf) && echo ""
1748 dnl Non-ordinary link usually requires -lc
1749 test "$ordinary_link" = "no" -a -z "$libs_standard" && libs_standard="-lc"
1751 dnl Compiler-specific hacks
1752 dnl DEC C requires -std
1753 test "$__DECC" = "yes" && XE_APPEND(-std, c_switch_site)
1755 dnl Calculalate value of CFLAGS:
1756 dnl Use either command line flag, environment var, or autodetection
1757 if test "$cflags_specified" = "no"; then
1758 dnl Following values of CFLAGS are known to work well.
1759 dnl Should we take debugging options into consideration?
1760 if test "$GCC" = "yes"; then
1761 CFLAGS="-g -O3 -Wall -Wno-switch"
1762 dnl I'm not convinced this is a good idea any more. -sb
1763 dnl test "$opsys $machine" = "linux intel386" && \
1764 dnl CFLAGS="$CFLAGS -fno-strength-reduce -malign-loops=2 -malign-jumps=2 -malign-functions=2"
1765 dnl cygwin can't cope with -O3
1766 test "$opsys $machine" = "cygwin32 intel386" && \
1767 CFLAGS="-g -O2 -Wall -Wno-switch"
1768 elif test "$__SUNPRO_C" = "yes"; then
1770 sol2 ) CFLAGS="-v -xO4" ;;
1771 sunos4* ) CFLAGS="-xO2";;
1773 elif test "$__DECC" = "yes"; then
1775 elif test "$CC" = "xlc"; then
1776 CFLAGS="-g -O3 -qstrict -qnoansialias -qlibansi -qinfo -qro -qmaxmem=20000"
1777 dnl ### Add optimal CFLAGS support for other compilers HERE!
1779 CFLAGS="-O" ;dnl The only POSIX-approved flag
1783 dnl Inform compiler that certain flags are meant for the linker
1784 dnl XE_PROTECT_LINKER_FLAGS(shell_var)
1785 define([XE_PROTECT_LINKER_FLAGS], [
1786 if test "$GCC" = "yes"; then
1787 set x $[$1]; shift; [$1]=""
1788 while test -n "[$]1"; do
1790 -L | -l | -u ) [$1]="$[$1] [$]1 [$]2"; shift ;;
1791 -L* | -l* | -u* | -Wl* ) [$1]="$[$1] [$]1" ;;
1793 * ) [$1]="$[$1] -Xlinker [$]1" ;;
1798 XE_PROTECT_LINKER_FLAGS(ld_switch_system)
1799 XE_PROTECT_LINKER_FLAGS(ld_switch_machine)
1800 XE_PROTECT_LINKER_FLAGS(LDFLAGS)
1801 XE_PROTECT_LINKER_FLAGS(ld_call_shared)
1803 dnl Add s&m-determined objects (including unexec) to link line
1804 test -n "$objects_machine" && XE_ADD_OBJS($objects_machine)
1805 test -n "$objects_system" && XE_ADD_OBJS($objects_system)
1806 test -n "$unexec" && XE_ADD_OBJS($unexec)
1808 dnl Dynodump (Solaris 2.x, x<6)
1809 AC_MSG_CHECKING(for dynodump)
1810 if test "$unexec" != "unexsol2.o"; then
1815 XE_APPEND(dynodump, MAKE_SUBDIR)
1816 XE_APPEND(dynodump, SRC_SUBDIR_DEPS)
1818 sparc ) dynodump_arch=sparc ;;
1819 *86* ) dynodump_arch=i386 ;;
1820 powerpc ) dynodump_arch=ppc ;;
1822 dnl Dynodump requires the system linker
1823 test "$GCC" = "yes" && XE_APPEND(-fno-gnu-linker, ld_switch_site)
1826 dnl Feed s&m crud to src/Makefile
1828 dnl Linux/powerpc needs the following magic for some reason
1829 test "$machine$opsys" = "powerpclinux" && start_flags="-T $srcdir/src/ppc.ldscript"
1831 if test "$unexec" = "unexaix.o"; then
1832 dnl AIX needs various hacks to make static linking work.
1833 if test "$dynamic" = "no"; then
1834 start_flags="-Wl,-bnso,-bnodelcsect"
1835 test "$GCC" = "yes" && start_flags="-B/bin/ ${start_flags}"
1836 for f in "/lib/syscalls.exp" "/lib/threads.exp"; do
1837 if test -r "$f"; then start_flags="${start_flags},-bI:${f}"; fi
1839 for f in "/usr/lpp/X11/bin/smt.exp" "/usr/bin/X11/smt.exp"; do
1840 if test -r "$f"; then start_flags="${start_flags},-bI:${f}"; break; fi
1842 AC_CHECK_LIB(C, terminateAndUnload, XE_APPEND(-lC, libs_system))
1844 elif test -n "$ld_text_start_addr"; then
1845 start_flags="-T $ld_text_start_addr -e __start"
1847 AC_SUBST(start_flags)
1849 AC_SUBST(ld_switch_shared)
1850 AC_SUBST(start_files)
1851 if test "$ordinary_link" = "no" -a "$GCC" = "yes"; then
1852 test -z "$linker" && linker='$(CC) -nostdlib'
1853 test -z "$lib_gcc" && lib_gcc='`$(CC) -print-libgcc-file-name`'
1855 test "$GCC" != "yes" && lib_gcc=
1859 dnl ---------------------------------------------------------------
1860 dnl Add site and system specific flags to compile and link commands
1861 dnl ---------------------------------------------------------------
1863 dnl All dirs present in site-prefixes will be searched for include/ and lib/
1864 dnl subdirs. This can avoid specifying both site-includes and site-libraries.
1865 dnl Those dirs will take precedence over the standard places, but not over
1866 dnl site-includes and site-libraries.
1868 dnl --site-prefixes (multiple dirs)
1869 if test -n "$site_prefixes"; then
1870 for arg in $site_prefixes; do
1873 * ) argi="-I${arg}/include" ; argl="-L${arg}/lib" ;;
1875 XE_APPEND($argi, c_switch_site)
1876 XE_APPEND($argl, ld_switch_site)
1880 dnl --site-libraries (multiple dirs)
1881 if test -n "$site_libraries"; then
1882 for arg in $site_libraries; do
1883 case "$arg" in -* ) ;; * ) arg="-L${arg}" ;; esac
1884 XE_APPEND($arg, ld_switch_site)
1888 dnl --site-includes (multiple dirs)
1889 if test -n "$site_includes"; then
1890 for arg in $site_includes; do
1891 case "$arg" in -* ) ;; * ) arg="-I${arg}" ;; esac
1892 XE_APPEND($arg, c_switch_site)
1896 dnl GNU software installs by default into /usr/local/{include,lib}
1897 dnl if test -d "/usr/local/include" -a -d "/usr/local/lib"; then
1898 dnl XE_APPEND("-L/usr/local/lib", ld_switch_site)
1899 dnl XE_APPEND("-I/usr/local/include", c_switch_site)
1902 dnl Extra system-specific library directories - please add to list
1903 for dir in "/usr/ccs/lib"; do
1904 test -d "$dir" && XE_APPEND(-L${dir}, ld_switch_site)
1907 dnl --site-runtime-libraries (multiple dirs)
1908 if test -n "$site_runtime_libraries"; then
1909 LD_RUN_PATH="`echo $site_runtime_libraries | sed -e 's/ */:/g'`"
1913 dnl -------------------------------------
1914 dnl Compute runtime library path
1915 dnl -------------------------------------
1917 if test "$dynamic" = "no"; then add_runtime_path=no
1918 elif test -n "$LD_RUN_PATH"; then add_runtime_path=yes
1919 else case "$opsys" in
1920 sol2 | irix* | *bsd* | decosf* ) add_runtime_path=yes ;;
1921 * ) add_runtime_path=no ;;
1925 if test "$add_runtime_path" = "yes"; then
1926 dnl Try to autodetect runtime library flag (usually -R),
1927 dnl and whether it works (or at least does no harm)
1928 AC_MSG_CHECKING("for runtime libraries flag")
1930 sol2 ) dash_r="-R" ;;
1931 decosf* | linux* ) dash_r="-rpath " ;;
1934 for try_dash_r in "-R" "-R " "-rpath "; do
1935 xe_check_libs="${try_dash_r}/no/such/file-or-directory"
1936 XE_PROTECT_LINKER_FLAGS(xe_check_libs)
1937 AC_TRY_LINK(, , dash_r="$try_dash_r")
1939 test -n "$dash_r" && break
1942 if test -n "$dash_r";
1943 then AC_MSG_RESULT("\"${dash_r}\"")
1944 else AC_MSG_RESULT(NONE)
1948 xe_add_unique_runpath_dir='
1950 for xe_dir in $runpath_dirs; do dnl Uniquify
1951 test "$xe_dir" = "$xe_runpath_dir" && xe_add_p=no
1953 if test "$xe_add_p" = "yes"; then
1954 test -n "$runpath" && runpath="${runpath}:"
1955 runpath="${runpath}${xe_runpath_dir}"
1956 runpath_dirs="$runpath_dirs $xe_runpath_dir"
1960 dnl XE_ADD_RUNPATH_DIR(directory)
1961 define([XE_ADD_RUNPATH_DIR],[{
1963 dnl PRINT_VAR(ld_switch_site ld_switch_x_site runpath xe_runpath_dir LD_RUN_PATH xe_ldflags)
1964 test "$xe_runpath_dir" != "/lib" -a \
1965 "$xe_runpath_dir" != "/usr/lib" -a \
1966 -n "`ls ${xe_runpath_dir}/*.s[[ol]] 2>/dev/null`" && \
1967 eval "$xe_add_unique_runpath_dir"
1970 dnl XE_COMPUTE_RUNPATH()
1971 define([XE_COMPUTE_RUNPATH],[
1972 if test "$add_runtime_path" = "yes" -a -n "$dash_r"; then
1973 dnl Remove runtime paths from current ld switches
1974 ld_switch_site=`echo '' $ld_switch_site | sed -e 's:^ ::' -e "s/$dash_r[[^ ]]*//g"`
1975 ld_switch_x_site=`echo '' $ld_switch_x_site | sed -e 's:^ ::' -e "s/$dash_r[[^ ]]*//g"`
1976 dnl PRINT_VAR(ld_switch_site ld_switch_x_site)
1978 dnl Fix up Runtime path
1979 dnl If LD_RUN_PATH is set in environment, use that.
1980 dnl In this case, assume user has set the right value.
1981 runpath="" runpath_dirs=""
1982 if test -n "$LD_RUN_PATH"; then
1983 runpath="$LD_RUN_PATH"
1984 elif test "$GCC" = "yes"; then
1985 dnl Compute runpath from gcc's -v output
1986 ld_switch_run_save="$ld_switch_run"; ld_switch_run=""
1987 echo "int main(int argc, char *argv[[]]) {return 0;}" > conftest.c
1988 xe_runpath_link='${CC-cc} -o conftest -v $CFLAGS '"$xe_ldflags"' conftest.$ac_ext 2>&1 1>/dev/null'
1989 for arg in `eval "$xe_runpath_link" | grep ' -L'`; do
1990 case "$arg" in P,* | -L* | -R* )
1991 for dir in `echo '' "$arg" | sed -e 's:^ ::' -e 's/^..//' -e 'y/:/ /'`; do
1992 XE_ADD_RUNPATH_DIR("$dir")
1996 ld_switch_run="$ld_switch_run_save"
1999 dnl Add all directories with .so files to runpath
2000 for arg in $ld_switch_site $ld_switch_x_site; do
2001 case "$arg" in -L*) XE_ADD_RUNPATH_DIR(`echo '' "$arg" | sed -e 's:^ ::' -e 's/^-L//'`);; esac
2003 dnl Sometimes /opt/SUNWdt/lib is the only installed Motif available
2004 if test "$opsys $need_motif" = "sol2 yes"; then
2005 xe_runpath_dir="/opt/SUNWdt/lib";
2006 eval "$xe_add_unique_runpath_dir";
2008 fi dnl Compute $runpath
2010 if test -n "$runpath"; then
2011 ld_switch_run="${dash_r}${runpath}"
2012 XE_PROTECT_LINKER_FLAGS(ld_switch_run)
2013 test "$extra_verbose" = "yes" && echo "Setting runpath to $runpath"
2017 XE_COMPUTE_RUNPATH()
2019 dnl -----------------------------------
2020 dnl Do some misc autoconf-special tests
2021 dnl -----------------------------------
2023 dnl Do the opsystem or machine files prohibit the use of the GNU malloc?
2024 dnl Assume not, until told otherwise.
2026 if test "$with_dlmalloc" != "no"; then
2031 after_morecore_hook_exists=yes
2032 AC_CHECK_FUNC(malloc_get_state, ,doug_lea_malloc=no)
2033 AC_CHECK_FUNC(malloc_set_state, ,doug_lea_malloc=no)
2034 AC_MSG_CHECKING(whether __after_morecore_hook exists)
2035 AC_TRY_LINK([extern void (* __after_morecore_hook)();],[__after_morecore_hook = 0],
2036 [AC_MSG_RESULT(yes)],
2038 after_morecore_hook_exists=no])
2039 if test "$system_malloc" = "yes" ; then
2042 (The GNU allocators don't work with this system configuration)."
2043 elif test "$with_system_malloc" = "yes" ; then
2046 (User chose not to use GNU allocators)."
2047 elif test "$with_debug_malloc" = "yes" ; then
2050 (User chose to use Debugging Malloc)."
2053 if test "$doug_lea_malloc" = "yes" ; then
2054 if test "$GNU_MALLOC" = yes ; then
2056 (Using Doug Lea's new malloc from the GNU C Library.)"
2058 AC_DEFINE(DOUG_LEA_MALLOC)
2059 if test "$after_morecore_hook_exists" = "no" ; then
2061 (Using Doug Lea's new malloc from the Linux C Library.)"
2062 AC_DEFINE(_NO_MALLOC_WARNING_)
2064 use_minimal_tagbits=yes
2067 dnl #### mcheck is broken in all versions of Linux libc and glibc.
2068 dnl Try this again when 2.1 hits the streets.
2069 dnl Avoid using free-hook.c if support exists for malloc debugging in libc
2070 dnl have_libmcheck=no
2071 dnl if test "$error_check_malloc" = "yes" -a \
2072 dnl "$have_glibc" = "yes" -a \
2073 dnl "$doug_lea_malloc" = "yes"; then
2074 dnl AC_CHECK_HEADERS(mcheck.h)
2075 dnl AC_CHECK_LIB(mcheck, mcheck, have_libmcheck=yes, have_libmcheck=no)
2078 dnl if test "$have_libmcheck" = "yes"; then
2079 dnl AC_DEFINE(HAVE_LIBMCHECK)
2080 dnl libmcheck=-lmcheck
2081 dnl AC_SUBST(libmcheck)
2084 dnl Some other nice autoconf tests. If you add a test here which
2085 dnl should make an entry in src/config.h, do not forget to add an
2086 dnl #undef clause to src/config.h.in for autoconf to modify.
2092 dnl checks for header files
2093 AC_CHECK_HEADERS(mach/mach.h sys/stropts.h sys/timeb.h sys/time.h unistd.h)
2094 AC_CHECK_HEADERS(utime.h locale.h libgen.h fcntl.h ulimit.h cygwin/version.h)
2095 AC_CHECK_HEADERS(linux/version.h kstat.h sys/pstat.h inttypes.h sys/un.h a.out.h)
2101 dnl Some systems have utime.h but do not declare the struct anyplace.
2102 AC_MSG_CHECKING(for struct utimbuf)
2103 AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
2104 #include <sys/time.h>
2107 #ifdef HAVE_SYS_TIME_H
2108 #include <sys/time.h>
2115 #endif], [static struct utimbuf x; x.actime = x.modtime;],
2117 AC_DEFINE(HAVE_STRUCT_UTIMBUF)],
2120 dnl checks for typedefs
2128 AC_MSG_CHECKING(for struct timeval)
2129 AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
2130 #include <sys/time.h>
2133 #ifdef HAVE_SYS_TIME_H
2134 #include <sys/time.h>
2138 #endif], [static struct timeval x; x.tv_sec = x.tv_usec;],
2141 AC_DEFINE(HAVE_TIMEVAL)],
2145 dnl checks for structure members
2149 dnl checks for compiler characteristics
2152 dnl check for Make feature
2155 dnl check byte order
2158 dnl define SIZEOF_TYPE
2159 AC_CHECK_SIZEOF(short)
2160 if test "$ac_cv_sizeof_short" = 0; then
2162 echo "*** PANIC *** Configure tests are not working - compiler is broken."
2163 echo "*** PANIC *** Please examine config.log for compilation errors."
2166 AC_CHECK_SIZEOF(int)
2167 AC_CHECK_SIZEOF(long)
2168 AC_CHECK_SIZEOF(long long)
2169 AC_CHECK_SIZEOF(void *)
2171 dnl check for long file names
2172 AC_SYS_LONG_FILE_NAMES
2174 dnl -lm is required by LISP_FLOAT_TYPE, among other things
2175 AC_CHECK_LIB(m, sin)
2177 dnl Floating operation support is now unconditional
2178 AC_DEFINE(LISP_FLOAT_TYPE)
2180 AC_TRY_LINK([#include <math.h>],
2181 [return atanh(1.0) + asinh(1.0) + acosh(1.0); ],
2182 AC_DEFINE(HAVE_INVERSE_HYPERBOLIC))
2184 dnl Determine type of mail locking from configure args and s&m headers
2185 AC_CHECKING(type of mail spool file locking)
2186 test -z "$mail_locking" -a "$mail_use_flock" = "yes" && mail_locking=flock
2187 test -z "$mail_locking" -a "$mail_use_lockf" = "yes" && mail_locking=lockf
2188 if test "$mail_locking" = "lockf"; then AC_DEFINE(REAL_MAIL_USE_LOCKF)
2189 elif test "$mail_locking" = "flock"; then AC_DEFINE(REAL_MAIL_USE_FLOCK)
2190 else mail_locking="dot-locking"
2193 dnl Used by getloadavg() - does not require root priveleges
2194 AC_CHECK_LIB(kstat, kstat_open)
2196 dnl Another way to get the load average
2197 AC_CHECK_LIB(kvm, kvm_read)
2199 case "$opsys" in decosf*)
2200 AC_CHECK_LIB(pthreads, cma_open)
2201 test "$ac_cv_lib_pthreads_cma_open" = "yes" && \
2202 c_switch_site="$c_switch_site -threads" ;;
2205 AC_MSG_CHECKING(whether the -xildoff compiler flag is required)
2206 if ${CC-cc} '-###' -xildon no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; then
2207 if ${CC-cc} '-###' -xildoff no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ;
2208 then AC_MSG_RESULT(no);
2209 else AC_MSG_RESULT(yes); XE_APPEND(-xildoff, ld_switch_site)
2211 else AC_MSG_RESULT(no)
2214 dnl Link with "-z ignore" on Solaris if supported
2215 if test "$opsys" = "sol2" && test "$OS_RELEASE" -ge 56; then
2216 AC_MSG_CHECKING(for \"-z ignore\" linker flag)
2217 case "`ld -h 2>&1`" in
2218 *-z\ ignore\|record* ) AC_MSG_RESULT(yes)
2219 XE_PREPEND(-z ignore, ld_switch_site) ;;
2220 *) AC_MSG_RESULT(no) ;;
2224 dnl ----------------------
2225 dnl Choose a window system
2226 dnl ----------------------
2228 AC_CHECKING("for specified window system")
2230 if test "$with_x11" != "no"; then
2231 dnl User-specified --x-includes or --x-libraries implies --with-x11.
2232 test "$x_includes $x_libraries" != "NONE NONE" && \
2233 window_system=x11 with_x11=yes
2235 dnl Autodetection of X11 libraries and includes
2236 dnl -------------------------------------------
2237 dnl AC_PATH_XTRA thinks it can find our X headers and includes, but
2238 dnl it often gets it wrong, so we only use it as a last resort.
2240 dnl $OPENWINHOME implies --x-includes and --x-libraries
2241 dnl Not (yet) handled by autoconf2
2242 if test "$x_includes $x_libraries" = "NONE NONE" \
2243 -a -n "$OPENWINHOME" \
2244 -a "$OPENWINHOME" != "/usr/openwin" \
2245 -a -d "$OPENWINHOME"; then
2246 test -d "$OPENWINHOME/lib" && x_libraries="$OPENWINHOME/lib"
2247 test -d "$OPENWINHOME/include" && x_includes="$OPENWINHOME/include"
2248 test -d "$OPENWINHOME/share/include" && x_includes="$OPENWINHOME/share/include"
2251 if test "$x_includes" = "NONE"; then
2252 dnl AC_PATH_XTRA often guesses /usr/include, when some other
2253 dnl include directory is a MUCH better guess (Linux, HP-UX 10.20).
2254 dnl This is a workaround for idiot (esp. HP) system vendors, who
2255 dnl provide a /usr/include/X11, but DON'T FULLY POPULATE IT.
2256 for dir in "/usr/X11" "/usr/X11R6"; do
2257 if test -d "$dir/include/X11"; then x_includes="$dir/include"; break; fi
2261 if test "$x_libraries" = "NONE"; then
2262 for dir in "/usr/X11/lib" "/usr/X11R6/lib" "/usr/lib/X11R6"; do
2263 if test -r "$dir/libX11.a"; then x_libraries="$dir"; break; fi
2267 AC_PATH_XTRA # Autoconf claims to find X library and include dirs for us.
2268 if test "$no_x" = "yes"
2269 then with_x11=no window_system=none HAVE_X_WINDOWS=no
2270 else with_x11=yes window_system=x11 HAVE_X_WINDOWS=yes
2275 yes ) window_system=x11 HAVE_X_WINDOWS=yes ;;
2276 no ) window_system=none HAVE_X_WINDOWS=no ;;
2279 if test "$with_x11" = "yes"; then
2280 AC_DEFINE(HAVE_X_WINDOWS)
2281 XE_APPEND(lwlib, MAKE_SUBDIR)
2282 XE_APPEND(lwlib, SRC_SUBDIR_DEPS)
2284 dnl Try to find Motif/CDE/Tooltalk dirs
2285 dnl These take precedence over other X libs/includes, so PRE-pend
2286 for lib_dir in "/usr/dt/lib" "/usr/lib/Motif2.1" "/usr/lib/Motif1.2" "/usr/lib/Motif1.1"; do
2287 inc_dir=`echo $lib_dir | sed -e 's/lib/include/'`
2288 if test -d "$lib_dir" -a -d "$inc_dir"; then
2289 case "$x_libraries" in *"$lib_dir"* ) ;; *)
2290 x_libraries="$lib_dir $x_libraries"
2291 XE_PREPEND(-L${lib_dir}, X_LIBS) ;;
2293 case "$x_includes" in "$inc_dir"* ) ;; *)
2294 x_includes="$inc_dir $x_includes"
2295 XE_PREPEND(-I${inc_dir}, X_CFLAGS) ;;
2297 break; dnl only need ONE Motif implementation!
2301 dnl Contrib X libs/includes do NOT take precedence, so AP-pend
2302 for rel in "X11R6" "X11R5" "X11R4"; do
2303 lib_dir="/usr/contrib/$rel/lib" inc_dir="/usr/contrib/$rel/include"
2304 if test -d "$lib_dir" -a -d "$inc_dir"; then
2305 case "$x_libraries" in *"$lib_dir"* ) ;; *)
2306 x_libraries="$x_libraries $lib_dir"
2307 XE_APPEND(-L${lib_dir}, X_LIBS)
2309 case "$x_includes" in "$inc_dir"* ) ;; *)
2310 x_includes="$x_includes $inc_dir"
2311 XE_APPEND(-I${inc_dir}, X_CFLAGS)
2313 break; dnl Only need ONE X11 implementation !
2317 dnl Avoid version mismatch for shared library libXm.so on osf4
2318 if test "$GCC" = yes -a -d /usr/shlib; then XE_APPEND(-L/usr/shlib, X_LIBS); fi
2320 ld_switch_x_site="$X_LIBS"
2322 XE_COMPUTE_RUNPATH()
2324 if test "$extra_verbose" = "yes"; then
2325 echo; echo "X11 compilation variables:"
2326 PRINT_VAR(x_libraries x_includes X_CFLAGS X_LIBS X_PRE_LIBS X_EXTRA_LIBS)
2330 dnl Set up bitmaps search path.
2331 dnl The original suggestion was to unconditionally to append X11/bitmaps
2332 dnl to each element of $x_includes, I'm pretty sure this is the wrong
2333 dnl thing to do. We test for bitmaps and X11/bitmaps directories on each
2334 dnl element and add them to BITMAPDIR if they exist.
2336 if test "$x_includes" != NONE; then
2337 for i in $x_includes; do
2338 if test -d "$i/bitmaps"; then
2339 bitmapdirs="$i/bitmaps:$bitmapdirs"
2341 if test -d "$i/X11/bitmaps"; then
2342 bitmapdirs="$i/X11/bitmaps:$bitmapdirs"
2345 bitmapdirs=`echo "$bitmapdirs" | sed s/.$//`
2347 test ! -z "$bitmapdirs" && AC_DEFINE_UNQUOTED(BITMAPDIR, "$bitmapdirs")
2349 dnl Autodetect defines extracted from X config by xmkmf, e.g. NARROWPROTO
2350 AC_CHECKING(for X defines extracted by xmkmf)
2352 if mkdir conftestdir; then
2354 cat > Imakefile <<'EOF'
2356 @echo ${PROTO_DEFINES} ${STD_DEFINES}
2358 if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then
2359 # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
2360 xmkmf_defines=`${MAKE-make} xetest 2>/dev/null | grep -v make`
2364 for word in $xmkmf_defines; do
2367 -D* ) word=`echo '' $word | sed -e 's:^ *-D::'`
2368 AC_DEFINE_UNQUOTED($word) ;;
2373 dnl make sure we can find Intrinsic.h
2374 AC_CHECK_HEADER(X11/Intrinsic.h, ,
2375 [AC_MSG_ERROR("Unable to find X11 header files.")])
2377 dnl -lXt and -lX11 are required
2378 dnl Some broken systems require the magic "-b i486-linuxaout" flag
2379 AC_CHECK_LIB(X11, XOpenDisplay, have_lib_x11=yes)
2380 if test "$have_lib_x11" != "yes"; then
2381 AC_CHECK_LIB(X11, XGetFontProperty,
2382 ld_switch_x_site="-b i486-linuxaout $ld_switch_x_site",
2383 [AC_MSG_ERROR("Unable to find X11 libraries.")],
2387 test "$extra_verbose" = "yes" && echo " Setting libs_x to \"-lX11\""
2389 dnl Autodetect -lXext
2390 AC_CHECK_LIB(Xext, XShapeSelectInput, XE_PREPEND(-lXext, libs_x))
2393 AC_CHECK_LIB(Xt, XtOpenDisplay, XE_PREPEND(-lXt, libs_x),
2394 AC_MSG_ERROR("Unable to find X11 libraries."))
2396 AC_MSG_CHECKING(the version of X11 being used)
2397 AC_TRY_RUN([#include <X11/Intrinsic.h>
2398 int main(int c, char *v[]) { return c>1 ? XlibSpecificationRelease : 0; }],
2399 [./conftest foobar; x11_release=$?],[x11_release=4],[x11_release=4])
2400 AC_MSG_RESULT(R${x11_release})
2401 AC_DEFINE_UNQUOTED(THIS_IS_X11R${x11_release})
2403 AC_CHECK_HEADERS(X11/Xlocale.h)
2405 dnl remove this - we should avoid checking for specific OS
2406 AC_MSG_CHECKING(for XFree86)
2407 if test -d "/usr/X386/include" -o \
2408 -f "/etc/XF86Config" -o \
2409 -f "/etc/X11/XF86Config" -o \
2410 -f "/usr/X11R6/lib/X11/XF86Config"; then
2412 AC_DEFINE(HAVE_XFREE386)
2417 dnl autodetect -lXmu
2418 test -z "$with_xmu" && { AC_CHECK_LIB(Xmu, XmuReadBitmapDataFromFile,
2419 with_xmu=yes, with_xmu=no) }
2420 if test "$with_xmu" = "no"; then
2423 XE_PREPEND(-lXmu, libs_x)
2427 dnl Autodetect -lXbsd
2428 dnl #### Someone, please add a better function than main
2429 AC_CHECK_LIB(Xbsd, main, XE_PREPEND(-lXbsd, libs_x))
2431 dnl Problem with the MIT distribution of X on AIX
2432 if test "$unexec" = "unexaix.o" -a "$x11_release" = "6"; then
2433 dnl X11R6 requires thread-safe code on AIX for some reason
2434 if test "$GCC" = "yes"; then
2435 XE_PREPEND(-mthreads, X_CFLAGS)
2436 XE_PREPEND(-mthreads, libs_x)
2439 "xlc" ) CC="xlc_r" ;;
2440 "xlC" ) CC="xlC_r" ;;
2446 fi dnl $with_x11 = yes
2448 if test "$with_msw" != "no"; then
2449 AC_CHECKING(for MS-Windows)
2450 AC_CHECK_LIB(gdi32,main,with_msw=yes)
2451 if test "$with_msw" = "yes"; then
2452 AC_DEFINE(HAVE_MS_WINDOWS)
2453 install_pp="$blddir/lib-src/installexe.sh"
2454 XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomctl32, libs_system)
2455 test "$with_dragndrop" != no && XE_APPEND(msw, dragndrop_proto)
2456 if test "$window_system" != x11; then
2458 test "$with_scrollbars" != "no" && with_scrollbars=msw \
2459 && XE_ADD_OBJS(scrollbar-msw.o)
2460 test "$with_menubars" != "no" && with_menubars=msw \
2461 && XE_ADD_OBJS(menubar-msw.o)
2462 test "$with_toolbars" != "no" && with_toolbars=msw \
2463 && XE_ADD_OBJS(toolbar-msw.o)
2464 test "$with_dialogs" != "no" && with_dialogs=msw \
2465 && XE_ADD_OBJS(dialog-msw.o)
2467 test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar-msw.o)
2468 test "$with_menubars" != "no" && XE_ADD_OBJS(menubar-msw.o)
2469 test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar-msw.o)
2470 test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog-msw.o)
2472 dnl check for our special version of select
2473 AC_TRY_RUN([#include <fcntl.h>
2474 int main() { return (open("/dev/windows", O_RDONLY, 0) > 0)? 0 : 1; }],
2475 [AC_DEFINE(HAVE_MSG_SELECT)])
2477 with_file_coding=yes
2478 use_minimal_tagbits=yes
2479 use_indexed_lrecord_implementation=yes
2480 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)
2484 AC_SUBST(install_pp)
2486 test -z "$window_system" && window_system="none"
2488 dnl Test for features that require a window system - ANY window system
2489 if test "$window_system" = "none"; then
2490 for feature in menubars scrollbars toolbars dialogs dragndrop
2492 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
2493 AC_MSG_WARN([--with-$feature ignored: Not valid without window system support])
2495 eval "with_${feature}=no"
2498 test -z "$with_toolbars" && with_toolbars=yes
2501 dnl ### Test for features that require mswindows support - currently none
2502 dnl ### MS-Windows folks: add code here..... (martin)
2503 if test "$with_msw" != "yes"; then
2504 for feature in MARTIN_IS_CLUELESS_ABOUT_MSW_FEATURES
2506 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
2507 AC_MSG_WARN([--with-$feature ignored: Not valid without MS-Windows support])
2509 eval "with_${feature}=no"
2515 dnl Test for features that require X11 support
2516 if test "$with_x11" != "yes"; then
2517 dnl It ought to be reasonable to have no output device at all, and only use
2518 dnl XEmacs in --batch mode.
2519 dnl if test "$with_tty" = "no" ; then
2520 dnl AC_MSG_ERROR([No window system support and no TTY support - Unable to proceed.])
2522 for feature in tooltalk cde offix session xim xmu \
2525 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
2526 AC_MSG_WARN([--with-$feature ignored: Not valid without X support])
2528 eval "with_${feature}=no"
2532 dnl FSF 19.29 has some bitmapdir stuff here.
2535 case "$window_system" in
2536 x11 ) HAVE_X_WINDOWS=yes; echo " Using X11." ;;
2537 msw ) HAVE_X_WINDOWS=no ; echo " Using MS-Windows." ;;
2538 none ) HAVE_X_WINDOWS=no ; echo " Using no window system." ;;
2541 case "$x_libraries" in *X11R4* )
2542 test "$opsys" = "hpux9" && opsysfile="s/hpux9-x11r4.h"
2543 test "$opsys" = "hpux9-shr" && opsysfile="s/hpux9shxr4.h"
2546 dnl Enable or disable proper session-management
2547 AC_CHECKING(for session-management option);
2548 dnl if test "$with_session" = "yes"; then
2549 if test "$with_session" != "no"; then
2550 AC_DEFINE(HAVE_SESSION)
2553 dnl Autodetect Xauth
2554 dnl -lXau is only used by gnuclient, so use a special variable for Xauth X libs
2555 test -z "$with_xauth" && test "$window_system" = "none" && with_xauth=no
2556 test -z "$with_xauth" && { AC_CHECK_HEADER(X11/Xauth.h, ,with_xauth=no) }
2557 test -z "$with_xauth" && { AC_CHECK_LIB(Xau, XauGetAuthByAddr,[:],with_xauth=no) }
2558 test -z "$with_xauth" && with_xauth=yes
2559 if test "$with_xauth" = "yes"; then
2560 AC_DEFINE(HAVE_XAUTH)
2561 XE_SPACE(libs_xauth, $X_EXTRA_LIBS -lXau $libs_x $X_PRE_LIBS)
2563 AC_SUBST(libs_xauth)
2565 dnl This one is for the static initializeds variables in
2566 dnl offix.c, so that the thing is dumped after lastfile.o
2569 dnl Autodetect tooltalk
2570 if test "$with_tooltalk" != "no" ; then
2571 dnl autodetect the location of tt_c.h
2572 dnl tt_c.h might be in Tt or desktop include directories
2573 for dir in "" "Tt/" "desktop/" ; do
2574 AC_CHECK_HEADER(${dir}tt_c.h, tt_c_h_path="${dir}tt_c.h"; break)
2576 if test -z "$tt_c_h_path"; then
2577 if test "$with_tooltalk" = "yes"; then
2578 USAGE_ERROR("Unable to find required tooltalk header files.")
2583 if test "$with_tooltalk" != "no" ; then
2584 for extra_libs in "" "-lI18N -lce" "-lcxx"; do
2585 AC_CHECK_LIB(tt, tt_message_create,
2586 tt_libs="-ltt $extra_libs"; break, [:],$extra_libs)
2588 if test -z "$tt_libs"; then
2589 if test "$with_tooltalk" = "yes"; then
2590 USAGE_ERROR("Unable to find required tooltalk libraries.")
2595 test -z "$with_tooltalk" && with_tooltalk=yes
2596 if test "$with_tooltalk" = "yes"; then
2598 AC_DEFINE_UNQUOTED(TT_C_H_PATH, "$tt_c_h_path")
2599 XE_PREPEND($tt_libs, libs_x)
2600 XE_ADD_OBJS(tooltalk.o)
2604 test -z "$with_cde" && { AC_CHECK_HEADER(Dt/Dt.h, , with_cde=no) }
2605 test -z "$with_cde" && { AC_CHECK_LIB(DtSvc, DtDndDragStart, [:], with_cde=no) }
2606 test -z "$with_cde" && with_cde=yes
2607 if test "$with_dragndrop" = no; then
2608 AC_MSG_WARN([No CDE without generic Drag'n'Drop support])
2611 if test "$with_cde" = "yes" ; then
2613 XE_PREPEND(-lDtSvc, libs_x)
2614 XE_APPEND(CDE, dragndrop_proto)
2615 with_tooltalk=yes # CDE requires Tooltalk
2616 need_motif=yes # CDE requires Motif
2619 dnl Always compile OffiX unless --without-offix is given, no
2620 dnl X11 support is compiled in, no standard Xmu is avaiable,
2621 dnl or dragndrop support is disabled
2622 dnl Because OffiX support currently loses when more than one display
2623 dnl is in use, we now disable it by default -slb 07/10/1998.
2624 test "$window_system" != "x11" && with_offix=no
2625 if test "$with_xmu" != yes -a "$with_x11" = yes; then
2626 AC_MSG_WARN([No OffiX without real Xmu support])
2629 if test "$with_dragndrop" = no; then
2630 AC_MSG_WARN([No OffiX without generic Drag'n'Drop support])
2633 if test "$with_cde" = yes; then
2634 AC_MSG_WARN([CDE already found, disabling OffiX support])
2637 test -z "$with_offix" && with_offix=no
2638 if test "$with_offix" = "yes"; then
2639 AC_DEFINE(HAVE_OFFIX_DND)
2640 XE_APPEND(offix.o, dnd_objs)
2641 XE_APPEND(OffiX, dragndrop_proto)
2644 dnl Autodetect Drag'n'Drop support
2645 dnl always included if CDE, Offix, or MSWindows are defined
2646 AC_MSG_CHECKING(if drag and drop API is needed)
2647 if test "$with_dragndrop" != "no" ; then
2648 if test -n "$dragndrop_proto" ; then
2650 AC_MSG_RESULT([yes (${dragndrop_proto} )])
2651 AC_DEFINE(HAVE_DRAGNDROP)
2652 XE_APPEND(dragdrop.o, extra_objs)
2660 AC_CHECKING(for LDAP)
2661 test -z "$with_ldap" && { AC_CHECK_HEADER(ldap.h, ,with_ldap=no) }
2662 test -z "$with_ldap" && { AC_CHECK_HEADER(lber.h, ,with_ldap=no) }
2663 if test "$with_ldap" != "no"; then
2664 test -z "$with_umich_ldap" && { AC_CHECK_LIB(ldap, ldap_open, with_umich_ldap=yes, with_umich_ldap=no, -llber) }
2665 test "$with_umich_ldap" = "no" && { AC_CHECK_LIB(ldap10, ldap_set_option, with_ns_ldap=yes, with_ns_ldap=no) }
2666 test -z "$with_ldap" -a \( "$with_umich_ldap" = "yes" -o "$with_ns_ldap" = "yes" \) && with_ldap=yes
2668 if test "$with_ldap" = "yes"; then
2669 AC_DEFINE(HAVE_LDAP)
2670 XE_ADD_OBJS(eldap.o)
2671 if test "$with_umich_ldap" = "yes" ; then
2672 AC_DEFINE(HAVE_UMICH_LDAP)
2673 XE_PREPEND(-llber, LIBS)
2674 XE_PREPEND(-lldap, LIBS)
2675 elif test "$with_ldap" = "yes" -a "$with_ns_ldap" = "yes" ; then
2676 AC_DEFINE(HAVE_NS_LDAP)
2677 XE_PREPEND(-lldap10, LIBS)
2678 elif test "$with_ldap" = "yes" ; then
2679 XE_PREPEND(-lldap, LIBS)
2683 dnl ----------------------
2684 dnl Graphics libraries
2685 dnl ----------------------
2687 if test "$window_system" != "none"; then
2688 AC_CHECKING(for graphics libraries)
2692 if test -z "$with_xpm"; then
2693 AC_MSG_CHECKING(for Xpm - no older than 3.4f)
2695 AC_TRY_RUN([#include <X11/xpm.h>
2696 int main(int c, char **v) {
2698 XpmIncludeVersion != XpmLibraryVersion() ? 1 :
2699 XpmIncludeVersion < 30406 ? 2 : 0 ;}],
2700 [./conftest dummy_arg; xpm_status=$?;
2701 if test "$xpm_status" = "0"; then
2705 if test "$xpm_status" = "1"; then
2706 xpm_problem="Xpm library version and header file version don't match!"
2707 elif test "$xpm_status" = "2"; then
2708 xpm_problem="Xpm library version is too old!"
2710 xpm_problem="Internal xpm detection logic error!"
2713 *** WARNING *** $xpm_problem
2714 I'm not touching that with a 10-foot pole!
2715 If you really want to use the installed version of Xpm, rerun
2716 configure and add '--with-xpm=yes', but don't blame me if XEmacs crashes!"
2720 AC_MSG_RESULT($with_xpm)
2722 if test "$with_xpm" = "yes"; then
2724 XE_PREPEND(-lXpm, libs_x)
2725 AC_MSG_CHECKING(for \"FOR_MSW\" xpm)
2727 AC_TRY_LINK(, [XpmCreatePixmapFromData()],
2731 AC_MSG_RESULT($xpm_for_msw)
2732 if test "$xpm_for_msw" = "yes"; then
2737 dnl For a brief period we had the GIF code split out into a separate library,
2738 dnl but patent problems, etc. sort of squashed that idea.
2739 dnl We default to building with builtin GIF decoding
2740 if test "$with_gif" != "no"; then
2743 XE_ADD_OBJS(dgif_lib.o gif_io.o)
2746 dnl Too many stupid linkers can't detect cascaded lib dependencies until runtime
2747 dnl So we always search for libz compression support.
2748 if test "$with_png $with_tiff" != "no no"; then
2749 AC_CHECK_LIB(c, inflate, [:], [
2750 AC_CHECK_LIB(z, inflate, [XE_PREPEND(-lz, libs_x)],[
2751 AC_CHECK_LIB(gz, inflate, [XE_PREPEND(-lgz, libs_x)])])])
2755 test -z "$with_jpeg" && { AC_CHECK_HEADER(jpeglib.h, ,with_jpeg=no) }
2756 test -z "$with_jpeg" && { AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,[:],with_jpeg=no) }
2757 test -z "$with_jpeg" && with_jpeg=yes
2758 if test "$with_jpeg" = "yes"; then
2759 AC_DEFINE(HAVE_JPEG)
2760 XE_PREPEND(-ljpeg, libs_x)
2765 test -z "$with_png" && { AC_CHECK_FUNC(pow, ,with_png=no) }
2766 test -z "$with_png" && { AC_CHECK_HEADER(png.h, ,with_png=no) }
2767 test -z "$with_png" && { AC_CHECK_LIB(png, png_read_image,[:],with_png=no) }
2768 if test -z "$with_png"; then
2769 AC_MSG_CHECKING(for workable png version information)
2770 xe_check_libs="-lpng -lz"
2771 AC_TRY_RUN([#include <png.h>
2772 int main(int c, char **v) {
2773 if (c == 1) return 0;
2774 if (strcmp(png_libpng_ver, PNG_LIBPNG_VER_STRING) != 0) return 1;
2775 return (PNG_LIBPNG_VER < 10002) ? 2 : 0 ;}],
2776 [./conftest dummy_arg; png_status=$?;
2777 if test "$png_status" = "0"; then
2781 if test "$png_status" = "1"; then
2782 png_problem="PNG library version and header file don't match!"
2783 elif test "$png_status" = "2"; then
2784 png_problem="PNG library version too old (pre 1.0.2)!"
2787 *** WARNING *** $png_problem
2788 I'm not touching that with a 10-foot pole!
2789 If you really want to use the installed version of libPNG, rerun
2790 configure and add '--with-png=yes', but don't blame me if XEmacs crashes!"
2794 AC_MSG_RESULT($with_png)
2796 if test "$with_png" = "yes"; then
2798 XE_PREPEND(-lpng, libs_x)
2802 test -z "$with_tiff" && { AC_CHECK_HEADER(tiffio.h, ,with_tiff=no) }
2803 test -z "$with_tiff" && { AC_CHECK_LIB(tiff, TIFFClientOpen,[:],with_tiff=no) }
2804 test -z "$with_tiff" && with_tiff=yes
2805 if test "$with_tiff" = "yes"; then
2806 AC_DEFINE(HAVE_TIFF)
2807 XE_PREPEND(-ltiff, libs_x)
2811 dnl ----------------------
2812 dnl X-Specific Graphics libraries
2813 dnl ----------------------
2815 if test "$with_x11" = "yes"; then
2817 AC_CHECKING(for X11 graphics libraries)
2819 dnl Autodetect XFACE
2820 test -z "$with_xface" && { AC_CHECK_HEADER(compface.h, ,with_xface=no) }
2821 test -z "$with_xface" && { AC_CHECK_LIB(compface, UnGenFace,[:] ,with_xface=no) }
2822 test -z "$with_xface" && with_xface=yes
2823 if test "$with_xface" = "yes"; then
2824 AC_DEFINE(HAVE_XFACE)
2825 XE_PREPEND(-lcompface, libs_x)
2828 dnl Autodetect -lXaw
2829 AC_CHECK_LIB(Xaw, XawScrollbarSetThumb, have_xaw=yes, have_xaw=no)
2830 dnl if test "$have_xaw" = "yes"; then
2831 dnl AC_CHECK_HEADER(X11/Xaw/Reports.h, [
2832 dnl XE_APPEND(pkg-src/tree-x, MAKE_SUBDIR)
2833 dnl XE_APPEND(pkg-src/tree-x, INSTALL_ARCH_DEP_SUBDIR)])
2836 dnl autodetect Motif - but only add to libs_x later (if necessary)
2837 AC_CHECK_HEADER(Xm/Xm.h,
2838 [AC_CHECK_LIB(Xm, XmStringFree, have_motif=yes, have_motif=no)],
2841 if test "$have_motif" = "yes"; then
2842 dnl autodetect lesstif
2843 AC_MSG_CHECKING(for Lesstif)
2846 #ifdef LESSTIF_VERSION
2849 ], have_lesstif=yes, have_lesstif=no)
2850 AC_MSG_RESULT($have_lesstif)
2853 fi dnl "$with_x11" = "yes"
2855 dnl Finish ensuring that we have values for the various toolkit items.
2856 dnl Not all toolkits support all widgets
2857 dnl if Motif is available we use it for the dialog boxes.
2859 case "$with_menubars" in "" | "yes" | "athena" | "athena3d" )
2860 with_menubars="lucid" ;;
2862 case "$with_dialogs" in "" | "yes" | "lucid" )
2863 if test "$have_motif" = "yes"; then with_dialogs="motif"
2864 elif test "$have_xaw" = "yes"; then with_dialogs="athena"
2865 else with_dialogs=no
2868 case "$with_scrollbars" in "" | "yes" )
2869 with_scrollbars="lucid" ;;
2872 all_widgets="$with_menubars $with_scrollbars $with_dialogs $with_toolbars"
2874 case "$all_widgets" in *athena* )
2875 AC_DEFINE(LWLIB_USES_ATHENA)
2876 AC_DEFINE(NEED_ATHENA)
2877 XE_APPEND(lwlib-Xaw.o, lwlib_objs)
2878 XE_PREPEND(-lXaw, libs_x) ;;
2881 case "$all_widgets" in *motif* )
2882 AC_DEFINE(LWLIB_USES_MOTIF)
2883 AC_DEFINE(NEED_MOTIF)
2884 XE_APPEND(lwlib-Xm.o, lwlib_objs)
2888 test "$with_menubars" = "lucid" && XE_APPEND(xlwmenu.o, lwlib_objs)
2889 test "$with_menubars" = "motif" && XE_APPEND(xlwmenu.o, lwlib_objs)
2890 test "$with_scrollbars" = "lucid" && XE_APPEND(xlwscrollbar.o, lwlib_objs)
2891 case "$all_widgets" in *lucid* )
2892 AC_DEFINE(NEED_LUCID)
2893 XE_APPEND(lwlib-Xlw.o, lwlib_objs) ;;
2896 AC_SUBST(lwlib_objs)
2898 case "$with_scrollbars" in athena* ) AC_DEFINE(LWLIB_SCROLLBARS_ATHENA);; esac
2899 case "$with_dialogs" in athena* ) AC_DEFINE(LWLIB_DIALOGS_ATHENA) ;; esac
2900 test "$with_scrollbars" = "athena3d" && AC_DEFINE(LWLIB_SCROLLBARS_ATHENA3D)
2901 test "$with_dialogs" = "athena3d" && AC_DEFINE(LWLIB_DIALOGS_ATHENA3D)
2903 test "$with_menubars" != "no" && AC_DEFINE(HAVE_MENUBARS)
2904 test "$with_scrollbars" != "no" && AC_DEFINE(HAVE_SCROLLBARS)
2905 test "$with_dialogs" != "no" && AC_DEFINE(HAVE_DIALOGS)
2906 test "$with_toolbars" != "no" && AC_DEFINE(HAVE_TOOLBARS)
2908 test "$with_menubars" = "lucid" && AC_DEFINE(LWLIB_MENUBARS_LUCID)
2909 test "$with_scrollbars" = "lucid" && AC_DEFINE(LWLIB_SCROLLBARS_LUCID)
2911 test "$with_menubars" = "motif" && AC_DEFINE(LWLIB_MENUBARS_MOTIF)
2912 test "$with_scrollbars" = "motif" && AC_DEFINE(LWLIB_SCROLLBARS_MOTIF)
2913 test "$with_dialogs" = "motif" && AC_DEFINE(LWLIB_DIALOGS_MOTIF)
2915 test "$with_menubars" != "no" && XE_ADD_OBJS(menubar.o)
2916 test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar.o)
2917 test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog.o)
2918 test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar.o)
2919 test "$all_widgets" != "no no no no" && XE_ADD_OBJS(gui.o)
2921 if test "$with_x11" = "yes"; then
2922 test "$with_menubars" != "no" && XE_ADD_OBJS(menubar-x.o)
2923 test "$with_scrollbars" != "no" && XE_ADD_OBJS(scrollbar-x.o)
2924 test "$with_dialogs" != "no" && XE_ADD_OBJS(dialog-x.o)
2925 test "$with_toolbars" != "no" && XE_ADD_OBJS(toolbar-x.o)
2926 test "$all_widgets" != "no no no no" && XE_ADD_OBJS(gui-x.o)
2928 if test \( "$with_sound" = "nas" \) -o \( "$with_sound" = "both" \); then
2929 echo "Attempt to Build NAS sound without X"
2930 echo "Please remove NAS configuration or build with X"
2935 test "$use_minimal_tagbits" = "yes" && AC_DEFINE(USE_MINIMAL_TAGBITS)
2936 test "$use_indexed_lrecord_implementation" = "yes" && \
2937 AC_DEFINE(USE_INDEXED_LRECORD_IMPLEMENTATION)
2939 dnl ----------------------
2940 dnl Mule-dependent options
2941 dnl ----------------------
2943 test -z "$with_mule" && with_mule=no
2944 test -z "$with_file_coding" && with_file_coding=no
2946 dnl if test "$with_mule" = "yes" && test ! -d "$srcdir/lisp/mule"; then
2947 dnl echo "Attempt to Build with Mule without Mule/Lisp"
2948 dnl echo "Please install the XEmacs/Mule tarball or"
2949 dnl echo "rerun configure with --with-mule=no"
2953 if test "$with_file_coding" = "yes" && test "$with_mule" = "no"; then
2954 AC_DEFINE(FILE_CODING)
2955 XE_ADD_OBJS(file-coding.o)
2958 if test "$with_mule" = "yes" ; then
2959 AC_CHECKING(for Mule-related features)
2961 AC_DEFINE(FILE_CODING)
2962 XE_ADD_OBJS(mule.o mule-ccl.o mule-charset.o mule-coding.o file-coding.o)
2964 dnl Use -lintl to get internationalized strerror for Mule
2965 AC_CHECK_HEADERS(libintl.h)
2966 AC_CHECK_LIB(intl, strerror)
2968 AC_CHECKING(for Mule input methods)
2969 dnl Do we have the XmIm* routines? And if so, do we want to use them?
2970 dnl XIM seems to be flaky except on Solaris...
2971 dnl test -z "$with_xim" -a "$opsys" != "sol2" && with_xim=no
2972 case "$with_xim" in "" | "yes" )
2973 AC_CHECKING(for XIM)
2974 dnl XIM + Lesstif is not (yet?) usable
2975 if test "$have_lesstif" = "yes"; then with_xim=xlib
2976 else AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif, with_xim=xlib)
2979 if test "$with_xim" != "no"; then
2981 if test "$with_xim" = "xlib"; then
2983 XE_ADD_OBJS(input-method-xlib.o)
2985 if test "$with_xim" = "motif"; then
2986 AC_DEFINE(XIM_MOTIF)
2988 XE_ADD_OBJS(input-method-motif.o)
2990 if test "$with_xim" = "motif"; then
2995 dnl "with_xim" = "yes"
2996 if test "$with_xfs" = "yes" ; then
2997 AC_CHECKING(for XFontSet)
2998 AC_CHECK_LIB(X11, XmbDrawString, [:], with_xfs=no)
2999 if test "$with_xfs" = "yes" && test "$with_menubars" = "lucid"; then
3000 AC_DEFINE(USE_XFONTSET)
3001 if test "$with_xim" = "no" ; then
3002 XE_ADD_OBJS(input-method-xfs.o)
3008 test "$with_wnn6" = "yes" && with_wnn=yes # wnn6 implies wnn support
3009 test -z "$with_wnn" && { AC_CHECK_HEADER(wnn/jllib.h, ,with_wnn=no) }
3010 dnl Detour to find crypt
3011 if test "$with_wnn" != "no"; then
3012 AC_CHECK_FUNCS(crypt)
3013 test "$ac_cv_func_crypt" != "yes" && { AC_CHECK_LIB(crypt, crypt) }
3015 dnl Back to our regularly scheduled wnn hunting
3016 if test -z "$with_wnn" -o "$with_wnn" = "yes"; then
3017 AC_CHECK_LIB(wnn,jl_dic_list_e,libwnn=wnn,
3018 AC_CHECK_LIB(wnn4,jl_dic_list_e,libwnn=wnn4,
3019 AC_CHECK_LIB(wnn6,jl_dic_list_e,libwnn=wnn6,
3020 AC_CHECK_LIB(wnn6_fromsrc,dic_list_e,libwnn=wnn6_fromsrc,with_wnn=no))))
3022 test -z "$with_wnn" && with_wnn=yes
3023 if test "$with_wnn" = "yes"; then
3025 XE_PREPEND(-l$libwnn, libs_x)
3026 XE_ADD_OBJS(mule-wnnfns.o)
3027 if test "$with_wnn6" != "no"; then
3028 AC_CHECK_LIB($libwnn, jl_fi_dic_list, with_wnn6=yes)
3029 test "$with_wnn6" = "yes" && AC_DEFINE(WNN6)
3033 dnl Autodetect canna
3034 canna_includes_found=no
3035 if test "$with_canna" != "no"; then
3036 AC_CHECK_HEADER(canna/jrkanji.h,canna_includes_found=yes)
3038 if test "$canna_includes_found" = "no" -a "$with_canna" != "no" -a \
3039 -d "/usr/local/canna/include"; then
3040 save_c_switch_site="$c_switch_site"
3041 c_switch_site="$c_switch_site -I/usr/local/canna/include"
3042 AC_CHECK_HEADER(canna/jrkanji.h,canna_includes_found=yes)
3043 if test "$canna_includes_found" != "yes"; then
3044 c_switch_site="$save_c_switch_site"
3049 test -z "$with_canna" && { AC_CHECK_HEADER(canna/RK.h, , with_canna=no) }
3050 test -z "$with_canna" && { AC_CHECK_LIB(RKC, RkBgnBun, [:],with_canna=no) }
3051 test -z "$with_canna" && { AC_CHECK_LIB(canna,jrKanjiControl,[:],with_canna=no) }
3052 test -z "$with_canna" && with_canna=yes
3053 if test "$with_canna" = "yes"; then
3054 AC_DEFINE(HAVE_CANNA)
3055 XE_PREPEND(-lcanna -lRKC, libs_x)
3056 XE_ADD_OBJS(mule-canna.o)
3059 else dnl "$with_mule" = "no"
3060 for feature in xim canna wnn; do
3061 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
3062 AC_MSG_WARN("--with-${feature} ignored: Not valid without Mule support")
3064 eval "with_${feature}=no"
3069 dnl At this point, we know whether we need the motif lib or not.
3070 if test "$need_motif" = "yes" ; then
3071 XE_PREPEND(-lXm, libs_x)
3072 dnl AIX needs the following library for use with Motif
3073 AC_CHECK_LIB(i18n, layout_object_getvalue, [XE_PREPEND(-li18n, libs_x)])
3074 XE_COMPUTE_RUNPATH()
3077 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)
3079 dnl realpath is buggy on linux, decosf and aix4
3081 dnl The realpath() in linux libc (4.6.27) sometimes fails with ELOOP.
3082 dnl The realpath in ELF linux libc's is O.K.
3083 dnl For example, call realpath on a file thirty-five or so directories deep
3084 dnl and you get ELOOP even if no symlinks at all are involved.
3085 dnl Reports as of 11/1997 indicate BSDi has problems too.
3086 dnl The realpath() in UnixWare2.1.3 could not get any pathname fragment in error condition.
3088 linuxaout* | bsdos3* | freebsd* | decosf4-0* | aix4* ) XE_ADD_OBJS(realpath.o) ;;
3090 case "$canonical" in
3091 *-*-sysv4.2uw2* ) XE_ADD_OBJS(realpath.o) ;;
3092 * ) AC_CHECK_FUNCS(realpath)
3093 test "$ac_cv_func_realpath" != "yes" && XE_ADD_OBJS(realpath.o) ;;
3097 dnl If netdb.h does not declare h_errno, we must declare it by hand.
3098 AC_MSG_CHECKING(whether netdb declares h_errno)
3099 AC_TRY_LINK([#include <netdb.h>],
3102 AC_DEFINE(HAVE_H_ERRNO)],
3103 [AC_MSG_RESULT(no)])
3105 AC_MSG_CHECKING(for sigsetjmp)
3106 AC_TRY_COMPILE([#include <setjmp.h>],
3107 [sigjmp_buf bar; sigsetjmp (bar, 0);],
3109 AC_DEFINE(HAVE_SIGSETJMP)],
3110 [AC_MSG_RESULT(no)])
3112 AC_MSG_CHECKING(whether localtime caches TZ)
3113 AC_CACHE_VAL(emacs_cv_localtime_cache,
3114 [if test "$ac_cv_func_tzset" = "yes"; then
3115 AC_TRY_RUN([#include <time.h>
3117 # include <stdlib.h>
3119 extern char **environ;
3123 for (to = from = environ; (*to = *from); from++)
3124 if (! (to[0][0] == 'T' && to[0][1] == 'Z' && to[0][2] == '='))
3127 char TZ_GMT0[] = "TZ=GMT0";
3128 char TZ_PST8[] = "TZ=PST8";
3131 time_t now = time ((time_t *) 0);
3132 int hour_GMT0, hour_unset;
3133 if (putenv (TZ_GMT0) != 0)
3135 hour_GMT0 = localtime (&now)->tm_hour;
3137 hour_unset = localtime (&now)->tm_hour;
3138 if (putenv (TZ_PST8) != 0)
3140 if (localtime (&now)->tm_hour == hour_GMT0)
3143 if (localtime (&now)->tm_hour != hour_unset)
3146 }], emacs_cv_localtime_cache=no, emacs_cv_localtime_cache=yes,
3147 [# If we have tzset, assume the worst when cross-compiling.
3148 emacs_cv_localtime_cache=yes])
3150 # If we lack tzset, report that localtime does not cache TZ,
3151 # since we can't invalidate the cache if we don't have tzset.
3152 emacs_cv_localtime_cache=no
3154 AC_MSG_RESULT($emacs_cv_localtime_cache)
3155 if test $emacs_cv_localtime_cache = yes; then
3156 AC_DEFINE(LOCALTIME_CACHE)
3159 if test "$HAVE_TIMEVAL" = "yes"; then
3160 AC_MSG_CHECKING(whether gettimeofday accepts one or two arguments)
3162 #ifdef TIME_WITH_SYS_TIME
3163 #include <sys/time.h>
3166 #ifdef HAVE_SYS_TIME_H
3167 #include <sys/time.h>
3174 struct timeval time;
3175 struct timezone dummy;
3176 gettimeofday (&time, &dummy);
3178 [AC_MSG_RESULT(two)],
3180 AC_DEFINE(GETTIMEOFDAY_ONE_ARGUMENT)])
3185 if test "$ac_cv_c_inline" != "no"; then
3186 AC_DEFINE(HAVE_INLINE)
3187 test "$GCC" = "yes" && XE_ADD_OBJS(inline.o)
3190 dnl HP-UX has a working alloca in libPW.
3191 dnl case "${GCC}${opsys}" in hpux* )
3192 dnl AC_CHECK_FUNC(alloca, [:], [AC_CHECK_LIB(PW, alloca)])
3196 test -n "$ALLOCA" && XE_ADD_OBJS($ALLOCA)
3198 dnl Check whether vfork exists and works correctly. (This does more
3199 dnl than just check for its existence.) If so, it defines HAVE_VFORK_H.
3200 dnl If not, it defines vfork to be fork.
3203 dnl Check whether strcoll exists and works correctly. (This does more
3204 dnl than just check for its existence.) If so, it defines HAVE_STRCOLL.
3207 dnl If `getpgrp' takes no argument (the POSIX.1 version), define
3208 dnl `GETPGRP_VOID'. Otherwise, it is the BSD version, which takes a
3209 dnl process ID as an argument.
3210 AC_CHECK_FUNCS(getpgrp)
3213 dnl We used to call AC_FUNC_MMAP here
3214 dnl Instead we now use following, suggested by Neal Becker
3215 AC_MSG_CHECKING(for working mmap)
3216 case "$opsys" in ultrix* ) have_mmap=no ;; *)
3217 AC_TRY_RUN([#include <stdio.h>
3220 #include <sys/mman.h>
3222 #ifndef MAP_VARIABLE
3223 #define MAP_VARIABLE 0
3227 #define MAP_FAILED -1
3230 int main (int argc, char *argv[])
3234 #ifndef MAP_ANONYMOUS
3235 fd = open ("/dev/zero", O_RDWR);
3238 #define MAP_ANONYMOUS 0
3240 if (mmap(0, 1024, PROT_READ | PROT_WRITE,
3241 MAP_PRIVATE | MAP_VARIABLE | MAP_ANONYMOUS,
3242 fd, 0) != (void *) MAP_FAILED)
3244 perror ("conftest: mmap failed");
3246 }], have_mmap=yes, have_mmap=no) ;;
3248 AC_MSG_RESULT($have_mmap)
3249 test "$have_mmap" = "yes" && AC_DEFINE(HAVE_MMAP)
3252 dnl rel_alloc requires either GNU malloc or system malloc with mmap
3253 dnl We only turn rel_alloc on by default if mmap is available.
3254 test "$GNU_MALLOC" != "yes" -a "$have_mmap" != "yes" && rel_alloc=no
3255 test "$rel_alloc" = "default" -a "$have_mmap" = "yes" && rel_alloc=yes
3256 test "$rel_alloc" = "yes" && AC_DEFINE(REL_ALLOC)
3258 dnl Check for terminal I/O variants
3259 dnl TERMIOS systems may have termio.h, but not vice-versa, I think.
3260 AC_CHECK_HEADER(termios.h,
3261 AC_DEFINE(HAVE_TERMIOS)
3262 AC_DEFINE(SIGNALS_VIA_CHARACTERS)
3263 AC_DEFINE(NO_TERMIO),
3264 [AC_CHECK_HEADER(termio.h, [AC_DEFINE(HAVE_TERMIO)])])
3267 dnl Check for Internet sockets.
3268 AC_CHECK_FUNC(socket,
3269 [AC_CHECK_HEADER(netinet/in.h,
3270 [AC_CHECK_HEADER(arpa/inet.h, [
3271 AC_DEFINE(HAVE_SOCKETS)
3272 AC_MSG_CHECKING("for sun_len member in struct sockaddr_un")
3274 #include <sys/types.h>
3275 #include <sys/socket.h>
3278 [static struct sockaddr_un x; x.sun_len = 1;],
3279 [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_SOCKADDR_SUN_LEN)],
3280 [AC_MSG_RESULT(no)])
3281 AC_MSG_CHECKING("for ip_mreq struct in netinet/in.h")
3283 #include <sys/types.h>
3284 #include <netinet/in.h>
3286 [static struct ip_mreq x;],
3287 [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_MULTICAST)],
3288 [AC_MSG_RESULT(no)])])])])
3290 dnl Check for SYS V IPC. (Inferior to sockets.)
3291 AC_CHECK_FUNC(msgget,
3292 [AC_CHECK_HEADER(sys/ipc.h,
3293 [AC_CHECK_HEADER(sys/msg.h,
3294 [AC_DEFINE(HAVE_SYSVIPC)])])])
3296 dnl Check for directory variants
3297 AC_CHECK_HEADER(dirent.h, [AC_DEFINE(SYSV_SYSTEM_DIR)],
3298 [AC_CHECK_HEADER(sys/dir.h, , [AC_DEFINE(NONSYSTEM_DIR_LIBRARY)])])
3300 dnl Check for nlist.h
3301 AC_CHECK_HEADER(nlist.h, AC_DEFINE(NLIST_STRUCT), )
3303 dnl Check for sound of various sorts.
3305 dnl Autodetect native sound
3306 AC_CHECKING("for sound support")
3307 case "$with_sound" in
3308 native | both ) with_native_sound=yes;;
3309 nas | no ) with_native_sound=no;;
3311 test -z "$with_native_sound" -a -n "$native_sound_lib" && with_native_sound=yes
3313 if test "$with_native_sound" != "no"; then
3314 dnl Maybe sound is already on include path...
3315 if test -n "$native_sound_lib"; then
3316 AC_CHECK_HEADER(multimedia/audio_device.h,
3317 [sound_found=yes sound_cflags=""
3318 XE_ADD_OBJS(sunplay.o)])
3321 dnl Autodetect Sun native sound from SUNWaudmo package
3322 if test -z "$sound_found" -a -d "/usr/demo/SOUND"; then
3324 XE_ADD_OBJS(sunplay.o)
3325 if test -d "/usr/demo/SOUND/include"
3326 then sound_cflags="-I/usr/demo/SOUND/include"
3327 else sound_cflags="-I/usr/demo/SOUND"
3329 if test -z "$native_sound_lib" ; then
3330 if test -r "/usr/demo/SOUND/lib/libaudio.a"
3331 then native_sound_lib="/usr/demo/SOUND/lib/libaudio.a"
3332 else native_sound_lib="/usr/demo/SOUND/libaudio.a"
3337 dnl Check for SGI and HP native sound libs
3338 if test -z "$sound_found"; then
3339 case "$canonical" in
3341 if test -z "$native_sound_lib"; then
3342 AC_CHECK_LIB(audio, ALopenport, native_sound_lib="-laudio")
3344 if test -n "$native_sound_lib"; then
3345 sound_found=yes sound_cflags=""
3346 XE_ADD_OBJS(sgiplay.o)
3349 if test -z "$native_sound_lib"; then
3350 AC_CHECK_LIB(Alib, AOpenAudio, native_sound_lib="-lAlib")
3352 if test -n "$native_sound_lib"; then
3354 XE_ADD_OBJS(hpplay.o)
3355 if test "$GCC" = "yes" # Kludge city
3356 then sound_cflags="-Dconst= -Dvolatile= -I/usr/audio/examples"
3357 else sound_cflags="+e -I/usr/audio/examples"
3363 dnl Check for Linux/BSD native sound
3364 if test -z "$sound_found"; then
3365 for dir in "machine" "sys" "linux"; do
3366 AC_CHECK_HEADER(${dir}/soundcard.h,
3368 XE_ADD_OBJS(linuxplay.o)
3369 [AC_DEFINE_UNQUOTED(SOUNDCARD_H_PATH, "${dir}/soundcard.h")]
3374 test "$sound_found" = "yes" && with_native_sound=yes
3377 if test -z "$with_sound"; then
3378 if test "$with_native_sound" = "yes" -o -n "$native_sound_lib"; then
3383 if test "$with_native_sound" = "yes"; then
3384 AC_DEFINE(HAVE_NATIVE_SOUND)
3385 test -n "$native_sound_lib" && XE_PREPEND($native_sound_lib, LIBS)
3388 case "$with_sound" in both | nas )
3389 AC_DEFINE(HAVE_NAS_SOUND)
3391 XE_PREPEND(-laudio, libs_x)
3392 dnl If the nas library does not contain the error jump point,
3393 dnl then we force safer behaviour.
3394 AC_EGREP_HEADER(AuXtErrorJump,audio/Xtutil.h,,[AC_DEFINE(NAS_NO_ERROR_JUMP)])
3397 dnl ---------------------
3398 dnl TTY-dependent options
3399 dnl ---------------------
3401 test -z "$with_tty" && with_tty=yes
3403 if test "$with_tty" = "yes" ; then
3404 AC_CHECKING(for TTY-related features)
3406 XE_ADD_OBJS(console-tty.o device-tty.o event-tty.o frame-tty.o objects-tty.o redisplay-tty.o cm.o)
3408 dnl Autodetect ncurses.
3409 if test -z "$with_ncurses"; then
3410 AC_CHECK_LIB(ncurses, tgetent, with_ncurses=yes, with_ncurses=no)
3412 if test "$with_ncurses" = "yes"; then
3413 AC_DEFINE(HAVE_NCURSES)
3414 AC_CHECK_HEADER(ncurses/curses.h, curses_h_path=ncurses/curses.h)
3415 AC_CHECK_HEADER(ncurses/term.h, term_h_path=ncurses/term.h)
3416 XE_ADD_OBJS(terminfo.o)
3417 XE_PREPEND(-lncurses, LIBS)
3419 if test "$ac_cv_header_ncurses_curses_h" != "yes" ; then
3420 dnl Try again, and check for the bogus ncurses/ include bug.
3421 dnl (i.e. ncurses/curses.h bogusly includes <unctrl.h> instead of
3422 dnl <ncurses/unctrl.h>)
3423 save_c_switch_site="$c_switch_site"
3424 c_switch_site="$c_switch_site -I/usr/include/ncurses"
3425 AC_CHECK_HEADER(ncurses/curses.h, curses_h_path=ncurses/curses.h)
3426 if test "$ac_cv_header_ncurses_curses_h" = "yes"
3427 then AC_MSG_WARN("Your system has the bogus ncurses include bug.")
3428 else c_switch_site="$save_c_switch_site"
3431 else dnl "$with_ncurses" = "no"
3432 dnl Autodetect terminfo/-lcurses/-ltermlib/-ltermcap
3433 if test "$have_terminfo" = "yes"; then
3434 XE_ADD_OBJS(terminfo.o)
3435 if test -n "$libs_termcap"; then
3436 XE_PREPEND($libs_termcap, LIBS)
3438 for lib in curses termlib termcap; do
3439 AC_CHECK_LIB($lib, tgetent, XE_PREPEND(-l${lib}, LIBS); break)
3442 else dnl "$have_terminfo" = "no" && "with_ncurses" = "no"
3443 XE_ADD_OBJS(tparam.o)
3444 dnl The HP-UX curses library seems to have a badly broken version of select(2)
3445 dnl that makes "poll: interrupted system call" messages to appear and
3446 dnl Emacs suprocesses to hang (e.g. TeX compilation w/ AUCTeX) */
3447 case "$opsys" in *-hp-hpux* ) libs_termcap="-ltermcap" ;; esac
3448 if test -n "$libs_termcap"; then
3449 XE_PREPEND($libs_termcap, LIBS)
3451 AC_CHECK_LIB(curses, tgetent, XE_PREPEND(-lcurses, LIBS),
3452 AC_CHECK_LIB(termcap, tgetent, XE_PREPEND(-ltermcap, LIBS),
3453 XE_ADD_OBJS(termcap.o)))
3457 AC_DEFINE_UNQUOTED(CURSES_H_PATH, "${curses_h_path-curses.h}")
3458 AC_DEFINE_UNQUOTED(TERM_H_PATH, "${term_h_path-term.h}")
3461 test -z "$with_gpm" && { AC_CHECK_HEADER(gpm.h, , with_gpm=no) }
3462 test -z "$with_gpm" && { AC_CHECK_LIB(gpm, Gpm_Open, with_gpm=yes, with_gpm=no) }
3463 if test "$with_gpm" = "yes"; then
3465 XE_ADD_OBJS(gpmevent.o)
3466 XE_PREPEND(-lgpm, LIBS)
3469 else dnl "$with_tty" = "no"
3470 for feature in ncurses gpm; do
3471 if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
3472 AC_MSG_WARN("--with-${feature} ignored: Not valid without TTY support")
3474 eval "with_${feature}=no"
3478 dnl Do we need event-unixoid.o ?
3479 test "$with_x11" = "yes" -o "$with_tty" = "yes" && XE_ADD_OBJS(event-unixoid.o)
3481 dnl Database support
3482 dnl <mdiers@logware.de>
3483 dnl We do not necessarily have to have libdb/lib(g)dbm for DB/(G)DBM support.
3484 dnl On FreeBSD, both DB and DBM are part of libc.
3485 dnl Note that unless support for DB/(G)DBM is explicitly disabled, we always
3486 dnl want to check for libdb/lib(g)dbm. Also note that libc will not be
3487 dnl checked if we have the libraries.
3488 dnl If support for DB/(G)DBM is requested, but we neither have libdb/lib(g)dbm,
3489 dnl nor does libc implement it, we are a bit lost :)
3491 AC_CHECKING(for database support)
3493 if test "$with_database_gnudbm" != "no"; then
3494 AC_CHECK_HEADERS(ndbm.h, have_ndbm_h=yes)
3495 if test "$have_ndbm_h" = "yes"; then
3496 AC_CHECK_LIB(gdbm, dbm_open, with_database_gnudbm=yes have_libgdbm=yes)
3498 if test "$with_database_gnudbm" != "yes"; then
3499 AC_CHECK_FUNC(dbm_open, with_database_gnudbm=yes)
3501 if test "$with_database_gnudbm" = "yes"; then
3503 test "$have_libgdbm" = "yes" && XE_PREPEND(-lgdbm, LIBS)
3504 with_database_dbm=no
3505 else with_database_gnudbm=no
3509 if test "$with_database_dbm" != "no"; then
3510 AC_CHECK_FUNC(dbm_open, with_database_dbm=yes need_libdbm=no)
3511 if test "$need_libdbm" != "no"; then
3512 AC_CHECK_LIB(dbm, dbm_open, with_database_dbm=yes need_libdbm=yes)
3514 if test "$with_database_dbm" = "yes"; then
3516 test "$need_libdbm" = "yes" && XE_PREPEND(-ldbm, LIBS)
3517 else with_database_dbm=no
3521 if test "$with_database_berkdb" != "no"; then
3522 AC_MSG_CHECKING(for Berkeley db.h)
3523 for path in "db/db.h" "db.h"; do
3524 AC_TRY_COMPILE([#ifdef HAVE_INTTYPES_H
3525 #define __BIT_TYPES_DEFINED__
3526 #include <inttypes.h>
3527 typedef uint8_t u_int8_t;
3528 typedef uint16_t u_int16_t;
3529 typedef uint32_t u_int32_t;
3530 #ifdef WE_DONT_NEED_QUADS
3531 typedef uint64_t u_int64_t;
3535 ],[], db_h_path="$path"; break)
3537 if test -z "$db_h_path"
3538 then AC_MSG_RESULT(no); with_database_berkdb=no
3539 else AC_MSG_RESULT($db_h_path)
3542 if test "$with_database_berkdb" != "no"; then
3543 AC_MSG_CHECKING(for Berkeley DB version)
3545 [#include <$db_h_path>
3546 #if DB_VERSION_MAJOR > 1
3549 ], [AC_MSG_RESULT(2); dbfunc=db_open], [AC_MSG_RESULT(1); dbfunc=dbopen])
3550 AC_CHECK_FUNC($dbfunc, with_database_berkdb=yes need_libdb=no, [
3551 AC_CHECK_LIB(db, $dbfunc, with_database_berkdb=yes need_libdb=yes)])
3554 if test "$with_database_berkdb" = "yes"; then
3555 AC_DEFINE_UNQUOTED(DB_H_PATH, "$db_h_path")
3556 AC_DEFINE(HAVE_BERKELEY_DB)
3557 test "$need_libdb" = "yes" && XE_PREPEND(-ldb, LIBS)
3558 else with_database_berkdb=no
3562 if test "$with_database_gnudbm $with_database_dbm $with_database_berkdb" \
3564 AC_DEFINE(HAVE_DATABASE)
3565 XE_ADD_OBJS(database.o)
3569 if test "$with_socks" = "yes"; then
3570 AC_CHECK_LIB(socks, SOCKSinit)
3571 test -n "$ac_cv_lib_socks_SOCKSinit" && AC_DEFINE(HAVE_SOCKS)
3574 dnl Usage tracking (undocumented and likely unused option)
3575 if test "$usage_tracking" = "yes"; then
3576 AC_DEFINE(USAGE_TRACKING)
3577 XE_PREPEND(-Bstatic -lut -Bdynamic, LIBS)
3580 dnl cygwin can't cope with dlfcn at the moment
3581 test -z "$with_shlib" && test "$opsys $machine" = "cygwin32 intel386" && with_shlib=no
3583 dnl autodetect dll support
3584 AC_CHECK_HEADERS(dlfcn.h, have_dlfcn=yes)
3585 test -z "$with_shlib" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(dl, dlopen, [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=dl; with_shlib=yes]) }
3586 test -z "$with_shlib" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(c, _dlopen, [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=; with_shlib=yes]) }
3587 test -z "$with_shlib" && test ! -z "$have_dlfcn" && { AC_CHECK_LIB(c, dlopen, [ AC_DEFINE(HAVE_DLOPEN) DLL_LIB=; with_shlib=yes]) }
3588 test -z "$with_shlib" && { AC_CHECK_LIB(dld, shl_load, [ AC_DEFINE(HAVE_SHL_LOAD) DLL_LIB=dld; with_shlib=yes]) }
3589 test -z "$with_shlib" && { AC_CHECK_LIB(dld, dld_init, [ AC_DEFINE(HAVE_DLD_INIT) DLL_LIB=dld; with_shlib=yes]) }
3590 if test "$with_shlib" = "yes"; then
3591 AC_DEFINE(HAVE_SHLIB)
3592 XE_ADD_OBJS(sysdll.o)
3594 test ! -z "$DLL_LIB" && XE_PREPEND(-l${DLL_LIB}, LIBS)
3596 AC_CHECK_FUNCS(dlerror)
3597 ld_dynamic_link_flags=
3598 dnl Fill this in with other values as this gets more testing
3600 hpux*) ld_dynamic_link_flags="-Wl,-E" ;;
3601 linux*) ld_dynamic_link_flags="-rdynamic" ;;
3606 dnl Unfortunately, just because we can link doesn't mean we can run.
3607 dnl One of the above link tests may have succeeded but caused resulting
3608 dnl executables to fail to run. Also any tests using AC_TRY_RUN will
3609 dnl have reported incorrect results.
3610 AC_TRY_RUN([int main(int c,char *v[]){return 0;}],[:],[
3612 echo "*** PANIC *** The C compiler can no longer build working executables."
3613 echo "*** PANIC *** Please examine the tail of config.log for runtime errors."
3614 echo "*** PANIC *** The most likely reason for this problem is that configure"
3615 echo "*** PANIC *** links with shared libraries, but those libraries cannot be"
3616 echo "*** PANIC *** found at run time."
3617 echo "*** PANIC ***"
3618 echo "*** PANIC *** On a Linux system, edit /etc/ld.so.conf and re-run ldconfig."
3619 echo "*** PANIC *** On other systems, try telling configure where to find the"
3620 echo "*** PANIC *** shared libraries using the --site-runtime-libraries option"
3621 echo "*** PANIC ***"
3622 echo "*** PANIC *** Another way to shoot yourself in the foot is to specify"
3623 echo "*** PANIC *** --with-FEATURE when FEATURE is not actually installed"
3624 echo "*** PANIC *** on your system. Don't do that."
3627 dnl Process support (hardcoded)
3628 dnl every system that supports this runs configure, the others don't
3630 dnl We're not ready for this yet.
3631 AC_DEFINE(HAVE_UNIX_PROCESSES)
3632 XE_ADD_OBJS(process-unix.o)
3634 dnl --------------------------------
3635 dnl Compute SUBST-itutable variables
3636 dnl --------------------------------
3638 dnl We ignore (C|LD)_SWITCH_X_(MACHINE|SYSTEM)
3639 dnl Use XE_SPACE instead of plain assignment statements to remove extraneous blanks
3640 XE_SPACE(CFLAGS, $CFLAGS)
3641 XE_SPACE(extra_objs, $extra_objs)
3642 XE_SPACE(c_switch_general, -DHAVE_CONFIG_H $c_switch_site $c_switch_machine $c_switch_system)
3643 XE_SPACE(c_switch_window_system, $c_switch_x_site $X_CFLAGS)
3644 XE_SPACE(c_switch_all, $c_switch_general $c_switch_window_system)
3645 XE_SPACE(ld_switch_general, $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_run)
3646 XE_SPACE(ld_switch_window_system, $ld_switch_x_site)
3647 XE_SPACE(ld_switch_all, $ld_switch_general $ld_switch_window_system)
3648 XE_SPACE(ld_libs_general, $LIBS $libs_machine $libs_system $libs_standard)
3649 XE_SPACE(ld_libs_window_system, $X_EXTRA_LIBS $libs_x $X_PRE_LIBS)
3650 XE_SPACE(ld_libs_all, $ld_libs_window_system $ld_libs_general)
3652 dnl Compute lists of Makefiles and subdirs
3653 AC_SUBST(SRC_SUBDIR_DEPS)
3654 XE_APPEND(src, MAKE_SUBDIR)
3655 internal_makefile_list="Makefile"
3657 test -d lock || mkdir lock
3658 for dir in $MAKE_SUBDIR; do
3659 case "$dir" in */* ) dnl Implement mkdir -p
3660 ( for d in `echo $dir | sed 's:/: :g'` ; do
3661 test -d "$d" || mkdir "$d"; cd "$d"
3663 * ) test -d "$dir" || mkdir "$dir" ;;
3665 XE_SPACE(SUBDIR_MAKEFILES, $SUBDIR_MAKEFILES $dir/Makefile)
3666 XE_SPACE(internal_makefile_list, $internal_makefile_list $dir/Makefile.in)
3668 AC_SUBST(INSTALL_ARCH_DEP_SUBDIR)
3669 AC_SUBST(MAKE_SUBDIR)
3670 AC_SUBST(SUBDIR_MAKEFILES)
3672 dnl Make s&m symlinks in the src directory, for config.h
3673 for dir in src/s src/m; do
3674 if test ! -d "$dir" ; then
3675 echo Making symbolic link to "$srcdir/$dir"
3676 ${LN_S} "$srcdir/$dir" "$dir"
3680 if test "$extra_verbose" = "yes"; then
3682 PRINT_VAR(extra_objs
3683 c_switch_general c_switch_window_system c_switch_all
3684 ld_switch_general ld_switch_window_system ld_switch_all
3685 ld_libs_general ld_libs_window_system ld_libs_all)
3689 dnl Create some auxiliary files
3690 if test -f $srcdir/src/gdbinit -a ! -f src/gdbinit ; then
3691 echo "creating src/gdbinit"; echo ""
3692 echo "source $srcdir/src/gdbinit" > src/gdbinit
3695 dnl Create top level .sbinit for Sun compilers
3696 if test "$__SUNPRO_C" = "yes"; then
3697 echo "creating .sbinit"; echo ""
3698 ( echo "# For use with Sun WorkShop's Source browser."
3699 echo "# See sbquery(1) and sbinit(4) for more information"
3700 for dir in $MAKE_SUBDIR; do echo "import $dir"; done
3704 dnl There are no more compile tests; remove the core they created.
3707 dnl ----------------------------------------------
3708 dnl Substitute into Makefile, config.h and paths.h
3709 dnl ----------------------------------------------
3711 dnl what sort of things to edit into Makefile, config.h and paths.h
3712 dnl configuration here uncanonicalized to avoid exceeding size limits.
3716 AC_SUBST(configuration)
3727 dnl Yo, Stephen Bourne! I want to marry you!
3731 *\$* ) eval "PREFIX=$PREFIX" ;;
3737 AC_SUBST(exec_prefix)
3738 EXEC_PREFIX=$exec_prefix
3740 case "$EXEC_PREFIX" in
3741 *\$* ) eval "EXEC_PREFIX=$EXEC_PREFIX" ;;
3745 AC_SUBST(EXEC_PREFIX)
3748 AC_SUBST(INFODIR_USER_DEFINED)
3752 *\$* ) eval "INFODIR=$INFODIR" ;;
3759 AC_SUBST(INFOPATH_USER_DEFINED)
3763 *\$* ) eval "INFOPATH=$INFOPATH" ;;
3769 AC_SUBST(package_path)
3770 AC_SUBST(PACKAGE_PATH_USER_DEFINED)
3771 PACKAGE_PATH=$package_path
3773 case "$PACKAGE_PATH" in
3774 *\$* ) eval "PACKAGE_PATH=$PACKAGE_PATH" ;;
3778 AC_SUBST(PACKAGE_PATH)
3781 AC_SUBST(LISPDIR_USER_DEFINED)
3785 *\$* ) eval "LISPDIR=$LISPDIR" ;;
3791 dnl AC_SUBST(sitelispdir)
3792 dnl AC_SUBST(SITELISPDIR_USER_DEFINED)
3793 dnl SITELISPDIR=$sitelispdir
3795 dnl case "$SITELISPDIR" in
3796 dnl *\$* ) eval "SITELISPDIR=$SITELISPDIR" ;;
3800 dnl AC_SUBST(SITELISPDIR)
3803 AC_SUBST(ETCDIR_USER_DEFINED)
3807 *\$* ) eval "ETCDIR=$ETCDIR" ;;
3814 AC_SUBST(LOCKDIR_USER_DEFINED)
3818 *\$* ) eval "LOCKDIR=$LOCKDIR" ;;
3824 AC_SUBST(archlibdir)
3825 AC_SUBST(ARCHLIBDIR_USER_DEFINED)
3826 ARCHLIBDIR=$archlibdir
3828 case "$ARCHLIBDIR" in
3829 *\$* ) eval "ARCHLIBDIR=$ARCHLIBDIR" ;;
3833 AC_SUBST(ARCHLIBDIR)
3837 AC_SUBST(extra_objs)
3838 AC_SUBST(ld_dynamic_link_flags)
3840 dnl The following flags combine all the information from:
3841 dnl - command line options (user always gets priority)
3842 dnl - user environment variables
3843 dnl - determined by configure
3844 dnl - the s&m header files (deprecated)
3847 AC_SUBST(c_switch_general)
3848 AC_SUBST(c_switch_window_system)
3849 AC_SUBST(c_switch_all)
3850 AC_SUBST(ld_switch_general)
3851 AC_SUBST(ld_switch_window_system)
3852 AC_SUBST(ld_switch_all)
3853 AC_SUBST(ld_libs_general)
3854 AC_SUBST(ld_libs_window_system)
3855 AC_SUBST(ld_libs_all)
3859 RECURSIVE_MAKE="\$(MAKE) \$(MFLAGS) CC='\$(CC)' CFLAGS='\$(CFLAGS)' LDFLAGS='\$(LDFLAGS)' CPPFLAGS='\$(CPPFLAGS)'"
3860 AC_SUBST(RECURSIVE_MAKE)
3862 AC_SUBST(native_sound_lib)
3863 AC_SUBST(sound_cflags)
3865 AC_SUBST(dynodump_arch)
3867 # The default is yes
3868 if test "$with_site_lisp" = "no"; then
3869 AC_DEFINE(INHIBIT_SITE_LISP)
3872 XE_SPACE(ac_configure_args, $ac_configure_args)
3873 AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "$canonical")
3874 AC_DEFINE_UNQUOTED(EMACS_CONFIG_OPTIONS, "$ac_configure_args")
3875 AC_DEFINE_UNQUOTED(config_machfile, "$machfile")
3876 AC_DEFINE_UNQUOTED(config_opsysfile, "$opsysfile")
3878 dnl Following are deprecated
3881 AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE, $null_string)
3882 AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE_AUX, $null_string)
3883 AC_DEFINE_UNQUOTED(C_SWITCH_X_SITE, $null_string)
3884 AC_DEFINE_UNQUOTED(LD_SWITCH_SITE, $null_string)
3885 AC_DEFINE_UNQUOTED(C_SWITCH_SITE, $null_string)
3887 dnl Note: as a general rule, *only* define things here that are not
3888 dnl autodetected. For things that are autodetected, define them
3889 dnl at the point where the autodetection occurs or would occur,
3890 dnl so that the user gets immediate feedback on the results of the
3893 test -n "$puresize" && AC_DEFINE_UNQUOTED(RAW_PURESIZE, $puresize)
3895 if test "$GNU_MALLOC" = "yes"; then AC_DEFINE(GNU_MALLOC)
3896 elif test "$with_system_malloc" = "yes"; then AC_DEFINE(USE_SYSTEM_MALLOC)
3897 elif test "$with_debug_malloc" = "yes"; then AC_DEFINE(USE_DEBUG_MALLOC)
3898 AC_DEFINE(USE_SYSTEM_MALLOC)
3900 test "$with_i18n3" = "yes" && AC_DEFINE(I18N3)
3901 test "$GCC" = "yes" && AC_DEFINE(USE_GCC)
3902 test "$external_widget" = "yes" && AC_DEFINE(EXTERNAL_WIDGET)
3903 test "$with_gnu_make" = "yes" && AC_DEFINE(USE_GNU_MAKE)
3904 test "$no_doc_file" = "yes" && AC_DEFINE(NO_DOC_FILE)
3905 dnl test "$const_is_losing" = "yes" && AC_DEFINE(CONST_IS_LOSING)
3906 test "$with_quantify" = "yes" && AC_DEFINE(QUANTIFY)
3907 test "$with_pop" = "yes" && AC_DEFINE(MAIL_USE_POP)
3908 test "$with_kerberos" = "yes" && AC_DEFINE(KERBEROS)
3909 test "$with_hesiod" = "yes" && AC_DEFINE(HESIOD)
3910 test "$use_union_type" = "yes" && AC_DEFINE(USE_UNION_TYPE)
3912 dnl -------------------------------
3913 dnl Report on what we decided to do
3914 dnl -------------------------------
3917 dnl /etc/osversion is on SONY NEWS-OS
3918 if test -f /etc/osversion; then dnl SONY NEWS-OS
3919 echo "osversion: `cat /etc/osversion`"
3921 echo "uname -a: `uname -a`"
3924 echo "$0 $quoted_arguments"
3928 test ! -z "${emacs_beta_version}" && xemacs_betaname="-b${emacs_beta_version}"
3930 dnl Start stdout redirection to '| tee -a Installation'
3934 XEmacs ${emacs_major_version}.${emacs_minor_version}${xemacs_betaname} \"$xemacs_codename\" configured for \`$canonical'.
3936 Where should the build process find the source code? $srcdir
3937 What installation prefix should install use? $prefix
3938 What operating system and machine description files should XEmacs use?
3939 \`$opsysfile' and \`$machfile'
3940 What compiler should XEmacs be built with? $CC $CFLAGS
3941 Should XEmacs use the GNU version of malloc? ${GNU_MALLOC}${GNU_MALLOC_reason}
3942 Should XEmacs use the relocating allocator for buffers? $rel_alloc
3943 What window system should XEmacs use? ${window_system}"
3944 if test "$with_x11" = "yes"; then
3945 echo " Where do we find X Windows header files? $x_includes"
3946 echo " Where do we find X Windows libraries? $x_libraries"
3948 if test -n "$site_includes"; then
3949 echo " Additional header files: $site_includes"
3951 if test -n "$site_libraries"; then
3952 echo " Additional libraries: $site_libraries"
3954 if test -n "$site_prefixes"; then
3955 echo " Additional prefixes: $site_prefixes"
3957 if test -n "$runpath"; then
3958 echo " Runtime library search path: $runpath"
3960 test "$with_dnet" = yes && echo " Compiling in support for DNET."
3961 test "$with_socks" = yes && echo " Compiling in support for SOCKS."
3962 test "$with_xauth" = yes && echo " Compiling in support for XAUTH."
3963 if test "$with_xmu" != yes -a "$with_x11" = yes; then
3964 echo " No Xmu; substituting equivalent routines."
3967 if test "$with_xpm" = yes; then
3968 echo " Compiling in support for XPM images."
3969 elif test "$with_x11" = yes; then
3970 echo " --------------------------------------------------------------------"
3971 echo " WARNING: Compiling without XPM support."
3972 if test "$xpm_problem" != ""; then
3973 echo " Reason: $xpm_problem"
3975 echo " WARNING: You should strongly consider installing XPM."
3976 echo " WARNING: Otherwise toolbars and other graphics will look suboptimal."
3977 echo " WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)"
3978 echo " --------------------------------------------------------------------"
3980 if test "$with_png" = yes; then
3981 echo " Compiling in support for PNG image handling."
3982 elif test "$window_system" != "none"; then
3983 echo " --------------------------------------------------------------------"
3984 echo " WARNING: Compiling without PNG image support."
3985 if test "$png_problem" != ""; then
3986 echo " Reason: $png_problem"
3988 echo " WARNING: You should strongly consider installing the PNG libraries."
3989 echo " WARNING: Otherwise certain images and glyphs may not display."
3990 echo " WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)"
3991 echo " --------------------------------------------------------------------"
3993 test "$with_gif" = yes && echo " Compiling in support for (builtin) GIF image handling."
3994 test "$with_jpeg" = yes && echo " Compiling in support for JPEG image handling."
3995 test "$with_tiff" = yes && echo " Compiling in support for TIFF image handling."
3996 test "$with_xface" = yes && echo " Compiling in support for X-Face message headers."
3997 case "$with_sound" in
3998 nas ) echo " Compiling in network sound (NAS) support." ;;
3999 native ) echo " Compiling in native sound support." ;;
4000 both ) echo " Compiling in both network and native sound support." ;;
4002 test "$old_nas" = yes && echo " nas library lacks error trapping, will play synchronously"
4004 test "$with_database_berkdb" = yes && echo " Compiling in support for Berkeley DB."
4005 test "$with_database_dbm" = yes && echo " Compiling in support for DBM."
4006 test "$with_database_gnudbm" = yes && echo " Compiling in support for GNU DBM."
4008 test "$with_umich_ldap" = yes && echo " Compiling in support for LDAP (UMich libs)."
4009 test "$with_ns_ldap" = yes && echo " Compiling in support for LDAP (Netscape SDK)."
4010 test "$with_ldap" = yes -a "$with_umich_ldap" = no -a "$with_ns_ldap" = no && echo " Compiling in support for LDAP (Generic)."
4012 test "$with_ncurses" = yes && echo " Compiling in support for ncurses."
4013 test "$with_gpm" = yes && echo " Compiling in support for GPM (General Purpose Mouse)."
4015 test "$with_mule" = yes && echo " Compiling in Mule (multi-lingual) support."
4016 test "$with_file_coding" = yes && echo " Compiling in File coding support."
4017 test "$with_xim" != no && echo " Compiling in XIM (X11R5+ I18N input method) support."
4018 test "$with_xim" = motif && echo " Using Motif to provide XIM support."
4019 test "$with_xim" = xlib && echo " Using raw Xlib to provide XIM support."
4020 test "$with_xfs" = yes && echo " Using XFontSet to provide bilingual menubar."
4021 test "$with_canna" = yes && echo " Compiling in support for Canna on Mule."
4022 if test "$with_wnn" = yes; then
4023 echo " Compiling in support for the WNN input method on Mule."
4024 test "$with_wnn6" = yes && echo " Using WNN version 6."
4026 test "$with_i18n3" = yes && echo " Compiling in I18N support, level 3 (doesn't currently work)."
4028 test "$with_cde" = yes && echo " Compiling in support for CDE."
4029 test "$with_tooltalk" = yes && echo " Compiling in support for ToolTalk."
4030 test "$with_offix" = yes && echo " Compiling in support for OffiX."
4031 test "$with_dragndrop" = yes && echo " Compiling in EXPERIMENTAL support for Drag'n'Drop ($dragndrop_proto )."
4032 test "$with_workshop" = yes && echo " Compiling in support for Sun WorkShop."
4033 test "$with_session" != no && echo " Compiling in support for proper session-management."
4034 case "$with_menubars" in
4035 lucid ) echo " Using Lucid menubars." ;;
4036 motif ) echo " Using Motif menubars."
4037 echo " *WARNING* The Motif menubar implementation is currently buggy."
4038 echo " We recommend using the Lucid menubar instead."
4039 echo " Re-run configure with --with-menubars='lucid'." ;;
4041 case "$with_scrollbars" in
4042 lucid ) echo " Using Lucid scrollbars." ;;
4043 motif ) echo " Using Motif scrollbars." ;;
4044 athena ) echo " Using Athena scrollbars." ;;
4045 athena3d ) echo " Using Athena-3d scrollbars." ;;
4047 case "$with_dialogs" in
4048 motif ) echo " Using Motif dialog boxes." ;;
4049 athena ) echo " Using Athena dialog boxes." ;;
4050 athena3d ) echo " Using Athena-3d dialog boxes." ;;
4052 test "$with_shlib" = "yes" && echo " Compiling in DLL support."
4053 test "$with_clash_detection" = yes && \
4054 echo " Clash detection will use \"$lockdir\" for locking files."
4055 echo " movemail will use \"$mail_locking\" for locking mail spool files."
4056 test "$with_pop" = yes && echo " Using POP for mail access"
4057 test "$with_kerberos" = yes && echo " Using Kerberos for POP authentication"
4058 test "$with_hesiod" = yes && echo " Using Hesiod to get POP server host"
4059 test "$use_union_type" = yes && echo " Using the union type for Lisp_Objects."
4060 test "$use_minimal_tagbits" = yes && echo " Using Lisp_Objects with minimal tagbits."
4061 test "$use_indexed_lrecord_implementation" = yes && echo " Using indexed lrecord implementation."
4062 test "$debug" = yes && echo " Compiling in extra code for debugging."
4063 test "$memory_usage_stats" = yes && echo " Compiling in code for checking XEmacs memory usage."
4064 test "$usage_tracking" = yes && echo " Compiling with usage tracking active (Sun internal)."
4065 if test "$error_check_extents $error_check_typecheck $error_check_bufpos $error_check_gc $error_check_malloc" \
4066 != "no no no no no"; then
4067 echo " WARNING: ---------------------------------------------------------"
4068 echo " WARNING: Compiling in support for runtime error checking."
4069 echo " WARNING: XEmacs will run noticeably more slowly as a result."
4070 echo " WARNING: Error checking is on by default for XEmacs beta releases."
4071 echo " WARNING: ---------------------------------------------------------"
4074 ) | tee -a Installation
4075 dnl echo "The above configure report is appended to \"Installation\" file."
4078 dnl Generate Installation.el
4079 echo '(setq Installation-string "' > Installation.el
4080 sed 's/"/\\"/g' Installation >> Installation.el
4081 echo '")' >> Installation.el
4083 dnl -----------------------------------
4084 dnl Now generate config.h and Makefiles
4085 dnl -----------------------------------
4087 dnl This has to be called in order for this variable to get into config.status
4088 AC_SUBST(internal_makefile_list)
4089 # Remove any trailing slashes in these variables.
4090 test -n "$prefix" &&
4091 prefix=`echo '' "$prefix" | sed -e 's:^ ::' -e 's,\([[^/]]\)/*$,\1,'`
4092 test -n "$exec_prefix" &&
4093 exec_prefix=`echo '' "$exec_prefix" | sed -e 's:^ ::' -e 's,\([[^/]]\)/*$,\1,'`
4095 dnl Build Makefile.in's from Makefile.in.in's
4096 dnl except ./Makefile from $srcdir/Makefile.in
4098 for file in $internal_makefile_list; do
4099 test "$file" = src/Makefile.in && \
4100 file="src/Makefile.in:src/Makefile.in.in:src/depend"
4101 ac_output_files="${ac_output_files+$ac_output_files }$file"
4103 ac_output_files="$ac_output_files src/paths.h lib-src/config.values"
4105 AC_OUTPUT($ac_output_files,
4106 [for dir in $MAKE_SUBDIR; do
4107 echo creating $dir/Makefile
4109 changequote(<<, >>)dnl
4113 sed -e '/^# Generated/d' \
4114 -e 's%/\*\*/#.*%%' \
4125 $CPP -I. -I${top_srcdir}/src $CPPFLAGS junk.c > junk.cpp;
4128 -e 's/^[ TAB][ TAB]*$//' \
4130 | sed -n -e '/^..*$/p' \
4136 chmod 444 Makefile.new
4137 mv -f Makefile.new Makefile
4138 rm -f junk.c junk.cpp
4139 changequote([, ])dnl
4143 dnl Append AC_DEFINE information to lib-src/config.values
4144 dnl (AC_SUBST information is already there (see config.values.sh).
4145 sed < config.status >> lib-src/config.values \
4146 -e '/{ac_dA}.*{ac_dB}.*{ac_dC}.*{ac_dD}$/!d' \
4147 -e 's/\${ac_dA}\(.*\)\${ac_dB}.*\${ac_dC}\(.*\)\${ac_dD}/\1 \2/' \
4148 -e 's/^\([[^ ]]*\) $/\1 ""/' \
4153 CPPFLAGS="$CPPFLAGS"
4154 top_srcdir="$srcdir"
4155 MAKE_SUBDIR="$MAKE_SUBDIR"