Mercurial > emacs
annotate config.bat @ 106570:d673a0a0ee2f
Comment.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Mon, 14 Dec 2009 06:39:39 +0000 |
parents | dc1b2f500b63 |
children | 1d1d5d9bd884 |
rev | line source |
---|---|
5484 | 1 @echo off |
2 rem ---------------------------------------------------------------------- | |
3 rem Configuration script for MSDOS | |
74439 | 4 rem Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003 |
100959 | 5 rem 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
6 |
5484 | 7 rem This file is part of GNU Emacs. |
8 | |
94719
1a762a842f80
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
9 rem GNU Emacs is free software: you can redistribute it and/or modify |
5484 | 10 rem it under the terms of the GNU General Public License as published by |
94719
1a762a842f80
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
11 rem the Free Software Foundation, either version 3 of the License, or |
1a762a842f80
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
12 rem (at your option) any later version. |
5484 | 13 |
14 rem GNU Emacs is distributed in the hope that it will be useful, | |
15 rem but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 rem GNU General Public License for more details. | |
18 | |
19 rem You should have received a copy of the GNU General Public License | |
94723
41ca0b01da7d
Fix last change: don't use < and > in "rem" lines, they are interpreted
Eli Zaretskii <eliz@gnu.org>
parents:
94719
diff
changeset
|
20 rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. |
94719
1a762a842f80
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
21 |
5484 | 22 rem ---------------------------------------------------------------------- |
23 rem YOU'LL NEED THE FOLLOWING UTILITIES TO MAKE EMACS: | |
24 rem | |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
25 rem + msdos version 3 or better. |
56567
9e48278ca4fb
Update URLs in the comments.
Eli Zaretskii <eliz@gnu.org>
parents:
54702
diff
changeset
|
26 rem + DJGPP version 1.12maint1 or later (version 2.03 or later recommended). |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
27 rem + make utility that allows breaking of the 128 chars limit on |
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
28 rem command lines. ndmake (as of version 4.5) won't work due to a |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
29 rem line length limit. The make that comes with DJGPP does work (and is |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
30 rem recommended). |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
31 rem + rm, mv, and cp (from GNU file utilities). |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
32 rem + sed (you can use the port that comes with DJGPP). |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
33 rem |
56567
9e48278ca4fb
Update URLs in the comments.
Eli Zaretskii <eliz@gnu.org>
parents:
54702
diff
changeset
|
34 rem You should be able to get all the above utilities from the DJGPP FTP |
9e48278ca4fb
Update URLs in the comments.
Eli Zaretskii <eliz@gnu.org>
parents:
54702
diff
changeset
|
35 rem site, ftp.delorie.com, in the directory "pub/djgpp/current/v2gnu". |
5484 | 36 rem ---------------------------------------------------------------------- |
9570 | 37 set X11= |
38 set nodebug= | |
15007
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
39 set djgpp_ver= |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
40 set sys_malloc= |
21582
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
41 if "%1" == "" goto usage |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
42 rem ---------------------------------------------------------------------- |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
43 rem See if their environment is large enough. We need 28 bytes. |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
44 set $foo$=789012345678901234567 |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
45 if not "%$foo$%" == "789012345678901234567" goto SmallEnv |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
46 set $foo$= |
9570 | 47 :again |
48 if "%1" == "" goto usage | |
49 if "%1" == "--with-x" goto withx | |
50 if "%1" == "--no-debug" goto nodebug | |
5484 | 51 if "%1" == "msdos" goto msdos |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
52 if "%1" == "--with-system-malloc" goto sysmalloc |
5484 | 53 :usage |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
54 echo Usage: config [--no-debug] [--with-system-malloc] [--with-x] msdos |
9570 | 55 echo [Read the script before you run it.] |
5484 | 56 goto end |
57 rem ---------------------------------------------------------------------- | |
9570 | 58 :withx |
59 set X11=Y | |
60 shift | |
61 goto again | |
62 rem ---------------------------------------------------------------------- | |
63 :nodebug | |
64 set nodebug=Y | |
65 shift | |
66 goto again | |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
67 rem ---------------------------------------------------------------------- |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
68 :sysmalloc |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
69 set sys_malloc=Y |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
70 shift |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
71 goto again |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
72 rem ---------------------------------------------------------------------- |
5484 | 73 :msdos |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
74 Echo Checking whether 'sed' is available... |
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
75 sed -e "w junk.$$$" <Nul |
9570 | 76 If Exist junk.$$$ Goto sedOk |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
77 Echo To configure 'Emacs' you need to have 'sed'! |
9570 | 78 Goto End |
79 :sedOk | |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
80 Echo Checking whether 'rm' is available... |
9570 | 81 rm -f junk.$$$ |
82 If Not Exist junk.$$$ Goto rmOk | |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
83 Echo To configure 'Emacs' you need to have 'rm'! |
9570 | 84 Goto End |
85 :rmOk | |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
86 Echo Checking whether 'mv' is available... |
9570 | 87 rm -f junk.1 junk.2 |
88 echo foo >junk.1 | |
16489
a6df390c0f5e
Make sure `mv' supports forward slashes and -f.
Richard M. Stallman <rms@gnu.org>
parents:
15742
diff
changeset
|
89 mv junk.1 ./junk.2 |
9570 | 90 If Exist junk.2 Goto mvOk |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
91 Echo To configure 'Emacs' you need to have 'mv'! |
9570 | 92 rm -f junk.1 |
93 Goto End | |
94 :mvOk | |
95 rm -f junk.2 | |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
96 Echo Checking whether 'gcc' is available... |
9570 | 97 echo main(){} >junk.c |
98 gcc -c junk.c | |
99 if exist junk.o goto gccOk | |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
100 Echo To configure 'Emacs' you need to have 'gcc'! |
9570 | 101 rm -f junk.c |
102 Goto End | |
103 :gccOk | |
15020
85feb24c0ac5
With DJGPP v1.x, use `COFF2EXE' to produce JUNK.EXE test program.
Richard M. Stallman <rms@gnu.org>
parents:
15007
diff
changeset
|
104 rm -f junk.c junk.o junk junk.exe |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
105 Echo Checking what version of DJGPP is installed... |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
106 If Not "%DJGPP%" == "" goto djgppOk |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
107 Echo To compile 'Emacs' under MS-DOS you MUST have DJGPP installed! |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
108 Goto End |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
109 :djgppOk |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
110 echo int main() >junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
111 echo #ifdef __DJGPP__ >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
112 echo {return (__DJGPP__)*10;} >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
113 echo #else >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
114 echo #ifdef __GO32__ >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
115 echo {return 10;} >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
116 echo #else >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
117 echo {return 0;} >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
118 echo #endif >>junk.c |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
119 echo #endif >>junk.c |
15020
85feb24c0ac5
With DJGPP v1.x, use `COFF2EXE' to produce JUNK.EXE test program.
Richard M. Stallman <rms@gnu.org>
parents:
15007
diff
changeset
|
120 gcc -o junk junk.c |
85feb24c0ac5
With DJGPP v1.x, use `COFF2EXE' to produce JUNK.EXE test program.
Richard M. Stallman <rms@gnu.org>
parents:
15007
diff
changeset
|
121 if not exist junk.exe coff2exe junk |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
122 junk |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
123 If ErrorLevel 10 Goto go32Ok |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
124 rm -f junk.c junk junk.exe |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
125 Echo To compile 'Emacs' under MS-DOS you MUST have DJGPP installed! |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
126 Goto End |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
127 :go32Ok |
15007
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
128 set djgpp_ver=1 |
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
129 If ErrorLevel 20 set djgpp_ver=2 |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
130 rm -f junk.c junk junk.exe |
58178
f5d8b003702f
Don't require djecho.exe for the v1.x build.
Eli Zaretskii <eliz@gnu.org>
parents:
56567
diff
changeset
|
131 rem The v1.x build does not need djecho |
f5d8b003702f
Don't require djecho.exe for the v1.x build.
Eli Zaretskii <eliz@gnu.org>
parents:
56567
diff
changeset
|
132 if "%DJGPP_VER%" == "1" Goto djechoOk |
f5d8b003702f
Don't require djecho.exe for the v1.x build.
Eli Zaretskii <eliz@gnu.org>
parents:
56567
diff
changeset
|
133 rem DJECHO is used by the top-level Makefile in the v2.x build |
33811
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
134 Echo Checking whether 'djecho' is available... |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
135 redir -o Nul -eo djecho -o junk.$$$ foo |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
136 If Exist junk.$$$ Goto djechoOk |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
137 Echo To build 'Emacs' you need the 'djecho.exe' program! |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
138 Echo 'djecho.exe' is part of 'djdevNNN.zip' basic DJGPP development kit. |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
139 Echo Versions of DJGPP before 2.02 called this program 'echo.exe'. |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
140 Echo Either unpack 'djecho.exe' from the 'djdevNNN.zip' archive, |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
141 Echo or, if you have 'echo.exe', copy it to 'djecho.exe'. |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
142 Echo Then run CONFIG.BAT again with the same arguments you did now. |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
143 Goto End |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
144 :djechoOk |
e1e1d5816d44
Check for existence of djecho.exe, and print an
Eli Zaretskii <eliz@gnu.org>
parents:
30657
diff
changeset
|
145 rm -f junk.$$$ |
15007
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
146 Echo Configuring for DJGPP Version %DJGPP_VER% ... |
9570 | 147 Rem ---------------------------------------------------------------------- |
5484 | 148 Echo Configuring the source directory... |
149 cd src | |
150 | |
24528
440fb6df32c8
Use epaths.* instead of paths.*.
Eli Zaretskii <eliz@gnu.org>
parents:
24018
diff
changeset
|
151 rem Create "epaths.h" |
440fb6df32c8
Use epaths.* instead of paths.*.
Eli Zaretskii <eliz@gnu.org>
parents:
24018
diff
changeset
|
152 sed -f ../msdos/sed4.inp <epaths.in >epaths.tmp |
440fb6df32c8
Use epaths.* instead of paths.*.
Eli Zaretskii <eliz@gnu.org>
parents:
24018
diff
changeset
|
153 update epaths.tmp epaths.h >nul |
440fb6df32c8
Use epaths.* instead of paths.*.
Eli Zaretskii <eliz@gnu.org>
parents:
24018
diff
changeset
|
154 rm -f epaths.tmp |
5484 | 155 |
156 rem Create "config.h" | |
9570 | 157 rm -f config.h2 config.tmp |
18767
31e6205f80b6
Use `sed' instead of `cp', which might not be installed.
Richard M. Stallman <rms@gnu.org>
parents:
16489
diff
changeset
|
158 sed -e '' config.in > config.tmp |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
159 if "%X11%" == "" goto src4 |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
160 sed -f ../msdos/sed2x.inp <config.in >config.tmp |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
161 :src4 |
44634
f0c07caa514e
Update for msdos/sed2v2.inp.
Eli Zaretskii <eliz@gnu.org>
parents:
41433
diff
changeset
|
162 if "%DJGPP_VER%" == "2" Goto src41 |
9570 | 163 sed -f ../msdos/sed2.inp <config.tmp >config.h2 |
44634
f0c07caa514e
Update for msdos/sed2v2.inp.
Eli Zaretskii <eliz@gnu.org>
parents:
41433
diff
changeset
|
164 goto src42 |
f0c07caa514e
Update for msdos/sed2v2.inp.
Eli Zaretskii <eliz@gnu.org>
parents:
41433
diff
changeset
|
165 :src41 |
f0c07caa514e
Update for msdos/sed2v2.inp.
Eli Zaretskii <eliz@gnu.org>
parents:
41433
diff
changeset
|
166 sed -f ../msdos/sed2v2.inp <config.tmp >config.h2 |
f0c07caa514e
Update for msdos/sed2v2.inp.
Eli Zaretskii <eliz@gnu.org>
parents:
41433
diff
changeset
|
167 :src42 |
58186
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
168 Rem See if DECL_ALIGN can be supported with this GCC |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
169 rm -f junk.c junk.o junk junk.exe |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
170 echo struct { int i; char *p; } __attribute__((__aligned__(8))) foo; >junk.c |
58584
dda469376708
Protect & with "" since & is special for cmd.exe;
Eli Zaretskii <eliz@gnu.org>
parents:
58576
diff
changeset
|
171 rem Two percent signs because it is a special character for COMMAND.COM/CMD |
dda469376708
Protect & with "" since & is special for cmd.exe;
Eli Zaretskii <eliz@gnu.org>
parents:
58576
diff
changeset
|
172 rem Filter thru Sed because "&" is special for CMD.EXE |
dda469376708
Protect & with "" since & is special for cmd.exe;
Eli Zaretskii <eliz@gnu.org>
parents:
58576
diff
changeset
|
173 echo int main(void) { return (unsigned long)"&"foo %% 8; } | sed "s/.&./\&/" >>junk.c |
58186
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
174 gcc -o junk junk.c |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
175 if not exist junk.exe coff2exe junk |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
176 junk |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
177 If Not ErrorLevel 1 Goto alignOk |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
178 Echo WARNING: Your GCC does not support 8-byte aligned variables. |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
179 Echo WARNING: Therefore Emacs cannot support buffers larger than 128MB. |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
180 rem The following line disables DECL_ALIGN which in turn disables USE_LSB_TAG |
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
181 rem For details see lisp.h where it defines USE_LSB_TAG |
58576
9451633a27b0
If 8-byte alignment is not supported, define
Eli Zaretskii <eliz@gnu.org>
parents:
58186
diff
changeset
|
182 echo #define NO_DECL_ALIGN >>config.h2 |
58186
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
183 :alignOk |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
184 Rem See if they requested a SYSTEM_MALLOC build |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
185 if "%sys_malloc%" == "" Goto cfgDone |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
186 rm -f config.tmp |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
187 ren config.h2 config.tmp |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
188 sed -f ../msdos/sedalloc.inp <config.tmp >config.h2 |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
189 |
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
190 :cfgDone |
58186
fbbbaeca30e8
Add a test for DECL_ALIGN support, and add a trivial definition to
Eli Zaretskii <eliz@gnu.org>
parents:
58178
diff
changeset
|
191 rm -f junk.c junk junk.exe |
9570 | 192 update config.h2 config.h >nul |
193 rm -f config.tmp config.h2 | |
5484 | 194 |
195 rem On my system dir.h gets in the way. It's a VMS file so who cares. | |
196 if exist dir.h ren dir.h vmsdir.h | |
197 | |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
198 rem Create "makefile" from "makefile.in". |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
199 rm -f Makefile junk.c |
28767
a723efe4f841
Identify the beginning of cpp stuff in src/Makefile.in and
Eli Zaretskii <eliz@gnu.org>
parents:
25169
diff
changeset
|
200 sed -e "1,/== start of cpp stuff ==/s@^# .*$@@" <Makefile.in >junk.c |
15007
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
201 If "%DJGPP_VER%" == "1" Goto mfV1 |
35137
6722a8132e56
Run the preprocessor with -traditional.
Eli Zaretskii <eliz@gnu.org>
parents:
33811
diff
changeset
|
202 gcc -E -traditional junk.c | sed -f ../msdos/sed1v2.inp >Makefile |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
203 goto mfDone |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
204 :mfV1 |
35137
6722a8132e56
Run the preprocessor with -traditional.
Eli Zaretskii <eliz@gnu.org>
parents:
33811
diff
changeset
|
205 gcc -E -traditional junk.c | sed -f ../msdos/sed1.inp >Makefile |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
206 :mfDone |
5486
c87d1cd3f62a
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5484
diff
changeset
|
207 rm -f junk.c |
12992
09c2ad9213dd
Simplify using new names file names src/makefile.in,
Richard M. Stallman <rms@gnu.org>
parents:
9570
diff
changeset
|
208 |
9570 | 209 if "%X11%" == "" goto src5 |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
210 mv Makefile makefile.tmp |
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
211 sed -f ../msdos/sed1x.inp <makefile.tmp >Makefile |
9570 | 212 rm -f makefile.tmp |
213 :src5 | |
214 | |
215 if "%nodebug%" == "" goto src6 | |
25169
827d4eface8f
Make --no-debug work again by removing -gcoff.
Eli Zaretskii <eliz@gnu.org>
parents:
24528
diff
changeset
|
216 sed -e "/^CFLAGS *=/s/ *-gcoff//" <Makefile >makefile.tmp |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
217 sed -e "/^LDFLAGS *=/s/=/=-s/" <makefile.tmp >Makefile |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
218 rm -f makefile.tmp |
9570 | 219 :src6 |
5484 | 220 cd .. |
221 rem ---------------------------------------------------------------------- | |
222 Echo Configuring the library source directory... | |
223 cd lib-src | |
224 rem Create "makefile" from "makefile.in". | |
54702
1ee1cc05559b
(lib-src): Recognize comment lines in Makefile.in
Eli Zaretskii <eliz@gnu.org>
parents:
52401
diff
changeset
|
225 sed -e "1,/== start of cpp stuff ==/s@^#[ ].*$@@" <Makefile.in >junk.c |
35137
6722a8132e56
Run the preprocessor with -traditional.
Eli Zaretskii <eliz@gnu.org>
parents:
33811
diff
changeset
|
226 gcc -E -traditional -I. -I../src junk.c | sed -e "s/^ / /" -e "/^#/d" -e "/^[ ]*$/d" >makefile.new |
15007
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
227 If "%DJGPP_VER%" == "2" goto libsrc-v2 |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
228 sed -f ../msdos/sed3.inp <makefile.new >Makefile |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
229 Goto libsrc2 |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
230 :libsrc-v2 |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
231 sed -f ../msdos/sed3v2.inp <makefile.new >Makefile |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
232 :libsrc2 |
9570 | 233 rm -f makefile.new junk.c |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
234 if "%nodebug%" == "" goto libsrc3 |
25169
827d4eface8f
Make --no-debug work again by removing -gcoff.
Eli Zaretskii <eliz@gnu.org>
parents:
24528
diff
changeset
|
235 sed -e "/^CFLAGS *=/s/ *-gcoff//" <Makefile >makefile.tmp |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
236 sed -e "/^ALL_CFLAGS *=/s/=/= -s/" <makefile.tmp >Makefile |
14976
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
237 rm -f makefile.tmp |
63951d3f3995
Set djgpp-ver, and unset it at the end.
Richard M. Stallman <rms@gnu.org>
parents:
13927
diff
changeset
|
238 :libsrc3 |
5484 | 239 cd .. |
240 rem ---------------------------------------------------------------------- | |
9570 | 241 if "%X11%" == "" goto oldx1 |
242 Echo Configuring the oldxmenu directory... | |
243 cd oldxmenu | |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
244 sed -f ../msdos/sed5x.inp <Makefile.in >Makefile |
9570 | 245 if "%nodebug%" == "" goto oldx2 |
25169
827d4eface8f
Make --no-debug work again by removing -gcoff.
Eli Zaretskii <eliz@gnu.org>
parents:
24528
diff
changeset
|
246 sed -e "/^CFLAGS *=/s/ *-gcoff//" <Makefile >makefile.tmp |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
247 mv -f makefile.tmp Makefile |
9570 | 248 :oldx2 |
249 cd .. | |
250 :oldx1 | |
251 rem ---------------------------------------------------------------------- | |
99273
4d2b872f8fef
Tell user to expect one "File not found" message while the `doc' directory
Eli Zaretskii <eliz@gnu.org>
parents:
94723
diff
changeset
|
252 Echo Configuring the doc directory, expect one "File not found" message... |
85046
15154fa4af1a
Fix configuring `doc' due to changes in the directory structure.
Eli Zaretskii <eliz@gnu.org>
parents:
78262
diff
changeset
|
253 cd doc |
15154fa4af1a
Fix configuring `doc' due to changes in the directory structure.
Eli Zaretskii <eliz@gnu.org>
parents:
78262
diff
changeset
|
254 Rem The two variants for lispintro below is for when the shell |
45598
aaff735de38e
Handle the case when lispintro is truncated to lispintr.
Eli Zaretskii <eliz@gnu.org>
parents:
44634
diff
changeset
|
255 Rem supports long file names but DJGPP does not |
85046
15154fa4af1a
Fix configuring `doc' due to changes in the directory structure.
Eli Zaretskii <eliz@gnu.org>
parents:
78262
diff
changeset
|
256 for %%d in (emacs lispref lispintro lispintr misc) do sed -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile |
41433
8d949ca10e38
Configure in the lispintro directory.
Eli Zaretskii <eliz@gnu.org>
parents:
40878
diff
changeset
|
257 cd .. |
8d949ca10e38
Configure in the lispintro directory.
Eli Zaretskii <eliz@gnu.org>
parents:
40878
diff
changeset
|
258 rem ---------------------------------------------------------------------- |
29677
7e7a2522a302
Generate lisp/Makefile from lisp/Makefile.in.
Eli Zaretskii <eliz@gnu.org>
parents:
28767
diff
changeset
|
259 Echo Configuring the lisp directory... |
7e7a2522a302
Generate lisp/Makefile from lisp/Makefile.in.
Eli Zaretskii <eliz@gnu.org>
parents:
28767
diff
changeset
|
260 cd lisp |
7e7a2522a302
Generate lisp/Makefile from lisp/Makefile.in.
Eli Zaretskii <eliz@gnu.org>
parents:
28767
diff
changeset
|
261 sed -f ../msdos/sedlisp.inp < Makefile.in > Makefile |
7e7a2522a302
Generate lisp/Makefile from lisp/Makefile.in.
Eli Zaretskii <eliz@gnu.org>
parents:
28767
diff
changeset
|
262 cd .. |
7e7a2522a302
Generate lisp/Makefile from lisp/Makefile.in.
Eli Zaretskii <eliz@gnu.org>
parents:
28767
diff
changeset
|
263 rem ---------------------------------------------------------------------- |
24018
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
264 If not Exist leim\quail\latin-pre.el goto maindir |
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
265 Echo Configuring the leim directory... |
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
266 cd leim |
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
267 sed -f ../msdos/sedleim.inp < Makefile.in > Makefile |
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
268 cd .. |
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
269 rem ---------------------------------------------------------------------- |
b918e6330d6e
Support configuring with leim.
Eli Zaretskii <eliz@gnu.org>
parents:
21582
diff
changeset
|
270 :maindir |
5484 | 271 Echo Configuring the main directory... |
100693
54e798f3d697
Produce _dir-locals.el from .dir-locals.el.
Eli Zaretskii <eliz@gnu.org>
parents:
100559
diff
changeset
|
272 If Exist .dir-locals.el update .dir-locals.el _dir-locals.el |
102330 | 273 If Exist src\.dbxinit update src/.dbxinit src/_dbxinit |
15023
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
274 If "%DJGPP_VER%" == "1" goto mainv1 |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
275 Echo Looking for the GDB init file... |
30657
d8bdb143d140
(maindir): Update src/_gdbinit even if it does already exist.
Eli Zaretskii <eliz@gnu.org>
parents:
29677
diff
changeset
|
276 If Exist src\.gdbinit update src/.gdbinit src/_gdbinit |
15023
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
277 If Exist src\_gdbinit goto gdbinitOk |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
278 Echo ERROR: |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
279 Echo I cannot find the GDB init file. It was called ".gdbinit" in |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
280 Echo the Emacs distribution, but was probably renamed to some other |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
281 Echo name without the leading dot when you untarred the archive. |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
282 Echo It should be in the "src/" subdirectory. Please make sure this |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
283 Echo file exists and is called "_gdbinit" with a leading underscore. |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
284 Echo Then run CONFIG.BAT again with the same arguments you did now. |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
285 goto End |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
286 :gdbinitOk |
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
287 Echo Looking for the GDB init file...found |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
288 copy msdos\mainmake.v2 Makefile >nul |
15023
6f4dd53a62d4
Make sure the GDB init file is called src/_gdbinit;
Richard M. Stallman <rms@gnu.org>
parents:
15020
diff
changeset
|
289 :mainv1 |
20284
ff0f79a7b8b6
Configure the man subdirectory.
Eli Zaretskii <eliz@gnu.org>
parents:
19567
diff
changeset
|
290 If "%DJGPP_VER%" == "1" copy msdos\mainmake Makefile >nul |
5484 | 291 rem ---------------------------------------------------------------------- |
21582
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
292 goto End |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
293 :SmallEnv |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
294 echo Your environment size is too small. Please enlarge it and run me again. |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
295 echo For example, type "command.com /e:2048" to have 2048 bytes available. |
4c2b38ea02fe
Make sure the environment is large enough to accomodate
Eli Zaretskii <eliz@gnu.org>
parents:
20284
diff
changeset
|
296 set $foo$= |
5484 | 297 :end |
7195
73d9c538cce2
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
5486
diff
changeset
|
298 set X11= |
9570 | 299 set nodebug= |
15007
5baafbcd9dc2
(djgpp_ver): Variable renamed from djgpp-ver.
Richard M. Stallman <rms@gnu.org>
parents:
14976
diff
changeset
|
300 set djgpp_ver= |
100559
830b13990b6b
(--with-system-malloc): New option; see msdos/INSTALL for rationale.
Eli Zaretskii <eliz@gnu.org>
parents:
99273
diff
changeset
|
301 set sys_malloc= |
54702
1ee1cc05559b
(lib-src): Recognize comment lines in Makefile.in
Eli Zaretskii <eliz@gnu.org>
parents:
52401
diff
changeset
|
302 |
1ee1cc05559b
(lib-src): Recognize comment lines in Makefile.in
Eli Zaretskii <eliz@gnu.org>
parents:
52401
diff
changeset
|
303 goto skipArchTag |
1ee1cc05559b
(lib-src): Recognize comment lines in Makefile.in
Eli Zaretskii <eliz@gnu.org>
parents:
52401
diff
changeset
|
304 arch-tag: 2d2fed23-4dc6-4006-a2e4-49daf0031f33 |
1ee1cc05559b
(lib-src): Recognize comment lines in Makefile.in
Eli Zaretskii <eliz@gnu.org>
parents:
52401
diff
changeset
|
305 :skipArchTag |