[444] | 1 | @echo off |
---|
| 2 | Rem |
---|
| 3 | Rem WARNING WARNING WARNING: This file needs to have DOS CRLF end-of-line |
---|
| 4 | Rem format, or else stock DOS/Windows shells will refuse to run it. |
---|
| 5 | Rem |
---|
| 6 | Rem This batch file unpacks the GDB distribution while simultaneously |
---|
| 7 | Rem renaming some of the files whose names are invalid on DOS or conflict |
---|
| 8 | Rem with other file names after truncation to DOS 8+3 namespace. |
---|
| 9 | Rem |
---|
| 10 | Rem Invoke like this: |
---|
| 11 | Rem |
---|
| 12 | Rem djunpack gdb-XYZ.tar |
---|
| 13 | Rem |
---|
| 14 | Rem where XYZ is the version number. If the argument includes leading |
---|
| 15 | Rem directories, it MUST use backslashes, not forward slashes. |
---|
| 16 | Rem |
---|
| 17 | Rem The following 2 lines need to be changed with each new GDB release, to |
---|
| 18 | Rem be identical to the name of the top-level directory where the GDB |
---|
| 19 | Rem distribution unpacks itself. |
---|
| 20 | set GDBVER=gdb-5.0 |
---|
| 21 | if "%GDBVER%"=="gdb-5.0" GoTo EnvOk |
---|
| 22 | Rem If their environment space is too small, re-exec with a larger one |
---|
| 23 | command.com /e:4096 /c %0 %1 |
---|
| 24 | GoTo End |
---|
| 25 | :EnvOk |
---|
| 26 | if not exist %1 GoTo NoArchive |
---|
| 27 | djtar -x -p -o %GDBVER%/gdb/config/djgpp/fnchange.lst %1 > fnchange.tmp |
---|
| 28 | Rem The following uses a feature of COPY whereby it does not copy |
---|
| 29 | Rem empty files. We need that because the previous line will create |
---|
| 30 | Rem an empty fnchange.tmp even if the command failed for some reason. |
---|
| 31 | copy fnchange.tmp junk.tmp > nul |
---|
| 32 | if not exist junk.tmp GoTo NoDjTar |
---|
| 33 | del junk.tmp |
---|
| 34 | sed -e "s,@V@,%GDBVER%,g" < fnchange.tmp > fnchange.lst |
---|
| 35 | Rem See the comment above about the reason for using COPY. |
---|
| 36 | copy fnchange.lst junk.tmp > nul |
---|
| 37 | if not exist junk.tmp GoTo NoSed |
---|
| 38 | del junk.tmp |
---|
| 39 | djtar -x -n fnchange.lst %1 |
---|
| 40 | GoTo End |
---|
| 41 | :NoSed |
---|
| 42 | echo FAIL: Sed is not available. |
---|
| 43 | GoTo End |
---|
| 44 | :NoDjTar |
---|
| 45 | echo FAIL: DJTAR is not available or no fnchange.lst file in %1. |
---|
| 46 | GoTo End |
---|
| 47 | :NoArchive |
---|
| 48 | echo FAIL: the file %1 does not seem to exist. |
---|
| 49 | echo Remember that %1 cannot use forward slashes, only backslashes. |
---|
| 50 | GoTo End |
---|
| 51 | :End |
---|
| 52 | set GDBVER= |
---|