]> git.saurik.com Git - bison.git/blob - djgpp/config.bat
4a20f80a8daed46e4072c37ca6c49435f8b39b70
[bison.git] / djgpp / config.bat
1 @echo off
2 Rem Configure Bison for DJGPP.
3
4 Rem WARNING WARNING WARNING: This file needs to have DOS CRLF end-of-line
5 Rem format, or else stock DOS/Windows shells will refuse to run it.
6
7 Rem Copyright (C) 2005, 2006 Free Software Foundation, Inc.
8
9 Rem This program is free software; you can redistribute it and/or modify
10 Rem it under the terms of the GNU General Public License as published by
11 Rem the Free Software Foundation; either version 2, or (at your option)
12 Rem any later version.
13
14 Rem This program 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
20 Rem along with this program; if not, write to the Free Software Foundation,
21 Rem Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22
23 echo Configuring Bison for DJGPP v2.x...
24
25 Rem The SmallEnv tests protect against fixed and too small size
26 Rem of the environment in stock DOS shell.
27
28 Rem Find out if NLS is wanted or not,
29 Rem if dependency-tracking is wanted or not,
30 Rem if caching is wanted or not
31 Rem and where the sources are.
32 Rem We always default to NLS support,
33 Rem no dependency tracking
34 Rem and to in place configuration.
35 set ARGS=
36 set NLS=enabled
37 if not "%NLS%" == "enabled" goto SmallEnv
38 set CACHING=enabled
39 if not "%CACHING%" == "enabled" goto SmallEnv
40 set DEPENDENCY_TRACKING=disabled
41 if not "%DEPENDENCY_TRACKING%" == "disabled" goto SmallEnv
42 set LIBICONV_PREFIX=disabled
43 if not "%LIBICONV_PREFIX%" == "disabled" goto SmallEnv
44 set LIBINTL_PREFIX=disabled
45 if not "%LIBINTL_PREFIX%" == "disabled" goto SmallEnv
46 set HTML=enabled
47 if not "%HTML%" == "enabled" goto SmallEnv
48 set XSRC=.
49 if not "%XSRC%" == "." goto SmallEnv
50
51 Rem Loop over all arguments.
52 Rem Special arguments are: NLS, XSRC, CACHE, STATIC_LIBS, LIBICONV_PREFIX, LIBINTL_PREFIX and DEPS.
53 Rem All other arguments are stored into ARGS.
54 :ArgLoop
55 if "%1" == "nls" goto NextArgument
56 if "%1" == "NLS" goto NextArgument
57 if "%1" == "no-nls" goto NoNLS
58 if "%1" == "no-NLS" goto NoNLS
59 if "%1" == "NO-NLS" goto NoNLS
60 goto CachingOption
61 :NoNLS
62 if "%1" == "no-nls" set NLS=disabled
63 if "%1" == "no-NLS" set NLS=disabled
64 if "%1" == "NO-NLS" set NLS=disabled
65 if not "%NLS%" == "disabled" goto SmallEnv
66 goto NextArgument
67 :CachingOption
68 if "%1" == "cache" goto NextArgument
69 if "%1" == "CACHE" goto NextArgument
70 if "%1" == "no-cache" goto NoCaching
71 if "%1" == "no-CACHE" goto NoCaching
72 if "%1" == "NO-CACHE" goto NoCaching
73 goto DependencyOption
74 :NoCaching
75 if "%1" == "no-cache" set CACHING=disabled
76 if "%1" == "no-CACHE" set CACHING=disabled
77 if "%1" == "NO-CACHE" set CACHING=disabled
78 if not "%CACHING%" == "disabled" goto SmallEnv
79 goto NextArgument
80 :DependencyOption
81 if "%1" == "no-dep" goto NextArgument
82 if "%1" == "no-DEP" goto NextArgument
83 if "%1" == "NO-DEP" goto NextArgument
84 if "%1" == "dep" goto DependecyTraking
85 if "%1" == "DEP" goto DependecyTraking
86 goto LibiconvPrefixOption
87 :DependecyTraking
88 if "%1" == "dep" set DEPENDENCY_TRACKING=enabled
89 if "%1" == "DEP" set DEPENDENCY_TRACKING=enabled
90 if not "%DEPENDENCY_TRACKING%" == "enabled" goto SmallEnv
91 goto NextArgument
92 :LibiconvPrefixOption
93 if "%1" == "no-libiconvprefix" goto NextArgument
94 if "%1" == "no-LIBICONVPREFIX" goto NextArgument
95 if "%1" == "NO-LIBICONVPREFIX" goto NextArgument
96 if "%1" == "libiconvprefix" goto WithLibiconvPrefix
97 if "%1" == "LIBICONVPREFIX" goto WithLibiconvPrefix
98 goto LibintlPrefixOption
99 :WithLibiconvPrefix
100 if "%1" == "libiconvprefix" set LIBICONV_PREFIX=enabled
101 if "%1" == "LIBICONVPREFIX" set LIBICONV_PREFIX=enabled
102 if not "%LIBICONV_PREFIX%" == "enabled" goto SmallEnv
103 goto NextArgument
104 :LibintlPrefixOption
105 if "%1" == "no-libiconvprefix" goto NextArgument
106 if "%1" == "no-LIBICONVPREFIX" goto NextArgument
107 if "%1" == "NO-LIBICONVPREFIX" goto NextArgument
108 if "%1" == "libintlprefix" goto _WithLibintlPrefix
109 if "%1" == "LIBINTLPREFIX" goto _WithLibintlPrefix
110 goto HTMLOption
111 :_WithLibintlPrefix
112 if "%1" == "libintlprefix" set LIBINTL_PREFIX=enabled
113 if "%1" == "LIBINTLPREFIX" set LIBINTL_PREFIX=enabled
114 if not "%LIBINTL_PREFIX%" == "enabled" goto SmallEnv
115 :HTMLOption
116 if "%1" == "withhtml" goto NextArgument
117 if "%1" == "withHTML" goto NextArgument
118 if "%1" == "WITHHTML" goto NextArgument
119 if "%1" == "withouthtml" goto _WithoutHTML
120 if "%1" == "withoutHTML" goto _WithoutHTML
121 if "%1" == "WITHOUTHTML" goto _WithoutHTML
122 goto SrcDirOption
123 :_WithoutHTML
124 if "%1" == "withouthtml" set HTML=disabled
125 if "%1" == "withoutHTML" set HTML=disabled
126 if "%1" == "WITHOUTHTML" set HTML=disabled
127 if not "%HTML%" == "disabled" goto SmallEnv
128 goto NextArgument
129 :SrcDirOption
130 echo %1 | grep -q "/"
131 if errorlevel 1 goto CollectArgument
132 set XSRC=%1
133 if not "%XSRC%" == "%1" goto SmallEnv
134 goto NextArgument
135 :CollectArgument
136 set _ARGS=%ARGS% %1
137 if not "%_ARGS%" == "%ARGS% %1" if not "%_ARGS%" == "%ARGS%%1" goto SmallEnv
138 echo %_ARGS% | grep -q "[^ ]"
139 if not errorlevel 0 set ARGS=%_ARGS%
140 set _ARGS=
141 :NextArgument
142 shift
143 if not "%1" == "" goto ArgLoop
144
145 Rem Create an arguments file for the configure script.
146 echo --srcdir=%XSRC% > arguments
147 if "%CACHING%" == "enabled" echo --cache-file=%XSRC%/djgpp/config.cache >> arguments
148 if "%DEPENDENCY_TRACKING%" == "enabled" echo --enable-dependency-tracking >> arguments
149 if "%DEPENDENCY_TRACKING%" == "disabled" echo --disable-dependency-tracking >> arguments
150 if "%LIBICONV_PREFIX%" == "enabled" echo --with-libiconv-prefix >> arguments
151 if "%LIBICONV_PREFIX%" == "disabled" echo --without-libiconv-prefix >> arguments
152 if "%LIBINTL_PREFIX%" == "enabled" echo --with-libintl-prefix >> arguments
153 if "%LIBINTL_PREFIX%" == "disabled" echo --without-libintl-prefix >> arguments
154 if "%HTML%" == "enabled" echo --enable-html >> arguments
155 if "%HTML%" == "disabled" echo --disable-html >> arguments
156 if not "%ARGS%" == "" echo %ARGS% >> arguments
157 set ARGS=
158 set CACHING=
159 set DEPENDENCY_TRACKING=
160 set LIBICONV_PREFIX=
161 set LIBINTL_PREFIX=
162 set HTML=
163
164 if "%XSRC%" == "." goto InPlace
165
166 :NotInPlace
167 redir -e /dev/null update %XSRC%/configure.orig ./configure
168 test -f ./configure
169 if errorlevel 1 update %XSRC%/configure ./configure
170
171 :InPlace
172 Rem Update configuration files
173 echo Updating configuration scripts...
174 test -f ./configure.orig
175 if errorlevel 1 update configure configure.orig
176 sed -f %XSRC%/djgpp/config.sed configure.orig > configure
177 if errorlevel 1 goto SedError
178
179 Rem Make sure they have a config.site file
180 set CONFIG_SITE=%XSRC%/djgpp/config.site
181 if not "%CONFIG_SITE%" == "%XSRC%/djgpp/config.site" goto SmallEnv
182
183 Rem Make sure crucial file names are not munged by unpacking
184 test -f %XSRC%/po/Makefile.in.in
185 if not errorlevel 1 mv -f %XSRC%/po/Makefile.in.in %XSRC%/po/Makefile.in-in
186 test -f %XSRC%/po/Makefile.in-in
187 if errorlevel 1 mv -f %XSRC%/po/Makefile.in %XSRC%/po/Makefile.in-in
188 test -f %XSRC%/runtime-po/Makefile.in.in
189 if not errorlevel 1 mv -f %XSRC%/runtime-po/Makefile.in.in %XSRC%/runtime-po/Makefile.in-in
190 test -f %XSRC%/runtime-po/Makefile.in-in
191 if errorlevel 1 mv -f %XSRC%/runtime-po/Makefile.in %XSRC%/runtime-po/Makefile.in-in
192 test -f %XSRC%/data/c++.m4
193 if not errorlevel 1 mv -f %XSRC%/data/c++.m4 %XSRC%/data/cxx.m4
194 test -f %XSRC%/data/cxx.m4
195 if errorlevel 1 mv -f %XSRC%/data/cpp.m4 %XSRC%/data/cxx.m4
196 :scan_gram_c_Test
197 test -f %XSRC%/src/c-scan-gram.c
198 if not errorlevel 1 goto scan_skel_c_Test
199 test -f %XSRC%/src/scan-gram-c.c
200 if not errorlevel 1 mv -f %XSRC%/src/scan-gram-c.c %XSRC%/src/c-scan-gram.c
201 :scan_skel_c_Test
202 test -f %XSRC%/src/c-scan-skel.c
203 if not errorlevel 1 goto FixFiles
204 test -f %XSRC%/src/scan-skel-c.c
205 if not errorlevel 1 mv -f %XSRC%/src/scan-skel-c.c %XSRC%/src/c-scan-skel.c
206
207 :FixFiles
208 Rem Fix data/lalr1.cc and data/location.cc to reflect the renaming of c++.m4
209 sed "s/c++\.m4/cxx.m4/" %XSRC%/data/lalr1.cc > lalr1.cc
210 if errorlevel 1 goto lalr1_ccFileError
211 mv ./lalr1.cc %XSRC%/data/lalr1.cc
212 sed "s/c++\.m4/cxx.m4/" %XSRC%/data/location.cc > location.cc
213 if errorlevel 1 goto location.ccFileError
214 mv ./location.cc %XSRC%/data/location.cc
215 sed "s/c++\.m4/cxx.m4/" %XSRC%/data/glr.cc > glr.cc
216 if errorlevel 1 goto glr.ccFileError
217 mv ./glr.cc %XSRC%/data/glr.cc
218
219 Rem Define DJGPP specific defs in config.hin
220 echo Editing config.hin...
221 test -f %XSRC%/config_h.orig
222 if errorlevel 1 update %XSRC%/config.hin %XSRC%/config_h.orig
223 sed -f %XSRC%/djgpp/config_h.sed %XSRC%/config_h.orig > config.hin
224 if errorlevel 1 goto SedError2
225 mv -f config.hin %XSRC%/config.hin
226
227
228 Rem Fixing ilicit testsuite file name.
229 test -f %XSRC%/tests/c++.at
230 if not errorlevel 1 mv -f %XSRC%/tests/c++.at %XSRC%/tests/cxx.at
231
232 Rem Fixing ilicit calc++ file names in the calc++ directory.
233 test -d %XSRC%/examples/calc++
234 if not errorlevel 1 mv -f %XSRC%/examples/calc++ %XSRC%/examples/calcxx
235 test -d %XSRC%/examples/calcxx
236 if errorlevel 1 mv -f %XSRC%/examples/calcpp %XSRC%/examples/calcxx
237 test -f %XSRC%/examples/calcxx/calc++-scanner.cc
238 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-scanner.cc %XSRC%/examples/calcxx/calcxx-scanner.cc
239 test -f %XSRC%/examples/calcxx/calcxx-scanner.cc
240 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-scanner.cc %XSRC%/examples/calcxx/calcxx-scanner.cc
241 test -f %XSRC%/examples/calcxx/calc++-scanner.ll
242 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-scanner.ll %XSRC%/examples/calcxx/calcxx-scanner.ll
243 test -f %XSRC%/examples/calcxx/calcxx-scanner.ll
244 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-scanner.ll %XSRC%/examples/calcxx/calcxx-scanner.ll
245 test -f %XSRC%/examples/calcxx/calc++-driver.cc
246 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-driver.cc %XSRC%/examples/calcxx/calcxx-driver.cc
247 test -f %XSRC%/examples/calcxx/calcxx-driver.cc
248 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-driver.cc %XSRC%/examples/calcxx/calcxx-driver.cc
249 test -f %XSRC%/examples/calcxx/calc++-driver.hh
250 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-driver.hh %XSRC%/examples/calcxx/calcxx-driver.hh
251 test -f %XSRC%/examples/calcxx/calcxx-driver.hh
252 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-driver.hh %XSRC%/examples/calcxx/calcxx-driver.hh
253 test -f %XSRC%/examples/calcxx/calc++-parser.cc
254 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.cc %XSRC%/examples/calcxx/calcxx-parser.cc
255 test -f %XSRC%/examples/calcxx/calcxx-parser.cc
256 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.cc %XSRC%/examples/calcxx/calcxx-parser.cc
257 test -f %XSRC%/examples/calcxx/calc++-parser.hh
258 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.hh %XSRC%/examples/calcxx/calcxx-parser.hh
259 test -f %XSRC%/examples/calcxx/calcxx-parser.hh
260 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.hh %XSRC%/examples/calcxx/calcxx-parser.hh
261 test -f %XSRC%/examples/calcxx/calc++-parser.stamp
262 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.stamp %XSRC%/examples/calcxx/calcxx-parser.stamp
263 test -f %XSRC%/examples/calcxx/calcxx-parser.stamp
264 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.stamp %XSRC%/examples/calcxx/calcxx-parser.stamp
265 test -f %XSRC%/examples/calcxx/calc++-parser.yy
266 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.yy %XSRC%/examples/calcxx/calcxx-parser.yy
267 test -f %XSRC%/examples/calcxx/calcxx-parser.yy
268 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.yy %XSRC%/examples/calcxx/calcxx-parser.yy
269 test -f %XSRC%/examples/calcxx/calc++.cc
270 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++.cc %XSRC%/examples/calcxx/calcxx.cc
271 test -f %XSRC%/examples/calcxx/calcxx.cc
272 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp.cc %XSRC%/examples/calcxx/calcxx.cc
273
274 Rem Fixing #include lines in calcxx files.
275 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx.cc > calcxx.cc
276 if errorlevel 1 goto calcxxFileError
277 mv ./calcxx.cc %XSRC%/examples/calcxx/calcxx.cc
278 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-driver.cc > calcxx-driver.cc
279 if errorlevel 1 goto calcxxFileError
280 mv ./calcxx-driver.cc %XSRC%/examples/calcxx/calcxx-driver.cc
281 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-driver.hh > calcxx-driver.hh
282 if errorlevel 1 goto calcxxFileError
283 mv ./calcxx-driver.hh %XSRC%/examples/calcxx/calcxx-driver.hh
284 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-parser.cc > calcxx-parser.cc
285 if errorlevel 1 goto calcxxFileError
286 mv ./calcxx-parser.cc %XSRC%/examples/calcxx/calcxx-parser.cc
287 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-parser.hh > calcxx-parser.hh
288 if errorlevel 1 goto calcxxFileError
289 mv ./calcxx-parser.hh %XSRC%/examples/calcxx/calcxx-parser.hh
290 :sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-parser.yy > calcxx-parser.yy
291 :if errorlevel 1 goto calcxxFileError
292 :mv ./calcxx-parser.yy %XSRC%/examples/calcxx/calcxx-parser.yy
293 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-scanner.cc > calcxx-scanner.cc
294 if errorlevel 1 goto calcxxFileError
295 mv ./calcxx-scanner.cc %XSRC%/examples/calcxx/calcxx-scanner.cc
296 :sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-scanner.ll > calcxx-scanner.ll
297 :if errorlevel 1 goto calcxxFileError
298 :mv ./calcxx-scanner.ll %XSRC%/examples/calcxx/calcxx-scanner.ll
299 sed "s/calc++/calcxx/" %XSRC%/examples/calcxx/test > test
300 if errorlevel 1 goto calcxxFileError
301 mv ./test %XSRC%/examples/calcxx/test
302
303
304 Rem Fixing the scanner files to make file names 8.3 valid.
305 Rem Use only if you want to change the scan-gram.l and scan-skel.l files.
306 : sed "/outfile=/s/\.yy/yy/" %XSRC%/src/scan-gram.l > scan-gram.l
307 : if errorlevel 1 goto ScannerFileError
308 : mv ./scan-gram.l %XSRC%/src/scan-gram.l
309 : sed "/outfile=/s/\.yy/yy/" %XSRC%/src/scan-skel.l > scan-skel.l
310 : if errorlevel 1 goto ScannerFileError
311 : mv ./scan-skel.l %XSRC%/src/scan-skel.l
312
313
314 Rem This is required because DOS/Windows are case-insensitive
315 Rem to file names, and "make install" will do nothing if Make
316 Rem finds a file called `install'.
317 if exist INSTALL ren INSTALL INSTALL.txt
318
319 Rem Set SHELL to a sane default or some configure tests stop working
320 Rem if the package is configured across partitions.
321 if not "%SHELL%" == "" goto HomeName
322 set SHELL=/bin/sh
323 if not "%SHELL%" == "/bin/sh" goto SmallEnv
324 echo No SHELL found in the environment, using default value
325
326 :HomeName
327 Rem Set HOME to a sane default so configure stops complaining.
328 if not "%HOME%" == "" goto HostName
329 set HOME=%XSRC%/djgpp
330 if not "%HOME%" == "%XSRC%/djgpp" goto SmallEnv
331 echo No HOME found in the environment, using default value
332
333 :HostName
334 Rem Set HOSTNAME so it shows in config.status
335 if not "%HOSTNAME%" == "" goto hostdone
336 if "%windir%" == "" goto msdos
337 set OS=MS-Windows
338 if not "%OS%" == "MS-Windows" goto SmallEnv
339 goto haveos
340 :msdos
341 set OS=MS-DOS
342 if not "%OS%" == "MS-DOS" goto SmallEnv
343 :haveos
344 if not "%USERNAME%" == "" goto haveuname
345 if not "%USER%" == "" goto haveuser
346 echo No USERNAME and no USER found in the environment, using default values
347 set HOSTNAME=Unknown PC
348 if not "%HOSTNAME%" == "Unknown PC" goto SmallEnv
349 goto userdone
350 :haveuser
351 set HOSTNAME=%USER%'s PC
352 if not "%HOSTNAME%" == "%USER%'s PC" goto SmallEnv
353 goto userdone
354 :haveuname
355 set HOSTNAME=%USERNAME%'s PC
356 if not "%HOSTNAME%" == "%USERNAME%'s PC" goto SmallEnv
357 :userdone
358 set _HOSTNAME=%HOSTNAME%, %OS%
359 if not "%_HOSTNAME%" == "%HOSTNAME%, %OS%" goto SmallEnv
360 set HOSTNAME=%_HOSTNAME%
361 :hostdone
362 set _HOSTNAME=
363 set OS=
364
365 Rem install-sh is required by the configure script but clashes with the
366 Rem various Makefile install-foo targets, so we MUST have it before the
367 Rem script runs and rename it afterwards
368 test -f %XSRC%/install-sh
369 if not errorlevel 1 goto NoRen0
370 test -f %XSRC%/install-sh.sh
371 if not errorlevel 1 mv -f %XSRC%/install-sh.sh %XSRC%/install-sh
372 :NoRen0
373
374 if "%NLS%" == "disabled" goto WithoutNLS
375
376 :WithNLS
377 Rem Check for the needed libraries and binaries.
378 test -x /dev/env/DJDIR/bin/msgfmt.exe
379 if errorlevel 1 goto MissingNLSTools
380 test -x /dev/env/DJDIR/bin/xgettext.exe
381 if errorlevel 1 goto MissingNLSTools
382 test -f /dev/env/DJDIR/include/libcharset.h
383 if errorlevel 1 goto MissingNLSTools
384 test -f /dev/env/DJDIR/lib/libcharset.a
385 if errorlevel 1 goto MissingNLSTools
386 test -f /dev/env/DJDIR/include/iconv.h
387 if errorlevel 1 goto MissingNLSTools
388 test -f /dev/env/DJDIR/lib/libiconv.a
389 if errorlevel 1 goto MissingNLSTools
390 test -f /dev/env/DJDIR/include/libintl.h
391 if errorlevel 1 goto MissingNLSTools
392 test -f /dev/env/DJDIR/lib/libintl.a
393 if errorlevel 1 goto MissingNLSTools
394
395 Rem Recreate the files in the %XSRC%/po subdir with our ported tools.
396 redir -e /dev/null rm %XSRC%/po/*.gmo
397 redir -e /dev/null rm %XSRC%/po/bison.pot
398 redir -e /dev/null rm %XSRC%/po/cat-id-tbl.c
399 redir -e /dev/null rm %XSRC%/po/stamp-cat-id
400
401 Rem Update the arguments file for the configure script.
402 Rem We prefer without-included-gettext because libintl.a from gettext package
403 Rem is the only one that is garanteed to have been ported to DJGPP.
404 echo --enable-nls --without-included-gettext >> arguments
405 goto ConfigurePackage
406
407 :MissingNLSTools
408 echo Needed libs/tools for NLS not found. Configuring without NLS.
409 :WithoutNLS
410 Rem Update the arguments file for the configure script.
411 echo --disable-nls >> arguments
412
413 :ConfigurePackage
414 echo Running the ./configure script...
415 sh ./configure @arguments
416 if errorlevel 1 goto CfgError
417 rm arguments
418 echo Done.
419 goto End
420
421 :lalr1_ccFileError
422 echo ./data/lalr1.cc file editing failed!
423 goto End
424
425 :glr_ccFileError
426 echo ./data/glr.cc file editing failed!
427 goto End
428
429 :location_ccFileError
430 echo ./data/location.cc file editing failed!
431 goto End
432
433 :calcxxFileError
434 echo ./examples/calcxx file editing failed!
435 goto End
436
437 :ScannerFileError
438 echo ./scanner file editing failed!
439 goto End
440
441 :SedError
442 echo ./configure script editing failed!
443 goto End
444
445 :SedError2
446 echo ./config.hin editing failed!
447 goto End
448
449 :CfgError
450 echo ./configure script exited abnormally!
451 goto End
452
453 :SmallEnv
454 echo Your environment size is too small. Enlarge it and run me again.
455 echo Configuration NOT done!
456
457 :End
458 test -f %XSRC%/install-sh.sh
459 if not errorlevel 1 goto NoRen1
460 test -f %XSRC%/install-sh
461 if not errorlevel 1 mv -f %XSRC%/install-sh %XSRC%/install-sh.sh
462 :NoRen1
463 if "%SHELL%" == "/bin/sh" set SHELL=
464 if "%HOME%" == "%XSRC%/djgpp" set HOME=
465 set CONFIG_SITE=
466 set HOSTNAME=
467 set NLS=
468 set XSRC=