2 # Configuration script for GNU Emacs
3 # Copyright (C) 1992 Free Software Foundation, Inc.
5 #This file is part of GNU Emacs.
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)
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.
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.
21 # Shell script to edit files and make symlinks in preparation for
24 # Usage: configure config_name
26 # If configure succeeds, it leaves its status in config.status.
27 # If configure fails after disturbing the status quo,
28 # config.status is removed.
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,
36 # move-if-changed thinks they're different when they're not.
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.
42 progname
="`echo $0 | sed 's:^\./::'`"
44 short_usage
="Type \`${progname} -usage' for more information about options."
46 usage_message
="Usage: ${progname} CONFIGURATION [-OPTION[=VALUE] ...]
48 Set compilation and installation parameters for GNU Emacs, and report.
49 CONFIGURATION specifies the machine and operating system to build for.
51 ${progname} sparc-sun-sunos4.1
52 configures Emacs to build on a Sun Sparc machine running SunOS 4.1, and
53 ${progname} decstation
54 configures Emacs to run on a DECstation running Ultrix. See \`etc/MACHINES'.
56 --with-x, --with-x11 or --with-x10 - what window system to use;
57 default is to use X11 if present. If you don't want X, specify
59 -g, -O - Passed to the compiler. Default is -g, plus -O if using gcc.
60 --prefix=DIR - where to install Emacs's library files
61 --libdir=DIR - where to look for arch-dependent library files
62 --datadir=DIR - where to look for architecture-independent library files
63 --bindir=DIR - where to install the Emacs executable, and some friends
64 --lisppath=PATH - colon-separated list of Emacs Lisp directories
65 --lockdir=DIR - where Emacs should do its file-locking stuff
66 If successful, ${progname} leaves its status in config.status. If
67 unsuccessful after disturbing the status quo, config.status is removed."
68 # These are omitted since users should not mess with them.
69 # --gnu-malloc=[yes] or no - use the GNU memory allocator
70 # --rel-alloc=[yes] or no - use compacting allocator for buffers
71 # --lisp-float-type=[yes] or no - Support floating point in Emacs Lisp.
72 # --window-system is omitted because --with... follow the conventions.
74 if [ ! -r .
/src
/lisp.h
]; then
75 echo "${progname}: Can't find Emacs sources in \`./src'.
76 Run this config script in the top directory of the Emacs source tree." >&2
80 # The option names defined here are actually the shell variable names.
81 # They should have `_' in place of `-'.
84 with_x:with_x11:with_x10:\
86 prefix:bindir:emacsdir:datadir:lispdir:locallisppath:\
87 lisppath:buildlisppath:statedir:lockdir:libdir:mandir:infodir:\
95 have_x_windows:have_x11:have_x_menu:\
96 c_switch_site:sigtype:gnu_malloc:rel_alloc:lisp_float_type:\
100 bindir
=/usr
/local
/bin
104 # The default values for the following options are guessed at after other
105 # options have been checked and given values, so we set them to null here.
112 # Record all the arguments, so we can save them in config.status.
115 echo "Examining options."
116 while [ $# != 0 ]; do
120 # Separate the switch name from the value it's being given.
123 opt
=`echo ${arg} | sed 's:^-*\([^=]*\)=.*$:\1:'`
124 val
=`echo ${arg} | sed 's:^-*[^=]*=\(.*\)$:\1:'`
128 # If FOO is a boolean argument, -FOO is equivalent to
129 # -FOO=yes. Otherwise, the value comes from the next
130 # argument - see below.
131 opt
=`echo ${arg} | sed 's:^-*\(.*\)$:\1:'`
137 # Also change `-' in the option name to `_'.
138 opt
="`echo ${opt} | tr - _`"
140 # Make sure the argument is valid and unambiguous.
142 *:${opt}:* ) # Exact match.
145 *:${opt}*:${opt}*:* ) # Ambiguous prefix.
146 echo "\`-${opt}' is an ambiguous switch; it could be any of the following:"
147 # We can't just use tr to translate colons to newlines, since
148 # BSD sed and SYSV sed use different syntaxes for that.
149 spaced_options
=`echo ${options} | tr ':' ' '`
150 echo `(for option in ${spaced_options}; do echo $option; done) \
155 *:${opt}*:* ) # Unambigous prefix.
156 optvar
=`echo ${options} | sed 's/^.*:\('${opt}'[^:]*\):.*$/\1/'`
159 (echo "\`-${opt}' is not a valid option."
160 echo "${short_usage}") |
more
167 echo "${usage_message}" |
more
172 # If the variable is supposed to be boolean, make sure the value
173 # given is either "yes" or "no". If not, make sure some value
175 case "${boolean_opts}" in
178 y | ye |
yes ) val
=yes ;;
181 echo "The \`-${optvar}' option (\`-${opt}') is supposed to have a boolean
182 value - set it to either \`yes' or \`no'." >&2
188 if [ "${valomitted}" = "yes" ]; then
190 (echo "${progname}: You must give a value for the \`-${opt}' option, as in
192 echo "${short_usage}") |
more
200 eval "${optvar}=\"${val}\""
209 if [ "${configuration}" = "" ]; then
210 (echo "You must specify a configuration name as an argument to ${progname}."
211 echo "${short_usage}") |
more
215 # Canonicalize the configuration name.
216 echo "Checking the configuration name."
217 if configuration
=`./config.sub "${configuration}"` ; then : ; else
221 # Given the canonicalized configuration name, set machfile and opsysfile to
222 # the names of the m/*.h and s/*.h files we should use.
224 ### You would hope that you could choose an m/*.h file pretty much
225 ### based on the machine portion of the configuration name, and an s-
226 ### file based on the operating system portion. However, it turns out
227 ### that each m/*.h file is pretty manufacturer-specific - for
228 ### example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are
229 ### all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS
230 ### machines. So we basically have to have a special case for each
231 ### configuration name.
233 ### As far as handling version numbers on operating systems is
234 ### concerned, make sure things will fail in a fixable way. If
235 ### /etc/MACHINES doesn't say anything about version numbers, be
236 ### prepared to handle anything reasonably. If version numbers
237 ### matter, be sure /etc/MACHINES says something about it.
238 machine
='' opsys
='' unported
='false'
239 case "${configuration}" in
242 ## Strictly speaking, we need the version of the alliant operating
243 ## system to choose the right machine file, but currently the
244 ## configuration name doesn't tell us enough to choose the right
245 ## one; we need to give alliants their own operating system name to
246 ## do this right. When someone cares, they can help us.
248 machine
=alliant4 opsys
=bsd4-2
251 machine
=alliant-2800 opsys
=bsd4-3
256 machine
=altos opsys
=usg5-2
261 machine
=amdahl opsys
=usg5-2-2
264 ## Appallings - I mean, Apollos - running Domain
266 machine
=apollo opsysfile
=bsd4-2.h
269 ## AT&T 3b2, 3b5, 3b15, 3b20
271 machine
=att3b opsys
=usg5-2-2
274 ## AT&T 3b1 - The Mighty Unix PC!
276 machine
=7300 opsys
=usg5-2-2
281 machine
=sps7 opsys
=usg5-2
284 ## CCI 5/32, 6/32 -- see "Tahoe".
287 ## I don't know what configuration name to use for this; config.sub
288 ## doesn't seem to know anything about it. Hey, Celerity users, get
290 celerity-celerity-bsd
* )
291 machine
=celerity opsys
=bsd4-2
295 ## What operating systems does this chip run that Emacs has been
299 ## We'll use the catch-all code at the bottom to guess the
305 machine
=convex opsys
=bsd4-3
310 machine
=intel386 opsys
=usg5-3
314 cydra
*-cydrome-sysv* )
315 machine
=cydra5 opsys
=usg5-3
319 mips-dec-ultrix
[0-3].
* | mips-dec-ultrix4.0 | mips-dec-bsd4.2
)
320 machine
=pmax opsys
=bsd4-2
322 mips-dec-ultrix
* | mips-dec-bsd
* )
323 machine
=pmax opsys
=bsd4-3
326 machine
=pmax opsys
=osf1
329 ## Motorola Delta machines
330 m68
*-motorola-sysv* )
331 machine
=delta opsys
=usg5-3
333 m88k-motorola-sysv
* | m88k-motorola-m88kbcs
* )
334 machine
=delta88k opsys
=usg5-3
339 machine
=dual opsys
=usg5-2
342 machine
=dual opsys
=unipl5-2
347 machine
=elxsi opsys
=usg5-2
352 machine
=ns16000 opsys
=umax
355 ## The GEC 93 - apparently, this port isn't really finished yet.
357 ## Gould Power Node and NP1
359 machine
=gould opsys
=bsd4-2
362 machine
=gould opsys
=bsd4-3
365 machine
=gould-np1 opsys
=bsd4-3
369 xps
*-honeywell-sysv* )
370 machine
=xps100 opsys
=usg5-2
373 ## HP 9000 series 200 or 300
375 machine
=hp9000s300 opsys
=bsd4-3
377 ## HP/UX 8 doesn't run on these machines, so use HP/UX 7.
379 machine
=hp9000s300 opsys
=hpux
382 ## HP 9000 series 800, running HP/UX
384 machine
=hp9000s800 opsys
=hpux
389 machine
=orion opsys
=bsd4-2
392 machine
=orion105 opsys
=bsd4-2
397 machine
=ibmps2-aix opsys
=usg5-2-2
400 machine
=ibmps2-aix opsys
=usg5-3
403 machine
=ibmrs6000 opsys
=aix3-1
406 machine
=ibmrt opsys
=bsd4-2
409 machine
=ibmrt-aix opsys
=usg5-2-2
412 ## Integrated Solutions `Optimum V'
414 machine
=isi-ov opsys
=bsd4-2
417 machine
=isi-ov opsys
=bsd4-3
420 ## Intel 386 machines where we do care about the manufacturer
421 i
[34]86-intsys-sysv* )
422 machine
=is386 opsys
=usg5-2-2
424 ## Intel 386 machines where we don't care about the manufacturer
427 case "${configuration}" in
428 *-isc1.
* |
*-isc2.
[01]* ) opsys
=386-ix ;;
429 *-isc* ) opsys
=isc2-2
;;
430 *-esix* ) opsys
=esix
;;
431 *-xenix* ) opsys
=xenix
;;
432 ## Otherwise, we'll fall through to the generic opsys code at the bottom.
436 ## Silicon Graphics machines
437 ## Iris 2500 and Iris 2500 Turbo (aka the Iris 3030)
439 machine
=irist opsys
=iris3-5
441 m68
*-sgi-iris3.6 | m68
*-sgi-iris*)
442 machine
=irist opsys
=iris3-6
446 machine
=iris4d opsys
=irix3-3
448 mips-sgi-irix4.
* | mips-sgi-irix
* )
449 machine
=iris4d opsys
=irix4-0
454 machine
=masscomp opsys
=rtu
459 machine
=mega68 opsys
=bsd4-2
462 ## Workstations sold by MIPS
463 ## This is not necessarily all workstations using the MIPS processor -
464 ## Irises are produced by SGI, and DECstations by DEC.
466 ## etc/MACHINES lists mips.h and mips4.h as possible machine files,
467 ## and usg5-2-2 and bsd4-3 as possible OS files. The only guidance
468 ## it gives for choosing between the alternatives seems to be "Use
469 ## -machine=mips4 for RISCOS version 4; use -opsystem=bsd4-3 with
470 ## the BSD world." I'll assume that these are instructions for
471 ## handling two odd situations, and that every other situation
472 ## should use mips.h and usg5-2-2, they being listed first.
474 machine
=mips4 opsys
=usg5-2-2
477 machine
=mips opsys
=bsd4-3
480 machine
=mips opsys
=usg5-2-2
483 ## The complete machine from National Semiconductor
485 machine
=ns32000 opsys
=usg5-2
490 machine
=tower32 opsys
=usg5-2-2
493 machine
=tower32v3 opsys
=usg5-3
498 machine
=targon31 opsys
=usg5-2-2
503 machine
=nu opsys
=usg5-2
508 machine
=plexus opsys
=usg5-2
513 machine
=i386 opsys
=usg5-3
517 ## I don't really have any idea what sort of processor the Pyramid has,
518 ## so I'm assuming it is its own architecture.
519 pyramid-pyramid-bsd
* )
520 machine
=pyramid opsys
=bsd4-2
524 ns32k-sequent-bsd4.2
)
525 machine
=sequent opsys
=bsd4-2
527 ns32k-sequent-bsd4.3
)
528 machine
=sequent opsys
=bsd4-3
532 machine
=symmetry opsys
=bsd4-3
537 machine
=news opsys
=bsd4-2
540 machine
=news opsys
=bsd4-3
543 machine
=news-risc opsys
=bsd4-3
548 machine
=stride opsys
=usg5-2
552 *-sun-sunos* |
*-sun-bsd* )
553 case "${configuration}" in
554 m68
*-sunos1* ) machine
=sun1
;;
555 m68
*-sunos2* ) machine
=sun2
;;
556 m68
* ) machine
=sun3
;;
557 i
[34]86* ) machine
=sun386
;;
558 sparc
* ) machine
=sparc
;;
561 case "${configuration}" in
562 *-sunos4.0
* ) opsys
=sunos4-0
;;
563 *-sunos4* |
*-sunos ) opsys
=sunos4-1
;;
570 machine
=tad68k opsys
=usg5-3
575 machine
=tahoe opsys
=bsd4-2
578 machine
=tahoe opsys
=bsd4-3
581 ## Tandem Integrity S2
583 machine
=tandem-s2 opsys
=usg5-3
586 ## Tektronix 16000 box (6130?)
587 ns16k-tektronix-bsd
* )
588 machine
=ns16000 opsys
=bsd4-2
591 ## src/m/tek4300.h hints that this is a m68k machine.
592 m68
*-tektronix-bsd* )
593 machine
=tex4300 opsys
=bsd4-3
597 ## We seem to have lost the machine-description file titan.h!
599 machine
=titan opsys
=usg5-3
602 ## Ustation E30 (SS5E)
603 m68
*-unisys-uniplus* )
604 machine
=ustation opsystem
=unipl5-2
610 case "${configuration}" in
611 *-bsd4.1
) opsys
=bsd4-1
;;
612 *-bsd4.2 |
*-ultrix[0-3].
* |
*-ultrix4.0
) opsys
=bsd4-2
;;
613 *-bsd4.3 |
*-ultrix* ) opsys
=bsd4-3
;;
614 *-sysv[01]* ) opsys
=usg5-0
;;
615 *-sysv2* ) opsys
=usg5-2
;;
616 *-vms* ) opsys
=vms
;;
622 ns16k-whitechapel-
* )
624 ## We don't know what sort of OS runs on these; we'll let the
625 ## operating system guessing code below try.
630 machine
=wicat opsys
=usg5-2
638 ### If the code above didn't choose an operating system, just choose
639 ### an operating system based on the configuration name. You really
640 ### only want to use this when you have no idea what the right
641 ### operating system is; if you know what operating systems a machine
642 ### runs, it's cleaner to make it explicit in the case statement
644 if [ ! "${opsys}" ]; then
645 case "${configuration}" in
646 *-bsd4.
[01] ) opsys
=bsd4-1
;;
647 *-bsd4.2
) opsys
=bsd4-2
;;
648 *-bsd4.3
) opsys
=bsd4-3
;;
649 *-sysv0 ) opsys
=usg5-0
;;
650 *-sysv2 ) opsys
=usg5-2
;;
651 *-sysv2.2
) opsys
=usg5-2-2
;;
652 *-sysv3 ) opsys
=usg5-3
;;
653 *-sysv4 ) opsys
=usg5-4
;;
661 (echo "${progname}: Emacs hasn't been ported to \`${configuration}' systems."
662 echo "${progname}: Check \`etc/MACHINES' for recognized configuration names."
667 machfile
="m/${machine}.h"
668 opsysfile
="s/${opsys}.h"
670 if [ ! "${prefix}" ]; then
674 if [ ! "${emacsdir}" ]; then
675 emacsdir
="${prefix}/emacs-19.0"
678 if [ ! "${datadir}" ]; then
679 datadir
="${emacsdir}/etc"
682 if [ ! "${lispdir}" ]; then
683 lispdir
="${emacsdir}/lisp"
686 if [ ! "${locallisppath}" ]; then
687 locallisppath
="${emacsdir}/local-lisp"
690 if [ ! "${lisppath}" ]; then
691 lisppath
="${locallisppath}:${lispdir}"
694 if [ ! "${buildlisppath}" ]; then
695 buildlisppath
=..
/lisp
698 if [ ! "${statedir}" ]; then
699 statedir
="${emacsdir}"
702 if [ ! "${lockdir}" ]; then
703 lockdir
="${statedir}/lock"
706 if [ "${libdir}" = "" ]; then
707 libdir
="${emacsdir}/arch-lib"
710 if [ ! "${mandir}" ]; then
711 mandir
="/usr/man/man1"
714 if [ ! "${infodir}" ]; then
715 infodir
="${prefix}/info"
718 echo "Checking window system."
722 window_system
=${window_system}x11
725 window_system
=${window_system}none
727 case "${with_x11}" in
729 window_system
=${window_system}x11
732 case "${with_x10}" in
734 window_system
=${window_system}x10
738 case "${window_system}" in
739 "none" |
"x11" |
"x10" ) ;;
741 echo " No window system specifed. Looking for X Windows."
743 if [ -r /usr
/lib
/libX11.a
-o -d /usr
/include
/X11
]; then
748 echo "Don\'t specify the window system more than once." >&2
753 case "${window_system}" in
767 echo " Using no window system."
771 # If we're using X11, we should use the X menu package.
779 echo "Checking for GCC."
780 temppath
=`echo $PATH | sed 's/^:/.:/
785 for dir in ${temppath}; do
786 if [ -f ${dir}/gcc ]; then echo gcc; exit 0; fi
794 # With GCC, both O and g should default to yes, no matter what
803 echo " Using the system's CC."
804 # With other compilers, treat them as mutually exclusive,
805 # defaulting to debug.
816 # What is the return type of a signal handler? We run
817 # /usr/include/signal.h through cpp and grep for the declaration of
818 # the signal function. Yuck.
819 echo "Looking for return type of signal handler functions."
821 if [ -r /usr
/include
/signal.h
]; then
822 signal_h_file
=/usr
/include
/signal.h
823 elif [ -r /usr
/include
/sys
/signal.h
]; then
824 signal_h_file
=/usr
/include
/sys
/signal.h
827 if [ "${signal_h_file}" ]; then
828 sigpattern
='[ ]*([ ]*\*[ ]*signal[ ]*('
830 # We make a copy whose name ends in .c, so the compiler
831 # won't complain about having only been given a .h file.
832 tempcname
="configure.tmp.$$.c"
833 cp ${signal_h_file} ${tempcname}
834 if ${cc} -E ${tempcname} | grep "int${sigpattern}" > /dev/null; then
839 echo " Guessing that signals
return \
`${sigtype}'."
841 echo "Examining the machine- and system-dependent files to find out"
842 echo " - which libraries the lib-src programs will want, and"
843 echo " - whether the GNU malloc routines are usable."
844 tempcname="configure.tmp.$$.c"
845 echo '#include "src/'${opsysfile}'"
846 #include "src/'${machfile}'"
853 @configure@ libsrc_libs=LIBS_MACHINE LIBS_SYSTEM
855 @configure@ system_malloc=yes
857 @configure@ system_malloc=no
860 eval `${cc} -E ${tempcname} \
861 |
grep '@configure@' \
862 |
sed -e 's/^@configure@//'`
865 # Do the opsystem or machine files prohibit the use of the GNU malloc?
866 if [ "${system_malloc}" = "yes" ]; then
869 (The GNU allocators don't work with this system configuration.)"
872 if [ ! "${rel_alloc}" ]; then
873 rel_alloc=${gnu_malloc}
879 # Make the proper settings in the config file.
880 echo "Making src/config.h from src/config.h.in"
882 "yes" ) c_switch_site="${c_switch_site} -g" ;;
885 "yes" ) c_switch_site="${c_switch_site} -O" ;;
887 sed_flags="-e 's:@machine@:${machfile}:'"
888 sed_flags="${sed_flags} -e 's:@opsystem@:${opsysfile}:'"
890 for flag in `echo ${config_h_opts} |
tr ':' ' '`; do
891 # Note that SYSV `tr' doesn't handle character ranges.
892 cflagname
=`echo ${flag} \
893 | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`
894 val
=`eval echo '$'${flag}`
897 f
="-e 's:.*#define ${cflagname}.*:/\\* #define ${cflagname} \\*/:'"
900 f
="-e 's:.*#define ${cflagname}.*:#define ${cflagname}:'"
903 f
="-e 's:.*#define ${cflagname}.*:#define ${cflagname} ${val}:'"
906 sed_flags
="${sed_flags} ${f}"
909 rm -f src
/config.h.tmp
910 eval '/bin/sed '${sed_flags}' < src/config.h.in > src/config.h.tmp'
911 .
/move-if-change src
/config.h.tmp src
/config.h
912 # Remind people not to edit this.
913 chmod -w src
/config.h
915 # Modify the parameters in the top makefile.
916 echo "Producing ./Makefile from ./Makefile.in."
918 (echo "# This file is generated by \`${progname}' from \`./Makefile.in'.
919 # If you are thinking about editing it, you should seriously consider
920 # editing \`./Makefile.in' itself, or running \`${progname}' instead."
921 /bin
/sed < Makefile.
in \
923 -e 's;^\(prefix=\).*$;\1'"${prefix};" \
924 -e 's;^\(bindir=\).*$;\1'"${bindir};" \
925 -e 's;^\(emacsdir=\).*$;\1'"${emacsdir};" \
926 -e 's;^\(datadir=\).*$;\1'"${datadir};" \
927 -e 's;^\(lispdir=\).*$;\1'"${lispdir};" \
928 -e 's;^\(locallisppath=\).*$;\1'"${locallisppath};" \
929 -e 's;^\(lisppath=\).*$;\1'"${lisppath};" \
930 -e 's;^\(buildlisppath=\).*$;\1'"${buildlisppath};" \
931 -e 's;^\(statedir=\).*$;\1'"${statedir};" \
932 -e 's;^\(lockdir=\).*$;\1'"${lockdir};" \
933 -e 's;^\(libdir=\).*$;\1'"${libdir};" \
934 -e 's;^\(mandir=\).*$;\1'"${mandir};" \
935 -e 's;^\(infodir=\).*$;\1'"${infodir};" \
937 .
/move-if-change Makefile.tmp Makefile
938 # Remind people not to edit this.
941 # Modify the parameters in the `build-install' script.
942 echo "Producing ./build-install from ./build-install.in."
943 rm -f .
/build-install.tmp
944 (echo "# This file is generated by \`${progname}' from \`./build-install.in'.
945 # If you are thinking about editing it, you should seriously consider
946 # editing \`./build-install.in' itself, or running \`${progname}' instead."
947 /bin
/sed < build-install.
in \
948 -e 's;^\(prefix=\).*$;\1'"${prefix};" \
949 -e 's;^\(bindir=\).*$;\1'"${bindir};" \
950 -e 's;^\(lisppath=\).*$;\1'"${lisppath};" \
951 -e 's;^\(datadir=\).*$;\1'"${datadir};" \
952 -e 's;^\(lockdir=\).*$;\1'"${lockdir};" \
953 -e 's;^\(libdir=\).*$;\1'"${libdir};") > .
/build-install.tmp
954 .
/move-if-change build-install.tmp build-install
955 # Remind people not to edit this.
956 chmod -w build-install
957 chmod +x build-install
959 # Modify the parameters in the src makefile.
960 echo "Producing src/Makefile from src/Makefile.in."
961 rm -f src
/Makefile.tmp
962 (echo "# This file is generated by \`${progname}' from \`Makefile.in'.
963 # If you are thinking about editing it, you should seriously consider
964 # editing \`Makefile.in' itself, or running \`${progname}' instead."
965 /bin
/sed < src
/Makefile.
in \
967 -e 's;^\(CC[ ]*=\).*$;\1'"${cc};") > src
/Makefile.tmp
968 .
/move-if-change src
/Makefile.tmp src
/Makefile
969 # Remind people not to edit this.
970 chmod -w src
/Makefile
972 # Modify the parameters in the lib-src makefile.
973 echo "Producing lib-src/Makefile from lib-src/Makefile.in."
974 rm -f lib-src
/Makefile.tmp
975 (echo "# This file is generated by \`${progname}' from \`Makefile.in'.
976 # If you are thinking about editing it, you should seriously consider
977 # editing \`Makefile.in' itself, or running \`${progname}' instead."
978 /bin
/sed < lib-src
/Makefile.
in \
980 -e 's;^\(CONFIG_CFLAGS=\).*$;\1'"${c_switch_site};" \
981 -e 's;^\(LOADLIBES=\).*$;\1'"${libsrc_libs};" \
982 -e 's;^\(CC=\).*$;\1'"${cc};") > lib-src
/Makefile.tmp
983 .
/move-if-change lib-src
/Makefile.tmp lib-src
/Makefile
984 # Remind people not to edit this.
985 chmod -w lib-src
/Makefile
988 # Create a verbal description of what we have done.
989 message
="Configured for \`${configuration}'.
991 The following values have been set in ./Makefile and ./build-install:
992 \`make install' or \`build-install' will place executables in
994 Emacs's lisp search path will be
996 Emacs will look for its architecture-independent data in
998 Emacs will look for its utility programs and other architecture-
1001 Emacs will keep track of file-locking in
1004 The following values have been set in src/config.h:
1005 What operating system and machine description files should Emacs use?
1006 \`${opsysfile}' and \`${machfile}'
1007 Should Emacs use the GNU version of malloc? ${gnu_malloc}${gnu_malloc_reason}
1008 Should Emacs use the relocating allocator for buffers? ${rel_alloc}
1009 Should Emacs support a floating point data type? ${lisp_float_type}
1010 What window system should Emacs use? ${window_system}
1011 What compiler should emacs be built with? ${cc}
1012 Should the compilation use \`-g' and/or \`-O'? ${c_switch_site- neither}"
1014 # Document the damage we have done by writing config.status.
1016 echo '#!/bin/sh' > config.status
1018 echo "# This file is generated by \`${progname}.'
1019 # If you are thinking about editing it, you should seriously consider
1020 # running \`${progname}' instead.
1022 echo "${message}" |
sed -e 's/^/# /' >> config.status
1023 echo "'${progname}' ${arguments} "'$@' >> config.status
1024 # Remind people not to edit this.
1025 chmod -w config.status
1026 chmod +x config.status
1028 # Print the description.