Regen.
[bison/ericb.git] / djgpp / djunpack.bat
blob51b98006be760f220cbbbffffba271fbaa1b326d
1 @echo off\r
2 Rem\r
3 Rem WARNING WARNING WARNING: This file needs to have DOS CRLF end-of-line\r
4 Rem format, or else stock DOS/Windows shells will refuse to run it.\r
5 Rem\r
6 Rem This batch file unpacks the Bison distribution while simultaneously\r
7 Rem renaming some of the files whose names are invalid on DOS or conflict\r
8 Rem with other file names after truncation to DOS 8+3 namespace.\r
9 Rem\r
10 Rem Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc.\r
11 Rem\r
12 Rem This program is free software: you can redistribute it and/or modify\r
13 Rem it under the terms of the GNU General Public License as published by\r
14 Rem the Free Software Foundation, either version 3 of the License, or\r
15 Rem (at your option) any later version.\r
16 Rem\r
17 Rem This program is distributed in the hope that it will be useful,\r
18 Rem but WITHOUT ANY WARRANTY; without even the implied warranty of\r
19 Rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
20 Rem GNU General Public License for more details.\r
21 Rem\r
22 Rem You should have received a copy of the GNU General Public License\r
23 Rem along with this program.  If not, see <http://www.gnu.org/licenses/>.\r
24 Rem\r
25 Rem\r
26 Rem Invoke like this:\r
27 Rem\r
28 Rem     djunpack bison-XYZ.tar.gz\r
29 Rem or\r
30 Rem     djunpack bison-XYZ.tar.bz2\r
31 Rem\r
32 Rem where XYZ is the version number.  If the argument includes leading\r
33 Rem directories, it MUST use backslashes, not forward slashes.\r
34 Rem\r
36 set ENVIRONMENT_SIZE_TEST_STRING=ENVIRONMENT_SIZE_TEST_STRING\r
37 if "%ENVIRONMENT_SIZE_TEST_STRING%"=="ENVIRONMENT_SIZE_TEST_STRING" GoTo EnvOk\r
38 Rem If their environment space is too small, re-exec with a larger one\r
39 command.com /e:4096 /c %0 %1\r
40 GoTo End\r
42 :EnvOk\r
43 set ENVIRONMENT_SIZE_TEST_STRING=\r
44 if "%1" == "" GoTo NoArgument\r
45 if not exist %1 GoTo NoArchive\r
46 Rem Extract top src dir from archive file.\r
47 djtar -t %1 > top_src.dir\r
48 Rem The following uses a feature of COPY whereby it does not copy\r
49 Rem empty files.  We need that because the previous line will create\r
50 Rem an empty fnchange.tmp even if the command failed for some reason.\r
51 copy top_src.dir junk.tmp > nul\r
52 if not exist junk.tmp GoTo NoDjTar\r
53 del junk.tmp\r
54 sed "1{s/^.*bison-/djtar -x -p -o bison-/;s|$|djgpp/fnchange.lst %%1 > fnchange.tmp|};2,$d" top_src.dir > ext_list.bat\r
55 Rem See the comment above about the reason for using COPY.\r
56 copy ext_list.bat junk.tmp > nul\r
57 if not exist junk.tmp GoTo NoSed\r
58 del junk.tmp\r
59 Rem Extract fnchange.lst from archive.\r
60 call ext_list.bat %1\r
61 del ext_list.bat\r
62 sed "1{s|^.*bison-|s/@V@/bison-|;s|$|g|};2,$d" top_src.dir > version.sed\r
63 sed -f version.sed < fnchange.tmp > fnchange.lst\r
64 del version.sed\r
65 del fnchange.tmp\r
66 del top_src.dir\r
67 Rem unpack the source distribution\r
68 djtar -x -n fnchange.lst %1\r
69 del fnchange.lst\r
70 GoTo End\r
72 :NoSed\r
73 del junk.tmp\r
74 echo FAIL: Sed is not available.\r
75 GoTo End\r
76 :NoDjTar\r
77 del junk.tmp\r
78 echo FAIL: DJTAR is not available or no fnchange.lst file in %1.\r
79 GoTo End\r
80 :NoArchive\r
81 echo FAIL: the file %1 does not seem to exist.\r
82 echo Remember that %1 cannot use forward slashes, only backslashes.\r
83 GoTo End\r
84 :NoArgument\r
85 echo FAIL: no archive file has been specified.\r
86 echo Remember that the file name cannot use forward slashes, only backslashes.\r
87 :End\r