comparison configure.in @ 0:376386a54a3c r19-14

Import from CVS: tag r19-14
author cvs
date Mon, 13 Aug 2007 08:45:50 +0200
parents
children ac2d302a0011
comparison
equal deleted inserted replaced
-1:000000000000 0:376386a54a3c
1 dnl Synched up with: FSF 19.31.
2 dnl (19.29 -- 19.31 use Autoconf 2.x instead of Autoconf 1.x.
3 dnl Some stuff related to this change has not been synched because
4 dnl it can't be until we switch to Autoconf 2.x.)
5 dnl
6 dnl This is an autoconf script.
7 dnl To rebuild the `configure' script from this, execute the command
8 dnl autoconf
9 dnl in the directory containing this script. You must have autoconf
10 dnl version 1.9 or later.
11 dnl
12 dnl The following text appears in the resulting `configure' script,
13 dnl explaining how to rebuild it.
14 dnl
15 AC_PREREQ(1.9)dnl means 'delete newline' and this one needs to be here
16 [#!/bin/sh
17 #### Configuration script for XEmacs.
18 #### Copyright (C) 1994 Free Software Foundation, Inc.
19 #### Copyright (C) 1993-1995 Board of Trustees, University of Illinois.
20 #### Copyright (C) 1995, 1996 Ben Wing.
21
22 ### Don't edit this script!
23 ### This script was automatically generated by the `autoconf' program
24 ### from the file `./configure.in'.
25 ### To rebuild it, execute the command
26 ### autoconf
27 ### in the this directory. You must have autoconf version 1.9 or later.
28
29 ### This file is part of XEmacs.
30
31 ### XEmacs is free software; you can redistribute it and/or modify it
32 ### under the terms of the GNU General Public License as published by
33 ### the Free Software Foundation; either version 2, or (at your
34 ### option) any later version.
35
36 ### XEmacs is distributed in the hope that it will be useful, but
37 ### WITHOUT ANY WARRANTY; without even the implied warranty of
38 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
39 ### General Public License for more details.
40
41 ### You should have received a copy of the GNU General Public License
42 ### along with XEmacs; see the file COPYING. If not, write to the Free
43 ### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
44 ### 02111-1307, USA.
45
46 ### Since XEmacs has configuration requirements that autoconf can't
47 ### meet, this file is an unholy marriage of custom-baked
48 ### configuration code and autoconf macros.
49 ###
50 ### We use the m4 quoting characters [ ] (as established by the
51 ### autoconf system) to include large sections of raw sewage - Oops, I
52 ### mean, shell code - in the final configuration script.
53 ###
54 ### Usage: configure config_name
55 ###
56 ### If configure succeeds, it leaves its status in config.status.
57 ### If configure fails after disturbing the status quo,
58 ### config.status is removed.
59
60 ### Remove any more than one leading "." element from the path name.
61 ### If we don't remove them, then another "./" will be prepended to
62 ### the file name each time we use config.status, and the program name
63 ### will get larger and larger. This wouldn't be a problem, except
64 ### that since progname gets recorded in all the Makefiles this script
65 ### produces, move-if-change thinks they're different when they're
66 ### not.
67 ###
68 ### It would be nice if we could put the ./ in a \( \) group and then
69 ### apply the * operator to that, so we remove as many leading ./././'s
70 ### as are present, but some seds (like Ultrix's sed) don't allow you to
71 ### apply * to a \( \) group. Bleah.
72 progname="`echo $0 | sed 's:^\./\./:\./:'`"
73
74 ############################################################################
75 # #
76 # Establish some default values #
77 # #
78 ############################################################################
79
80 run_in_place='no'
81 prefix='/usr/local'
82 exec_prefix='${prefix}'
83 bindir='${exec_prefix}/bin'
84 # FSF 19.29 changes to:
85 # datadir='${prefix}/share'
86 # sharedstatedir='${prefix}/com'
87 # libexecdir='${exec_prefix}/libexec'
88 datadir='${prefix}/lib'
89 statedir='${prefix}/lib'
90 libdir='${exec_prefix}/lib'
91 mandir='${prefix}/man/man1'
92 infodir='${prefix}/lib/xemacs-${version}/info'
93 infodir_user_defined='no'
94 lispdir='${datadir}/xemacs-${version}/lisp'
95 lispdir_user_defined='no'
96 sitelispdir='${datadir}/xemacs/site-lisp'
97 etcdir='${datadir}/xemacs-${version}/etc'
98 etcdir_user_defined='no'
99 lockdir='${statedir}/xemacs/lock'
100 lockdir_user_defined='no'
101 archlibdir='${libdir}/xemacs-${version}/${configuration}'
102 archlibdir_user_defined='no'
103 with_menubars=''
104 with_scrollbars=''
105 with_dialogs=''
106 const_is_losing='yes'
107 puresize=''
108 cflags='NO_CFLAGS_DEFINED'
109 dynamic=''
110 with_x11=''
111 rel_alloc='default'
112 use_system_malloc='default'
113 internal_makefile_list='Makefile lib-src/Makefile.in man/Makefile.in src/Makefile.in lwlib/Makefile.in dynodump/Makefile.in'
114 energize_version='no'
115 native_sound_lib=''
116 # make normal error-checking be the default in alpha and beta versions, so
117 # that bugs get noticed. Change this for released versions.
118 error_check_default='no'
119 error_check_extents=$error_check_default
120 error_check_typecheck=$error_check_default
121 error_check_bufpos=$error_check_default
122 error_check_gc=$error_check_default
123 error_check_malloc=$error_check_default
124 # debug=yes must be set when error checking is present. This should be
125 # fixed up.
126 debug=$error_check_default
127 quantify='no'
128 # use-assertions should be 'yes' by default. Too many people in this
129 # world have core dumps turned off by default or "can't find where the
130 # core file went". At least we should get some useful output ...
131 use_assertions='yes'
132 # the following is set to yes or no later.
133 with_gif=''
134 # the following is set to yes or no later.
135 with_toolbars=''
136 with_tty='yes'
137 use_union_type='no'
138
139 # # gnu echo silently eats `--help', `--version', `-n', `-e', `-E', `-n'.
140 # # other versions of echo eat any strings beginning with `-n'.
141 # # when parsing arguments, special case these strings and don't
142 # # pass them through echo
143 # echo=/bin/echo
144 #
145 # this approach abandoned in favor of
146 #
147 # echo "" ${stuff_to_filter} | sed -e 's:^ ::'
148
149 # On Sun systems, people sometimes set up the variable CPP
150 # with a value that is a directory, not an executable at all.
151 # Detect that case, and ignore that value.
152 if [ "x$CPP" != x ] && [ -d "$CPP" ] ; then
153 CPP=
154 fi
155
156 ############################################################################
157 # #
158 # Usage messages #
159 # #
160 ############################################################################
161
162 short_usage="Usage: ${progname} CONFIGURATION [-OPTION[=VALUE] ...]
163
164 Set compilation and installation parameters for XEmacs, and report.
165 CONFIGURATION specifies the machine and operating system to build for.
166
167 Note that for most of the following options, you can explicitly enable
168 them using \`--OPTION=yes' and explicitly disable them using \`--OPTION=no'.
169 This is especially useful for auto-detected options.
170
171 Options marked with a (*) are autodetected.
172
173
174 General options:
175
176 --help Issue this usage message.
177 --verbose Display the results of configure tests.
178 --extra-verbose Also display the output of any compiler invocation.
179 (Useful when feature tests are coming out wrong.)
180
181
182 Compiler options:
183
184 --compiler=XXXX Specify compiler.
185 --with-gcc (*) Use GCC to compile XEmacs.
186 --with-lcc Use Lucid's LCC to compile XEmacs.
187 --with-gcc=no Don't use GCC to compile XEmacs.
188 --with-gnu-make Write the Makefiles to take advantage of
189 special features of GNU Make. (GNU Make
190 works fine on the Makefiles even without this
191 option. This just allows for simultaneous
192 in-place and --srcdir building.)
193 --cflags=FLAGS Override the default values for CFLAGS.
194 --site-includes=DIR Other header file directories. Separate multiple
195 dirs with spaces and use quotes to enclose.
196 --site-libraries=DIR Other library directories.
197 --site-runtime-libraries=DIR
198 Paths to add with -R flag.
199 --dynamic=yes Link dynamically if supported by system.
200 --dynamic=no Force static linking on systems where dynamic
201 linking is the default.
202 --srcdir=DIR Look for the XEmacs source files in DIR.
203 See also --with-gnu-make.
204 --const-is-losing=no Allow the use of const in the source code.
205
206
207 Installation options:
208
209 --prefix=DIR Install files below DIR. Defaults to \`${prefix}'.
210 --run-in-place Use the source tree for installation.
211
212
213 Window-system options:
214
215 --with-x (*) Support the X Window System.
216 --with-x=no Don't support X.
217 --x-includes=DIR Search for X header files in DIR.
218 --x-libraries=DIR Search for X libraries in DIR.
219 --with-ns Support NeXTstep windows (not yet implemented).
220 --with-menubars=TYPE Use TYPE menubars (lucid, motif, or no). The Lucid
221 widgets emulate Motif (mostly) but are faster.
222 *WARNING* The Motif menubar is currently broken.
223 --with-scrollbars=TYPE Use TYPE scrollbars (lucid, motif, athena, or no).
224 --with-dialogs=TYPE Use TYPE dialog boxes (motif, athena, or no).
225 (Lucid menubars and scrollbars are the default.
226 Motif dialog boxes will be used if Motif can be
227 found.)
228 --with-cde (*) Compile in support for CDE drag and drop.
229 --with-xpm (*) Compile with support for XPM files.
230 It is highly recommended that you obtain XPM
231 (version 3.4g or better) if you don't already
232 have it. Get it from the XEmacs FTP site.
233 --with-xmu=no (*) For those unfortunates whose vendors don't ship Xmu.
234
235
236 Additional features:
237
238 --with-toolbars=no Don't compile with any toolbar support.
239 --with-tooltalk Support the ToolTalk IPC protocol.
240 --with-sparcworks Support the Sun Sparcworks development environment.
241 --with-energize Support the Lucid Energize development environment.
242 This doesn't currently work.
243 --with-socks Compile with support for SOCKS (an Internet proxy).
244 --with-term Compile with support for TERM (a way to multiplex
245 serial lines and provide vaguely Internet-like
246 functionality over a simple dialup connection,
247 used on Linux and other systems. NOTE: We can't
248 guarantee that our TERM support coexists well
249 with standard Internet connections).
250 --with-xface (*) Compile with support for X-Face mail header
251 conversion. Requires the compface library.
252 Get it from the XEmacs FTP site.
253 --with-gif Compile with support for GIF image conversion.
254 This requires no special support and defaults to
255 \`yes'.
256 --with-jpeg (*) Compile with support for JPEG image conversion.
257 Requires libjpeg from the Independent JPEG Group.
258 Get it from the XEmacs FTP site.
259 --with-png (*) Compile with support for PNG image conversion.
260 Requires libpng. Get it from the XEmacs FTP site.
261 Accepted values are \`yes', \`no', and \`gnuz'
262 if you want to use -lgz instead of -lz.
263 --with-tiff Compile with support for TIFF image conversion
264 (not yet implemented).
265 --with-database=type (*) Compile with database support. Valid types are
266 \`no' or a comma-separated list of one or more
267 of \`dbm', \`gnudbm', or \`berkdb'.
268 --external-widget Compile with external widget support.
269 --with-sound=native (*) Compile with native sound support.
270 --with-sound=nas Compile with network sound support.
271 --with-sound=both Compile with native and network sound support.
272 --native-sound-lib=LIB Native sound support library. Needed on Suns
273 with --with-sound=both because both sound libraries
274 are called libaudio.
275 --with-epoch Compile with additional Epoch compatibility.
276 This doesn't work yet.
277 --with-mocklisp Compile with Mocklisp support. Don't do this
278 unless you have a Mocklisp program that you need
279 to run.
280 --usage-tracking Enable some Sun-internal code. If you don't
281 know what this is, you don't want it.
282
283
284 Debugging options:
285
286 --debug Compile with support for debugging XEmacs.
287 (Causes code-size increase but no loss of speed.)
288 --error-checking=TYPE[,TYPE]...
289 Compile with internal error-checking added.
290 Causes noticeable loss of speed. Valid types
291 are extents, bufpos, malloc, gc, typecheck.
292 --error-checking=none Disable all internal error-checking (the default).
293 --error-checking=all Enable all internal error-checking.
294 --memory-usage-stats Compile with additional code to allow you to
295 determine what XEmacs's memory is being used
296 for. Causes a small code increase but no loss
297 of speed. Normally enabled when --debug is given.
298 --no-doc-file Don't rebuild the DOC file unless it's explicitly
299 deleted. Only use during development. (It speeds
300 up the compile-run-test cycle.)
301 --use-union-type Enable or disable use of a union, instead of an
302 int, for the fundamental Lisp_Object type; this
303 provides stricter type-checking. Only works with
304 some systems and compilers.
305
306
307 Other options:
308
309 --puresize=VALUE Override default amount of space for pure Lisp code.
310 --rel-alloc Use the relocating allocator (default for this option
311 is system-dependent).
312 --use-system-malloc Force use of the system malloc, rather than GNU
313 malloc.
314
315 You may also specify any of the \`path' variables found in
316 Makefile.in, including --bindir, --libdir, --lispdir, --datadir, and
317 so on. Note that we recommend against explicitly setting any of these
318 variables. See the INSTALL file for a complete list plus the reasons
319 we advise not changing them. Specifying a \'path' variable will override
320 the --run-in-place value.
321
322 If successful, ${progname} leaves its status in config.status. If
323 unsuccessful after disturbing the status quo, it removes config.status."
324
325
326 ############################################################################
327 # #
328 # Options processing #
329 # #
330 ############################################################################
331
332 ### Record all the arguments, so we can save them in config.status.
333 arguments="$@"
334
335 ### Shell Magic: Quote the quoted arguments in ARGUMENTS. At a later date,
336 ### in order to get the arguments back in $@, we have to do an
337 ### `eval set x "$quoted_arguments"; shift'.
338 quoted_arguments=
339 for i in "$@"; do
340 quoted_arguments="$quoted_arguments '$i'"
341 done
342
343 ### Don't use shift -- that destroys the argument list, which autoconf needs
344 ### to produce config.status. It turns out that "set - ${arguments}" doesn't
345 ### work portably.
346 ### However, it also turns out that many shells cannot expand ${10} at all.
347 ### So using an index variable doesn't work either. It is possible to use
348 ### some shell magic to make 'set x "$arguments"; shift' work portably.
349 while [ $# != 0 ]; do
350 arg="$1"; shift
351 case "${arg}" in
352
353 ## Anything starting with a hyphen we assume is an option.
354 -* )
355 ## Separate the switch name from the value it's being given.
356 case "${arg}" in
357 -*=*)
358 opt=`echo '' ${arg} | sed -e 's:^ ::' -e 's:^-*\([^=]*\)=.*$:\1:'`
359 val=`echo '' ${arg} | sed -e 's:^ ::' -e 's:^-*[^=]*=\(.*\)$:\1:'`
360 valomitted=no
361 ;;
362 # ## special case these strings since echo may
363 # ## silently eat them.
364 # --help ) opt=help val=yes valomitted=yes ;;
365 # --version ) opt=version val=yes valomitted=yes ;;
366 # -e ) opt=e val=yes valomitted=yes ;;
367 # -E ) opt=E val=yes valomitted=yes ;;
368 # -n ) opt=n val=yes valomitted=yes ;;
369 -*)
370 ## If FOO is a boolean argument, --FOO is equivalent to
371 ## --FOO=yes. Otherwise, the value comes from the next
372 ## argument - see below.
373 opt=`echo '' ${arg} | sed -e 's:^ ::' -e 's:^-*\(.*\)$:\1:'`
374 val="yes"
375 valomitted=yes
376 ;;
377 esac
378
379 ## Change `-' in the option name to `_'.
380 optname="${opt}"
381 opt="`echo '' ${opt} | sed -e 's:^ ::' | tr - _`"
382
383 ## Process the option.
384 case "${opt}" in
385
386 ## Has the user specified which window systems they want to support?
387 "with_x" | "with_x11" )
388 ## Make sure the value given was either "yes" or "no".
389 case "${val}" in
390 y | ye | yes ) val=yes ;;
391 n | no ) val=no ;;
392 * )
393 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
394 Set it to either \`yes' or \`no'."
395 echo "${short_usage}") >&2
396 exit 1
397 ;;
398 esac
399 eval "with_x11=\"${val}\""
400 ;;
401
402 ## Has the user specified whether or not they want GCC or LCC?
403 "with_gcc" | "with_lcc" )
404 ## Make sure the value given was either "yes" or "no".
405 case "${val}" in
406 y | ye | yes ) val=yes ;;
407 n | no ) val=no ;;
408 * )
409 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
410 Set it to either \`yes' or \`no'."
411 echo "${short_usage}") >&2
412 exit 1
413 ;;
414 esac
415 eval "${opt}=\"${val}\""
416 if [ "${with_gcc}" = "yes" ] && [ "${with_lcc}" = "yes" ] ; then
417 (echo "${progname}: only one of --with-gcc and --with-lcc may be specified."
418 echo "${short_usage}") >&2
419 exit 1
420 fi
421 ;;
422
423 ## Has the user specified a compiler to use?
424 "compiler" )
425 ## If the value was omitted, get it from the next argument.
426 if [ "${valomitted}" = "yes" ]; then
427 ## Get the next argument from the argument list, if there is one.
428 if [ $# = 0 ]; then
429 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
430 \`--${optname}=FOO'."
431 echo "${short_usage}") >&2
432 exit 1
433 fi
434 val="$1"; shift
435 fi
436 compiler="${val}"
437 ;;
438
439 ## Has the user specified special GNU Make support?
440 "with_gnu_make" )
441 ## Make sure the value given was either "yes" or "no".
442 case "${val}" in
443 y | ye | yes ) val=yes ;;
444 n | no ) val=no ;;
445 * )
446 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
447 Set it to either \`yes' or \`no'."
448 echo "${short_usage}") >&2
449 exit 1
450 ;;
451 esac
452 eval "${opt}=\"${val}\""
453 ;;
454
455 ## This option will not force a rebuild of the DOC
456 ## file each time that a source or Lisp file has changed.
457 ## If you want the DOC file rebuilt, remove it. A side
458 ## effect of this is that you may get complaints about
459 ## "doc lost for function foobar" or "strange doc for
460 ## function foobar", but in general these should not cause
461 ## problems.
462 "no_doc_file" )
463 ## Make sure the value given was either "yes" or "no".
464 case "${val}" in
465 y | ye | yes ) val=yes ;;
466 n | no ) val=no ;;
467 * )
468 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
469 Set it to either \`yes' or \`no'."
470 echo "${short_usage}") >&2
471 exit 1
472 ;;
473 esac
474 eval "${opt}=\"${val}\""
475 ;;
476
477 # Enable use of the union type for Lisp_Objects.
478 # mly, eat your heart out ...
479 "use_union_type" )
480 ## Make sure the value given was either "yes" or "no".
481 case "${val}" in
482 y | ye | yes ) val=yes ;;
483 n | no ) val=no ;;
484 * )
485 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
486 Set it to either \`yes' or \`no'."
487 echo "${short_usage}") >&2
488 exit 1
489 ;;
490 esac
491 eval "${opt}=\"${val}\""
492 ;;
493
494 ## Has the user specified a source directory?
495 "srcdir" )
496 ## If the value was omitted, get it from the next argument.
497 if [ "${valomitted}" = "yes" ]; then
498 ## Get the next argument from the argument list, if there is one.
499 if [ $# = 0 ]; then
500 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
501 \`--${optname}=FOO'."
502 echo "${short_usage}") >&2
503 exit 1
504 fi
505 val="$1"; shift
506 fi
507 srcdir="${val}"
508 ;;
509
510 ## Has the user requested sound support?
511 "with_sound" )
512 ## value can be native, nas or both. yes is allowed
513 ## as a backwards compatible synonym for native
514 case "${val}" in
515 y | ye | yes ) val=native ;;
516 n | no | non | none ) val=no;;
517 na | nat | nati | nativ | native ) val=native ;;
518 ne | net | neta | netau | netaud | netaudi | netaudio | nas ) val=nas ;;
519 b | bo | bot | both ) val=both;;
520 * )
521 (echo "${progname}: the \`--${optname}' option should have one of the values \`native', \`nas', \`both', or \`none'."
522 echo "${short_usage}") >&2
523 exit 1
524 ;;
525 esac
526 eval "${opt}=\"${val}\""
527 ;;
528
529 ## Has the user specified a native sound library?
530 ## (the reason for this flag is that, under Suns, both NAS sound
531 ## and native sound call their library libaudio.a)
532 "native_sound_lib" )
533 ## If the value was omitted, get it from the next argument.
534 if [ "${valomitted}" = "yes" ]; then
535 ## Get the next argument from the argument list, if there is one.
536 if [ $# = 0 ]; then
537 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
538 \`--${optname}=FOO'."
539 echo "${short_usage}") >&2
540 exit 1
541 fi
542 val="$1"; shift
543 fi
544 native_sound_lib="${val}"
545 ;;
546
547 ## Has the user requested extra Epoch compatibility?
548 "with_epoch" )
549 ## Make sure the value given was either "yes" or "no".
550 case "${val}" in
551 y | ye | yes ) val=yes ;;
552 n | no ) val=no ;;
553 * )
554 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
555 Set it to either \`yes' or \`no'."
556 echo "${short_usage}") >&2
557 exit 1
558 ;;
559 esac
560 eval "${opt}=\"${val}\""
561 ;;
562
563 ## Has the user specified a change to the default linking?
564 "dynamic" )
565 ## Make sure the value given was either "yes" or "no".
566 case "${val}" in
567 y | ye | yes ) val=yes ;;
568 n | no ) val=no ;;
569 * )
570 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
571 Set it to either \`yes' or \`no'."
572 echo "${short_usage}") >&2
573 exit 1
574 ;;
575 esac
576 eval "${opt}=\"${val}\""
577 ;;
578
579 ## Has the user specified Quantify support?
580 "quantify" )
581 ## Make sure the value given was either "yes" or "no".
582 case "${val}" in
583 y | ye | yes ) val=yes ;;
584 n | no ) val=no ;;
585 * )
586 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
587 Set it to either \`yes' or \`no'."
588 echo "${short_usage}") >&2
589 exit 1
590 ;;
591 esac
592 eval "${opt}=\"${val}\""
593 ;;
594
595 ## Has the user requested SOCKS support?
596 "with_socks" )
597 ## Make sure the value given was either "yes" or "no".
598 case "${val}" in
599 y | ye | yes ) val=yes ;;
600 n | no ) val=no ;;
601 * )
602 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
603 Set it to either \`yes' or \`no'."
604 echo "${short_usage}") >&2
605 exit 1
606 ;;
607 esac
608 eval "${opt}=\"${val}\""
609 ;;
610
611 ## Has the user requested TERM support?
612 "with_term" )
613 ## Make sure the value given was either "yes" or "no".
614 case "${val}" in
615 y | ye | yes ) val=yes ;;
616 n | no ) val=no ;;
617 * )
618 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
619 Set it to either \`yes' or \`no'."
620 echo "${short_usage}") >&2
621 exit 1
622 ;;
623 esac
624 eval "${opt}=\"${val}\""
625 ;;
626
627 ## Has the user requested CDE support?
628 "with_cde" )
629 ## Make sure the value given was either "yes" or "no".
630 case "${val}" in
631 y | ye | yes ) val=yes ;;
632 n | no ) val=no ;;
633 * )
634 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
635 Set it to either \`yes' or \`no'."
636 echo "${short_usage}") >&2
637 exit 1
638 ;;
639 esac
640 eval "${opt}=\"${val}\""
641 ;;
642
643 ## Has the user requested XPM support?
644 "with_xpm" )
645 ## Make sure the value given was either "yes" or "no".
646 case "${val}" in
647 y | ye | yes ) val=yes ;;
648 n | no ) val=no ;;
649 * )
650 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
651 Set it to either \`yes' or \`no'."
652 echo "${short_usage}") >&2
653 exit 1
654 ;;
655 esac
656 eval "${opt}=\"${val}\""
657 ;;
658
659 ## Has the user requested XFACE support?
660 "with_xface" )
661 ## Make sure the value given was either "yes" or "no".
662 case "${val}" in
663 y | ye | yes ) val=yes ;;
664 n | no ) val=no ;;
665 * )
666 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
667 Set it to either \`yes' or \`no'."
668 echo "${short_usage}") >&2
669 exit 1
670 ;;
671 esac
672 eval "${opt}=\"${val}\""
673 ;;
674
675 ## Has the user requested GIF support?
676 "with_gif" )
677 ## Make sure the value given was either "yes" or "no".
678 case "${val}" in
679 y | ye | yes ) val=yes ;;
680 n | no ) val=no ;;
681 * )
682 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
683 Set it to either \`yes' or \`no'."
684 echo "${short_usage}") >&2
685 exit 1
686 ;;
687 esac
688 eval "${opt}=\"${val}\""
689 ;;
690
691 ## Has the user requested JPEG support?
692 "with_jpeg" )
693 ## Make sure the value given was either "yes" or "no".
694 case "${val}" in
695 y | ye | yes ) val=yes ;;
696 n | no ) val=no ;;
697 * )
698 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
699 Set it to either \`yes' or \`no'."
700 echo "${short_usage}") >&2
701 exit 1
702 ;;
703 esac
704 eval "${opt}=\"${val}\""
705 ;;
706
707 ## Has the user requested database support?
708 "with_database" )
709 if [ "${val}" = "no" ] ; then
710 with_database_berkdb=no
711 with_database_dbm=no
712 with_database_gnudbm=no
713 else
714 ## Make sure the value given was berkdb, dbm, gnudbm, or a list
715 for x in `echo "${val}" | sed 's/,/ /'` ; do
716 case "${x}" in
717 b | be | ber | berk | berkd | berkdb )
718 with_database_berkdb=yes ;;
719 d | db | dbm )
720 with_database_dbm=yes ;;
721 g | gn | gnu | gnud | gnudb | gnudbm )
722 with_database_gnudbm=yes ;;
723 * )
724 (echo "${progname}: the \`--${optname}' option is supposed to be either \`no'
725 or a comma-separated list of one or more of \`berkdb', \`dbm', or \`gnudbm'."
726 echo "${short_usage}") >&2
727 exit 1
728 ;;
729 esac
730 done
731 if [ "${with_database_dbm}" = "yes" ] && [ "${with_database_gnudbm}" = "yes" ]
732 then
733 (echo "${progname}: only one of \`dbm' and \`gnudbm' should be specified.") >&2
734 exit 1
735 fi
736 fi
737 ;;
738
739 ## Has the user requested PNG support?
740 "with_png" )
741 ## Make sure the value given was either "yes", "no", or "gnuz".
742 case "${val}" in
743 y | ye | yes ) val=yes ;;
744 n | no ) val=no ;;
745 g | gn | gnu | gnuz ) val=gnuz ;;
746 * )
747 (echo "${progname}: the \`--${optname}' option is supposed to
748 be either \`yes', \`no', or \`gnuz'."
749 echo "${short_usage}") >&2
750 exit 1
751 ;;
752 esac
753 eval "${opt}=\"${val}\""
754 ;;
755
756 ## Has the user requested TIFF support?
757 "with_tiff" )
758 ## Make sure the value given was either "yes" or "no".
759 case "${val}" in
760 y | ye | yes ) val=yes ;;
761 n | no ) val=no ;;
762 * )
763 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
764 Set it to either \`yes' or \`no'."
765 echo "${short_usage}") >&2
766 exit 1
767 ;;
768 esac
769 eval "${opt}=\"${val}\""
770 ;;
771
772 ## Has the user requested NeXTstep support?
773 "with_ns" )
774 ## Make sure the value given was either "yes" or "no".
775 case "${val}" in
776 y | ye | yes ) val=yes ;;
777 n | no ) val=no ;;
778 * )
779 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
780 Set it to either \`yes' or \`no'."
781 echo "${short_usage}") >&2
782 exit 1
783 ;;
784 esac
785 eval "${opt}=\"${val}\""
786 ;;
787
788 ## Has the user requested that assertions be used?
789 "use_assertions" )
790 ## Make sure the value given was either "yes" or "no".
791 case "${val}" in
792 y | ye | yes ) val=yes ;;
793 n | no ) val=no ;;
794 * )
795 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
796 Set it to either \`yes' or \`no'."
797 echo "${short_usage}") >&2
798 exit 1
799 ;;
800 esac
801 eval "${opt}=\"${val}\""
802 ;;
803
804 ## Has the user requested error-checking?
805 "error_checking" )
806 ## value can be all, none, and/or a list of categories to check.
807 ## Example: --error-checking=all,noextents,nobufpos
808 ## Example: --error-checking=none,malloc,gc
809
810 for x in `echo "${val}" | sed 's/,/ /'` ; do
811 case "${x}" in
812 # all and none are only permitted as the first in the list.
813 n | no | non | none ) new_default=no ;;
814 a | al | all ) new_default=yes ;;
815
816 extents ) error_check_extents=yes ;;
817 noextents ) error_check_extents=no ;;
818
819 typecheck ) error_check_typecheck=yes ;;
820 notypecheck ) error_check_typecheck=no ;;
821
822 bufpos ) error_check_bufpos=yes ;;
823 nobufpos ) error_check_bufpos=no ;;
824
825 gc ) error_check_gc=yes ;;
826 nogc ) error_check_gc=no ;;
827
828 malloc ) error_check_malloc=yes ;;
829 nomalloc ) error_check_malloc=no ;;
830
831 * ) bogus_error_check=yes ;;
832 esac
833 if [ "$bogus_error_check" -o \
834 \( -n "$new_default" -a -n "$echeck_notfirst" \) ]; then
835 ( echo "${progname}: Valid types for the \`--${optname}' option are:"
836 if [ $error_check_default = yes ]; then
837 echo "\`all' (default), \`none', \`noextents', \`notypecheck', \`nobufpos', \`nogc', and \`nomalloc'."
838 else
839 echo "\`all', \`none' (default), \`extents', \`typecheck', \`bufpos', \`gc', and \`malloc'."
840 fi
841 echo "${short_usage}" ) >&2
842 exit 1
843 elif [ "$new_default" ]; then
844 error_check_extents=$new_default
845 error_check_typecheck=$new_default
846 error_check_bufpos=$new_default
847 error_check_gc=$new_default
848 error_check_malloc=$new_default
849 new_default= # reset this
850 fi
851 echeck_notfirst=true
852 done
853 ;;
854
855 ## Has the user requested external widget support?
856 "external_widget" )
857 ## Make sure the value given was either "yes" or "no".
858 case "${val}" in
859 y | ye | yes ) val=yes ;;
860 n | no ) val=no ;;
861 * )
862 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
863 Set it to either \`yes' or \`no'."
864 echo "${short_usage}") >&2
865 exit 1
866 ;;
867 esac
868 eval "${opt}=\"${val}\""
869 ;;
870
871 ## Has the user requested that const be used?
872 "const_is_losing" )
873 ## Make sure the value given was either "yes" or "no".
874 case "${val}" in
875 y | ye | yes ) val=yes ;;
876 n | no ) val=no ;;
877 * )
878 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
879 Set it to either \`yes' or \`no'."
880 echo "${short_usage}") >&2
881 exit 1
882 ;;
883 esac
884 eval "${opt}=\"${val}\""
885 ;;
886
887 ## Has the user mentioned that they don't have Xmu?
888 "with_xmu" )
889 ## Make sure the value given was either "yes" or "no".
890 case "${val}" in
891 y | ye | yes ) val=yes ;;
892 n | no ) val=no ;;
893 * )
894 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
895 Set it to either \`yes' or \`no'."
896 echo "${short_usage}") >&2
897 exit 1
898 ;;
899 esac
900 eval "${opt}=\"${val}\""
901 ;;
902
903 ## Has the user specified a value for PURESIZE?
904 "puresize" )
905 ## If the value was omitted, get it from the next argument.
906 if [ "${valomitted}" = "yes" ]; then
907 ## Get the next argument from the argument list, if there is one.
908 if [ $# = 0 ]; then
909 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
910 \`--${optname}=FOO'."
911 echo "${short_usage}") >&2
912 exit 1
913 fi
914 val="$1"; shift
915 fi
916 puresize="${val}"
917 ;;
918
919 ## Has the user specified explicit instructions for rel_alloc?
920 "rel_alloc" )
921 ## Make sure the value given was either "yes", "no", or "default".
922 case "${val}" in
923 y | ye | yes ) val=yes ;;
924 n | no ) val=no ;;
925 d | de | def | defa | defau | defaul | default )
926 val=default ;;
927 * )
928 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value or \`default'.
929 Set it to either \`yes', \`no', or \`default'."
930 echo "${short_usage}") >&2
931 exit 1
932 ;;
933 esac
934 eval "${opt}=\"${val}\""
935 ;;
936
937 ## Has the user specified explicit instructions for system_malloc?
938 "use_system_malloc" )
939 ## Make sure the value given was either "yes", "no", or "default".
940 case "${val}" in
941 y | ye | yes ) val=yes ;;
942 n | no ) val=no ;;
943 d | de | def | defa | defau | defaul | default )
944 val=default ;;
945 * )
946 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value or \`default'.
947 Set it to either \`yes', \`no', or \`default'."
948 echo "${short_usage}") >&2
949 exit 1
950 ;;
951 esac
952 eval "${opt}=\"${val}\""
953 ;;
954
955 ## Has the user tried to tell us where the X files are?
956 ## I think these are dopey, but no less than three alpha
957 ## testers, at large sites, have said they have their X files
958 ## installed in odd places.
959 "x_includes" )
960 ## If the value was omitted, get it from the next argument.
961 if [ "${valomitted}" = "yes" ]; then
962 ## Get the next argument from the argument list, if there is one.
963 if [ $# = 0 ]; then
964 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
965 \`--${optname}=/usr/local/X11/include'."
966 echo "${short_usage}") >&2
967 exit 1
968 fi
969 val="$1"; shift
970 fi
971 x_includes="${val}"
972 ;;
973 "x_libraries" )
974 ## If the value was omitted, get it from the next argument.
975 if [ "${valomitted}" = "yes" ]; then
976 ## Get the next argument from the argument list, if there is one.
977 if [ $# = 0 ]; then
978 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
979 \`--${optname}=/usr/local/X11/lib'."
980 echo "${short_usage}") >&2
981 exit 1
982 fi
983 val="$1"; shift
984 fi
985 x_libraries="${val}"
986 ;;
987
988 "site_includes" )
989 ## If the value was omitted, get it from the next argument.
990 if [ "${valomitted}" = "yes" ]; then
991 ## Get the next argument from the argument list, if there is one.
992 if [ $# = 0 ]; then
993 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
994 \`--${optname}=/usr/local/X11/include'."
995 echo "${short_usage}") >&2
996 exit 1
997 fi
998 val="$1"; shift
999 fi
1000 site_includes="${val}"
1001 ;;
1002
1003 "site_libraries" )
1004 ## If the value was omitted, get it from the next argument.
1005 if [ "${valomitted}" = "yes" ]; then
1006 ## Get the next argument from the argument list, if there is one.
1007 if [ $# = 0 ]; then
1008 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
1009 \`--${optname}=/usr/local/X11/lib'."
1010 echo "${short_usage}") >&2
1011 exit 1
1012 fi
1013 val="$1"; shift
1014 fi
1015 site_libraries="${val}"
1016 ;;
1017
1018 "site_runtime_libraries" )
1019 ## If the value was omitted, get it from the next argument.
1020 if [ "${valomitted}" = "yes" ]; then
1021 ## Get the next argument from the argument list, if there is one.
1022 if [ $# = 0 ]; then
1023 (echo "${progname}: You must give a value for the \`--${optname}' option, as in
1024 \`--${optname}=/usr/local/X11/lib'."
1025 echo "${short_usage}") >&2
1026 exit 1
1027 fi
1028 val="$1"; shift
1029 fi
1030 site_runtime_libraries="${val}"
1031 ;;
1032
1033 ## Has the user specified the developer configuration?
1034 ## Note that the user still has the option of explicitly setting
1035 ## a path option.
1036 "run_in_place" )
1037 ## Make sure the value given was either "yes" or "no".
1038 case "${val}" in
1039 y | ye | yes ) val=yes ;;
1040 n | no ) val=no ;;
1041 * )
1042 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1043 Set it to either \`yes' or \`no'."
1044 echo "${short_usage}") >&2
1045 exit 1
1046 ;;
1047 esac
1048 eval "${opt}=\"${val}\""
1049 ;;
1050
1051 ## Has the user specified one of the path options?
1052 prefix | exec_prefix | bindir | datadir | statedir | libdir | \
1053 mandir | infodir | lispdir | etcdir | lockdir | archlibdir | \
1054 sitelispdir | docdir )
1055 ## If the value was omitted, get it from the next argument.
1056 if [ "${valomitted}" = "yes" ]; then
1057 if [ $# = 0 ]; then
1058 (echo \
1059 "$progname: You must give a value for the \`--${optname}' option,";
1060 echo \
1061 "as in \`--${optname}=`eval echo '$'$optname`.'"
1062 echo "$short_usage") >&2
1063 exit 1
1064 fi
1065 val="$1"; shift
1066 fi
1067 eval "${opt}=\"${val}\""
1068
1069 ## Changing exec_prefix or libdir will change the default value
1070 ## of archlibdir. Changing datadir will change the default value
1071 ## of etcdir and lispdir. Changing statedir will change the
1072 ## default value of lockdir.
1073 if [ "${opt}" = "exec_prefix" ]; then
1074 archlibdir_user_defined='yes'
1075 elif [ "${opt}" = "libdir" ]; then
1076 archlibdir_user_defined='yes'
1077 elif [ "${opt}" = "archlibdir" ]; then
1078 archlibdir_user_defined='yes'
1079 elif [ "${opt}" = "lispdir" ]; then
1080 lispdir_user_defined='yes'
1081 elif [ "${opt}" = "etcdir" ]; then
1082 etcdir_user_defined='yes'
1083 elif [ "${opt}" = "datadir" ]; then
1084 lispdir_user_defined='yes'
1085 etcdir_user_defined='yes'
1086 elif [ "${opt}" = "statedir" ]; then
1087 lockdir_user_defined='yes'
1088 elif [ "${opt}" = "lockdir" ]; then
1089 lockdir_user_defined='yes'
1090 elif [ "${opt}" = "infodir" ]; then
1091 infodir_user_defined='yes'
1092 fi
1093 ;;
1094
1095 ## Has the user specified values to override CFLAGS?
1096 cflags )
1097 ## If the value was omitted, get it from the next argument.
1098 if [ "${valomitted}" = "yes" ]; then
1099 if [ $# = 0 ]; then
1100 (echo \
1101 "$progname: You must give a value for the \`--${optname}' option,";
1102 echo \
1103 "as in \`--${optname}=`eval echo '$'$optname`-g -O'"
1104 echo "$short_usage") >&2
1105 exit 1
1106 fi
1107 val="$1"; shift
1108 fi
1109 eval "${opt}=\"${val}\""
1110 eval "${opt}_specified=1"
1111 ;;
1112
1113 ## Verbose flag, tested by autoconf macros.
1114 "verbose" )
1115 verbose=yes
1116 ;;
1117
1118 ## Does the user want to see the compiler output for feature tests?
1119 "extra_verbose" )
1120 ## Make sure the value given was either "yes" or "no".
1121 case "${val}" in
1122 y | ye | yes ) val=yes ;;
1123 n | no ) val=no ;;
1124 * )
1125 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1126 Set it to either \`yes' or \`no'."
1127 echo "${short_usage}") >&2
1128 exit 1
1129 ;;
1130 esac
1131 eval "${opt}=\"${val}\""
1132 ## --extra-verbose implies --verbose
1133 verbose=yes
1134 ;;
1135
1136 ## --no-create added by autoconf for use by config.status
1137 "no_create" )
1138 ;;
1139
1140 ## Has the user asked for some help?
1141 "usage" | "help" )
1142 if [ "x$PAGER" = x ]
1143 then
1144 echo "${short_usage}" | more
1145 else
1146 echo "${short_usage}" | $PAGER
1147 fi
1148 exit
1149 ;;
1150
1151 ## Has the user specified what toolkit to use for the menubars,
1152 ## scrollbar or dialogs?
1153 "with_menubars" | "with_scrollbars" | "with_dialogs" )
1154 ## value can be lucid, motif, or athena.
1155 case "${val}" in
1156 l | lu | luc | luci | lucid ) val=lucid ;;
1157 m | mo | mot | moti | motif ) val=motif ;;
1158 a | at | ath | athe | athen | athena ) val=athena ;;
1159 n | no | non | none ) val=no ;;
1160 * )
1161 (echo "${progname}: the \`--${optname}' option should have one of the values \`lucid', \`motif', \`athena', or \`no'."
1162 echo "${short_usage}") >&2
1163 exit 1
1164 ;;
1165 esac
1166 eval "${opt}=\"${val}\""
1167 ;;
1168
1169 ## Has the user disabled toolbar support?
1170 "with_toolbars" )
1171 ## Make sure the value given was either "yes" or "no".
1172 case "${val}" in
1173 y | ye | yes ) val=yes ;;
1174 n | no ) val=no ;;
1175 * )
1176 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1177 Set it to either \`yes' or \`no'."
1178 echo "${short_usage}") >&2
1179 exit 1
1180 ;;
1181 esac
1182 eval "${opt}=\"${val}\""
1183 ;;
1184
1185 ## Has the user disabled TTY support?
1186 "with_tty" )
1187 ## Make sure the value given was either "yes" or "no".
1188 case "${val}" in
1189 y | ye | yes ) val=yes ;;
1190 n | no ) val=no ;;
1191 * )
1192 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1193 Set it to either \`yes' or \`no'."
1194 echo "${short_usage}") >&2
1195 exit 1
1196 ;;
1197 esac
1198 eval "${opt}=\"${val}\""
1199 ;;
1200
1201 ## Has the user specified whether or not they want to use ToolTalk?
1202 "with_tooltalk" )
1203 ## Make sure the value given was either "yes" or "no".
1204 case "${val}" in
1205 y | ye | yes ) val=yes ;;
1206 n | no ) val=no ;;
1207 * )
1208 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1209 Set it to either \`yes' or \`no'."
1210 echo "${short_usage}") >&2
1211 exit 1
1212 ;;
1213 esac
1214 eval "${opt}=\"${val}\""
1215 ;;
1216
1217 ## Has the user specified whether or not they want Mocklisp support?
1218 "with_mocklisp" )
1219 ## Make sure the value given was either "yes" or "no".
1220 case "${val}" in
1221 y | ye | yes ) val=yes ;;
1222 n | no ) val=no ;;
1223 * )
1224 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1225 Set it to either \`yes' or \`no'."
1226 echo "${short_usage}") >&2
1227 exit 1
1228 ;;
1229 esac
1230 eval "${opt}=\"${val}\""
1231 ;;
1232
1233 ## Has the user specified whether or not they want to use SparcWorks?
1234 "with_sparcworks" )
1235 ## Make sure the value given was either "yes" or "no".
1236 case "${val}" in
1237 y | ye | yes ) val=yes ;;
1238 n | no ) val=no ;;
1239 * )
1240 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1241 Set it to either \`yes' or \`no'."
1242 echo "${short_usage}") >&2
1243 exit 1
1244 ;;
1245 esac
1246 eval "${opt}=\"${val}\""
1247 if [ "${with_sparcworks}" = "yes" ]; then
1248 with_tooltalk='yes'
1249 fi
1250 ;;
1251
1252 ## Does the user want usage tracking?
1253 "usage_tracking" )
1254 ## Make sure the value given was either "yes" or "no".
1255 case "${val}" in
1256 y | ye | yes ) val=yes ;;
1257 n | no ) val=no ;;
1258 * )
1259 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1260 Set it to either \`yes' or \`no'."
1261 echo "${short_usage}") >&2
1262 exit 1
1263 ;;
1264 esac
1265 eval "${opt}=\"${val}\""
1266 ;;
1267
1268 ## Does the user want additional debugging capability?
1269 "debug" )
1270 ## Make sure the value given was either "yes" or "no".
1271 case "${val}" in
1272 y | ye | yes ) val=yes ;;
1273 n | no ) val=no ;;
1274 * )
1275 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1276 Set it to either \`yes' or \`no'."
1277 echo "${short_usage}") >&2
1278 exit 1
1279 ;;
1280 esac
1281 eval "${opt}=\"${val}\""
1282 if [ "${debug}" = "yes" ]; then
1283 use_assertions='yes'
1284 memory_usage_stats='yes'
1285 fi
1286 ;;
1287
1288 ## Does the user want code for memory usage stats?
1289 "memory_usage_stats" )
1290 ## Make sure the value given was either "yes" or "no".
1291 case "${val}" in
1292 y | ye | yes ) val=yes ;;
1293 n | no ) val=no ;;
1294 * )
1295 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1296 Set it to either \`yes' or \`no'."
1297 echo "${short_usage}") >&2
1298 exit 1
1299 ;;
1300 esac
1301 eval "${opt}=\"${val}\""
1302 ;;
1303
1304 ## Has the user specified whether or not they want to use Energize?
1305 "with_energize" )
1306 ## Make sure the value given was either "yes" or "no".
1307 case "${val}" in
1308 y | ye | yes ) val=yes ;;
1309 n | no ) val=no ;;
1310 * )
1311 (echo "${progname}: the \`--${optname}' option is supposed to have a boolean value.
1312 Set it to either \`yes' or \`no'."
1313 echo "${short_usage}") >&2
1314 exit 1
1315 ;;
1316 esac
1317 eval "${opt}=\"${val}\""
1318 if [ "${with_energize}" = "yes" ]; then
1319 with_menubars='lucid'
1320 with_scrollbars='motif'
1321 with_dialogs='motif'
1322 with_tooltalk='yes'
1323 internal_makefile_list="$internal_makefile_list lwlib/energize/Makefile.in"
1324 fi
1325 ;;
1326
1327 ## Fail on unrecognized arguments.
1328 * )
1329 (echo "${progname}: Error: unrecognized option ${arg}"
1330 echo ""
1331 echo "${short_usage}") >& 2
1332 exit 1
1333 ;;
1334
1335 esac
1336 ;;
1337
1338 ## Anything not starting with a hyphen we assume is a
1339 ## configuration name.
1340 *)
1341 configuration=${arg}
1342 ;;
1343
1344 esac
1345 done
1346
1347 ############################################################################
1348 # #
1349 # Finish options processing #
1350 # #
1351 ############################################################################
1352
1353 ### Get the arguments back. See the diatribe on Shell Magic above.
1354 eval set x "$quoted_arguments"; shift
1355
1356 if [ "${configuration}" = "" ]; then
1357 echo '- You did not tell me what kind of host system you want to configure.
1358 - I will attempt to guess the kind of system this is.' 1>&2
1359 guesssys=`echo ${progname} | sed 's/configure$/config.guess/'`
1360 if configuration=`${CONFIG_SHELL-/bin/sh} ${guesssys}` ; then
1361 echo "- Looks like this is a ${configuration}" 1>&2
1362 else
1363 echo '- Failed to guess the system type. You need to tell me.' 1>&2
1364 echo "${short_usage}" >&2
1365 exit 1
1366 fi
1367 fi
1368
1369 ############################################################################
1370 # #
1371 # Handle --srcdir #
1372 # #
1373 ############################################################################
1374
1375 #### Decide where the source is.
1376 case "${srcdir}" in
1377
1378 ## If it's not specified, see if `.' or `..' might work.
1379 "" )
1380 confdir=`echo $0 | sed 's|//|/|' | sed 's|/[^/]*$||'`
1381 if [ -f $confdir/src/lisp.h -a -f $confdir/lisp/version.el ]; then
1382 srcdir="${confdir}"
1383 else
1384 if [ -f "./src/lisp.h" -a -f "./lisp/version.el" ]; then
1385 srcdir='.'
1386 else
1387 if [ -f "../src/lisp.h" -a -f "../lisp/version.el" ]; then
1388 srcdir='..'
1389 else
1390 (echo "\
1391 ${progname}: Neither the current directory nor its parent seem to
1392 contain the XEmacs sources. If you do not want to build XEmacs in its
1393 source tree, you should run \`${progname}' in the directory in which
1394 you wish to build XEmacs, using its \`--srcdir' option to say where the
1395 sources may be found."
1396 echo "${short_usage}") >&2
1397 exit 1
1398 fi
1399 fi
1400 fi
1401 ;;
1402
1403 ## Otherwise, check if the directory they specified is okay.
1404 * )
1405 if [ ! -d "${srcdir}" -o ! -f "${srcdir}/src/lisp.h" -o ! -f "${srcdir}/lisp/version.el" ]; then
1406 (echo "\
1407 ${progname}: The directory specified with the \`--srcdir' option,
1408 \`${srcdir}', doesn't seem to contain the XEmacs sources. You should
1409 either run the \`${progname}' script at the top of the XEmacs source
1410 tree, or use the \`--srcdir' option to specify where the XEmacs sources
1411 are."
1412 echo "${short_usage}") >&2
1413 exit 1
1414 fi
1415 ;;
1416 esac
1417
1418 ## We check for this now instead of later when we check for other
1419 ## programs because we need to use its return value now.
1420 ] AC_LN_S
1421
1422 AC_VERBOSE("setting LN_S to ${LN_S}")
1423 [
1424 #### Make symlinks for etc, lisp, and info directories while the path
1425 #### is still relative. We don't symlink lock because someone may
1426 #### have stuck the source on a read-only partition. Instead we'll
1427 #### create it as an actual directory later on if it doesn't already
1428 #### exist.
1429 for dir in etc lisp info
1430 do
1431 if [ ! -d $dir ]; then
1432 echo Making symbolic link to ${srcdir}/$dir
1433 ${LN_S} ${srcdir}/$dir .
1434 fi
1435 done
1436
1437 #### Make srcdir absolute, if it isn't already. It's important to
1438 #### avoid running the path through pwd unnecessary, since pwd can
1439 #### give you automounter prefixes, which can go away.
1440 case "${srcdir}" in
1441 /* ) ;;
1442 . )
1443 ## We may be able to use the $PWD environment variable to make this
1444 ## absolute. But sometimes PWD is inaccurate.
1445 if [ "${PWD}" != "" ] && [ "`(cd ${PWD} ; sh -c pwd)`" = "`pwd`" ] ; then
1446 srcdir="$PWD"
1447 else
1448 srcdir="`(cd ${srcdir}; pwd)`"
1449 fi
1450 ;;
1451 * ) srcdir="`(cd ${srcdir}; pwd)`" ;;
1452 esac
1453
1454 #### Check if the source directory already has a configured system in it.
1455 if [ `pwd` != `sh -c cd ${srcdir} && pwd` ] \
1456 && [ -f "${srcdir}/src/config.h" ] ; then
1457 (echo "${progname}: WARNING: The directory tree \`${srcdir}' is being used"
1458 echo " as a build directory right now; it has been configured in its own"
1459 echo " right. To configure in another directory as well, you MUST"
1460 echo " use GNU make. If you do not have GNU make, then you must"
1461 echo " now do \`make distclean' in ${srcdir},"
1462 echo " and then run ${progname} again.") >&2
1463 extrasub='/^VPATH[ ]*=/c\
1464 vpath %.c $(srcdir)\
1465 vpath %.h $(srcdir)\
1466 vpath %.y $(srcdir)\
1467 vpath %.l $(srcdir)\
1468 vpath %.s $(srcdir)\
1469 vpath %.in $(srcdir)'
1470 fi
1471
1472 ### Make the necessary directories, if they don't exist.
1473 for dir in ./src ./lib-src ./dynodump ./man ./lwlib ./lock ; do
1474 if [ ! -d ${dir} ]; then
1475 mkdir ${dir}
1476 fi
1477 done
1478 if [ "${with_energize}" = "yes" ] && [ ! -d ./lwlib/energize ] ; then
1479 mkdir ./lwlib/energize
1480 fi
1481
1482 ############################################################################
1483 # #
1484 # Determine the s&m files to use #
1485 # #
1486 ############################################################################
1487
1488 #### Given the configuration name, set machfile and opsysfile to the
1489 #### names of the m/*.h and s/*.h files we should use.
1490
1491 ### Canonicalize the configuration name.
1492 echo "checking the configuration name"
1493 # allow -energize prefix on configuration name
1494 internal_configuration=`echo ${configuration} | sed 's/-energize//'`
1495 # allow --sparcworks prefix on configuration name
1496 internal_configuration=`echo ${configuration} | sed 's/-sparcworks//'`
1497 if canonical=`${srcdir}/config.sub "${internal_configuration}"` ; then : ; else
1498 exit $?
1499 fi
1500
1501 ### If you add support for a new configuration, add code to this
1502 ### switch statement to recognize your configuration name and select
1503 ### the appropriate operating system and machine description files.
1504
1505 ### You would hope that you could choose an m/*.h file pretty much
1506 ### based on the machine portion of the configuration name, and an s-
1507 ### file based on the operating system portion. However, it turns out
1508 ### that each m/*.h file is pretty manufacturer-specific - for
1509 ### example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are
1510 ### all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS
1511 ### machines. So we basically have to have a special case for each
1512 ### configuration name.
1513 ###
1514 ### As far as handling version numbers on operating systems is
1515 ### concerned, make sure things will fail in a fixable way. If
1516 ### /etc/MACHINES doesn't say anything about version numbers, be
1517 ### prepared to handle anything reasonably. If version numbers
1518 ### matter, be sure /etc/MACHINES says something about it.
1519 ###
1520 ### Eric Raymond says we should accept strings like "sysvr4" to mean
1521 ### "System V Release 4"; he writes, "The old convention encouraged
1522 ### confusion between `system' and `release' levels'."
1523
1524 machine='' opsys='' unported=no need_dynodump=no
1525 case "${canonical}" in
1526
1527 ## NetBSD ports
1528 *-*-netbsd* )
1529 opsys=netbsd
1530 case "${canonical}" in
1531 sparc-*-netbsd*) machine=sparc ;;
1532 i[3-9]86-*-netbsd*) machine=intel386 ;;
1533 hp300-*-netbsd* | amiga-*-netbsd* | sun3-*-netbsd* | mac68k-*-netbsd* | da30-*-netbsd* | m68k-*-netbsd* )
1534 # Yes, this is somewhat bogus.
1535 machine=hp9000s300 ;;
1536 pc532-*-netbsd* | ns32k-*-netbsd* ) machine=ns32000 ;;
1537 pmax-*-netbsd* | mips-*-netbsd* ) machine=pmax ;;
1538 esac
1539 ;;
1540
1541 ## Acorn RISCiX:
1542 arm-acorn-riscix1.1* )
1543 machine=acorn opsys=riscix1-1
1544 ;;
1545 arm-acorn-riscix1.2* | arm-acorn-riscix )
1546 machine=acorn opsys=riscix1-2
1547 ;;
1548
1549 ## Alliant machines
1550 ## Strictly speaking, we need the version of the alliant operating
1551 ## system to choose the right machine file, but currently the
1552 ## configuration name doesn't tell us enough to choose the right
1553 ## one; we need to give alliants their own operating system name to
1554 ## do this right. When someone cares, they can help us.
1555 fx80-alliant-* )
1556 machine=alliant4 opsys=bsd4-2
1557 ;;
1558 i860-alliant-* )
1559 machine=alliant-2800 opsys=bsd4-3
1560 ;;
1561
1562 ## Alpha (DEC) machines.
1563 ## XEmacs change: split apart into numerous files.
1564 alpha-dec-osf1.3 | alpha-dec-osf2* )
1565 machine=alpha opsys=decosf1-3
1566 ;;
1567 alpha-dec-osf1.2 | alpha-dec-osf1* )
1568 machine=alpha opsys=decosf1-2
1569 ;;
1570
1571 ## XEmacs: Add switch for OSF 1 version 3 (roth@cse.ucsc.edu)
1572 alpha-dec-osf3.[2-9] )
1573 machine=alpha opsys=decosf3-2
1574 ;;
1575 alpha-dec-osf3* )
1576 machine=alpha opsys=decosf3-1
1577 ;;
1578
1579 ## XEmacs: Add switch for Digital Unix version 4 (srivasta@pilgrim.umass.edu)
1580 alpha-dec-osf4* )
1581 machine=alpha opsys=decosf4-0
1582 ;;
1583
1584 alpha-*-linux* )
1585 machine=alpha opsys=linux
1586 ;;
1587
1588 ## Altos 3068
1589 m68*-altos-sysv* )
1590 machine=altos opsys=usg5-2
1591 ;;
1592
1593 ## Amdahl UTS
1594 580-amdahl-sysv* )
1595 machine=amdahl opsys=usg5-2-2
1596 ;;
1597
1598 ## Apollo, Domain/OS
1599 m68*-apollo-* )
1600 machine=apollo opsys=bsd4-3
1601 ;;
1602
1603 ## AT&T 3b2, 3b5, 3b15, 3b20
1604 we32k-att-sysv* )
1605 machine=att3b opsys=usg5-2-2
1606 ;;
1607
1608 ## AT&T 3b1 - The Mighty Unix PC!
1609 m68*-att-sysv* )
1610 machine=7300 opsys=usg5-2-2
1611 ;;
1612
1613 ## Bull dpx20
1614 rs6000-bull-bosx* )
1615 machine=ibmrs6000 opsys=aix3-2
1616 ;;
1617
1618 ## Bull dpx2
1619 m68*-bull-sysv3* )
1620 machine=dpx2 opsys=usg5-3
1621 ;;
1622
1623 ## Bull sps7
1624 m68*-bull-sysv2* )
1625 machine=sps7 opsys=usg5-2
1626 ;;
1627
1628 ## CCI 5/32, 6/32 -- see "Tahoe".
1629
1630 ## Celerity
1631 ## I don't know what configuration name to use for this; config.sub
1632 ## doesn't seem to know anything about it. Hey, Celerity users, get
1633 ## in touch with us!
1634 celerity-celerity-bsd* )
1635 machine=celerity opsys=bsd4-2
1636 ;;
1637
1638 ## Clipper
1639 ## What operating systems does this chip run that XEmacs has been
1640 ## tested on?
1641 clipper-* )
1642 machine=clipper
1643 ## We'll use the catch-all code at the bottom to guess the
1644 ## operating system.
1645 ;;
1646
1647 ## Convex
1648 *-convex-bsd* | *-convex-convexos* )
1649 machine=convex opsys=bsd4-3
1650 ## Prevents spurious white space in makefiles - d.m.cooke@larc.nasa.gov
1651 NON_GNU_CPP="cc -E -P"
1652 ;;
1653
1654 ## Cubix QBx/386
1655 i[3-9]86-cubix-sysv* )
1656 machine=intel386 opsys=usg5-3
1657 ;;
1658
1659 ## Cydra 5
1660 cydra*-cydrome-sysv* )
1661 machine=cydra5 opsys=usg5-3
1662 ;;
1663
1664 ## Data General AViiON Machines
1665 m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* )
1666 machine=aviion opsys=dgux5-4r3
1667 ;;
1668 m88k-dg-dgux5.4R2* | m88k-dg-dgux5.4.2* )
1669 machine=aviion opsys=dgux5-4r2
1670 ;;
1671 m88k-dg-dgux* )
1672 machine=aviion opsys=dgux
1673 ;;
1674
1675 mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* )
1676 machine=pmax opsys=bsd4-2
1677 ;;
1678 mips-dec-ultrix4.[12]* | mips-dec-bsd* )
1679 machine=pmax opsys=bsd4-3
1680 ;;
1681 mips-dec-ultrix* )
1682 machine=pmax opsys=ultrix4-3
1683 ;;
1684 mips-dec-osf* )
1685 machine=pmax opsys=osf1
1686 ;;
1687 mips-dec-mach_bsd4.3* )
1688 machine=pmax opsys=mach-bsd4-3
1689 ;;
1690
1691 ## Motorola Delta machines
1692 m68k-motorola-sysv* | m68000-motorola-sysv* )
1693 machine=delta opsys=usg5-3
1694 if test -z "`type gnucc | grep 'not found'`"
1695 then
1696 if test -s /etc/167config
1697 then CC="gnucc -m68040"
1698 else CC="gnucc -m68881"
1699 fi
1700 else
1701 if test -z "`type gcc | grep 'not found'`"
1702 then CC=gcc
1703 else CC=cc
1704 fi
1705 fi
1706 ;;
1707 m88k-motorola-sysv4* )
1708 # jbotte@bnr.ca says that UNIX_System_V <hostName> 4.0 R40V4.3 m88k mc88110
1709 # needs POSIX_SIGNALS and therefore needs usg5-4-2.
1710 # I hope there are not other 4.0 versions for this machine
1711 # which really need usg5-4 instead.
1712 machine=delta88k opsys=usg5-4-2
1713 ;;
1714 m88k-motorola-sysv* | m88k-motorola-m88kbcs* )
1715 machine=delta88k opsys=usg5-3
1716 ;;
1717
1718 ## Dual machines
1719 m68*-dual-sysv* )
1720 machine=dual opsys=usg5-2
1721 ;;
1722 m68*-dual-uniplus* )
1723 machine=dual opsys=unipl5-2
1724 ;;
1725
1726 ## Elxsi 6400
1727 elxsi-elxsi-sysv* )
1728 machine=elxsi opsys=usg5-2
1729 ;;
1730
1731 ## Encore machines
1732 ns16k-encore-bsd* )
1733 machine=ns16000 opsys=umax
1734 ;;
1735
1736 ## The GEC 93 - apparently, this port isn't really finished yet.
1737
1738 ## Gould Power Node and NP1
1739 pn-gould-bsd4.2* )
1740 machine=gould opsys=bsd4-2
1741 ;;
1742 pn-gould-bsd4.3* )
1743 machine=gould opsys=bsd4-3
1744 ;;
1745 np1-gould-bsd* )
1746 machine=gould-np1 opsys=bsd4-3
1747 ;;
1748
1749 ## Harris Night Hawk machines running CX/UX (a 5000 looks just like a 4000
1750 ## as far as XEmacs is concerned).
1751 m88k-harris-cxux* )
1752 # Build needs to be different on 7.0 and later releases
1753 case "`uname -r`" in
1754 [56].[0-9] ) machine=nh4000 opsys=cxux ;;
1755 [7].[0-9] ) machine=nh4000 opsys=cxux7 ;;
1756 esac
1757 NON_GNU_CPP="/lib/cpp"
1758 ;;
1759 ## Harris ecx or gcx running CX/UX (Series 1200, Series 3000)
1760 m68k-harris-cxux* )
1761 machine=nh3000 opsys=cxux
1762 ;;
1763 ## Harris power pc NightHawk running Power UNIX (Series 6000)
1764 powerpc-harris-powerunix )
1765 machine=nh6000 opsys=powerunix
1766 NON_GNU_CPP="cc -Xo -E -P"
1767 ;;
1768
1769 ## Honeywell XPS100
1770 xps*-honeywell-sysv* )
1771 machine=xps100 opsys=usg5-2
1772 ;;
1773
1774 ## HP 9000 series 200 or 300
1775 m68*-hp-bsd* )
1776 machine=hp9000s300 opsys=bsd4-3
1777 ;;
1778 ## HP/UX 7, 8, 9, and 10 are supported on these machines.
1779 m68*-hp-hpux* )
1780 NON_GNU_CPP="cc -Aa -E"
1781 NON_GNU_CC="cc -Aa"
1782 case "`uname -r`" in
1783 ## Someone's system reports A.B8.05 for this.
1784 ## I wonder what other possibilities there are.
1785 *.B8.* ) machine=hp9000s300 opsys=hpux8 ;;
1786 *.08.* ) machine=hp9000s300 opsys=hpux8 ;;
1787 *.09.* ) machine=hp9000s300 opsys=hpux9 ;;
1788 *.10.* ) machine=hp9000s300 opsys=hpux10 ;;
1789 *) machine=hp9000s300 opsys=hpux ;;
1790 esac
1791 ;;
1792
1793 ## HP 9000 series 700 and 800, running HP/UX
1794 ## XEmacs changes here for shared.
1795 hppa*-hp-hpux7* )
1796 machine=hp800 opsys=hpux NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1797 ;;
1798 hppa*-hp-hpux8shr* )
1799 machine=hp800 opsys=hpux8shr NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1800 ;;
1801 hppa*-hp-hpux8* )
1802 machine=hp800 opsys=hpux8 NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1803 ;;
1804 hppa*-hp-hpux9shr* )
1805 machine=hp800 opsys=hpux9shr NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1806 ;;
1807 hppa*-hp-hpux9* )
1808 machine=hp800 opsys=hpux9 NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1809 ;;
1810 hppa*-hp-hpux10shr* )
1811 machine=hp800 opsys=hpux10shr NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1812 ;;
1813 hppa*-hp-hpux10* )
1814 machine=hp800 opsys=hpux10 NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1815 ;;
1816
1817 ## HP 9000 series 700 and 800, running HP/UX
1818 hppa*-hp-hpux* )
1819 NON_GNU_CPP="cc -Aa -E" NON_GNU_CC="cc -Aa"
1820 ## Cross-compilation? Nah!
1821 case "`uname -r`" in
1822 ## Someone's system reports A.B8.05 for this.
1823 ## I wonder what other possibilities there are.
1824 *.B8.* ) machine=hp800 opsys=hpux8 ;;
1825 *.08.* ) machine=hp800 opsys=hpux8 ;;
1826 *.09.* ) machine=hp800 opsys=hpux9 ;;
1827 *.10.* ) machine=hp800 opsys=hpux10 ;;
1828 *) machine=hp800 opsys=hpux ;;
1829 esac
1830 ;;
1831 hppa-*-nextstep* )
1832 machine=hp800 opsys=nextstep
1833 ;;
1834
1835 ## Orion machines
1836 orion-orion-bsd* )
1837 machine=orion opsys=bsd4-2
1838 ;;
1839 clipper-orion-bsd* )
1840 machine=orion105 opsys=bsd4-2
1841 ;;
1842
1843 ## IBM machines
1844 i[3-9]86-ibm-aix1.1* )
1845 machine=ibmps2-aix opsys=usg5-2-2
1846 ;;
1847 i[3-9]86-ibm-aix1.[23]* | i[3-9]86-ibm-aix* )
1848 machine=ibmps2-aix opsys=usg5-3
1849 ;;
1850 i370-ibm-aix*)
1851 machine=ibm370aix opsys=usg5-3
1852 ;;
1853 rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1* )
1854 machine=ibmrs6000 opsys=aix3-1
1855 ;;
1856 rs6000-ibm-aix3.2.5 | powerpc-ibm-aix3.2.5 )
1857 machine=ibmrs6000 opsys=aix3-2-5
1858 ;;
1859 rs6000-ibm-aix4.1* | powerpc-ibm-aix4.1* )
1860 machine=ibmrs6000 opsys=aix4-1
1861 ;;
1862 rs6000-ibm-aix4* | powerpc-ibm-aix4* )
1863 machine=ibmrs6000 opsys=aix4
1864 ;;
1865 rs6000-ibm-aix* | powerpc-ibm-aix* )
1866 machine=ibmrs6000 opsys=aix3-2
1867 ;;
1868 romp-ibm-bsd4.3* )
1869 machine=ibmrt opsys=bsd4-3
1870 ;;
1871 romp-ibm-bsd4.2* )
1872 machine=ibmrt opsys=bsd4-2
1873 ;;
1874 romp-ibm-aos4.3* )
1875 machine=ibmrt opsys=bsd4-3
1876 ;;
1877 romp-ibm-aos4.2* )
1878 machine=ibmrt opsys=bsd4-2
1879 ;;
1880 romp-ibm-aos* )
1881 machine=ibmrt opsys=bsd4-3
1882 ;;
1883 romp-ibm-bsd* )
1884 machine=ibmrt opsys=bsd4-3
1885 ;;
1886 romp-ibm-aix* )
1887 machine=ibmrt-aix opsys=usg5-2-2
1888 ;;
1889 romp-ibm-mach* )
1890 machine=ibmrt opsys=mach-bsd4-3
1891 ;;
1892
1893 ## Integrated Solutions `Optimum V'
1894 m68*-isi-bsd4.2* )
1895 machine=isi-ov opsys=bsd4-2
1896 ;;
1897 m68*-isi-bsd4.3* )
1898 machine=isi-ov opsys=bsd4-3
1899 ;;
1900
1901 ## Intel 386 machines where we do care about the manufacturer
1902 i[3-9]86-intsys-sysv* )
1903 machine=is386 opsys=usg5-2-2
1904 ;;
1905
1906 ## Prime EXL
1907 i[3-9]86-prime-sysv* )
1908 machine=i386 opsys=usg5-3
1909 ;;
1910
1911 ## Sequent Symmetry running Dynix
1912 i[3-9]86-sequent-bsd* )
1913 machine=symmetry opsys=bsd4-3
1914 ;;
1915
1916 ## Sequent Symmetry running DYNIX/ptx
1917 ## Use the old cpp rather than the newer ANSI one.
1918 i[3-9]86-sequent-ptx* )
1919 machine=sequent-ptx opsys=ptx
1920 NON_GNU_CPP="/lib/cpp"
1921 ;;
1922
1923 ## Unspecified sysv on an ncr machine defaults to svr4.2.
1924 ## (Plain usg5-4 doesn't turn on POSIX signals, which we need.)
1925 i[3-9]86-ncr-sysv* )
1926 machine=ncr386 opsys=usg5-4-2
1927 ;;
1928
1929 ## Intel Paragon OSF/1
1930 i860-intel-osf1* )
1931 machine=paragon opsys=osf1 NON_GNU_CPP=/usr/mach/lib/cpp
1932 ;;
1933
1934 ## Intel 860
1935 i860-*-sysv4* )
1936 machine=i860 opsys=usg5-4
1937 NON_GNU_CC="/bin/cc" # Ie, not the one in /usr/ucb/cc.
1938 NON_GNU_CPP="/usr/ccs/lib/cpp" # cc -E tokenizes macro expansion.
1939 ;;
1940
1941 ## Masscomp machines
1942 m68*-masscomp-rtu* )
1943 machine=masscomp opsys=rtu
1944 ;;
1945
1946 ## Megatest machines
1947 m68*-megatest-bsd* )
1948 machine=mega68 opsys=bsd4-2
1949 ;;
1950
1951 ## Workstations sold by MIPS
1952 ## This is not necessarily all workstations using the MIPS processor -
1953 ## Irises are produced by SGI, and DECstations by DEC.
1954
1955 ## etc/MACHINES lists mips.h and mips4.h as possible machine files,
1956 ## and usg5-2-2 and bsd4-3 as possible OS files. The only guidance
1957 ## it gives for choosing between the alternatives seems to be "Use
1958 ## -machine=mips4 for RISCOS version 4; use -opsystem=bsd4-3 with
1959 ## the BSD world." I'll assume that these are instructions for
1960 ## handling two odd situations, and that every other situation
1961 ## should use mips.h and usg5-2-2, they being listed first.
1962 mips-mips-usg* )
1963 machine=mips4
1964 ## Fall through to the general code at the bottom to decide on the OS.
1965 ;;
1966 mips-mips-riscos4* )
1967 machine=mips4 opsys=bsd4-3
1968 NON_GNU_CC="cc -systype bsd43"
1969 NON_GNU_CPP="cc -systype bsd43 -E"
1970 ;;
1971 mips-mips-riscos5* )
1972 machine=mips4 opsys=riscos5
1973 NON_GNU_CC="cc -systype bsd43"
1974 NON_GNU_CPP="cc -systype bsd43 -E"
1975 ;;
1976 mips-mips-bsd* )
1977 machine=mips opsys=bsd4-3
1978 ;;
1979 mips-mips-* )
1980 machine=mips opsys=usg5-2-2
1981 ;;
1982
1983 ## NeXT
1984 m68*-next-* | m68k-*-nextstep* )
1985 machine=m68k opsys=nextstep
1986 ;;
1987
1988 ## The complete machine from National Semiconductor
1989 ns32k-ns-genix* )
1990 machine=ns32000 opsys=usg5-2
1991 ;;
1992
1993 ## NCR machines
1994 m68*-ncr-sysv2* | m68*-ncr-sysvr2* )
1995 machine=tower32 opsys=usg5-2-2
1996 ;;
1997 m68*-ncr-sysv3* | m68*-ncr-sysvr3* )
1998 machine=tower32v3 opsys=usg5-3
1999 ;;
2000
2001 ## Nixdorf Targon 31
2002 m68*-nixdorf-sysv* )
2003 machine=targon31 opsys=usg5-2-2
2004 ;;
2005
2006 ## Nu (TI or LMI)
2007 m68*-nu-sysv* )
2008 machine=nu opsys=usg5-2
2009 ;;
2010
2011 ## Plexus
2012 m68*-plexus-sysv* )
2013 machine=plexus opsys=usg5-2
2014 ;;
2015
2016 ## Pyramid machines
2017 ## I don't really have any idea what sort of processor the Pyramid has,
2018 ## so I'm assuming it is its own architecture.
2019 pyramid-pyramid-bsd* )
2020 machine=pyramid opsys=bsd4-2
2021 ;;
2022
2023 ## Sequent Balance
2024 ns32k-sequent-bsd4.2* )
2025 machine=sequent opsys=bsd4-2
2026 ;;
2027 ns32k-sequent-bsd4.3* )
2028 machine=sequent opsys=bsd4-3
2029 ;;
2030
2031 ## Siemens Nixdorf
2032 mips-siemens-sysv* | mips-sni-sysv*)
2033 machine=mips-siemens opsys=usg5-4
2034 NON_GNU_CC=/usr/ccs/bin/cc
2035 NON_GNU_CPP=/usr/ccs/lib/cpp
2036 ;;
2037
2038 ## Silicon Graphics machines
2039 ## Iris 2500 and Iris 2500 Turbo (aka the Iris 3030)
2040 m68*-sgi-iris3.5* )
2041 machine=irist opsys=iris3-5
2042 ;;
2043 m68*-sgi-iris3.6* | m68*-sgi-iris*)
2044 machine=irist opsys=iris3-6
2045 ;;
2046 ## Iris 4D
2047 mips-sgi-irix3.* )
2048 machine=iris4d opsys=irix3-3
2049 ;;
2050 mips-sgi-irix4.* )
2051 machine=iris4d opsys=irix4-0
2052 ;;
2053 mips-sgi-irix6* )
2054 machine=iris4d opsys=irix6-0 NON_GNU_CPP=/lib/cpp
2055 ;;
2056 mips-sgi-irix5.[3-9]* )
2057 machine=iris4d opsys=irix5-3
2058 ;;
2059 mips-sgi-irix5.2* )
2060 machine=iris4d opsys=irix5-2
2061 ;;
2062 mips-sgi-irix5.1* )
2063 machine=iris4d opsys=irix5-1
2064 ;;
2065 mips-sgi-irix5.* | mips-sgi-irix* )
2066 machine=iris4d opsys=irix5-0
2067 ;;
2068
2069 ## SONY machines
2070 m68*-sony-bsd4.2* )
2071 machine=news opsys=bsd4-2
2072 ;;
2073 m68*-sony-bsd4.3* )
2074 machine=news opsys=bsd4-3
2075 ;;
2076 m68*-sony-newsos3* | m68*-sony-news3*)
2077 machine=news opsys=bsd4-3
2078 ;;
2079 mips-sony-bsd* | mips-sony-newsos4* | mips-sony-news4*)
2080 machine=news-risc opsys=bsd4-3
2081 ;;
2082 mips-sony-news* )
2083 machine=news-risc opsys=newsos5
2084 ;;
2085
2086 ## Stride
2087 m68*-stride-sysv* )
2088 machine=stride opsys=usg5-2
2089 ;;
2090
2091 ## Suns
2092 sparc-*-linux* )
2093 machine=sparc opsys=linux
2094 ;;
2095
2096 *-*-solaris* | *-*-sunos* | *-sun-mach* | *-sun-bsd* )
2097 # Hardware type
2098 case "${canonical}" in
2099 m68*-sunos1* ) machine=sun1 ;;
2100 m68*-sunos2* ) machine=sun2 ;;
2101 m68* ) machine=sun3 ;;
2102 i[3-9]86*-sun-sunos[34]* ) machine=sun386 ;;
2103 i[3-9]86-*-* ) machine=intel386 ;;
2104 rs6000* ) machine=rs6000 ;;
2105 sparc* ) machine=sparc ;;
2106 powerpc* ) machine=powerpc ;;
2107 * ) unported=yes ;;
2108 esac
2109
2110 # Make `canonical' even more so.
2111 case "${canonical}" in *-sunos5*)
2112 canonical="`echo \"${canonical}\" | sed -e s/sunos5/solaris2/`";
2113 esac
2114
2115 # On SunOS 4, use /usr/lib/cpp, sans dynodump, /bin/ranlib
2116 # On SunOS 5, use /usr/ccs/lib/cpp, need dynodump, RANLIB not needed
2117 # But, SunOS 5.6 no longer needs dynodump because it has a similar
2118 # function integrated.
2119 case "${canonical}" in
2120 *-sunos4* )
2121 test -x /usr/lib/cpp && NON_GNU_CPP=/usr/lib/cpp ;;
2122 *-solaris2.6* )
2123 test -x /usr/ccs/lib/cpp && NON_GNU_CPP=/usr/ccs/lib/cpp
2124 RANLIB=':'
2125 need_dynodump=no ;;
2126 *-solaris2* )
2127 test -x /usr/ccs/lib/cpp && NON_GNU_CPP=/usr/ccs/lib/cpp
2128 RANLIB=':'
2129 need_dynodump=yes ;;
2130 esac
2131
2132 # (NON)?_GCC_TEST_OPTIONS variables are unused.
2133 # What were they supposed to do, exactly?
2134 # case "${canonical}" in
2135 # *-sunos4* ) GCC_TEST_OPTIONS=-static NON_GCC_TEST_OPTIONS=-bstatic ;;
2136 # esac
2137
2138 # FSF 19.31 has NON_GNU_CPP=/usr/lib/cpp for SunOS 4.x.
2139
2140 case "${canonical}" in
2141 ## The Sun386 didn't get past 4.0.
2142 i[3-9]86-*-sunos4 ) opsys=sunos4-0 ;;
2143 *-sunos4.0* ) opsys=sunos4-0 ;;
2144 *-sunos4.1.2* ) opsys=sunos4-1-2 ;;
2145 *-sunos4.1.[3-9]* ) opsys=sunos4-1-3 ;;
2146 *-sunos4shr* ) opsys=sunos4-0shr ;;
2147 *-sunos4-0shr* ) opsys=sunos4-0shr ;;
2148 *-sunos4-1shr* ) opsys=sunos4-1shr ;;
2149 *-sunos4-1-2shr* ) opsys=sunos4-1-2shr ;;
2150 *-sunos4-1-[3-9]shr* ) opsys=sunos4-1-3shr ;;
2151 *-sunos4* | *-sunos ) opsys=sunos4-1 ;;
2152
2153 *-solaris2.3* ) opsys=sol2-3 ;;
2154 *-solaris2.4* ) opsys=sol2-4 ;;
2155 *-solaris2.5* ) opsys=sol2-5 ;;
2156 *-solaris2.[6-9]* ) opsys=sol2-6 ;;
2157 *-solaris* ) opsys=sol2 ;;
2158 *-mach* ) opsys=mach-bsd4-3 ;;
2159 * ) opsys=bsd4-2 ;;
2160 esac
2161 ## Watch out for a compiler that we know will not work.
2162 case "${canonical}" in
2163 *-solaris* | *-sunos5* )
2164 if [ "x$CC" = x/usr/ucb/cc ]; then
2165 ## /usr/ucb/cc doesn't work;
2166 ## we should find some other compiler that does work.
2167 unset CC
2168 fi
2169 ;;
2170 *) ;;
2171 esac
2172 ;;
2173 sparc-*-nextstep* )
2174 machine=sparc opsys=nextstep
2175 ;;
2176
2177 ## Tadpole 68k
2178 m68*-tadpole-sysv* )
2179 machine=tad68k opsys=usg5-3
2180 ;;
2181
2182 ## Tahoe machines
2183 tahoe-tahoe-bsd4.2* )
2184 machine=tahoe opsys=bsd4-2
2185 ;;
2186 tahoe-tahoe-bsd4.3* )
2187 machine=tahoe opsys=bsd4-3
2188 ;;
2189
2190 ## Tandem Integrity S2
2191 mips-tandem-sysv* )
2192 machine=tandem-s2 opsys=usg5-3
2193 ;;
2194
2195 ## Tektronix XD88
2196 m88k-tektronix-sysv3* )
2197 machine=tekxd88 opsys=usg5-3
2198 ;;
2199
2200 ## Tektronix 16000 box (6130?)
2201 ns16k-tektronix-bsd* )
2202 machine=ns16000 opsys=bsd4-2
2203 ;;
2204 ## Tektronix 4300
2205 ## src/m/tek4300.h hints that this is a m68k machine.
2206 m68*-tektronix-bsd* )
2207 machine=tek4300 opsys=bsd4-3
2208 ;;
2209
2210 ## Titan P2 or P3
2211 ## We seem to have lost the machine-description file titan.h!
2212 titan-titan-sysv* )
2213 machine=titan opsys=usg5-3
2214 ;;
2215
2216 ## Ustation E30 (SS5E)
2217 m68*-unisys-uniplus* )
2218 machine=ustation opsystem=unipl5-2
2219 ;;
2220
2221 ## Vaxen.
2222 vax-dec-* )
2223 machine=vax
2224 case "${canonical}" in
2225 *-bsd4.1* ) opsys=bsd4-1 ;;
2226 *-bsd4.2* | *-ultrix[0-3].* | *-ultrix4.0* ) opsys=bsd4-2 ;;
2227 *-bsd4.3* | *-ultrix* ) opsys=bsd4-3 ;;
2228 *-sysv[01]* | *-sysvr[01]* ) opsys=usg5-0 ;;
2229 *-sysv2* | *-sysvr2* ) opsys=usg5-2 ;;
2230 *-vms* ) opsys=vms ;;
2231 *-mach* ) opsys=mach-bsd4-3 ;;
2232 * ) unported=yes
2233 esac
2234 ;;
2235
2236 ## Whitechapel MG1
2237 ns16k-whitechapel-* )
2238 machine=mg1
2239 ## We don't know what sort of OS runs on these; we'll let the
2240 ## operating system guessing code below try.
2241 ;;
2242
2243 ## Wicat
2244 m68*-wicat-sysv* )
2245 machine=wicat opsys=usg5-2
2246 ;;
2247
2248 ## Intel 386 machines where we don't care about the manufacturer
2249 i[3-9]86-*-* )
2250 machine=intel386
2251 case "${canonical}" in
2252 *-isc1.* | *-isc2.[01]* ) opsys=386-ix ;;
2253 *-isc2.2* ) opsys=isc2-2 ;;
2254 *-isc4.0* ) opsys=isc4-0 ;;
2255 *-isc4.* ) opsys=isc4-1
2256 GCC_TEST_OPTIONS=-posix
2257 NON_GCC_TEST_OPTIONS=-Xp
2258 ;;
2259 *-isc* ) opsys=isc3-0 ;;
2260 *-esix5* ) opsys=esix5r4; NON_GNU_CPP=/usr/lib/cpp ;;
2261 *-esix* ) opsys=esix ;;
2262 *-mach* ) opsys=mach-bsd4-3 ;;
2263 *-xenix* ) opsys=xenix ;;
2264 *-linux* ) opsys=linux ;;
2265 *-sco3.2v4* ) opsys=sco4 ; NON_GNU_CPP=/lib/cpp ;;
2266 *-bsd386* | *-bsdi1* ) opsys=bsd386 ;;
2267 *-bsdi2.1* ) opsys=bsdos2-1 ;;
2268 *-bsdi2* ) opsys=bsdos2 ;;
2269 *-sco3.2v5* ) opsys=sco5 ;
2270 ## This is a pain. Like the current USL cc, SCO's cc -E
2271 ## tokenizes as it preprocesses, making configure very
2272 ## unhappy. Unfortunately, /lib/cpp doesn't understand
2273 ## flags like "-b elf", so we have to cheat in order to
2274 ## pick up the right defines for UNEXEC from the s-file.
2275 ## 01/05/95 robertl@dgii.com
2276 if [ "${dynamic}" = "yes" ]; then
2277 NON_GNU_CPP="/lib/cpp -D_XOPEN_SOURCE -D_SCO_ELF" ;
2278 else
2279 NON_GNU_CPP="/lib/cpp -D_XOPEN_SOURCE" ;
2280 fi ;;
2281 *-386bsd* ) opsys=386bsd ;;
2282 *-freebsd* ) opsys=freebsd ;;
2283 *-nextstep* ) opsys=nextstep ;;
2284 ## Otherwise, we'll fall through to the generic opsys code at the bottom.
2285 esac
2286 ;;
2287
2288 ## Linux/68k
2289 m68k-*-linux* )
2290 machine=m68k opsys=linux
2291 ;;
2292
2293 * )
2294 unported=yes
2295 ;;
2296 esac
2297
2298 ### If the code above didn't choose an operating system, just choose
2299 ### an operating system based on the configuration name. You really
2300 ### only want to use this when you have no idea what the right
2301 ### operating system is; if you know what operating systems a machine
2302 ### runs, it's cleaner to make it explicit in the case statement
2303 ### above.
2304 if [ x"${opsys}" = x ]; then
2305 case "${canonical}" in
2306 *-gnu* ) opsys=gnu ;;
2307 *-bsd4.[01] ) opsys=bsd4-1 ;;
2308 *-bsd4.2 ) opsys=bsd4-2 ;;
2309 *-bsd4.3 ) opsys=bsd4-3 ;;
2310 *-sysv0 | *-sysvr0 ) opsys=usg5-0 ;;
2311 *-sysv2 | *-sysvr2 ) opsys=usg5-2 ;;
2312 *-sysv2.2 | *-sysvr2.2 ) opsys=usg5-2-2 ;;
2313 *-sysv3* | *-sysvr3* ) opsys=usg5-3 ;;
2314 *-sysv4.1* | *-sysvr4.1* )
2315 NON_GNU_CPP=/usr/lib/cpp
2316 opsys=usg5-4 ;;
2317 *-sysv4.[2-9]* | *-sysvr4.[2-9]* )
2318 if [ x$NON_GNU_CPP = x ]; then
2319 if [ -f /usr/ccs/lib/cpp ]; then
2320 NON_GNU_CPP=/usr/ccs/lib/cpp
2321 else
2322 NON_GNU_CPP=/lib/cpp
2323 fi
2324 fi
2325 opsys=usg5-4-2 ;;
2326 *-sysv4* | *-sysvr4* ) opsys=usg5-4 ;;
2327 * )
2328 unported=yes
2329 ;;
2330 esac
2331 fi
2332
2333 if test "x$RANLIB" = x; then
2334 RANLIB=ranlib
2335 fi
2336
2337 if test ${unported} = yes; then
2338 (echo "${progname}: XEmacs hasn't been ported to \`${canonical}' systems."
2339 echo "${progname}: Check \`etc/MACHINES' for recognized configuration names."
2340 ) >&2
2341 exit 1
2342 fi
2343
2344 if [ "${dynamic}" = "yes" ]; then
2345 case "${opsys}" in
2346 hpux8 ) opsys=hpux8shr ;;
2347 hpux9 ) opsys=hpux9shr ;;
2348 hpux10 ) opsys=hpux10shr ;;
2349 sunos4-0 ) opsys=sunos4-0shr ;;
2350 sunos4-1 ) opsys=sunos4-1shr ;;
2351 sunos4-1-2 ) opsys=sunos4-1-2shr ;;
2352 sunos4-1-3 ) opsys=sunos4-1-3shr ;;
2353 sco5 ) opsys=sco5-shr ;;
2354 esac
2355 elif [ "${dynamic}" = "no" ]; then
2356 case "${opsys}" in
2357 sol2 ) opsys=sol2-static ;;
2358 sol2-3 ) opsys=sol2-3-static ;;
2359 sol2-4 ) opsys=sol2-4-static ;;
2360 decosf1-3 ) opsys=decosf1-3-static ;;
2361 decosf3-1 ) opsys=decosf3-1-static ;;
2362 decosf3-2 ) opsys=decosf3-2-static ;;
2363 linux ) opsys=linux-static ;;
2364 esac
2365 fi
2366
2367 dynodump_arch=''
2368 if [ "${need_dynodump}" = "yes" ]; then
2369 case "${canonical}" in
2370 sparc* ) dynodump_arch=sparc ;;
2371 powerpc* ) dynodump_arch=ppc ;;
2372 i[3-9]86* ) dynodump_arch=i386 ;;
2373 esac
2374 fi
2375
2376 machfile="m/${machine}.h"
2377 opsysfile="s/${opsys}.h"
2378
2379
2380 ############################################################################
2381 # #
2382 # Determine the compiler, set up for feature testing #
2383 # #
2384 ############################################################################
2385
2386 ]
2387 dnl -----------------------------------------------------------------------
2388 dnl Let's do a couple of macro (re)definitions.
2389 dnl
2390 dnl First we redefine AC_TEST_CPP so that we can see the error output
2391 dnl from preprocessor runs. This definition is identical to the standard
2392 dnl one supplied by Autoconf 1.11 extra for the extra_verbose check.
2393 dnl
2394 dnl Note that we *must* include the brackets around the macro definition
2395 dnl name here. Autoconf has redefined the quoting characters to be brackets,
2396 dnl and if we don't supply them, the original definition will get
2397 dnl substituted in place of the macro name!
2398 dnl
2399 define([AC_TEST_CPP],
2400 [AC_REQUIRE_CPP()dnl
2401 cat > conftest.${ac_ext} <<EOF
2402 #include "confdefs.h"
2403 [$1]
2404 EOF
2405 # Some shells (Coherent) do redirections in the wrong order, so need
2406 # the parens.
2407 # The exec was added by Mly to make this work under BSDI
2408 ac_err=`eval "(exec $ac_cpp conftest.${ac_ext} >/dev/null) 2>&1"`
2409 # Use test here, not brackets, to avoid strange autoconf-quoting lossage.
2410 if test "${extra_verbose}" = "yes" && test -n "$ac_err"; then
2411 echo "$ac_err"
2412 fi
2413 if test -z "$ac_err"; then
2414 ifelse([$2], , :, [rm -rf conftest*
2415 $2
2416 ])
2417 ifelse([$3], , , [else
2418 rm -rf conftest*
2419 $3
2420 ])dnl
2421 fi
2422 rm -f conftest*])dnl
2423 dnl
2424 dnl Second, a macro of our own:
2425 dnl Subroutine to find version of X being used
2426 dnl It can't use xmkmf because the first version in the user's path
2427 dnl may not belong to the version of X that is being built with
2428 define(AC_FIND_X_VERSION,
2429 [AC_CHECKING(the version of X11 being used)
2430 cat > conftest.${ac_ext} <<EOF
2431 #include <X11/Intrinsic.h>
2432 int main() {
2433 #if (XlibSpecificationRelease == 4)
2434 printf ("X11R4\n");
2435 #elif (XlibSpecificationRelease == 5)
2436 printf ("X11R5\n");
2437 #elif (XlibSpecificationRelease == 6)
2438 printf ("X11R6\n");
2439 #elif (XtSpecificationRelease == 4)
2440 printf ("X11R4\n");
2441 #endif
2442 return 0;
2443 }
2444 EOF
2445 dnl We need to run this which will prevent cross-configuring. But since
2446 dnl we can't do that anyhow, oh darn.
2447 ac_save_LIBS="${LIBS}"
2448 LIBS="${LIBS} ${DEFS}"
2449 if eval $ac_compile; then
2450 ac_find_x_version=`./conftest`
2451 [
2452 if [ "$ac_find_x_version" = "X11R4" ]; then
2453 ] AC_DEFINE(THIS_IS_X11R4) [
2454 elif [ "$ac_find_x_version" = "X11R5" ]; then
2455 ] AC_DEFINE(THIS_IS_X11R5) [
2456 elif [ "$ac_find_x_version" = "X11R6" ]; then
2457 ] AC_DEFINE(THIS_IS_X11R6) [
2458 fi
2459 ]
2460 fi
2461 LIBS=$ac_save_LIBS
2462 rm -f conftest*]
2463 )dnl
2464 dnl -----------------------------------------------------------------------
2465 AC_LANG_C
2466 AC_PREPARE(lisp)
2467 AC_CONFIG_HEADER(src/config.h)
2468
2469 [
2470
2471 if [ "${extra_verbose}" = "yes" ] ; then
2472 # This is identical to the version that A\C_LANG_C generates except that
2473 # it omits the redirection of all output to /dev/null.
2474 ac_compile='${CC-cc} $CFLAGS $LDFLAGS conftest.${ac_ext} -o conftest $LIBS'
2475 fi
2476
2477 #### Choose a compiler.
2478 if [ "x$CC" = x ] ; then
2479 cc_specified=1
2480 fi
2481
2482 # Save the value of CFLAGS that the user specified.
2483 SPECIFIED_CFLAGS="$CFLAGS"
2484
2485 if [ "${with_gcc}" = "yes" ] ; then
2486 CC="${compiler-gcc}"
2487 GCC=1
2488 elif [ "${with_lcc}" = "yes" ] ; then
2489 CC="${compiler-lcc}"
2490 dash_r_space=' ' # this bullshit is here because lcc for solaris
2491 # will not accept -Rargument.
2492 # It needs -R argument instead. Yuck yuck yuck.
2493 if [ "x$NON_GNU_CPP" = x ] ; then
2494 NON_GNU_CPP="yes" # this is handled specially below...
2495 fi
2496 elif [ "${compiler}" != "" ] ; then
2497 CC="${compiler}"
2498 elif [ "${with_gcc}" = "no" ] ; then
2499 CC="cc"
2500 elif [ "${with_lcc}" = "no" ] ; then
2501 if [ "x$CC" = x ]
2502 then CC=cc;
2503 else true;
2504 fi
2505 else
2506 case "${canonical}" in
2507 * )
2508 ] AC_PROG_CC [
2509 if [ "${CC}" = "gcc" ] ; then
2510 with_gcc="yes"
2511 GCC=1
2512 fi
2513 ;;
2514 esac
2515 fi
2516
2517 # On Suns, sometimes $CPP names a directory.
2518 if [ -n "$CPP" ] && [ -d "$CPP" ] ; then
2519 CPP=
2520 fi
2521
2522 #### Some systems specify a CPP to use unless we are using GCC.
2523 #### Now that we know whether we are using GCC, we can decide whether
2524 #### to use that one.
2525 if [ "x$NON_GNU_CPP" = x ] || [ x$GCC = x1 ]
2526 then true
2527 else
2528 if [ "x$CPP" = x ]; then
2529 if [ "${with_lcc}" = "yes" ] && [ "${NON_GNU_CPP}" = "yes" ] ; then
2530 CPP='gcc -E -traditional' # cross fingers and hope it's there....
2531 else
2532 CPP="$NON_GNU_CPP"
2533 fi
2534 fi
2535 fi
2536
2537 #### Some systems specify a CC to use unless we are using GCC.
2538 #### Now that we know whether we are using GCC, we can decide whether
2539 #### to use that one.
2540 if [ "x$NON_GNU_CC" = x ] || [ x$GCC = x1 ] || [ x$cc_specified = x1 ]
2541 then true
2542 else
2543 CC="$NON_GNU_CC"
2544 fi
2545
2546 ## Huh? I commented out the following because it always enabled
2547 ## the "test" options, whatever the hell those are supposed to be
2548 ## for, and the result is that SunOS builds were always static.
2549
2550 #if [ x$GCC = x1 ] && [ "x$GCC_TEST_OPTIONS" != x ]
2551 #then
2552 # CC="$CC $GCC_TEST_OPTIONS"
2553 #fi
2554 #
2555 #if [ x$GCC = x ] && [ "x$NON_GCC_TEST_OPTIONS" != x ]
2556 #then
2557 # CC="$CC $NON_GCC_TEST_OPTIONS"
2558 #fi
2559
2560 ############################################################################
2561 # #
2562 # Do some misc autoconf-special tests #
2563 # #
2564 ############################################################################
2565
2566 #### Some other nice autoconf tests. If you add a test here which
2567 #### should make an entry in src/config.h, don't forget to add an
2568 #### #undef clause to src/config.h.in for autoconf to modify.
2569 ]
2570 dnl checks for programs
2571 AC_PROG_CPP
2572 [
2573 case "${canonical}" in
2574 *-sun-sunos* )
2575 if [ "${CPP}" = "acc -E" ] ; then
2576 CPP="acc -E -Xs"
2577 fi
2578 ;;
2579 esac
2580 ]
2581 AC_PROG_RANLIB
2582 AC_PROG_INSTALL
2583 AC_PROG_YACC
2584
2585 dnl checks for UNIX variants
2586 AC_AIX
2587
2588 dnl checks for header files
2589 AC_HAVE_HEADERS(mach/mach.h sys/stropts.h sys/timeb.h sys/time.h unistd.h utime.h sys/wait.h libintl.h locale.h libgen.h linux/version.h)
2590 AC_STDC_HEADERS
2591 AC_TIME_WITH_SYS_TIME
2592 AC_SYS_SIGLIST_DECLARED
2593
2594 dnl Some systems have utime.h but don't declare the struct anyplace.
2595 AC_COMPILE_CHECK(struct utimbuf,
2596 [#ifdef TIME_WITH_SYS_TIME
2597 #include <sys/time.h>
2598 #include <time.h>
2599 #else
2600 #ifdef HAVE_SYS_TIME_H
2601 #include <sys/time.h>
2602 #else
2603 #include <time.h>
2604 #endif
2605 #endif
2606 #ifdef HAVE_UTIME_H
2607 #include <utime.h>
2608 #endif], [static struct utimbuf x; x.actime = x.modtime;],
2609 AC_DEFINE(HAVE_STRUCT_UTIMBUF))
2610
2611 dnl checks for typedefs
2612 AC_RETSIGTYPE
2613
2614 AC_COMPILE_CHECK(struct timeval,
2615 [#ifdef TIME_WITH_SYS_TIME
2616 #include <sys/time.h>
2617 #include <time.h>
2618 #else
2619 #ifdef HAVE_SYS_TIME_H
2620 #include <sys/time.h>
2621 #else
2622 #include <time.h>
2623 #endif
2624 #endif], [static struct timeval x; x.tv_sec = x.tv_usec;], [
2625 HAVE_TIMEVAL=yes
2626 AC_DEFINE(HAVE_TIMEVAL)],
2627 [HAVE_TIMEVAL=no])
2628
2629 dnl checks for structure members
2630 AC_STRUCT_TM
2631 AC_TIMEZONE
2632
2633 dnl checks for compiler characteristics
2634 AC_CONST
2635
2636 dnl check for Make feature
2637 AC_SET_MAKE
2638
2639 dnl check byte order
2640 AC_WORDS_BIGENDIAN
2641
2642 dnl check for long file names
2643 AC_LONG_FILE_NAMES
2644
2645 echo "checking for -xildoff compiler flag"
2646 if ${CC-cc} '-###' -xildon no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; then
2647 if ${CC-cc} '-###' -xildoff no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; then
2648 :
2649 else
2650 AC_VERBOSE(defining NEED_XILDOFF)
2651 need_xildoff=yes
2652 fi
2653 fi
2654
2655 dnl other checks for UNIX variants
2656 [
2657 # What the hell was this doing here??????
2658 ### echo > confdefs.h # this gets nuked above...
2659
2660 ############################################################################
2661 # #
2662 # Choose a window system #
2663 # #
2664 ############################################################################
2665
2666 #### Choose a window system.
2667 echo "checking for specified window system"
2668
2669 window_system=''
2670 case "${with_x11}" in
2671 yes )
2672 window_system=${window_system}x11
2673 ;;
2674 no )
2675 window_system=${window_system}none
2676 esac
2677
2678 case "${window_system}" in
2679 "none" | "x11" ) ;;
2680 "" )
2681 # --x-includes or --x-libraries implies --with-x11.
2682 if [ -n "${x_includes}" ] || [ -n "${x_libraries}" ]; then
2683 window_system=x11
2684 else
2685 echo " No window system specified. Looking for X11."
2686 # If the user didn't specify a window system and we found X11, use it.
2687 if [ -r /usr/lib/libX11.a \
2688 -o -d /usr/include/X11 \
2689 -o -d /usr/X386/include \
2690 -o -d /usr/X11R6/include \
2691 -o -d ${x_includes}/X11 ]; then
2692 window_system=x11
2693 fi
2694 fi
2695 ;;
2696 * )
2697 echo "Don't specify a window system more than once." >&2
2698 exit 1
2699 ;;
2700 esac
2701
2702 case "${window_system}" in
2703 "" | "x11" )
2704 ### If the user hasn't specified where we should find X, try
2705 ### letting autoconf figure that out.
2706 if [ -z "${x_includes}" ] && [ -z "${x_libraries}" ]; then
2707 ]
2708 AC_FIND_X
2709 [
2710 fi
2711 if [ -n "${x_includes}" ] || [ -n "${x_libraries}" ]; then
2712 window_system=x11
2713 fi
2714 ;;
2715 esac
2716
2717 [ -z "${window_system}" ] && window_system=none
2718
2719 if [ "${window_system}" = "none" ]; then
2720 if [ "${with_tty}" != "yes" ]; then
2721 echo "No window system support, and no TTY support." >&2
2722 echo "Unable to proceed." >&2
2723 exit 1
2724 fi
2725 if [ "${with_epoch}" = "yes" ]; then
2726 ] AC_WARN(--with-epoch ignored: Not valid without X support) [
2727 with_epoch='no'
2728 fi
2729 if [ "x${with_cde}" != x ]; then
2730 ] AC_WARN(--with-cde ignored: Not valid without X support) [
2731 with_menubars='no'
2732 fi
2733 if [ "x${with_menubars}" != x ]; then
2734 ] AC_WARN(--with-menubars ignored: Not valid without X support) [
2735 with_menubars='no'
2736 fi
2737 if [ "x${with_scrollbars}" != x ]; then
2738 ] AC_WARN(--with-scrollbars ignored: Not valid without X support) [
2739 with_scrollbars='no'
2740 fi
2741 if [ "x${with_dialogs}" != x ]; then
2742 ] AC_WARN(--with-dialogs ignored: Not valid without X support) [
2743 with_dialogs='no'
2744 fi
2745 if [ "x${with_toolbars}" != x ]; then
2746 ] AC_WARN(--with-toolbars ignored: Not valid without X support) [
2747 with_toolbars='no'
2748 fi
2749 with_cde='no'
2750 with_menubars='no'
2751 with_scrollbars='no'
2752 with_dialogs='no'
2753 with_toolbars='no'
2754 elif [ -z "${with_toolbars}" ] ; then
2755 with_toolbars='yes'
2756 fi
2757
2758 case "${canonical}" in
2759 *-sun-solaris* | *-sun-sunos5* ) add_runtime_flag=yes ;;
2760 esac
2761
2762 if [ -n "${x_libraries}" ]; then
2763 if [ "${add_runtime_flag}" ]; then
2764 LD_SWITCH_X_SITE="-L${x_libraries} -R${dash_r_space}${x_libraries}"
2765 else
2766 LD_SWITCH_X_SITE="-L${x_libraries}"
2767 fi
2768 fi
2769 # LD_SWITCH_X_SITE_AUX (from FSF) is ill-conceived. See s/sol2*.h.
2770 # [ -n "${x_libraries}" ] && LD_SWITCH_X_SITE_AUX="-R${x_libraries}"
2771 [ -n "${x_includes}" ] && C_SWITCH_X_SITE="-I${x_includes}"
2772
2773 if [ -n "${site_libraries}" ]; then
2774 for arg in ${site_libraries}
2775 do
2776 LD_SWITCH_SITE="${LD_SWITCH_SITE} -L${arg}"
2777 done
2778 fi
2779 if [ -n "${site_runtime_libraries}" ]; then
2780 for arg in ${site_runtime_libraries}
2781 do
2782 LD_SWITCH_SITE="${LD_SWITCH_SITE} -L${arg}"
2783 LD_SWITCH_SITE="${LD_SWITCH_SITE} -R${dash_r_space}${arg}"
2784 done
2785 fi
2786 if [ -n "${site_includes}" ]; then
2787 for arg in ${site_includes}
2788 do
2789 C_SWITCH_SITE="${C_SWITCH_SITE} -I${arg}"
2790 CPP="${CPP} -I${arg}"
2791 done
2792 fi
2793
2794 # FSF 19.29 has some bitmapdir stuff here.
2795 bitmapdir=
2796
2797 # Avoid forcing the search of /usr/include before fixed include files.
2798 if [ "$C_SWITCH_X_SITE" = "-I/usr/include" ]; then
2799 C_SWITCH_X_SITE=" "
2800 fi
2801
2802 # Need for check for audio/Xtutil.h.
2803 CPP="${CPP} ${C_SWITCH_X_SITE}"
2804
2805 case "${window_system}" in
2806 x11 )
2807 HAVE_X_WINDOWS=yes
2808 echo " Using X11."
2809 ;;
2810 none )
2811 HAVE_X_WINDOWS=no
2812 echo " Using no window system."
2813 ;;
2814 esac
2815
2816 if test "${opsys}" = "hpux9"; then
2817 case "${x_libraries}" in
2818 *X11R4* )
2819 opsysfile="s/hpux9-x11r4.h"
2820 ;;
2821 esac
2822 fi
2823
2824 if test "${opsys}" = "hpux9shr"; then
2825 case "${x_libraries}" in
2826 *X11R4* )
2827 opsysfile="s/hpux9shxr4.h"
2828 ;;
2829 esac
2830 fi
2831
2832 ############################################################################
2833 # #
2834 # Extract some information from the operating system and machine files #
2835 # #
2836 ############################################################################
2837
2838 echo "examining the machine- and system-dependent files to find out"
2839 echo " - which libraries the lib-src programs will want, and"
2840 echo " - whether the GNU malloc routines are usable."
2841
2842 ### First figure out CFLAGS (which we use for running the compiler here)
2843 ### and REAL_CFLAGS (which we use for real compilation).
2844 ### The two are the same except on a few systems, where they are made
2845 ### different to work around various lossages. For example,
2846 ### GCC 2.5 on Linux needs them to be different because it treats -g
2847 ### as implying static linking.
2848
2849 ### If the CFLAGS env var is specified, we use that value
2850 ### instead of the default.
2851
2852 ### It's not important that this name contain the PID; you can't run
2853 ### two configures in the same directory and have anything work
2854 ### anyway.
2855 tempcname="conftest.c"
2856
2857 echo '
2858 #define NOT_C_CODE
2859 #include "'${srcdir}'/src/'${opsysfile}'"
2860 #include "'${srcdir}'/src/'${machfile}'"
2861 #ifndef LIBS_MACHINE
2862 #define LIBS_MACHINE
2863 #endif
2864 #ifndef LIBS_SYSTEM
2865 #define LIBS_SYSTEM
2866 #endif
2867 #ifndef C_SWITCH_SYSTEM
2868 #define C_SWITCH_SYSTEM
2869 #endif
2870 #ifndef C_SWITCH_X_SYSTEM
2871 #define C_SWITCH_X_SYSTEM
2872 #endif
2873 #ifndef C_SWITCH_MACHINE
2874 #define C_SWITCH_MACHINE
2875 #endif
2876 #ifndef LD_SWITCH_X_SYSTEM
2877 #define LD_SWITCH_X_SYSTEM
2878 #endif
2879 #ifndef LIB_STANDARD
2880 #define LIB_STANDARD
2881 #endif
2882 configure___ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM LIB_STANDARD
2883 configure___ c_switch_system=C_SWITCH_SYSTEM
2884 configure___ c_switch_x_system=C_SWITCH_X_SYSTEM
2885 configure___ ld_switch_x_system=LD_SWITCH_X_SYSTEM
2886 configure___ c_switch_machine=C_SWITCH_MACHINE
2887
2888 #ifndef LIB_X11_LIB
2889 #define LIB_X11_LIB -lX11
2890 #endif
2891
2892 #ifndef LIBX11_MACHINE
2893 #define LIBX11_MACHINE
2894 #endif
2895
2896 #ifndef LIBX11_SYSTEM
2897 #define LIBX11_SYSTEM
2898 #endif
2899 configure___ LIBX=LIB_X11_LIB LIBX11_MACHINE LIBX11_SYSTEM
2900
2901 #ifdef UNEXEC
2902 configure___ unexec=UNEXEC
2903 #else
2904 configure___ unexec=unexec.o
2905 #endif
2906
2907 #ifdef SYSTEM_MALLOC
2908 configure___ system_malloc=yes
2909 #else
2910 configure___ system_malloc=no
2911 #endif
2912
2913 #ifndef C_DEBUG_SWITCH
2914 #define C_DEBUG_SWITCH -g
2915 #endif
2916
2917 #ifndef C_OPTIMIZE_SWITCH
2918 #define C_OPTIMIZE_SWITCH -O
2919 #endif
2920
2921 #ifdef THIS_IS_CONFIGURE
2922
2923 /* Get the CFLAGS for tests in configure. */
2924 #ifdef __GNUC__
2925 configure___ CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
2926 #else
2927 configure___ CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
2928 #endif
2929
2930 #else /* not THIS_IS_CONFIGURE */
2931
2932 /* Get the CFLAGS for real compilation. */
2933 #ifdef __GNUC__
2934 configure___ REAL_CFLAGS=C_DEBUG_SWITCH C_OPTIMIZE_SWITCH '${SPECIFIED_CFLAGS}'
2935 #else
2936 configure___ REAL_CFLAGS=C_DEBUG_SWITCH '${SPECIFIED_CFLAGS}'
2937 #endif
2938
2939 #endif /* not THIS_IS_CONFIGURE */
2940 ' > ${tempcname}
2941 # The value of CPP is a quoted variable reference, so we need to do this
2942 # to get its actual value...
2943 CPP=`eval "echo $CPP"`
2944 eval `${CPP} -Isrc ${tempcname} \
2945 | grep 'configure___' \
2946 | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
2947 if [ "x$SPECIFIED_CFLAGS" = x ]; then
2948 eval `${CPP} -Isrc -DTHIS_IS_CONFIGURE ${tempcname} \
2949 | grep 'configure___' \
2950 | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
2951 else
2952 REAL_CFLAGS="$CFLAGS"
2953 fi
2954 rm ${tempcname}
2955
2956 # override CFLAGS if user wishes
2957 if [ "${cflags}" != "NO_CFLAGS_DEFINED" ]; then
2958 REAL_CFLAGS=${cflags}
2959 fi
2960
2961 ### Compute the unexec source name from the object name.
2962 UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
2963
2964 # Do the opsystem or machine files prohibit the use of the GNU malloc?
2965 # Assume not, until told otherwise.
2966 GNU_MALLOC=yes
2967 if [ "${system_malloc}" = "yes" ]; then
2968 GNU_MALLOC=no
2969 GNU_MALLOC_reason="
2970 (The GNU allocators don't work with this system configuration.)"
2971 elif [ "${use_system_malloc}" = "yes" ]; then
2972 GNU_MALLOC=no
2973 GNU_MALLOC_reason="
2974 (User chose not to use GNU allocators.)"
2975 fi
2976
2977 LISP_FLOAT_TYPE=yes
2978
2979
2980 #### Add the libraries to LIBS and check for some functions.
2981
2982 ]
2983 CPPFLAGS="${C_SWITCH_SITE} $c_switch_system $c_switch_machine $c_switch_x_system $CPPFLAGS"
2984 DEFS="${C_SWITCH_SITE} $c_switch_system $c_switch_machine $c_switch_x_system $DEFS"
2985 LIBS="${LD_SWITCH_SITE} $ld_switch_x_system $libsrc_libs $LIBS"
2986
2987 dnl If found, this defines HAVE_LIBDNET, which m/pmax.h checks,
2988 dnl and also adds -ldnet to LIBS, which Autoconf uses for checks.
2989 dnl FSF 19.29 also checks for function dnet_ntoa.
2990 AC_HAVE_LIBRARY(-ldnet)
2991 dnl This causes -lresolv to get used in subsequent tests,
2992 dnl which causes failures on some systems such as HPUX 9.
2993 dnl FSF 19.29 also checks for function gethostbyname.
2994 dnl AC_HAVE_LIBRARY(-lresolv)
2995
2996 AC_HAVE_LIBRARY(-lXbsd, LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -lXbsd")
2997
2998 dnl FSF 19.29 also checks for function cma_open.
2999 AC_HAVE_LIBRARY(-lpthreads, HAVE_PTHREADS=yes)
3000 if test -n "${HAVE_PTHREADS}" ; then
3001 AC_DEFINE(HAVE_PTHREADS)
3002 case "${opsys}" in
3003 decosf* ) CFLAGS="${CFLAGS} -threads" ;;
3004 esac
3005 fi
3006
3007 if test "${window_system}" != "none" ; then
3008 AC_CHECKING(for XFree86)
3009 if test -d /usr/X386/include; then
3010 HAVE_XFREE386=yes
3011 test -z "${C_SWITCH_X_SITE}" && C_SWITCH_X_SITE="-I/usr/X386/include"
3012 elif test -d /usr/X11R6/include; then
3013 HAVE_XFREE386=yes
3014 test -z "${C_SWITCH_X_SITE}" && C_SWITCH_X_SITE="-I/usr/X11R6/include"
3015 else
3016 HAVE_XFREE386=no
3017 fi
3018 AC_VERBOSE(${HAVE_XFREE386})
3019 else
3020 HAVE_XFREE386=no
3021 fi
3022
3023 ############################################################################
3024 # #
3025 # Test for various X-specific features #
3026 # #
3027 ############################################################################
3028
3029 # Change CFLAGS temporarily for damn binutils 2.6.0.10 check.
3030 if test "${HAVE_X_WINDOWS}" = "yes"; then
3031 case "${opsys}" in
3032 linux* )
3033 CFLAGS="-Wl,-rpath-link,/usr/X11R6/lib $CFLAGS"
3034 AC_COMPILE_CHECK(whether path-link option is needed, [],
3035 [;],
3036 [need_path_link=yes],
3037 [need_path_link=no])
3038 if test "${need_path_link}" = "no"; then
3039 CFLAGS="$REAL_CFLAGS"
3040 AC_VERBOSE(no)
3041 else
3042 AC_VERBOSE(yes)
3043 fi
3044 ;;
3045 esac
3046 fi
3047
3048 # Change CFLAGS temporarily so that C_SWITCH_X_SITE gets used
3049 # for the tests that follow. We set it back to REAL_CFLAGS later on.
3050
3051 if test "${HAVE_X_WINDOWS}" = "yes"; then
3052 DEFS="$C_SWITCH_X_SITE $DEFS"
3053 LDFLAGS="$LDFLAGS $LD_SWITCH_X_SITE"
3054 LIBS="$LIBX $LIBS"
3055 CFLAGS="$C_SWITCH_X_SITE $CFLAGS"
3056
3057 # On Solaris, arrange for LD_RUN_PATH to point to the X libraries for tests.
3058 # This is handled by LD_SWITCH_X_SITE_AUX during the real build,
3059 # but it's more convenient here to set LD_RUN_PATH
3060 # since this also works on hosts that don't understand LD_SWITCH_X_SITE_AUX.
3061 if test "${x_libraries}" != NONE && test -n "${x_libraries}"; then
3062 LD_RUN_PATH=$x_libraries${LD_RUN_PATH+:}$LD_RUN_PATH
3063 export LD_RUN_PATH
3064 fi
3065
3066 if test "${HAVE_XFREE386}" = "yes" ; then
3067 case "${opsys}" in
3068 linux* )
3069 AC_COMPILE_CHECK(whether XFree86 needs -b to link, [],
3070 [XOpenDisplay ("foo");],
3071 [xfree86_first_failure=no],
3072 [xfree86_first_failure=yes])
3073 if test "${xfree86_first_failure}" = "yes"; then
3074 OLD_LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE"
3075 OLD_C_SWITCH_X_SITE="$C_SWITCH_X_SITE"
3076 OLD_CPPFLAGS="$CPPFLAGS"
3077 OLD_LIBS="$LIBS"
3078 LD_SWITCH_X_SITE="$LD_SWITCH_X_SITE -b i486-linuxaout"
3079 C_SWITCH_X_SITE="$C_SWITCH_X_SITE -b i486-linuxaout"
3080 CPPFLAGS="$CPPFLAGS -b i486-linuxaout"
3081 LIBS="$LIBS -b i486-linuxaout"
3082 AC_COMPILE_CHECK(,[],
3083 [XOpenDisplay ("foo");],
3084 [xfree86_second_failure=no],
3085 [xfree86_second_failure=yes])
3086 if test "${xfree86_second_failure}" = "yes"; then
3087 # If we get the same failure with -b, there is no use adding -b.
3088 # So take it out. This plays safe.
3089 LD_SWITCH_X_SITE="$OLD_LD_SWITCH_X_SITE"
3090 C_SWITCH_X_SITE="$OLD_C_SWITCH_X_SITE"
3091 CPPFLAGS="$OLD_CPPFLAGS"
3092 LIBS="$OLD_LIBS"
3093 AC_VERBOSE(no)
3094 else
3095 AC_VERBOSE(yes)
3096 fi
3097 else
3098 AC_VERBOSE(no)
3099 fi
3100 ;;
3101 esac
3102 fi
3103
3104 # A C_CHECK_FUNCS(XrmSetDatabase XScreenResourceString \
3105 #XScreenNumberOfScreen XSetWMProtocols)
3106 fi
3107
3108 #
3109 # make sure we can find libX11.*
3110 #
3111 if test "${window_system}" != "none" ; then
3112 internal_xlibs_found='no'
3113 AC_HAVE_LIBRARY(-lX11, internal_xlibs_found='yes')
3114 if test "${internal_xlibs_found}" = "no" ; then
3115 echo "Unable to find X11 libraries." >&2
3116 exit 1
3117 else
3118 AC_VERBOSE(yes)
3119 fi
3120 fi
3121
3122 #
3123 # make sure we can find Intrinsic.h
3124 #
3125 if test "${window_system}" != "none" ; then
3126 internal_xincludes_found='no'
3127 for arg in ${DEFS} /usr/include
3128 do
3129 if test -f `echo "${arg}/X11/Intrinsic.h" | sed 's/^\-I//'` ; then
3130 internal_xincludes_found='yes'
3131 fi
3132 done
3133 if test "${internal_xincludes_found}" = "no" ; then
3134 echo "Unable to find X11 header files." >&2
3135 exit 1
3136 fi
3137 fi
3138
3139 #
3140 # Sun OS 4 systems need the following kludge
3141 #
3142 if test "${window_system}" != "none" ; then
3143 case "${canonical}" in *-sunos4* )
3144 LIBS="$LIBS -u _XtToolkitInitialize -u _get_applicationShellWidgetClass" ;;
3145 esac
3146 fi
3147
3148 #
3149 # See if we can find Xauth.
3150 #
3151 with_xauth='no'
3152 if test "${window_system}" != "none" ; then
3153 internal_xauth_lib_found='no'
3154 AC_HAVE_LIBRARY(-lXau, internal_xauth_lib_found='yes')
3155 if test "${internal_xauth_lib_found}" = "yes" ; then
3156 internal_xauth_includes_found='no'
3157 for arg in ${DEFS} /usr/include
3158 do
3159 if test -f `echo "${arg}/X11/Xauth.h" | sed 's/^\-I//'` ; then
3160 internal_xauth_includes_found='yes'
3161 fi
3162 done
3163 if test "${internal_xauth_includes_found}" = "yes" ; then
3164 with_xauth='yes'
3165 fi
3166 fi
3167 fi
3168 if test "${with_xauth}" = "yes" ; then
3169 AC_DEFINE(HAVE_XAUTH)
3170 fi
3171
3172 #
3173 # See if we can find CDE.
3174 #
3175 if test "${window_system}" != "none" ; then
3176 if test "${with_cde}" != "no" ; then
3177 if test "${with_cde}" != "yes" ; then
3178 internal_cde_lib_found='no'
3179 AC_HAVE_LIBRARY(-lDtSvc, internal_cde_lib_found='yes')
3180 if test "${internal_cde_lib_found}" = "yes" ; then
3181 internal_cde_includes_found='no'
3182 for arg in ${DEFS} /usr/include
3183 do
3184 if test -f `echo "${arg}/Dt/Dt.h" | sed 's/^\-I//'` ; then
3185 internal_cde_includes_found='yes'
3186 fi
3187 done
3188 if test "${internal_cde_includes_found}" = "yes" ; then
3189 with_cde='yes'
3190 fi
3191 fi
3192 fi
3193 fi
3194 fi
3195 if test "${with_cde}" = "yes" ; then
3196 AC_DEFINE(HAVE_CDE)
3197 fi
3198
3199 #
3200 # See if we can find Xlocale.h.
3201 #
3202 with_xlocale_h='no'
3203 if test "${window_system}" != "none" ; then
3204 for arg in ${DEFS} /usr/include
3205 do
3206 if test -f `echo "${arg}/X11/Xlocale.h" | sed 's/^\-I//'` ; then
3207 with_xlocale_h='yes'
3208 fi
3209 done
3210 fi
3211 if test "${with_xlocale_h}" = "yes" ; then
3212 AC_DEFINE(HAVE_XLOCALE_H)
3213 fi
3214
3215 if test "${window_system}" != "none" ; then
3216 AC_FIND_X_VERSION
3217 AC_HAVE_HEADERS(X11/Xlocale.h)
3218 fi
3219
3220 #
3221 # if Energize specified, make sure we can find its need libraries/headers
3222 #
3223 if test "${with_energize}" = "yes" ; then
3224 AC_HAVE_LIBRARY(-lenergize, energize_version='3.X')
3225 if test "${energize_version}" = "no" ; then
3226 AC_HAVE_LIBRARY(-lconn, energize_version='2.X')
3227 if test "${energize_version}" = "no" ; then
3228 echo "Unable to find Energize library." >&2
3229 exit 1
3230 fi
3231 fi
3232
3233 internal_eincludes_found='no'
3234 for arg in ${DEFS} /usr/include
3235 do
3236 if test -f `echo "${arg}/editorconn.h" | sed 's/^\-I//'` ; then
3237 internal_eincludes_found='yes'
3238 fi
3239 done
3240 if test "${internal_eincludes_found}" = "no" ; then
3241 echo "Unable to find Energize editorconn.h header file." >&2
3242 exit 1
3243 fi
3244 fi
3245
3246 #
3247 # logb and frexp are found in -lm on most systems.
3248 #
3249 AC_HAVE_LIBRARY(-lm)
3250
3251 #
3252 # see if XPM is hanging around somewhere
3253 #
3254 if test "${window_system}" != "none" ; then
3255 if test "${with_xpm}" != "no" ; then
3256 if test "${with_xpm}" != "yes" ; then
3257 AC_HAVE_LIBRARY(-lXpm, with_xpm="yes")
3258 fi
3259 fi
3260 fi
3261 if test "${with_xpm}" = "yes" ; then
3262 AC_DEFINE(HAVE_XPM)
3263 fi
3264
3265 #
3266 # see if Xmu is hanging around somewhere
3267 #
3268 # FSF 19.31 has this:
3269 #dnl If using toolkit, check whether libXmu.a exists.
3270 #dnl tranle@intellicorp.com says libXmu.a can need XtMalloc in libXt.a to link.
3271 # OLDLIBS="$LIBS"
3272 # if test x$HAVE_X11XTR6 = xyes; then
3273 # LIBS="-lXt -lSM -lICE $LIBS"
3274 # else
3275 # LIBS="-lXt $LIBS"
3276 # fi
3277 # A C_CHECK_LIB(Xmu, XmuConvertStandardSelection)
3278 # LIBS="$OLDLIBS"
3279
3280 if test "${window_system}" != "none" ; then
3281 if test "${with_xmu}" != "no" ; then
3282 if test "${with_xmu}" != "yes" ; then
3283 AC_HAVE_LIBRARY(-lXmu, with_xmu="yes")
3284 fi
3285 # On SunOS4 we must kludge harder to try to detect Xmu
3286 # Upgrade to autoconf 2 and use ac_check_lib - mrb
3287 if test "${with_xmu}" != "yes" && test -n "$OPENWINHOME" ; then
3288 # begin expansion of ac_have_library
3289 ac_save_LIBS="${LIBS}"
3290 LIBS="${LIBS} -lXmu -lXt -lXext -lX11 -lm"
3291 ac_have_lib=""
3292 cat > conftest.${ac_ext} <<EOF
3293 int main() { return 0; }
3294 EOF
3295 if eval $ac_compile; then
3296 rm -rf conftest*
3297 ac_have_lib="1"
3298 fi
3299 rm -f conftest*
3300 LIBS="${ac_save_LIBS}"
3301 test -n "${ac_have_lib}" && with_xmu="yes"
3302 # end expansion of ac_have_library
3303 fi
3304 # On UnixWare 2.1 we must kludge harder to try to detect Xmu
3305 # Upgrade to autoconf 2 and use ac_check_lib - mrb
3306 if test "${with_xmu}" != "yes" && test -f "/.UpgradeVer2.1" ; then
3307 # begin expansion of ac_have_library
3308 ac_save_LIBS="${LIBS}"
3309 if test x$HAVE_XFREE386 = xyes; then
3310 LIBS="-lXt -lSM -lICE ${LIBS}"
3311 else
3312 LIBS="${LIBS} -lXmu -lXt -lXext -lX11"
3313 fi
3314 ac_have_lib=""
3315 cat > conftest.${ac_ext} <<EOF
3316 int main() { return 0; }
3317 EOF
3318 if eval $ac_compile; then
3319 rm -rf conftest*
3320 ac_have_lib="1"
3321 fi
3322 rm -f conftest*
3323 LIBS="${ac_save_LIBS}"
3324 test -n "${ac_have_lib}" && with_xmu="yes"
3325 # end expansion of ac_have_library
3326 fi
3327 fi
3328 fi
3329 if test "${with_xmu}" = "yes" ; then
3330 AC_DEFINE(HAVE_XMU)
3331 fi
3332
3333 #
3334 # see if COMPFACE is hanging around somewhere
3335 #
3336 if test "${window_system}" != "none" ; then
3337 if test "${with_xface}" != "no" ; then
3338 if test "${with_xface}" != "yes" ; then
3339 AC_HEADER_CHECK(compface.h, compface_incl="yes", with_xface="no")
3340 if test "${compface_incl}" = "yes" ; then
3341 AC_HAVE_LIBRARY(-lcompface, with_xface="yes")
3342 fi
3343 fi
3344 fi
3345 fi
3346 if test "${with_xface}" = "yes" ; then
3347 AC_DEFINE(HAVE_XFACE)
3348 fi
3349
3350 #
3351 # check whether we're using GIF support
3352 #
3353 if test "${window_system}" = "none" ; then
3354 if test -z "${with_gif}" ; then
3355 with_gif=no
3356 elif test "${with_gif}" != "no" ; then
3357 echo "GIF support cannot be specified without a window system."
3358 exit 1
3359 fi
3360 elif test -z "${with_gif}" ; then
3361 with_gif=yes
3362 fi
3363 if test "${with_gif}" = "yes" ; then
3364 AC_DEFINE(HAVE_GIF)
3365 fi
3366
3367 #
3368 # autodetect JPEG
3369 #
3370 if test "${window_system}" = "none" ; then
3371 if test -z "${with_jpeg}" ; then
3372 with_jpeg=no
3373 elif test "${with_jpeg}" != "no" ; then
3374 echo "JPEG support cannot be specified without a window system."
3375 exit 1
3376 fi
3377 else
3378 if test "${with_jpeg}" != "no" ; then
3379 if test "${with_jpeg}" != "yes" ; then
3380 AC_HEADER_CHECK(jpeglib.h, jpeglib_incl="yes", with_jpeg="no")
3381 if test "${jpeglib_incl}" = "yes" ; then
3382 AC_HAVE_LIBRARY(-ljpeg, with_jpeg="yes")
3383 fi
3384 fi
3385 fi
3386 fi
3387 if test "${with_jpeg}" = "yes" ; then
3388 AC_DEFINE(HAVE_JPEG)
3389 fi
3390
3391 #
3392 # autodetect PNG
3393 #
3394 if test "${window_system}" = "none" ; then
3395 if test -z "${with_png}" ; then
3396 with_png=no
3397 elif test "${with_png}" != "no" ; then
3398 echo "PNG support cannot be specified without a window system."
3399 exit 1
3400 fi
3401 fi
3402 if test -z "${with_png}" ; then
3403 AC_HEADER_CHECK(png.h, , with_png="no")
3404 fi
3405 if test -z "${with_png}" ; then
3406 AC_HAVE_LIBRARY(-lpng, , with_png="no")
3407 fi
3408 if test -z "${with_png}" ; then
3409 AC_HAVE_LIBRARY(-lz, with_png="yes")
3410 fi
3411 if test -z "${with_png}" ; then
3412 AC_HAVE_LIBRARY(-lgz, with_png="gnuz", with_png="no")
3413 fi
3414 if test "${with_png}" = "yes" ; then
3415 AC_DEFINE(HAVE_PNG)
3416 fi
3417 if test "${with_png}" = "gnuz" ; then
3418 AC_DEFINE(HAVE_PNG)
3419 AC_DEFINE(HAVE_PNG_GNUZ)
3420 fi
3421
3422 #
3423 # autodetect TIFF (not yet implemented)
3424 #
3425 if test "${window_system}" = "none" ; then
3426 if test -z "${with_tiff}" ; then
3427 with_tiff=no
3428 elif test "${with_tiff}" != "no" ; then
3429 echo "TIFF support cannot be specified without a window system."
3430 exit 1
3431 fi
3432 fi
3433 if test "${with_tiff}" = "yes" ; then
3434 AC_DEFINE(HAVE_TIFF)
3435 fi
3436
3437 # We use Lucid toolkit defaults for the menubars and scrollbars, but
3438 # if Motif is available we use it for the dialog boxes.
3439 if test "${window_system}" != "none" ; then
3440 if test "x${with_dialogs}" = "x" ; then
3441 # We can't use ac_have_library because it simply appends -lXm to the
3442 # end of the link line which is insufficient since -lXm will generate
3443 # dependencies on -lXt
3444 # begin expansion of ac_have_library
3445 ac_save_LIBS="${LIBS}"
3446 LIBS="${LIBS} -lXm -lXt ${LIBS}"
3447 ac_have_lib=""
3448 test -n "$silent" || echo "checking for -lXm"
3449 cat > conftest.${ac_ext} <<EOF
3450 #include "confdefs.h"
3451
3452 int main() { return 0; }
3453 int t() { main();; return 0; }
3454 EOF
3455 if eval $ac_compile; then
3456 rm -rf conftest*
3457 ac_have_lib="1"
3458
3459 fi
3460 rm -f conftest*
3461 LIBS="${ac_save_LIBS}"
3462 if test -n "${ac_have_lib}"; then
3463 :; with_dialogs="motif"
3464 else
3465 :;
3466 fi
3467 # end expansion of ac_have_library
3468 # Sigh. My Motif (MoTeeth) under Linux also depends on Xpm and Xext.
3469 if test "${with_dialogs}" != "motif" ; then
3470 # begin expansion of ac_have_library
3471 ac_save_LIBS="${LIBS}"
3472 LIBS="${LIBS} -lXm -lXt -lXpm -lXext ${LIBS}"
3473 ac_have_lib=""
3474 test -n "$silent" || echo "checking for -lXm in another way"
3475 cat > conftest.${ac_ext} <<EOF
3476 #include "confdefs.h"
3477
3478 int main() { return 0; }
3479 int t() { main();; return 0; }
3480 EOF
3481 if eval $ac_compile; then
3482 rm -rf conftest*
3483 ac_have_lib="1"
3484
3485 fi
3486 rm -f conftest*
3487 LIBS="${ac_save_LIBS}"
3488 if test -n "${ac_have_lib}"; then
3489 :; with_dialogs="motif"
3490 else
3491 :;
3492 fi
3493 # end expansion of ac_have_library
3494 fi
3495 if test "${with_dialogs}" = "motif" ; then
3496 AC_VERBOSE(Found Motif)
3497 fi
3498 fi
3499 fi
3500
3501 [
3502 if [ "${with_menubars}" = "motif" ] || [ "${with_scrollbars}" = "motif" ] \
3503 || [ "${with_dialogs}" = "motif" ]; then
3504 with_motif='yes'
3505 fi
3506
3507 # Finish ensuring that we have values for the various toolkit items.
3508 if [ "x${with_menubars}" = "x" ] || [ "${with_menubars}" = "athena" ]; then
3509 with_menubars='lucid'
3510 fi
3511 if [ "x${with_scrollbars}" = "x" ]; then
3512 with_scrollbars='lucid'
3513 fi
3514 if [ "x${with_dialogs}" = "x" ] || [ "${with_dialogs}" = "lucid" ]; then
3515 with_dialogs='athena'
3516 fi
3517 ]
3518
3519 ############################################################################
3520 # #
3521 # Misc other feature tests #
3522 # #
3523 ############################################################################
3524
3525 # If netdb.h doesn't declare h_errno, we must declare it by hand.
3526 AC_COMPILE_CHECK(declaration of h_errno in netdb.h,
3527 [#include <netdb.h>],
3528 [int i = h_errno;],
3529 AC_DEFINE(HAVE_H_ERRNO))
3530
3531 AC_COMPILE_CHECK(sigsetjmp,
3532 [#include <setjmp.h>],
3533 [sigjmp_buf bar; sigsetjmp (bar, 0);],
3534 AC_DEFINE(HAVE_SIGSETJMP))
3535
3536 AC_CHECKING(whether localtime caches TZ)
3537 emacs_cv_localtime_cache=
3538 AC_TEST_PROGRAM([#include <time.h>
3539 #if 1 /* STDC_HEADERS */
3540 # include <stdlib.h>
3541 #endif
3542 extern char **environ;
3543 unset_TZ ()
3544 {
3545 char **from, **to;
3546 for (to = from = environ; (*to = *from); from++)
3547 if (! (to[0][0] == 'T' && to[0][1] == 'Z' && to[0][2] == '='))
3548 to++;
3549 }
3550 main()
3551 {
3552 time_t now = time ((time_t *) 0);
3553 int hour_GMT0, hour_unset;
3554 if (putenv ("TZ=GMT0") != 0)
3555 exit (1);
3556 hour_GMT0 = localtime (&now)->tm_hour;
3557 unset_TZ ();
3558 hour_unset = localtime (&now)->tm_hour;
3559 if (putenv ("TZ=PST8") != 0)
3560 exit (1);
3561 if (localtime (&now)->tm_hour == hour_GMT0)
3562 exit (1);
3563 unset_TZ ();
3564 if (localtime (&now)->tm_hour != hour_unset)
3565 exit (1);
3566 exit (0);
3567 }], emacs_cv_localtime_cache=no, emacs_cv_localtime_cache=yes,
3568 [# If we have tzset, assume the worst when cross-compiling.
3569 emacs_cv_localtime_cache=yes])
3570 AC_VERBOSE("$emacs_cv_localtime_cache")
3571 if test x$emacs_cv_localtime_cache = xyes; then
3572 AC_DEFINE(LOCALTIME_CACHE)
3573 fi
3574
3575 if test "x$HAVE_TIMEVAL" = xyes; then
3576 AC_COMPILE_CHECK(whether gettimeofday can't accept two arguments,
3577 [
3578 #ifdef TIME_WITH_SYS_TIME
3579 #include <sys/time.h>
3580 #include <time.h>
3581 #else
3582 #ifdef HAVE_SYS_TIME_H
3583 #include <sys/time.h>
3584 #else
3585 #include <time.h>
3586 #endif
3587 #endif
3588 ],
3589 [
3590 struct timeval time;
3591 struct timezone dummy;
3592 gettimeofday (&time, &dummy);
3593 ],
3594 [AC_VERBOSE(no)],
3595 [AC_VERBOSE(yes)
3596 AC_DEFINE(GETTIMEOFDAY_ONE_ARGUMENT)])
3597 fi
3598
3599 AC_COMPILE_CHECK(whether inline functions are supported,
3600 ,
3601 [
3602 inline int
3603 foo ()
3604 {
3605 return 0;
3606 }
3607 ],
3608 AC_DEFINE(HAVE_INLINE))
3609
3610 # This does all sorts of magic to make sure alloca() works OK.
3611 # It might even add some junk to the top of <config.h>.
3612 # (I don't understand what goes on here, but it seems to work.)
3613 AC_ALLOCA
3614
3615 # Check whether vfork exists and works correctly. (This does more
3616 # than just check for its existence.) If so, it defines HAVE_VFORK_H.
3617 # If not, it defines vfork to be fork.
3618 AC_VFORK
3619
3620 # Check whether mmap exists and works correctly. (This does more
3621 # than just check for its existence.) If so, it defines HAVE_MMAP.
3622 # Actually, this seems to rule out some cases where mmap() can
3623 # work fine for our purposes (e.g. HPUX). We get a big win out
3624 # of using mmap(), so let's go back to the old way.
3625 dnl AC_MMAP
3626
3627 # Check whether strcoll exists and works correctly. (This does more
3628 # than just check for its existence.) If so, it defines HAVE_STRCOLL.
3629 AC_STRCOLL
3630
3631 AC_SIZEOF_TYPE(short)
3632 AC_SIZEOF_TYPE(int)
3633 AC_SIZEOF_TYPE(long)
3634
3635 # FSF 19.29 does this:
3636 # # fmod, logb, and frexp are found in -lm on most systems.
3637 # # On HPUX 9.01, -lm does not contain logb, so check for sqrt.
3638 # A C_CHECK_LIB(m, sqrt)
3639
3640 AC_HAVE_FUNCS(acosh asinh atanh cbrt closedir dup2 eaccess fmod fpathconf frexp ftime gethostname getpagesize gettimeofday getwd logb lrand48 matherr mkdir mktime perror poll random realpath rename res_init rint rmdir select setitimer setpgid setlocale setsid sigblock sighold sigprocmask strcasecmp strerror tzset utimes waitpid)
3641
3642 # Check for mmap.
3643 found_mmap=true
3644 AC_FUNC_CHECK(mmap, , found_mmap=)
3645 if test -n "$found_mmap"; then
3646 AC_DEFINE(HAVE_MMAP)
3647 fi
3648
3649 [
3650 # rel_alloc requires either GNU malloc or system malloc with mmap
3651 if [ "${GNU_MALLOC}" != "yes" ]; then
3652 if [ "${found_mmap}" != "true" ]; then
3653 rel_alloc=no
3654 fi
3655 fi
3656
3657 # We only turn rel_alloc on by default if mmap is available.
3658 if [ "${rel_alloc}" = "default" ]; then
3659 if [ "${found_mmap}" = "true" ]; then
3660 rel_alloc=yes
3661 fi
3662 fi
3663 ]
3664
3665
3666 # Check for Internet sockets.
3667
3668 ok_so_far=true
3669 AC_FUNC_CHECK(socket, , ok_so_far=)
3670 if test -n "$ok_so_far"; then
3671 AC_HEADER_CHECK(netinet/in.h, , ok_so_far=)
3672 fi
3673 if test -n "$ok_so_far"; then
3674 AC_HEADER_CHECK(arpa/inet.h, , ok_so_far=)
3675 fi
3676 if test -n "$ok_so_far"; then
3677 AC_DEFINE(HAVE_SOCKETS)
3678 # Check for the sun_len member in struct sockaddr_un.
3679
3680 AC_COMPILE_CHECK(sun_len member in struct sockaddr_un,
3681 [#include <sys/types.h>
3682 #include <sys/socket.h>
3683 #include <sys/un.h>], [static struct sockaddr_un x; x.sun_len = 1;],
3684 AC_DEFINE(HAVE_SOCKADDR_SUN_LEN))
3685 fi
3686
3687 # Check for SYS V IPC. (Inferior to sockets.)
3688
3689 if test -z "$ok_so_far"; then
3690 ok_so_far=true
3691 AC_FUNC_CHECK(msgget, , ok_so_far=)
3692 if test -n "$ok_so_far"; then
3693 AC_HEADER_CHECK(sys/ipc.h, , ok_so_far=)
3694 fi
3695 if test -n "$ok_so_far"; then
3696 AC_HEADER_CHECK(sys/msg.h, , ok_so_far=)
3697 fi
3698 if test -n "$ok_so_far"; then
3699 AC_DEFINE(HAVE_SYSVIPC)
3700 fi
3701 fi
3702
3703 # Check for directory variants
3704
3705 sysv_system_dir=
3706 nonsystem_dir_library=
3707 AC_HEADER_CHECK(dirent.h, sysv_system_dir=yes, )
3708 if test -z "$sysv_system_dir" ; then
3709 AC_HEADER_CHECK(sys/dir.h, , nonsystem_dir_library=yes)
3710 fi
3711 if test -n "$sysv_system_dir" ; then
3712 AC_DEFINE(SYSV_SYSTEM_DIR)
3713 elif test -n "$nonsystem_dir_library" ; then
3714 AC_DEFINE(NONSYSTEM_DIR_LIBRARY)
3715 fi
3716
3717 # Check for terminal I/O variants
3718
3719 echo "checking how to do terminal I/O"
3720
3721 have_termios=
3722 have_termio=
3723 AC_HEADER_CHECK(termios.h, have_termios=yes, )
3724 # TERMIOS systems may have termio.h, but not vice-versa, I think.
3725 if test -z "$have_termios" ; then
3726 AC_HEADER_CHECK(termio.h, have_termio=yes, )
3727 fi
3728 if test -n "$have_termios" ; then
3729 AC_DEFINE(HAVE_TERMIOS)
3730 elif test -n "$have_termio" ; then
3731 AC_DEFINE(HAVE_TERMIO)
3732 fi
3733
3734 # Check for nlist.h
3735 AC_HEADER_CHECK(nlist.h, AC_DEFINE(NLIST_STRUCT), )
3736
3737 if test -f /usr/lpp/X11/bin/smt.exp ; then
3738 AC_DEFINE(AIX_SMT_EXP, -bI:/usr/lpp/X11/bin/smt.exp)
3739 elif test -f /usr/bin/X11/smt.exp ; then
3740 AC_DEFINE(AIX_SMT_EXP, -bI:/usr/bin/X11/smt.exp)
3741 fi
3742
3743 # Set up the CFLAGS for real compilation, so we can substitute it.
3744 CFLAGS="$REAL_CFLAGS"
3745
3746 [
3747 #### Find out which version of XEmacs this is.
3748 version=`grep 'defconst[ ]*emacs-version' ${srcdir}/lisp/version.el \
3749 | sed -ne 's/^(defconst emacs-version "\([0-9][0-9]\.[0-9]*\).*/\1/p'`
3750 beta=`grep '" XEmacs Lucid' ${srcdir}/lisp/version.el \
3751 | sed -ne 's/^.*" XEmacs Lucid (beta\([^)]*\)).*/\1/p'`
3752 alpha=`grep '" XEmacs Lucid' ${srcdir}/lisp/version.el \
3753 | sed -ne 's/^.*" XEmacs Lucid (alpha\([^)]*\)).*/\1/p'`
3754 if [ "X$beta" != "X" ]; then
3755 version=${version}-b${beta}
3756 fi
3757 if [ "X$alpha" != "X" ]; then
3758 version=${version}-a${alpha}
3759 fi
3760 if [ x"${version}" = x ]; then
3761 echo "${progname}: can't find current emacs version in
3762 \`${srcdir}/lisp/version.el'." >&2
3763 exit 1
3764 fi
3765
3766 #
3767 # Check for sound of various sorts.
3768 #
3769
3770 # the following needs to be fixed for SGI.
3771 if [ -z "${native_sound_lib}" ]; then
3772 if [ -r /usr/demo/SOUND/lib/libaudio.a ]; then
3773 native_sound_lib=/usr/demo/SOUND/lib/libaudio.a
3774 elif [ -r /usr/demo/SOUND/libaudio.a ]; then
3775 native_sound_lib=/usr/demo/SOUND/libaudio.a
3776 else
3777 case "${canonical}" in
3778 *-sgi-* ) native_sound_lib=-laudio ;;
3779 hppa*-hp-hpux* ) native_sound_lib=-lAlib ;;
3780 esac
3781 fi
3782 fi
3783
3784 if [ "${with_sound}" != "native" ] && [ "${with_sound}" != "nas" ] && [ "${with_sound}" != "both" ] && [ "${with_sound}" != "no" ] ; then
3785 if [ -d /usr/demo/SOUND/multimedia -o -d /usr/demo/SOUND/include/multimedia ]; then
3786 with_sound="native"
3787 else
3788 case "${canonical}" in
3789 *-sgi-* )
3790 ] AC_HAVE_LIBRARY(-laudio, with_sound="native") [
3791 ;;
3792 hppa*-hp-hpux* )
3793 ] AC_HAVE_LIBRARY(-lAlib, with_sound="native") [
3794 ;;
3795 esac
3796 fi
3797 fi
3798
3799 #### If the nas library doesn't contain the error jump point, then
3800 #### we force safer behaviour.
3801
3802 if [ "${with_sound}" = "nas" ] || [ "${with_sound}" = "both" ] ; then
3803 ] AC_HEADER_EGREP(AuXtErrorJump,audio/Xtutil.h, , old_nas=true) [
3804 fi
3805
3806 if [ "${with_tooltalk}" = "yes" ]; then
3807 for arg in ${DEFS} "-I/usr/include" "-I${OPENWINHOME-/usr/openwin}/include"
3808 do
3809 if [ -f `echo "${arg}/desktop/tt_c.h" | sed 's/^\-I//'` ]; then
3810 C_SWITCH_X_SITE="${C_SWITCH_X_SITE} ${arg}/desktop"
3811 fi
3812 done
3813
3814 for arg in ${LIBS} "-L/usr/lib" "-L${OPENWINHHOME-/usr/openwin}/lib"
3815 do
3816 case "${arg}" in
3817 -L*) if [ -f `echo "${arg}/libtt.a" | sed 's/^\-L//'` ]; then
3818 dash_r=''
3819 if [ -n "${add_runtime_flag}" ]; then
3820 dash_r=`echo ${arg} | sed "s/^-L/-R${dash_r_space}/"`
3821 fi
3822 LD_SWITCH_X_SITE="${LD_SWITCH_X_SITE} ${arg} ${dash_r}"
3823 fi
3824 ;;
3825 esac
3826 done
3827 fi
3828
3829 #
3830 # Check for ncurses.
3831 #
3832
3833 if [ "${with_tty}" != "no" ] ; then
3834 ] AC_HAVE_LIBRARY(-lncurses, have_ncurses=yes, have_ncurses=no) [
3835 if [ "${have_ncurses}" = "yes" ] ; then
3836 ] AC_DEFINE(HAVE_NCURSES) [
3837 ] AC_HEADER_CHECK(ncurses/term.h, have_ncurses_term_h=yes, have_ncurses_term_h=no) [
3838 if [ "${have_ncurses_term_h}" = "yes" ] ; then
3839 ] AC_DEFINE(HAVE_NCURSES_TERM_H) [
3840 fi
3841 ] AC_HEADER_CHECK(ncurses/curses.h, have_ncurses_curses_h=yes, have_ncurses_curses_h=no) [
3842 if [ "${have_ncurses_curses_h}" = "no" ] ; then
3843 # Try again, and check for the bogus ncurses/ include bug.
3844 # (i.e. ncurses/curses.h bogusly includes <unctrl.h> instead of
3845 # <ncurses/unctrl.h>)
3846 OLD_CPP="${CPP}"
3847 CPP="${CPP} -I/usr/include/ncurses"
3848 ] AC_HEADER_CHECK(ncurses/curses.h, have_ncurses_curses_h=yes, have_ncurses_curses_h=no) [
3849 if [ "${have_ncurses_curses_h}" = "yes" ] ; then
3850 site_includes="${site_includes} /usr/include/ncurses"
3851 C_SWITCH_SITE="${C_SWITCH_SITE} -I/usr/include/ncurses"
3852 ] AC_VERBOSE(Your system has the bogus ncurses include bug.) [
3853 else
3854 CPP="${OLD_CPP}"
3855 fi
3856 fi
3857 if [ "${have_ncurses_curses_h}" = "yes" ] ; then
3858 ] AC_DEFINE(HAVE_NCURSES_CURSES_H) [
3859 fi
3860 fi
3861 fi
3862
3863 #
3864 # Check for database support.
3865 #
3866
3867 ]dnl <mdiers@logware.de>
3868 dnl We don't necessarily have to have libdb/lib(g)dbm for DB/(G)DBM support.
3869 dnl On FreeBSD, both DB and DBM are part of libc.
3870 dnl Note that unless support for DB/(G)DBM is explicitly disabled, we always
3871 dnl want to check for libdb/lib(g)dbm. Also note that libc will not be
3872 dnl checked if we have the libraries.
3873 dnl If support for DB/(G)DBM is requested, but we neither have libdb/lib(g)dbm,
3874 dnl nor does libc implement it, we are a bit lost :)
3875 dnl But wait: one still could define DATABASE_DB_LIBS and DATABASE_DBM_LIBS
3876 dnl in the system description file to read -lthisiswhereitsat and
3877 dnl have --site-libraries point there.
3878 dnl (Does this make sense? My head hurts...)
3879 [
3880 if [ "${with_database_berkdb}" != "no" ] ; then
3881 ] AC_HAVE_LIBRARY(-ldb, have_libdb=yes, have_libdb=no) [
3882 if [ "${have_libdb}" = "yes" ] ; then
3883 ] AC_DEFINE(HAVE_LIBDB) [
3884 fi
3885 if [ "${with_database_berkdb}" != "yes" ] ; then
3886 if [ "${have_libdb}" = "yes" ] ; then
3887 with_database_berkdb=yes
3888 else
3889 ] AC_FUNC_CHECK(dbopen, have_dbopen=yes, have_dbopen=no) [
3890 if [ "${have_dbopen}" = "yes" ] ; then
3891 with_database_berkdb=yes
3892 else
3893 with_database_berkdb=no
3894 fi
3895 fi
3896 fi
3897 fi
3898 if [ "${with_database_berkdb}" = "yes" ]; then
3899 ] AC_DEFINE(HAVE_BERKELEY_DB) [
3900 fi
3901
3902 if [ "${with_database_gnudbm}" != "no" ] ; then
3903 ] AC_HAVE_LIBRARY(-lgdbm, have_libgdbm=yes, have_libgdbm=no) [
3904 if [ "${have_libgdbm}" = "yes" ] ; then
3905 ] AC_DEFINE(HAVE_LIBGDBM) [
3906 fi
3907 if [ "${with_database_gnudbm}" != "yes" ] ; then
3908 if [ "${have_libgdbm}" = "yes" ] ; then
3909 with_database_gnudbm=yes
3910 else
3911 with_database_gnudbm=no
3912 fi
3913 fi
3914 fi
3915 if [ "${with_database_gnudbm}" = "yes" ]; then
3916 ] AC_DEFINE(HAVE_DBM) [
3917 ] AC_DEFINE(HAVE_GNU_DBM) [
3918 with_database_dbm=no
3919 fi
3920
3921 if [ "${with_database_dbm}" != "no" ] ; then
3922 ] AC_HAVE_LIBRARY(-ldbm, have_libdbm=yes, have_libdbm=no) [
3923 if [ "${have_libdbm}" = "yes" ] ; then
3924 ] AC_DEFINE(HAVE_LIBDBM) [
3925 fi
3926 if [ "${with_database_dbm}" != "yes" ] ; then
3927 if [ "${have_libdbm}" = "yes" ] ; then
3928 with_database_dbm=yes
3929 else
3930 ] AC_FUNC_CHECK(dbm_open, have_dbm_open=yes, have_dbm_open=no) [
3931 if [ "${have_dbm_open}" = "yes" ] ; then
3932 with_database_dbm=yes
3933 else
3934 with_database_dbm=no
3935 fi
3936 fi
3937 fi
3938 fi
3939 if [ "${with_database_dbm}" = "yes" ]; then
3940 ] AC_DEFINE(HAVE_DBM) [
3941 fi
3942
3943
3944 ############################################################################
3945 # #
3946 # Substitute into Makefile and config.h #
3947 # #
3948 ############################################################################
3949
3950 ### Specify what sort of things we'll be editing into Makefile and config.h.
3951 ### Use configuration here uncanonicalized to avoid exceeding size limits.
3952 ]
3953 AC_SUBST(version)
3954 AC_SUBST(configuration)
3955 AC_SUBST(canonical)
3956 AC_SUBST(srcdir)
3957 AC_SUBST(prefix)
3958 AC_SUBST(exec_prefix)
3959 AC_SUBST(bindir)
3960 AC_SUBST(datadir)
3961 AC_SUBST(statedir)
3962 AC_SUBST(libdir)
3963 AC_SUBST(mandir)
3964 AC_SUBST(infodir)
3965 AC_SUBST(infodir_user_defined)
3966 AC_SUBST(lispdir)
3967 AC_SUBST(lispdir_user_defined)
3968 AC_SUBST(sitelispdir)
3969 AC_SUBST(etcdir)
3970 AC_SUBST(etcdir_user_defined)
3971 AC_SUBST(lockdir)
3972 AC_SUBST(lockdir_user_defined)
3973 AC_SUBST(archlibdir)
3974 AC_SUBST(archlibdir_user_defined)
3975 AC_SUBST(docdir)
3976 AC_SUBST(bitmapdir)
3977 AC_SUBST(c_switch_system)
3978 AC_SUBST(c_switch_machine)
3979 AC_SUBST(libsrc_libs)
3980 AC_SUBST(LD_SWITCH_X_SITE)
3981 AC_SUBST(LD_SWITCH_X_SITE_AUX)
3982 AC_SUBST(C_SWITCH_X_SITE)
3983 AC_SUBST(LD_SWITCH_SITE)
3984 AC_SUBST(C_SWITCH_SITE)
3985 AC_SUBST(CFLAGS)
3986 AC_SUBST(native_sound_lib)
3987 AC_SUBST(machfile)
3988 AC_SUBST(opsysfile)
3989 AC_SUBST(RANLIB)
3990 AC_SUBST(dynodump_arch)
3991
3992 AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "\"${canonical}\"")
3993 AC_DEFINE_UNQUOTED(config_machfile, "\"${machfile}\"")
3994 AC_DEFINE_UNQUOTED(config_opsysfile, "\"${opsysfile}\"")
3995 AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE, ${LD_SWITCH_X_SITE})
3996 AC_DEFINE_UNQUOTED(LD_SWITCH_X_SITE_AUX, ${LD_SWITCH_X_SITE_AUX})
3997 AC_DEFINE_UNQUOTED(C_SWITCH_X_SITE, ${C_SWITCH_X_SITE})
3998 AC_DEFINE_UNQUOTED(LD_SWITCH_SITE, ${LD_SWITCH_SITE})
3999 AC_DEFINE_UNQUOTED(C_SWITCH_SITE, ${C_SWITCH_SITE})
4000 AC_DEFINE_UNQUOTED(UNEXEC_SRC, ${UNEXEC_SRC})
4001
4002 [
4003
4004 # Note: as a general rule, *only* define things here that are not
4005 # autodetected. For things that are autodetected, define them
4006 # at the point where the autodetection occurs or would occur,
4007 # so that the user gets immediate feedback on the results of the
4008 # autodetection.
4009
4010 if [ x"${puresize}" != x ] ; then
4011 ] AC_DEFINE_UNQUOTED(PURESIZE, ${puresize}) [
4012 fi
4013 if [ "${HAVE_X_WINDOWS}" = "yes" ] ; then
4014 ] AC_DEFINE(HAVE_X_WINDOWS) [
4015 fi
4016 if [ "${HAVE_XFREE386}" = "yes" ] ; then
4017 ] AC_DEFINE(HAVE_XFREE386) [
4018 fi
4019 if [ "${GNU_MALLOC}" = "yes" ] ; then
4020 ] AC_DEFINE(GNU_MALLOC) [
4021 elif [ "${use_system_malloc}" = "yes" ]; then
4022 ] AC_DEFINE(USE_SYSTEM_MALLOC) [
4023 fi
4024 if [ "${rel_alloc}" = "yes" ] ; then
4025 ] AC_DEFINE(REL_ALLOC) [
4026 fi
4027 if [ "${LISP_FLOAT_TYPE}" = "yes" ] ; then
4028 ] AC_DEFINE(LISP_FLOAT_TYPE) [
4029 fi
4030 if [ "${with_motif}" = "yes" ] ; then
4031 ] AC_DEFINE(LWLIB_USES_MOTIF) [
4032 fi
4033 if [ "${with_menubars}" = "lucid" ] ; then
4034 ] AC_DEFINE(LWLIB_MENUBARS_LUCID) [
4035 ] AC_DEFINE(HAVE_MENUBARS) [
4036 fi
4037 if [ "${with_menubars}" = "motif" ]; then
4038 ] AC_DEFINE(LWLIB_MENUBARS_MOTIF) [
4039 ] AC_DEFINE(HAVE_MENUBARS) [
4040 fi
4041 if [ "${with_scrollbars}" = "lucid" ] ; then
4042 ] AC_DEFINE(LWLIB_SCROLLBARS_LUCID) [
4043 ] AC_DEFINE(HAVE_SCROLLBARS) [
4044 fi
4045 if [ "${with_scrollbars}" = "motif" ] ; then
4046 ] AC_DEFINE(LWLIB_SCROLLBARS_MOTIF) [
4047 ] AC_DEFINE(HAVE_SCROLLBARS) [
4048 fi
4049 if [ "${with_scrollbars}" = "athena" ] ; then
4050 ] AC_DEFINE(LWLIB_SCROLLBARS_ATHENA) [
4051 ] AC_DEFINE(HAVE_SCROLLBARS) [
4052 fi
4053 if [ "${with_dialogs}" = "motif" ] ; then
4054 ] AC_DEFINE(LWLIB_DIALOGS_MOTIF) [
4055 ] AC_DEFINE(HAVE_DIALOGS) [
4056 fi
4057 if [ "${with_dialogs}" = "athena" ] ; then
4058 ] AC_DEFINE(LWLIB_DIALOGS_ATHENA) [
4059 ] AC_DEFINE(HAVE_DIALOGS) [
4060 fi
4061 if [ "${with_toolbars}" = "yes" ] ; then
4062 ] AC_DEFINE(HAVE_TOOLBARS) [
4063 fi
4064 if [ "${with_tty}" = "yes" ] ; then
4065 ] AC_DEFINE(HAVE_TTY) [
4066 fi
4067 if [ "${with_tooltalk}" = "yes" ] ; then
4068 ] AC_DEFINE(TOOLTALK) [
4069 fi
4070 if [ "$with_mocklisp" = "yes" ]; then
4071 ] AC_DEFINE(MOCKLISP_SUPPORT) [
4072 fi
4073 if [ "${with_sparcworks}" = "yes" ] ; then
4074 ] AC_DEFINE(SUNPRO) [
4075 fi
4076 if [ "${usage_tracking}" = "yes" ] ; then
4077 ] AC_DEFINE(USAGE_TRACKING) [
4078 fi
4079 if [ "${with_energize}" = "yes" ] ; then
4080 ] AC_DEFINE(ENERGIZE) [
4081 if [ "${energize_version}" = "2.X" ] ; then
4082 ] AC_DEFINE(ENERGIZE_2) [
4083 elif [ "${energize_version}" = "3.X" ] ; then
4084 ] AC_DEFINE(ENERGIZE_3) [
4085 fi
4086 fi
4087 if [ "${need_dynodump}" = "yes" ] ; then
4088 ] AC_DEFINE(DYNODUMP) [
4089 fi
4090 if [ "${need_xildoff}" = "yes" ] ; then
4091 ] AC_DEFINE(NEED_XILDOFF) [
4092 fi
4093 if [ "${with_gcc}" = "yes" ] ; then
4094 ] AC_DEFINE(USE_GCC) [
4095 fi
4096 if [ "${with_lcc}" = "yes" ] ; then
4097 ] AC_DEFINE(USE_LCC) [
4098 fi
4099 if [ "${with_socks}" = "yes" ]; then
4100 ] AC_DEFINE(HAVE_SOCKS) [
4101 fi
4102 if [ "${with_term}" = "yes" ]; then
4103 ] AC_DEFINE(HAVE_TERM) [
4104 fi
4105 if [ "${with_epoch}" = "yes" ]; then
4106 ] AC_DEFINE(EPOCH) [
4107 fi
4108 if [ "${with_sound}" = "native" -o "${with_sound}" = "both" ]; then
4109 ] AC_DEFINE(HAVE_NATIVE_SOUND) [
4110 fi
4111 if [ "${with_sound}" = "nas" -o "${with_sound}" = "both" ]; then
4112 ] AC_DEFINE(HAVE_NAS_SOUND) [
4113 fi
4114 if [ "${old_nas}" = "true" ] ; then
4115 ] AC_DEFINE(NAS_NO_ERROR_JUMP) [
4116 fi
4117 if [ "${external_widget}" = "yes" ]; then
4118 ] AC_DEFINE(EXTERNAL_WIDGET) [
4119 fi
4120 if [ "${with_gnu_make}" = "yes" ]; then
4121 ] AC_DEFINE(USE_GNU_MAKE) [
4122 fi
4123 if [ "${no_doc_file}" = "yes" ]; then
4124 ] AC_DEFINE(NO_DOC_FILE) [
4125 fi
4126 if [ "${const_is_losing}" = "yes" ]; then
4127 ] AC_DEFINE(CONST_IS_LOSING) [
4128 fi
4129 if [ "${use_assertions}" = "yes" ]; then
4130 ] AC_DEFINE(USE_ASSERTIONS) [
4131 fi
4132 if [ "${error_check_extents}" = "yes" ]; then
4133 ] AC_DEFINE(ERROR_CHECK_EXTENTS) [
4134 fi
4135 if [ "${error_check_typecheck}" = "yes" ]; then
4136 ] AC_DEFINE(ERROR_CHECK_TYPECHECK) [
4137 fi
4138 if [ "${error_check_bufpos}" = "yes" ]; then
4139 ] AC_DEFINE(ERROR_CHECK_BUFPOS) [
4140 fi
4141 if [ "${error_check_gc}" = "yes" ]; then
4142 ] AC_DEFINE(ERROR_CHECK_GC) [
4143 fi
4144 if [ "${error_check_malloc}" = "yes" ]; then
4145 ] AC_DEFINE(ERROR_CHECK_MALLOC) [
4146 fi
4147 if [ "${debug}" = "yes" ]; then
4148 ] AC_DEFINE(DEBUG_XEMACS) [
4149 fi
4150 if [ "${memory_usage_stats}" = "yes" ]; then
4151 ] AC_DEFINE(MEMORY_USAGE_STATS) [
4152 fi
4153 if [ "${use_union_type}" != "yes" ]; then
4154 ] AC_DEFINE(NO_UNION_TYPE) [
4155 fi
4156 if [ "${quantify}" = "yes" ]; then
4157 ] AC_DEFINE(QUANTIFY) [
4158 fi
4159
4160 # ====================== Developer's configuration =======================
4161
4162 # The following assignments make sense if you're running XEmacs on a single
4163 # machine, one version at a time, and you want changes to the lisp and etc
4164 # directories in the source tree to show up immediately in your working
4165 # environment. It saves a great deal of disk space by not duplicating the
4166 # lisp and etc directories.
4167
4168 if [ "$run_in_place" = "yes" ]; then
4169 prefix='${srcdir}'
4170 exec_prefix='${srcdir}'
4171 bindir='${exec_prefix}/bin/${configuration}'
4172 lispdir='${srcdir}/lisp'
4173 sitelispdir='${lispdir}/site-lisp'
4174 etcdir='${srcdir}/etc'
4175 lockdir='${srcdir}/lock'
4176 archlibdir='${srcdir}/lib-src/${configuration}'
4177 infodir='${srcdir}/info'
4178 fi
4179 #elif [ "$single_tree" = "1" ]; then
4180 # if [ "$exec_prefix_specified" = "" ]; then
4181 # exec_prefix='${prefix}'
4182 # fi
4183 # if [ "$bindir_specified" = "" ]; then
4184 # bindir='${exec_prefix}/bin/${configuration}'
4185 # fi
4186 # if [ "$datadir_specified" = "" ]; then
4187 # datadir='${prefix}/common'
4188 # fi
4189 # if [ "$statedir_specified" = "" ]; then
4190 # statedir='${prefix}/common'
4191 # fi
4192 # if [ "$libdir_specified" = "" ]; then
4193 # libdir='${bindir}'
4194 # fi
4195 # if [ "$lispdir_specified" = "" ]; then
4196 # lispdir='${prefix}/common/lisp'
4197 # fi
4198 # if [ "$locallisppath_specified" = "" ]; then
4199 # locallisppath='${prefix}/common/site-lisp'
4200 # fi
4201 # if [ "$lockdir_specified" = "" ]; then
4202 # lockdir='${prefix}/common/lock'
4203 # fi
4204 # if [ "$archlibdir_specified" = "" ]; then
4205 # archlibdir='${libdir}/etc'
4206 # fi
4207 # if [ "$etcdir_specified" = "" ]; then
4208 # etcdir='${prefix}/common/data'
4209 # fi
4210 # if [ "$docdir_specified" = "" ]; then
4211 # docdir='${prefix}/common/data'
4212 # fi
4213 #fi
4214
4215 ############################################################################
4216 # #
4217 # Report on what we decided to do #
4218 # #
4219 ############################################################################
4220
4221 echo "
4222
4223 Configured for \`${canonical}'.
4224
4225 Where should the build process find the source code? ${srcdir}
4226 What installation prefix should install use? ${prefix}
4227 What operating system and machine description files should XEmacs use?
4228 \`${opsysfile}' and \`${machfile}'
4229 What compiler should XEmacs be built with? ${CC} ${CFLAGS}
4230 Should XEmacs use the GNU version of malloc? ${GNU_MALLOC}${GNU_MALLOC_reason}
4231 Should XEmacs use the relocating allocator for buffers? ${rel_alloc}
4232 What window system should XEmacs use? ${window_system}${x_includes+
4233 Where do we find X Windows header files? }${x_includes}${x_libraries+
4234 Where do we find X Windows libraries? }${x_libraries}"
4235
4236 if [ -n "$site_includes" ]; then
4237 echo " Additional header files: ${site_includes}"
4238 fi
4239
4240 if [ -n "$site_libraries" ] && [ -n "$site_runtime_libraries" ]; then
4241 echo " Additional libraries: ${site_libraries} ${site_runtime_libraries}"
4242 elif [ -n "$site_libraries" ]; then
4243 echo " Additional libraries: ${site_libraries}"
4244 elif [ -n "$site_runtime_libraries" ]; then
4245 echo " Additional libraries: ${site_runtime_libraries}"
4246 fi
4247
4248
4249 if [ "$with_socks" = "yes" ]; then
4250 echo " Compiling in support for SOCKS."
4251 fi
4252 if [ "$with_term" = "yes" ]; then
4253 echo " Compiling in support for TERM."
4254 fi
4255 if [ "$with_xauth" = "yes" ]; then
4256 echo " Compiling in support for XAUTH."
4257 fi
4258 if [ "$with_xpm" = "yes" ]; then
4259 echo " Compiling in support for XPM."
4260 fi
4261 if [ "$with_xmu" != "yes" ] && [ "$window_system" != "none" ]; then
4262 echo " No Xmu; substituting equivalent routines."
4263 fi
4264 if [ "$with_xface" = "yes" ]; then
4265 echo " Compiling in support for X-Face headers."
4266 fi
4267 if [ "$with_gif" = "yes" ]; then
4268 echo " Compiling in support for GIF image conversion."
4269 fi
4270 if [ "$with_jpeg" = "yes" ]; then
4271 echo " Compiling in support for JPEG image conversion."
4272 fi
4273 if [ "$with_png" = "yes" ] || [ "$with_png" = "gnuz" ]; then
4274 echo " Compiling in support for PNG image conversion."
4275 fi
4276 if [ "$with_png" = "gnuz" ]; then
4277 echo " (Using -lgz instead of -lz.)"
4278 fi
4279 if [ "$with_tiff" = "yes" ]; then
4280 echo " Compiling in support for TIFF image conversion (not implemented)."
4281 fi
4282 if [ "$with_epoch" = "yes" ]; then
4283 echo " Compiling in extra Epoch compatibility."
4284 fi
4285 if [ "$with_sound" = "nas" ]; then
4286 echo " Compiling in network sound support."
4287 fi
4288 if [ "$with_sound" = "native" ]; then
4289 echo " Compiling in native sound support."
4290 fi
4291 if [ "$with_sound" = "both" ]; then
4292 echo " Compiling in both network and native sound support."
4293 fi
4294 if [ "$old_nas" = true ]; then
4295 echo " nas library lacks error trapping, will play synchronously"
4296 fi
4297 if [ "$with_database_berkdb" = "yes" ]; then
4298 echo " Compiling in support for Berkeley DB."
4299 fi
4300 if [ "$with_database_dbm" = "yes" ]; then
4301 echo " Compiling in support for DBM."
4302 fi
4303 if [ "$with_database_gnudbm" = "yes" ]; then
4304 echo " Compiling in support for GNU DBM."
4305 fi
4306 if [ "$with_ncurses" = "yes" ]; then
4307 echo " Compiling in support for ncurses."
4308 fi
4309 if [ "$with_socks" = "yes" ]; then
4310 echo " Compiling in support for SOCKS."
4311 fi
4312 if [ "$with_tooltalk" = "yes" ]; then
4313 echo " Compiling in support for ToolTalk."
4314 fi
4315 if [ "$with_cde" = "yes" ]; then
4316 echo " Compiling in support for CDE."
4317 fi
4318 if [ "$with_mocklisp" = "yes" ]; then
4319 echo " Compiling in support for Mocklisp."
4320 fi
4321 if [ "$with_sparcworks" = "yes" ]; then
4322 echo " Compiling in support for SparcWorks."
4323 fi
4324 if [ "$with_energize" = "yes" ]; then
4325 echo " Compiling in support for Lucid Energize (doesn't currently work)."
4326 fi
4327 if [ "$with_menubars" = "lucid" ]; then
4328 echo " Using the Lucid menubar."
4329 fi
4330 if [ "$with_menubars" = "motif" ]; then
4331 echo " Using the Motif menubar."
4332 echo " *WARNING* The Motif menubar is currently buggy. We recommend"
4333 echo " that you use the Lucid menubar instead. Re-run"
4334 echo " configure with --with-menubars='lucid'."
4335 fi
4336 if [ "$with_scrollbars" = "lucid" ]; then
4337 echo " Using the Lucid scrollbar."
4338 fi
4339 if [ "$with_scrollbars" = "motif" ]; then
4340 echo " Using the Motif scrollbar."
4341 fi
4342 if [ "$with_scrollbars" = "athena" ]; then
4343 echo " Using the Athena scrollbar."
4344 fi
4345 if [ "$with_dialogs" = "motif" ]; then
4346 echo " Using the Motif dialog boxes."
4347 fi
4348 if [ "$with_dialogs" = "athena" ]; then
4349 echo " Using the Athena dialog boxes."
4350 fi
4351 if [ "${use_union_type}" = "yes" ]; then
4352 echo " Using the union type for Lisp_Objects."
4353 fi
4354 if [ "${debug}" = "yes" ]; then
4355 echo " Compiling in extra code for debugging."
4356 fi
4357 if [ "${memory_usage_stats}" = "yes" ]; then
4358 echo " Compiling in code for checking XEmacs memory usage."
4359 fi
4360 if [ "$usage_tracking" = "yes" ]; then
4361 echo " Compiling with usage tracking active (Sun internal)."
4362 fi
4363 echo "
4364 "
4365
4366 ############################################################################
4367 # #
4368 # Now generate! #
4369 # #
4370 ############################################################################
4371
4372 # This has to be called in order for this variable to get into config.status
4373 ] AC_SUBST(internal_makefile_list) [
4374 # Remove any trailing slashes in these variables.
4375 test -n "${prefix}" &&
4376 prefix=`echo "${prefix}" | sed 's,\([^/]\)/*$,\1,'`
4377 test -n "${exec_prefix}" &&
4378 exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`
4379 ]
4380 AC_OUTPUT($internal_makefile_list) [
4381 # Build:
4382 # src/Makefile from ${srcdir}/src/Makefile.in
4383 # lwlib/Makefile from ${srcdir}/lwlib/Makefile.in
4384 # lib-src/Makefile from ${srcdir}/lib-src/Makefile.in
4385 # man/Makefile from ${srcdir}/man/Makefile.in
4386 # man/*/Makefile from ${srcdir}/man/*/Makefile.in
4387 # dynodump/Makefile from ${srcdir}/dynodump/Makefile.in
4388 # and possibly
4389 # lwlib/energize/Makefile from ${srcdir}/lwlib/energize/Makefile.in.
4390 # This must be done after src/config.h is built, since we rely on that
4391 # file. Only do the build if "config.status" is present, since its
4392 # non-presence indicates an error occured.
4393 status=$?
4394 if [ ! -f ./config.status ]; then
4395 exit $status
4396 fi
4397 topsrcdir=${srcdir}
4398 # We discard all lines in Makefile.in that start with `# Generated' or /**/#
4399 # because some cpps get confused by them.
4400 # Really we should preserve them somehow into Makefile,
4401 # but that is beyond my level of shell programming.
4402 makefile_command='echo "creating src/Makefile";
4403 topsrcdir='"${topsrcdir}"';
4404 ( cd ./src;
4405 rm -f junk.c;
4406 sed -e '\''s/^# Generated.*//'\'' -e '\''s%/\*\*/#.*%%'\'' < Makefile.in > junk.c;
4407 eval `echo ${CPP} -I. -I${topsrcdir}/src ${CPPFLAGS} junk.c \>junk.cpp`;
4408 < junk.cpp '\
4409 ' sed -e '\''s/^#.*//'\'' '\
4410 ' -e '\''s/^[ \f\t][ \f\t]*$//'\'' '\
4411 ' -e '\''s/^ / /'\'' '\
4412 ' | sed -n -e '\''/^..*$/p'\'' '\
4413 ' > Makefile.new;
4414 chmod 444 Makefile.new;
4415 mv -f Makefile.new Makefile;
4416 rm -f junk.c junk.cpp;
4417 )'
4418 eval `echo $makefile_command`
4419 lwlib_makefile_command='echo "creating lwlib/Makefile";
4420 topsrcdir='"${topsrcdir}"';
4421 ( cd ./lwlib;
4422 rm -f junk.c;
4423 sed -e '\''s/^# Generated.*//'\'' -e '\''s%/\*\*/#.*%%'\'' < Makefile.in > junk.c;
4424 eval `echo ${CPP} -I. -I${topsrcdir}/src ${CPPFLAGS} junk.c \>junk.cpp`;
4425 < junk.cpp '\
4426 ' sed -e '\''s/^#.*//'\'' '\
4427 ' -e '\''s/^[ \f\t][ \f\t]*$//'\'' '\
4428 ' -e '\''s/^ / /'\'' '\
4429 ' | sed -n -e '\''/^..*$/p'\'' '\
4430 ' > Makefile.new;
4431 chmod 444 Makefile.new;
4432 mv -f Makefile.new Makefile;
4433 rm -f junk.c junk.cpp;
4434 )'
4435 eval `echo $lwlib_makefile_command`
4436 lib_src_makefile_command='echo "creating lib-src/Makefile";
4437 topsrcdir='"${topsrcdir}"';
4438 ( cd ./lib-src;
4439 rm -f junk.c;
4440 sed -e '\''s/^# Generated.*//'\'' -e '\''s%/\*\*/#.*%%'\'' < Makefile.in > junk.c;
4441 eval `echo ${CPP} -I. -I${topsrcdir}/src ${CPPFLAGS} junk.c \>junk.cpp`;
4442 < junk.cpp '\
4443 ' sed -e '\''s/^#.*//'\'' '\
4444 ' -e '\''s/^[ \f\t][ \f\t]*$//'\'' '\
4445 ' -e '\''s/^ / /'\'' '\
4446 ' | sed -n -e '\''/^..*$/p'\'' '\
4447 ' > Makefile.new;
4448 chmod 444 Makefile.new;
4449 mv -f Makefile.new Makefile;
4450 rm -f junk.c junk.cpp;
4451 )'
4452 eval `echo $lib_src_makefile_command`
4453 dynodump_makefile_command='echo "creating dynodump/Makefile";
4454 topsrcdir='"${topsrcdir}"';
4455 ( cd ./dynodump;
4456 rm -f junk.c;
4457 sed -e '\''s/^# Generated.*//'\'' -e '\''s%/\*\*/#.*%%'\'' < Makefile.in > junk.c;
4458 eval `echo ${CPP} -I. -I${topsrcdir}/src ${CPPFLAGS} junk.c \>junk.cpp`;
4459 < junk.cpp '\
4460 ' sed -e '\''s/^#.*//'\'' '\
4461 ' -e '\''s/^[ \f\t][ \f\t]*$//'\'' '\
4462 ' -e '\''s/^ / /'\'' '\
4463 ' | sed -n -e '\''/^..*$/p'\'' '\
4464 ' > Makefile.new;
4465 chmod 444 Makefile.new;
4466 mv -f Makefile.new Makefile;
4467 rm -f junk.c junk.cpp;
4468 )'
4469 eval `echo $dynodump_makefile_command`
4470 man_makefile_command='echo "creating man/Makefile";
4471 topsrcdir='"${topsrcdir}"';
4472 ( cd ./man;
4473 rm -f junk.c;
4474 sed -e '\''s/^# Generated.*//'\'' -e '\''s%/\*\*/#.*%%'\'' < Makefile.in > junk.c;
4475 eval `echo ${CPP} -I. -I${topsrcdir}/src ${CPPFLAGS} junk.c \>junk.cpp`;
4476 < junk.cpp '\
4477 ' sed -e '\''s/^#.*//'\'' '\
4478 ' -e '\''s/^[ \f\t][ \f\t]*$//'\'' '\
4479 ' -e '\''s/^ / /'\'' '\
4480 ' | sed -n -e '\''/^..*$/p'\'' '\
4481 ' > Makefile.new;
4482 chmod 444 Makefile.new;
4483 mv -f Makefile.new Makefile;
4484 rm -f junk.c junk.cpp;
4485 )'
4486 eval `echo $man_makefile_command`
4487 if [ "${with_energize}" = "yes" ]; then
4488 energize_makefile_command='echo "creating lwlib/energize/Makefile";
4489 topsrcdir='"${topsrcdir}"';
4490 ( cd ./lwlib/energize;
4491 rm -f junk.c;
4492 sed -e '\''s/^# Generated.*//'\'' -e '\''s%/\*\*/#.*%%'\'' < Makefile.in > junk.c;
4493 eval `echo ${CPP} -I. -I${topsrcdir}/src ${CPPFLAGS} junk.c \>junk.cpp`;
4494 < junk.cpp '\
4495 ' sed -e '\''s/^#.*//'\'' '\
4496 ' -e '\''s/^[ \f\t][ \f\t]*$//'\'' '\
4497 ' -e '\''s/^ / /'\'' '\
4498 ' | sed -n -e '\''/^..*$/p'\'' '\
4499 ' > Makefile.new;
4500 chmod 444 Makefile.new;
4501 mv -f Makefile.new Makefile;
4502 rm -f junk.c junk.cpp;
4503 )'
4504 eval `echo $energize_makefile_command`
4505 fi
4506 # AC-OUTPUT has created `config.status' already. We need to add the
4507 # above commands to re-create `src/Makefile', `lwlib/Makefile',
4508 # `lib-src/Makefile', `dynodump/Makefile', `man/Makefile', and possibly
4509 # `lwlib/energize/Makefile', and we need to insert them before the final
4510 # "exit 0" which appears at the end of `config.status'.
4511 <config.status sed -e 's/^exit 0$//' >config.new
4512 echo $makefile_command >>config.new
4513 echo $lwlib_makefile_command >>config.new
4514 echo $lib_src_makefile_command >>config.new
4515 echo $dynodump_makefile_command >>config.new
4516 echo $man_makefile_command >>config.new
4517 if [ "${with_energize}" = "yes" ]; then
4518 echo $energize_makefile_command >>config.new
4519 fi
4520 echo exit 0 >>config.new
4521 mv -f config.new config.status
4522 chmod +x config.status
4523 # Don't let the fact that we just rewrote config.status make Makefile think
4524 # that it is now newer. We have just rewritten all of the Makefiles as well.
4525 MFS="Makefile src/Makefile src/Makefile.in lib-src/Makefile lib-src/Makefile.in dynodump/Makefile dynodump/Makefile.in lwlib/Makefile lwlib/Makefile.in man/Makefile man/Makefile.in"
4526 for file in $MFS; do
4527 chmod a+w $file; touch $file; chmod 444 $file
4528 done
4529
4530 if test ! -f src/gdbinit && test -f $topsrcdir/src/gdbinit; then
4531 echo creating src/gdbinit
4532 echo source $topsrcdir/src/gdbinit > src/gdbinit
4533 fi
4534
4535 exit 0
4536
4537 # I've removed "mode: ksh" from the following. ksh mode sucks for
4538 # editing this file. (It seems that ksh mode sucks in general.
4539 # I wonder if the new 19.29 shell-script mode is better.)
4540
4541 # Local Variables:
4542 # compile-command: "autoconf"
4543 # End:
4544 ]