* subr.el (lambda): Don't use backquotes in lambda's definition.
[bpt/emacs.git] / configure1.in
CommitLineData
ca1d1d23
JB
1#!/bin/sh
2# Configuration script for GNU Emacs
3# Copyright (C) 1992 Free Software Foundation, Inc.
4
5#This file is part of GNU Emacs.
6
7#GNU Emacs is free software; you can redistribute it and/or modify
8#it under the terms of the GNU General Public License as published by
9#the Free Software Foundation; either version 1, or (at your option)
10#any later version.
11
12#GNU Emacs is distributed in the hope that it will be useful,
13#but WITHOUT ANY WARRANTY; without even the implied warranty of
14#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15#GNU General Public License for more details.
16
17#You should have received a copy of the GNU General Public License
18#along with GNU Emacs; see the file COPYING. If not, write to
19#the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
20
21# Shell script to edit files and make symlinks in preparation for
22# compiling Emacs.
46947372 23#
ca1d1d23
JB
24# Usage: configure machine
25#
26# If configure succeeds, it leaves its status in config.status.
46947372 27# If configure fails after disturbing the status quo,
ca1d1d23
JB
28# config.status is removed.
29#
30
b7cceaf1
JB
31# Remove any leading "." elements from the path name. If we don't
32# remove them, then another "./" will be prepended to the file name
33# each time we use config.status, and the program name will get larger
34# and larger. This wouldn't be a problem, except that since progname
35# gets recorded in all the Makefiles this script produces,
e065a56e 36# move-if-changed thinks they're different when they're not.
b7cceaf1
JB
37#
38# It would be nice if we could put the ./ in a \( \) group and then
39# apply the * operator to that, so we remove as many leading ./././'s
40# as are present, but some seds (like Ultrix's sed) don't allow you to
41# apply * to a \( \) group. Bleah.
42progname="`echo $0 | sed 's:^\./::'`"
ca1d1d23
JB
43
44short_usage="Type \`${progname} -usage' for more information about options."
45
46usage_message="Usage: ${progname} MACHINENAME [-OPTION[=VALUE] ...]
47Set compilation and installation parameters for GNU Emacs, and report.
20d9a863
JB
48MACHINENAME is the machine to build for. For example:
49 ${progname} decstation
50configures Emacs to run on a DECstation running Ultrix. See \`etc/MACHINES'.
ca1d1d23 51Options are:
20d9a863
JB
52 --with-x, --with-x11 or --with-x10 - what window system to use;
53 default is to use X11 if present. If you don't want X, specify
54 \`--with-x=no'.
2c44309a 55 -g, -O - Passed to the compiler. Default is -g, plus -O if using gcc.
20d9a863 56 --prefix=DIR - where to install Emacs's library files
2c44309a
RS
57 --libdir=DIR - where to look for arch-dependent library files
58 --datadir=DIR - where to look for architecture-independent library files
59 --bindir=DIR - where to install the Emacs executable, and some friends
60 --lisppath=PATH - colon-separated list of Emacs Lisp directories
61 --lockdir=DIR - where Emacs should do its file-locking stuff
ca1d1d23
JB
62If successful, ${progname} leaves its status in config.status. If
63unsuccessful after disturbing the status quo, config.status is removed."
2c44309a
RS
64# These are omitted since users should not mess with them.
65# --gnu-malloc=[yes] or no - use the GNU memory allocator
66# --rel-alloc=[yes] or no - use compacting allocator for buffers
67# --lisp-float-type=[yes] or no - Support floating point in Emacs Lisp.
68# --window-system is omitted because --with... follow the conventions.
ca1d1d23
JB
69
70if [ ! -r ./src/lisp.h ]; then
71 echo "${progname}: Can't find Emacs sources in \`./src'.
e5d77022 72Run this config script in the top directory of the Emacs source tree." >&2
ca1d1d23
JB
73 exit 1
74fi
75
2c44309a
RS
76# The option names defined here are actually the shell variable names.
77# They should have `_' in place of `-'.
ca1d1d23
JB
78options=":\
79usage:help:\
20d9a863
JB
80with_x:with_x11:with_x10:\
81g:O:\
4746118a
JB
82prefix:bindir:emacsdir:datadir:lispdir:locallisppath:\
83lisppath:buildlisppath:statedir:lockdir:libdir:mandir:infodir:\
ca1d1d23
JB
84"
85
86boolean_opts=":\
20d9a863 87g:O:with_x:with_x10:\
ca1d1d23
JB
88"
89
90config_h_opts=":\
20d9a863 91have_x_windows:have_x11:have_x_menu:\
411fca73 92c_switch_site:sigtype:gnu_malloc:rel_alloc:lisp_float_type:\
ca1d1d23
JB
93"
94
4746118a 95prefix=
8c0e7b73 96bindir=/usr/local/bin
ca1d1d23
JB
97gnu_malloc=yes
98lisp_float_type=yes
99
100# The default values for the following options are guessed at after other
101# options have been checked and given values, so we set them to null here.
102lisppath=""
103datadir=""
104libdir=""
105lockdir=""
106window_system=""
ca1d1d23 107
e065a56e 108# Record all the arguments, so we can save them in config.status.
20d9a863 109arguments="$@"
e065a56e 110
46947372 111echo "Examining options."
4746118a
JB
112while [ $# != 0 ]; do
113 arg="$1"
ca1d1d23
JB
114 case "${arg}" in
115 -*)
116 # Separate the switch name from the value it's being given.
117 case "${arg}" in
2c44309a 118 -*=*)
20d9a863 119 opt=`echo ${arg} | sed 's:^-*\([^=]*\)=.*$:\1:'`
2c44309a 120 val=`echo ${arg} | sed 's:^-*[^=]*=\(.*\)$:\1:'`
ca1d1d23
JB
121 valomitted=no
122 ;;
2c44309a 123 -*)
4746118a
JB
124 # If FOO is a boolean argument, -FOO is equivalent to
125 # -FOO=yes. Otherwise, the value comes from the next
126 # argument - see below.
20d9a863 127 opt=`echo ${arg} | sed 's:^-*\(.*\)$:\1:'`
ca1d1d23
JB
128 val="yes"
129 valomitted=yes
130 ;;
131 esac
132
20d9a863
JB
133 # Also change `-' in the option name to `_'.
134 opt="`echo ${opt} | tr - _`"
135
ca1d1d23
JB
136 # Make sure the argument is valid and unambiguous.
137 case ${options} in
138 *:${opt}:* ) # Exact match.
139 optvar=${opt}
140 ;;
141 *:${opt}*:${opt}*:* ) # Ambiguous prefix.
142 echo "\`-${opt}' is an ambiguous switch; it could be any of the following:"
e5d77022
JB
143 # We can't just use tr to translate colons to newlines, since
144 # BSD sed and SYSV sed use different syntaxes for that.
145 spaced_options=`echo ${options} | tr ':' ' '`
146 echo `(for option in ${spaced_options}; do echo $option; done) \
147 | grep "^${opt}"`
ca1d1d23
JB
148 echo ${short_usage}
149 exit 1
150 ;;
151 *:${opt}*:* ) # Unambigous prefix.
152 optvar=`echo ${options} | sed 's/^.*:\('${opt}'[^:]*\):.*$/\1/'`
153 ;;
154 * )
155 (echo "\`-${opt}' is not a valid option."
156 echo "${short_usage}") | more
157 exit 1
158 ;;
159 esac
160
161 case "${optvar}" in
162 usage | help)
163 echo "${usage_message}" | more
164 exit 1
165 ;;
166 esac
167
168 # If the variable is supposed to be boolean, make sure the value
169 # given is either "yes" or "no". If not, make sure some value
170 # was given.
171 case "${boolean_opts}" in
172 *:${optvar}:* )
173 case "${val}" in
174 y | ye | yes ) val=yes ;;
175 n | no ) val=no ;;
176 * )
177 echo "The \`-${optvar}' option (\`-${opt}') is supposed to have a boolean
e5d77022 178 value - set it to either \`yes' or \`no'." >&2
ca1d1d23
JB
179 exit 1
180 ;;
181 esac
182 ;;
183 *)
184 if [ "${valomitted}" = "yes" ]; then
4746118a
JB
185 if [ $# = 1 ]; then
186 (echo "${progname}: You must give a value for the \`-${opt}' option, as in
187 \`-${opt}=FOO'."
188 echo "${short_usage}") | more
189 exit 1
190 fi
191 shift; val="$1"
ca1d1d23
JB
192 fi
193 ;;
194 esac
195
196 eval "${optvar}=\"${val}\""
197 ;;
198 *)
199 machine=${arg}
200 ;;
201 esac
4746118a 202 shift
ca1d1d23
JB
203done
204
205if [ "${machine}" = "" ]; then
206 (echo "You must specify a machine name as an argument to ${progname}."
207 echo "${short_usage}") | more
208 exit 1
209fi
210
20d9a863 211# Canonicalize the machine name.
46947372 212echo "Checking the machine."
20d9a863
JB
213machine=`./config.sub "${machine}"`
214
215# Given the canonicalized machine name, set machfile and opsysfile to
216# the names of the m/*.h and s/*.h files we should use.
20d9a863
JB
217case "${machine}" in
218
219 ## Alliant machines.
220 ## Strictly speaking, we need the version of the alliant operating
221 ## system to choose the right machine file, but currently the
222 ## configuration name doesn't tell us enough to choose the right
223 ## one; we need to give alliants their own operating system name to
224 ## do this right. When someone cares, they can help us.
225 fx80-alliant-* )
226 machfile=m/alliant4.h opsysfile=s/bsd4-2.h
227 ;;
228 i860-alliant-* )
229 machfile=m/alliant-2800.h opsysfile=s/bsd4-3.h
230 ;;
ca1d1d23 231
20d9a863
JB
232 ## DECstations.
233 mips-*-ultrix* )
234 machfile=m/pmax.h opsysfile=s/bsd4-3.h
235 ;;
236 mips-*-osf* )
237 machfile=m/pmax.h opsysfile=s/osf1.h
238 ;;
ca1d1d23 239
20d9a863
JB
240 ## HP 9000 series 200 or 300.
241 m68*-hp-bsd* )
242 machfile=m/hp9000s300.h opsysfile=s/bsd4-3.h
243 ;;
244 ## If it's running an unspecified version of HP/UX, assume version 8.
245 m68*-hp-hpux7 )
246 machfile=m/hp9000s300.h opsysfile=s/hpux.h
247 ;;
248 m68*-hp-hpux* )
249 machfile=m/hp9000s300.h opsysfile=s/hpux8.h
250 ;;
ca1d1d23 251
20d9a863
JB
252 ## HP 9000 series 800, running HP/UX.
253 hppa1.0-hp-hpux* )
254 machfile=m/hp9000s800.h opsysfile=s/hpux.h
255 ;;
256
257 ## Suns.
258 *-sun-sunos* | *-sun-bsd* )
259 case "${machine}" in
260 m68*-sunos1* ) machfile=m/sun1.h ;;
261 m68*-sunos2* ) machfile=m/sun2.h ;;
262 m68* ) machfile=m/sun3.h ;;
263 i[34]86* ) machfile=m/sun386.h ;;
264 * ) machfile=m/sparc.h ;;
265 esac
266 case "${machine}" in
267 *-sunos4.0* ) opsysfile=s/sunos4-0.h ;;
268 *-sunos4* | *-sunos ) opsysfile=s/sunos4-1.h ;;
269 * ) opsysfile=s/bsd4-2.h ;;
270 esac
271 ;;
272
273 * )
274 (echo "${progname}: Emacs hasn't been ported to the machine \`${machine}'."
275 echo "${progname}: Check \`etc/MACHINES' for recognized machine names.") \
276 >&2
277 ;;
278
279esac
ca1d1d23 280
4746118a
JB
281if [ ! "${prefix}" ]; then
282 prefix="/usr/local"
283fi
284
285if [ ! "${emacsdir}" ]; then
286 emacsdir="${prefix}/emacs-19.0"
287fi
288
289if [ ! "${datadir}" ]; then
290 datadir="${emacsdir}/etc"
291fi
292
293if [ ! "${lispdir}" ]; then
294 lispdir="${emacsdir}/lisp"
295fi
296
297if [ ! "${locallisppath}" ]; then
298 locallisppath="${emacsdir}/local-lisp"
299fi
300
301if [ ! "${lisppath}" ]; then
302 lisppath="${locallisppath}:${lispdir}"
303fi
304
305if [ ! "${buildlisppath}" ]; then
306 buildlisppath=../lisp
307fi
308
309if [ ! "${statedir}" ]; then
310 statedir="${emacsdir}"
311fi
312
313if [ ! "${lockdir}" ]; then
314 lockdir="${statedir}/lock"
315fi
316
317if [ "${libdir}" = "" ]; then
318 libdir="${emacsdir}/arch-lib"
319fi
320
321if [ ! "${mandir}" ]; then
322 mandir="/usr/man/man1"
323fi
324
325if [ ! "${infodir}" ]; then
326 infodir="${prefix}/info"
ca1d1d23
JB
327fi
328
46947372 329echo "Checking window system."
20d9a863
JB
330indow_system=''
331case "${with_x}" in
2c44309a
RS
332 yes )
333 window_system=${window_system}x11
20d9a863
JB
334 ;;
335 no )
336 window_system=${window_system}none
2c44309a 337esac
20d9a863 338case "${with_x11}" in
2c44309a
RS
339 yes )
340 window_system=${window_system}x11
20d9a863 341 ;;
2c44309a
RS
342esac
343case "${with_x10}" in
344 yes )
345 window_system=${window_system}x10
20d9a863 346 ;;
2c44309a
RS
347esac
348
ca1d1d23
JB
349case "${window_system}" in
350 "none" | "x11" | "x10" ) ;;
ca1d1d23 351 "" )
46947372 352 echo " No window system specifed. Looking for X Windows."
ca1d1d23 353 window_system=none
9e2b097b 354 if [ -r /usr/lib/libX11.a -o -d /usr/include/X11 ]; then
ca1d1d23 355 window_system=x11
46947372 356 fi
ca1d1d23
JB
357 ;;
358 * )
2c44309a 359 echo "Don\'t specify the window system more than once." >&2
ca1d1d23
JB
360 exit 1
361 ;;
362esac
363
364case "${window_system}" in
365 x11 )
366 have_x_windows=yes
367 have_x11=yes
368 ;;
369 x10 )
370 have_x_windows=yes
371 have_x11=no
372 ;;
373 none )
374 have_x_windows=no
375 have_x11=no
376 ;;
377esac
378
20d9a863
JB
379# If we're using X11, we should use the X menu package.
380have_x_menu=no
381case ${have_x11} in
382 yes )
383 have_x_menu=yes
ca1d1d23
JB
384 ;;
385esac
386
20d9a863
JB
387echo "Checking for GCC."
388temppath=`echo $PATH | sed 's/^:/.:/
389 s/::/:.:/g
390 s/:$/:./
391 s/:/ /g'`
392cc=`(
393 for dir in ${temppath}; do
394 if [ -f ${dir}/gcc ]; then echo gcc; exit 0; fi
395 done
396 echo cc
397)`
398
4746118a
JB
399case "${cc}" in
400 "gcc" )
401 # With GCC, both O and g should default to yes, no matter what
402 # the other is.
403 case "${O},${g}" in
404 , ) O=yes; g=yes ;;
405 ,* ) O=yes; ;;
406 *, ) g=yes ;;
407 esac
408 ;;
409 "*" )
410 # With other compilers, treat them as mutually exclusive,
411 # defaulting to debug.
412 case "${O},${g}" in
413 , ) O=no ; g=yes ;;
414 ,no ) O=yes; ;;
415 ,yes ) O=no ; ;;
416 no, ) g=yes ;;
417 yes, ) g=no ;;
418 esac
419 ;;
ca1d1d23
JB
420esac
421
4746118a
JB
422# What is the return type of a signal handler? We run
423# /usr/include/signal.h through cpp and grep for the declaration of
424# the signal function. Yuck.
425echo "Looking for return type of signal handler functions."
426signal_h_file=''
427if [ -r /usr/include/signal.h ]; then
428 signal_h_file=/usr/include/signal.h
429elif [ -r /usr/include/sys/signal.h ]; then
430 signal_h_file=/usr/include/sys/signal.h
431fi
432sigtype=void
433if [ "${signal_h_file}" ]; then
434 sigpattern='[ ]*([ ]*\*[ ]*signal[ ]*('
435
ef15f270 436 # We make a copy whose name ends in .c, so the compiler
4746118a
JB
437 # won't complain about having only been given a .h file.
438 tempcname="configure.tmp.$$.c"
ef15f270 439 cp ${signal_h_file} ${tempcname}
4746118a
JB
440 if ${cc} -E ${tempcname} | grep "int${sigpattern}" > /dev/null; then
441 sigtype=int
442 fi
ef15f270 443 rm -f ${tempcname}
4746118a
JB
444fi
445
46947372
JB
446echo "Examining the machine- and system-dependent files to find out"
447echo " - which libraries the lib-src programs will want, and"
448echo " - whether the GNU malloc routines are usable."
449tempcname="configure.tmp.$$.c"
b7cceaf1
JB
450echo '#include "src/'${opsysfile}'"
451#include "src/'${machfile}'"
ca1d1d23
JB
452#ifndef LIBS_MACHINE
453#define LIBS_MACHINE
454#endif
455#ifndef LIBS_SYSTEM
456#define LIBS_SYSTEM
457#endif
4746118a 458@configure@ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM
46947372 459#ifdef SYSTEM_MALLOC
4746118a 460@configure@ system_malloc=yes
46947372 461#else
4746118a 462@configure@ system_malloc=no
46947372
JB
463#endif
464' > ${tempcname}
4746118a
JB
465eval `${cc} -E ${tempcname} \
466 | grep '@configure@' \
467 | sed -e 's/^@configure@//'`
46947372
JB
468rm ${tempcname}
469
470# Do the opsystem or machine files prohibit the use of the GNU malloc?
471if [ "${system_malloc}" = "yes" ]; then
472 gnu_malloc=no
473 gnu_malloc_reason="
474 (The GNU allocators don't work with this machine and/or operating system.)"
475fi
476
477if [ ! "${rel_alloc}" ]; then
478 rel_alloc=${gnu_malloc}
479fi
ca1d1d23
JB
480
481rm -f config.status
482set -e
483
484# Make the proper settings in the config file.
46947372 485echo "Making src/config.h from src/config.h.in"
ca1d1d23
JB
486case "${g}" in
487 "yes" ) c_switch_site="${c_switch_site} -g" ;;
488esac
489case "${O}" in
490 "yes" ) c_switch_site="${c_switch_site} -O" ;;
491esac
492sed_flags="-e 's:@machine@:${machfile}:'"
493sed_flags="${sed_flags} -e 's:@opsystem@:${opsysfile}:'"
f6766fff 494
ca1d1d23 495for flag in `echo ${config_h_opts} | tr ':' ' '`; do
e5d77022 496 # Note that SYSV `tr' doesn't handle character ranges.
4746118a
JB
497 cflagname=`echo ${flag} \
498 | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`
ca1d1d23
JB
499 val=`eval echo '$'${flag}`
500 case ${val} in
501 no | "")
502 f="-e 's:.*#define ${cflagname}.*:/\\* #define ${cflagname} \\*/:'"
503 ;;
504 yes)
505 f="-e 's:.*#define ${cflagname}.*:#define ${cflagname}:'"
506 ;;
507 *)
508 f="-e 's:.*#define ${cflagname}.*:#define ${cflagname} ${val}:'"
509 ;;
510 esac
511 sed_flags="${sed_flags} ${f}"
512done
f6766fff 513
a88b5c25 514rm -f src/config.h.tmp
e065a56e
JB
515eval '/bin/sed '${sed_flags}' < src/config.h.in > src/config.h.tmp'
516./move-if-change src/config.h.tmp src/config.h
46947372
JB
517# Remind people not to edit this.
518chmod -w src/config.h
ca1d1d23
JB
519
520# Modify the parameters in the top makefile.
46947372 521echo "Producing ./Makefile from ./Makefile.in."
a88b5c25 522rm -f Makefile.tmp
46947372
JB
523(echo "# This file is generated by \`${progname}' from \`./Makefile.in'.
524# If you are thinking about editing it, you should seriously consider
525# editing \`./Makefile.in' itself, or running \`${progname}' instead."
526 /bin/sed < Makefile.in \
527 -e '/^# DIST: /d' \
4746118a 528 -e 's;^\(prefix=\).*$;\1'"${prefix};" \
46947372 529 -e 's;^\(bindir=\).*$;\1'"${bindir};" \
4746118a 530 -e 's;^\(emacsdir=\).*$;\1'"${emacsdir};" \
46947372 531 -e 's;^\(datadir=\).*$;\1'"${datadir};" \
4746118a
JB
532 -e 's;^\(lispdir=\).*$;\1'"${lispdir};" \
533 -e 's;^\(locallisppath=\).*$;\1'"${locallisppath};" \
534 -e 's;^\(lisppath=\).*$;\1'"${lisppath};" \
535 -e 's;^\(buildlisppath=\).*$;\1'"${buildlisppath};" \
536 -e 's;^\(statedir=\).*$;\1'"${statedir};" \
46947372 537 -e 's;^\(lockdir=\).*$;\1'"${lockdir};" \
4746118a
JB
538 -e 's;^\(libdir=\).*$;\1'"${libdir};" \
539 -e 's;^\(mandir=\).*$;\1'"${mandir};" \
540 -e 's;^\(infodir=\).*$;\1'"${infodir};" \
e065a56e
JB
541) > ./Makefile.tmp
542./move-if-change Makefile.tmp Makefile
46947372
JB
543# Remind people not to edit this.
544chmod -w ./Makefile
ca1d1d23
JB
545
546# Modify the parameters in the `build-install' script.
46947372 547echo "Producing ./build-install from ./build-install.in."
a88b5c25 548rm -f ./build-install.tmp
46947372
JB
549(echo "# This file is generated by \`${progname}' from \`./build-install.in'.
550# If you are thinking about editing it, you should seriously consider
551# editing \`./build-install.in' itself, or running \`${progname}' instead."
552 /bin/sed < build-install.in \
4746118a
JB
553 -e 's;^\(prefix=\).*$;\1'"${prefix};" \
554 -e 's;^\(bindir=\).*$;\1'"${bindir};" \
555 -e 's;^\(lisppath=\).*$;\1'"${lisppath};" \
556 -e 's;^\(datadir=\).*$;\1'"${datadir};" \
557 -e 's;^\(lockdir=\).*$;\1'"${lockdir};" \
e065a56e
JB
558 -e 's;^\(libdir=\).*$;\1'"${libdir};") > ./build-install.tmp
559./move-if-change build-install.tmp build-install
46947372
JB
560# Remind people not to edit this.
561chmod -w build-install
562chmod +x build-install
ca1d1d23
JB
563
564# Modify the parameters in the src makefile.
46947372 565echo "Producing src/Makefile from src/Makefile.in."
a88b5c25 566rm -f src/Makefile.tmp
46947372
JB
567(echo "# This file is generated by \`${progname}' from \`Makefile.in'.
568# If you are thinking about editing it, you should seriously consider
569# editing \`Makefile.in' itself, or running \`${progname}' instead."
570 /bin/sed < src/Makefile.in \
b7cceaf1 571 -e '/^# DIST: /d' \
e065a56e
JB
572 -e 's;^\(CC[ ]*=\).*$;\1'"${cc};") > src/Makefile.tmp
573./move-if-change src/Makefile.tmp src/Makefile
46947372
JB
574# Remind people not to edit this.
575chmod -w src/Makefile
ca1d1d23
JB
576
577# Modify the parameters in the lib-src makefile.
46947372 578echo "Producing lib-src/Makefile from lib-src/Makefile.in."
a88b5c25 579rm -f lib-src/Makefile.tmp
46947372
JB
580(echo "# This file is generated by \`${progname}' from \`Makefile.in'.
581# If you are thinking about editing it, you should seriously consider
582# editing \`Makefile.in' itself, or running \`${progname}' instead."
583 /bin/sed < lib-src/Makefile.in \
b7cceaf1 584 -e '/^# DIST: /d' \
3a2308a0 585 -e 's;^\(CONFIG_CFLAGS=\).*$;\1'"${c_switch_site};" \
46947372 586 -e 's;^\(LOADLIBES=\).*$;\1'"${libsrc_libs};" \
e065a56e
JB
587 -e 's;^\(CC=\).*$;\1'"${cc};") > lib-src/Makefile.tmp
588./move-if-change lib-src/Makefile.tmp lib-src/Makefile
46947372
JB
589# Remind people not to edit this.
590chmod -w lib-src/Makefile
591
ca1d1d23 592
8c0e7b73 593# Create a verbal description of what we have done.
20d9a863 594message="Configured for \`${machine}'.
e5d77022 595The following values have been set in ./Makefile and ./build-install:
20d9a863 596 \`make install' or \`build-install' will place executables in
e5d77022
JB
597 ${bindir}.
598 Emacs's lisp search path will be
599 \`${lisppath}'.
600 Emacs will look for its architecture-independent data in
601 ${datadir}.
602 Emacs will look for its utility programs and other architecture-
603 dependent data in
604 ${libdir}.
605 Emacs will keep track of file-locking in
606 ${lockdir}.
607The following values have been set in src/config.h:
e5d77022
JB
608 Should Emacs use the GNU version of malloc? ${gnu_malloc}${gnu_malloc_reason}
609 Should Emacs use the relocating allocator for buffers? ${rel_alloc}
2c44309a 610 Should Emacs support a floating point data type? ${lisp_float_type}
e5d77022 611 What window system should Emacs use? ${window_system}
e5d77022
JB
612 What compiler should emacs be built with? ${cc}
613 Should the compilation use \`-g' and/or \`-O'? ${c_switch_site- neither}"
8c0e7b73
JB
614
615# Document the damage we have done by writing config.status.
616
617echo '#!/bin/sh' > config.status
618
619echo "# This file is generated by \`${progname}.'
620# If you are thinking about editing it, you should seriously consider
621# running \`${progname}' instead.
622" >> config.status
e5d77022 623echo "${message}" | sed -e 's/^/# /' >> config.status
ef15f270 624echo "'${progname}' ${arguments} "'$@' >> config.status
46947372
JB
625# Remind people not to edit this.
626chmod -w config.status
8c0e7b73
JB
627chmod +x config.status
628
629# Print the description.
ca1d1d23 630echo
e5d77022 631echo "${message}"
ca1d1d23
JB
632
633exit 0