]> git.saurik.com Git - bison.git/blob - djgpp/config.bat
* TODO: Add request from Nelson H. F. Beebe to be able to install
[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%/po/Makefile.in-in
189 if errorlevel 1 mv -f %XSRC%/po/Makefile.inin %XSRC%/po/Makefile.in-in
190 test -f %XSRC%/po/Makefile.in-in
191 if errorlevel 1 mv -f %XSRC%/po/Makefile.in_in %XSRC%/po/Makefile.in-in
192 test -f %XSRC%/po/Makefile.in-in
193 if errorlevel 1 mv -f %XSRC%/po/Makefile_in.in %XSRC%/po/Makefile.in-in
194 test -f %XSRC%/runtime-po/Makefile.in.in
195 if not errorlevel 1 mv -f %XSRC%/runtime-po/Makefile.in.in %XSRC%/runtime-po/Makefile.in-in
196 test -f %XSRC%/runtime-po/Makefile.in-in
197 if errorlevel 1 mv -f %XSRC%/runtime-po/Makefile.in %XSRC%/runtime-po/Makefile.in-in
198 test -f %XSRC%/runtime-po/Makefile.in-in
199 if errorlevel 1 mv -f %XSRC%/runtime-po/Makefile.inin %XSRC%/runtime-po/Makefile.in-in
200 test -f %XSRC%/runtime-po/Makefile.in-in
201 if errorlevel 1 mv -f %XSRC%/runtime-po/Makefile.in_in %XSRC%/runtime-po/Makefile.in-in
202 test -f %XSRC%/runtime-po/Makefile.in-in
203 if errorlevel 1 mv -f %XSRC%/runtime-po/Makefile_in.in %XSRC%/runtime-po/Makefile.in-in
204 test -f %XSRC%/data/c++.m4
205 if not errorlevel 1 mv -f %XSRC%/data/c++.m4 %XSRC%/data/cxx.m4
206 test -f %XSRC%/data/cxx.m4
207 if errorlevel 1 mv -f %XSRC%/data/cpp.m4 %XSRC%/data/cxx.m4
208 :scan_gram_c_Test
209 test -f %XSRC%/src/c-scan-gram.c
210 if not errorlevel 1 goto scan_skel_c_Test
211 test -f %XSRC%/src/scan-gram-c.c
212 if not errorlevel 1 mv -f %XSRC%/src/scan-gram-c.c %XSRC%/src/c-scan-gram.c
213 :scan_skel_c_Test
214 test -f %XSRC%/src/c-scan-skel.c
215 if not errorlevel 1 goto FixFiles
216 test -f %XSRC%/src/scan-skel-c.c
217 if not errorlevel 1 mv -f %XSRC%/src/scan-skel-c.c %XSRC%/src/c-scan-skel.c
218
219 :FixFiles
220 Rem Fix data/lalr1.cc and data/location.cc to reflect the renaming of c++.m4
221 sed "s/c++\.m4/cxx.m4/" %XSRC%/data/lalr1.cc > lalr1.cc
222 if errorlevel 1 goto lalr1_ccFileError
223 mv ./lalr1.cc %XSRC%/data/lalr1.cc
224 sed "s/c++\.m4/cxx.m4/" %XSRC%/data/location.cc > location.cc
225 if errorlevel 1 goto location.ccFileError
226 mv ./location.cc %XSRC%/data/location.cc
227 sed "s/c++\.m4/cxx.m4/" %XSRC%/data/glr.cc > glr.cc
228 if errorlevel 1 goto glr.ccFileError
229 mv ./glr.cc %XSRC%/data/glr.cc
230
231 Rem Define DJGPP specific defs in config.hin
232 echo Editing config.hin...
233 test -f %XSRC%/config_h.orig
234 if errorlevel 1 update %XSRC%/config.hin %XSRC%/config_h.orig
235 sed -f %XSRC%/djgpp/config_h.sed %XSRC%/config_h.orig > config.hin
236 if errorlevel 1 goto SedError2
237 mv -f config.hin %XSRC%/config.hin
238
239
240 Rem Fixing ilicit testsuite file name.
241 test -f %XSRC%/tests/c++.at
242 if not errorlevel 1 mv -f %XSRC%/tests/c++.at %XSRC%/tests/cxx.at
243
244 Rem Fixing ilicit calc++ file names in the calc++ directory.
245 test -d %XSRC%/examples/calc++
246 if not errorlevel 1 mv -f %XSRC%/examples/calc++ %XSRC%/examples/calcxx
247 test -d %XSRC%/examples/calcxx
248 if errorlevel 1 mv -f %XSRC%/examples/calcpp %XSRC%/examples/calcxx
249 test -f %XSRC%/examples/calcxx/calc++-scanner.cc
250 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-scanner.cc %XSRC%/examples/calcxx/calcxx-scanner.cc
251 test -f %XSRC%/examples/calcxx/calcxx-scanner.cc
252 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-scanner.cc %XSRC%/examples/calcxx/calcxx-scanner.cc
253 test -f %XSRC%/examples/calcxx/calc++-scanner.ll
254 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-scanner.ll %XSRC%/examples/calcxx/calcxx-scanner.ll
255 test -f %XSRC%/examples/calcxx/calcxx-scanner.ll
256 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-scanner.ll %XSRC%/examples/calcxx/calcxx-scanner.ll
257 test -f %XSRC%/examples/calcxx/calc++-driver.cc
258 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-driver.cc %XSRC%/examples/calcxx/calcxx-driver.cc
259 test -f %XSRC%/examples/calcxx/calcxx-driver.cc
260 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-driver.cc %XSRC%/examples/calcxx/calcxx-driver.cc
261 test -f %XSRC%/examples/calcxx/calc++-driver.hh
262 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-driver.hh %XSRC%/examples/calcxx/calcxx-driver.hh
263 test -f %XSRC%/examples/calcxx/calcxx-driver.hh
264 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-driver.hh %XSRC%/examples/calcxx/calcxx-driver.hh
265 test -f %XSRC%/examples/calcxx/calc++-parser.cc
266 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.cc %XSRC%/examples/calcxx/calcxx-parser.cc
267 test -f %XSRC%/examples/calcxx/calcxx-parser.cc
268 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.cc %XSRC%/examples/calcxx/calcxx-parser.cc
269 test -f %XSRC%/examples/calcxx/calc++-parser.hh
270 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.hh %XSRC%/examples/calcxx/calcxx-parser.hh
271 test -f %XSRC%/examples/calcxx/calcxx-parser.hh
272 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.hh %XSRC%/examples/calcxx/calcxx-parser.hh
273 test -f %XSRC%/examples/calcxx/calc++-parser.stamp
274 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.stamp %XSRC%/examples/calcxx/calcxx-parser.stamp
275 test -f %XSRC%/examples/calcxx/calcxx-parser.stamp
276 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.stamp %XSRC%/examples/calcxx/calcxx-parser.stamp
277 test -f %XSRC%/examples/calcxx/calc++-parser.yy
278 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++-parser.yy %XSRC%/examples/calcxx/calcxx-parser.yy
279 test -f %XSRC%/examples/calcxx/calcxx-parser.yy
280 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp-parser.yy %XSRC%/examples/calcxx/calcxx-parser.yy
281 test -f %XSRC%/examples/calcxx/calc++.cc
282 if not errorlevel 1 mv -f %XSRC%/examples/calcxx/calc++.cc %XSRC%/examples/calcxx/calcxx.cc
283 test -f %XSRC%/examples/calcxx/calcxx.cc
284 if errorlevel 1 mv -f %XSRC%/examples/calcxx/calcpp.cc %XSRC%/examples/calcxx/calcxx.cc
285
286 Rem Fixing #include lines in calcxx files.
287 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx.cc > calcxx.cc
288 if errorlevel 1 goto calcxxFileError
289 mv ./calcxx.cc %XSRC%/examples/calcxx/calcxx.cc
290 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-driver.cc > calcxx-driver.cc
291 if errorlevel 1 goto calcxxFileError
292 mv ./calcxx-driver.cc %XSRC%/examples/calcxx/calcxx-driver.cc
293 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-driver.hh > calcxx-driver.hh
294 if errorlevel 1 goto calcxxFileError
295 mv ./calcxx-driver.hh %XSRC%/examples/calcxx/calcxx-driver.hh
296 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-parser.cc > calcxx-parser.cc
297 if errorlevel 1 goto calcxxFileError
298 mv ./calcxx-parser.cc %XSRC%/examples/calcxx/calcxx-parser.cc
299 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-parser.hh > calcxx-parser.hh
300 if errorlevel 1 goto calcxxFileError
301 mv ./calcxx-parser.hh %XSRC%/examples/calcxx/calcxx-parser.hh
302 :sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-parser.yy > calcxx-parser.yy
303 :if errorlevel 1 goto calcxxFileError
304 :mv ./calcxx-parser.yy %XSRC%/examples/calcxx/calcxx-parser.yy
305 sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-scanner.cc > calcxx-scanner.cc
306 if errorlevel 1 goto calcxxFileError
307 mv ./calcxx-scanner.cc %XSRC%/examples/calcxx/calcxx-scanner.cc
308 :sed "/#[ ]*include/s/++/xx/" %XSRC%/examples/calcxx/calcxx-scanner.ll > calcxx-scanner.ll
309 :if errorlevel 1 goto calcxxFileError
310 :mv ./calcxx-scanner.ll %XSRC%/examples/calcxx/calcxx-scanner.ll
311 sed "s/calc++/calcxx/" %XSRC%/examples/calcxx/test > test
312 if errorlevel 1 goto calcxxFileError
313 mv ./test %XSRC%/examples/calcxx/test
314
315
316 Rem Fixing the scanner files to make file names 8.3 valid.
317 Rem Use only if you want to change the scan-gram.l and scan-skel.l files.
318 : sed "/outfile=/s/\.yy/yy/" %XSRC%/src/scan-gram.l > scan-gram.l
319 : if errorlevel 1 goto ScannerFileError
320 : mv ./scan-gram.l %XSRC%/src/scan-gram.l
321 : sed "/outfile=/s/\.yy/yy/" %XSRC%/src/scan-skel.l > scan-skel.l
322 : if errorlevel 1 goto ScannerFileError
323 : mv ./scan-skel.l %XSRC%/src/scan-skel.l
324
325
326 Rem This is required because DOS/Windows are case-insensitive
327 Rem to file names, and "make install" will do nothing if Make
328 Rem finds a file called `install'.
329 if exist INSTALL ren INSTALL INSTALL.txt
330
331 Rem Set SHELL to a sane default or some configure tests stop working
332 Rem if the package is configured across partitions.
333 if not "%SHELL%" == "" goto HomeName
334 set SHELL=/bin/sh
335 if not "%SHELL%" == "/bin/sh" goto SmallEnv
336 echo No SHELL found in the environment, using default value
337
338 :HomeName
339 Rem Set HOME to a sane default so configure stops complaining.
340 if not "%HOME%" == "" goto HostName
341 set HOME=%XSRC%/djgpp
342 if not "%HOME%" == "%XSRC%/djgpp" goto SmallEnv
343 echo No HOME found in the environment, using default value
344
345 :HostName
346 Rem Set HOSTNAME so it shows in config.status
347 if not "%HOSTNAME%" == "" goto hostdone
348 if "%windir%" == "" goto msdos
349 set OS=MS-Windows
350 if not "%OS%" == "MS-Windows" goto SmallEnv
351 goto haveos
352 :msdos
353 set OS=MS-DOS
354 if not "%OS%" == "MS-DOS" goto SmallEnv
355 :haveos
356 if not "%USERNAME%" == "" goto haveuname
357 if not "%USER%" == "" goto haveuser
358 echo No USERNAME and no USER found in the environment, using default values
359 set HOSTNAME=Unknown PC
360 if not "%HOSTNAME%" == "Unknown PC" goto SmallEnv
361 goto userdone
362 :haveuser
363 set HOSTNAME=%USER%'s PC
364 if not "%HOSTNAME%" == "%USER%'s PC" goto SmallEnv
365 goto userdone
366 :haveuname
367 set HOSTNAME=%USERNAME%'s PC
368 if not "%HOSTNAME%" == "%USERNAME%'s PC" goto SmallEnv
369 :userdone
370 set _HOSTNAME=%HOSTNAME%, %OS%
371 if not "%_HOSTNAME%" == "%HOSTNAME%, %OS%" goto SmallEnv
372 set HOSTNAME=%_HOSTNAME%
373 :hostdone
374 set _HOSTNAME=
375 set OS=
376
377 Rem install-sh is required by the configure script but clashes with the
378 Rem various Makefile install-foo targets, so we MUST have it before the
379 Rem script runs and rename it afterwards
380 test -f %XSRC%/install-sh
381 if not errorlevel 1 goto NoRen0
382 test -f %XSRC%/install-sh.sh
383 if not errorlevel 1 mv -f %XSRC%/install-sh.sh %XSRC%/install-sh
384 :NoRen0
385
386 if "%NLS%" == "disabled" goto WithoutNLS
387
388 :WithNLS
389 Rem Check for the needed libraries and binaries.
390 test -x /dev/env/DJDIR/bin/msgfmt.exe
391 if errorlevel 1 goto MissingNLSTools
392 test -x /dev/env/DJDIR/bin/xgettext.exe
393 if errorlevel 1 goto MissingNLSTools
394 test -f /dev/env/DJDIR/include/libcharset.h
395 if errorlevel 1 goto MissingNLSTools
396 test -f /dev/env/DJDIR/lib/libcharset.a
397 if errorlevel 1 goto MissingNLSTools
398 test -f /dev/env/DJDIR/include/iconv.h
399 if errorlevel 1 goto MissingNLSTools
400 test -f /dev/env/DJDIR/lib/libiconv.a
401 if errorlevel 1 goto MissingNLSTools
402 test -f /dev/env/DJDIR/include/libintl.h
403 if errorlevel 1 goto MissingNLSTools
404 test -f /dev/env/DJDIR/lib/libintl.a
405 if errorlevel 1 goto MissingNLSTools
406
407 Rem Recreate the files in the %XSRC%/po subdir with our ported tools.
408 redir -e /dev/null rm %XSRC%/po/*.gmo
409 redir -e /dev/null rm %XSRC%/po/bison.pot
410 redir -e /dev/null rm %XSRC%/po/cat-id-tbl.c
411 redir -e /dev/null rm %XSRC%/po/stamp-cat-id
412
413 Rem Update the arguments file for the configure script.
414 Rem We prefer without-included-gettext because libintl.a from gettext package
415 Rem is the only one that is garanteed to have been ported to DJGPP.
416 echo --enable-nls --without-included-gettext >> arguments
417 goto ConfigurePackage
418
419 :MissingNLSTools
420 echo Needed libs/tools for NLS not found. Configuring without NLS.
421 :WithoutNLS
422 Rem Update the arguments file for the configure script.
423 echo --disable-nls >> arguments
424
425 :ConfigurePackage
426 echo Running the ./configure script...
427 sh ./configure @arguments
428 if errorlevel 1 goto CfgError
429 rm arguments
430 echo Done.
431 goto End
432
433 :lalr1_ccFileError
434 echo ./data/lalr1.cc file editing failed!
435 goto End
436
437 :glr_ccFileError
438 echo ./data/glr.cc file editing failed!
439 goto End
440
441 :location_ccFileError
442 echo ./data/location.cc file editing failed!
443 goto End
444
445 :calcxxFileError
446 echo ./examples/calcxx file editing failed!
447 goto End
448
449 :ScannerFileError
450 echo ./scanner file editing failed!
451 goto End
452
453 :SedError
454 echo ./configure script editing failed!
455 goto End
456
457 :SedError2
458 echo ./config.hin editing failed!
459 goto End
460
461 :CfgError
462 echo ./configure script exited abnormally!
463 goto End
464
465 :SmallEnv
466 echo Your environment size is too small. Enlarge it and run me again.
467 echo Configuration NOT done!
468
469 :End
470 test -f %XSRC%/install-sh.sh
471 if not errorlevel 1 goto NoRen1
472 test -f %XSRC%/install-sh
473 if not errorlevel 1 mv -f %XSRC%/install-sh %XSRC%/install-sh.sh
474 :NoRen1
475 if "%SHELL%" == "/bin/sh" set SHELL=
476 if "%HOME%" == "%XSRC%/djgpp" set HOME=
477 set CONFIG_SITE=
478 set HOSTNAME=
479 set NLS=
480 set XSRC=