4 changed files with 87 additions and 15 deletions
@ -0,0 +1,52 @@ |
|||
@echo off |
|||
Rem |
|||
Rem WARNING WARNING WARNING: This file needs to have DOS CRLF end-of-line |
|||
Rem format, or else stock DOS/Windows shells will refuse to run it. |
|||
Rem |
|||
Rem This batch file unpacks the GDB distribution while simultaneously |
|||
Rem renaming some of the files whose names are invalid on DOS or conflict |
|||
Rem with other file names after truncation to DOS 8+3 namespace. |
|||
Rem |
|||
Rem Invoke like this: |
|||
Rem |
|||
Rem djunpack gdb-XYZ.tar |
|||
Rem |
|||
Rem where XYZ is the version number. If the argument includes leading |
|||
Rem directories, it MUST use backslashes, not forward slashes. |
|||
Rem |
|||
Rem The following 2 lines need to be changed with each new GDB release, to |
|||
Rem be identical to the name of the top-level directory where the GDB |
|||
Rem distribution unpacks itself. |
|||
set GDBVER=gdb-5.0 |
|||
if "%GDBVER%"=="gdb-5.0" GoTo EnvOk |
|||
Rem If their environment space is too small, re-exec with a larger one |
|||
command.com /e:4096 /c %0 %1 |
|||
GoTo End |
|||
:EnvOk |
|||
if not exist %1 GoTo NoArchive |
|||
djtar -x -p -o %GDBVER%/gdb/config/djgpp/fnchange.lst %1 > fnchange.tmp |
|||
Rem The following uses a feature of COPY whereby it does not copy |
|||
Rem empty files. We need that because the previous line will create |
|||
Rem an empty fnchange.tmp even if the command failed for some reason. |
|||
copy fnchange.tmp junk.tmp > nul |
|||
if not exist junk.tmp GoTo NoDjTar |
|||
del junk.tmp |
|||
sed -e 's,^,%GDBVER%,' -e 's, *, %GDBVER%,' < fnchange.tmp > fnchange.lst |
|||
Rem See the comment above about the reason for using COPY. |
|||
copy fnchange.lst junk.tmp > nul |
|||
if not exist junk.tmp GoTo NoSed |
|||
del junk.tmp |
|||
djtar -x -n fnchange.lst %1 |
|||
GoTo End |
|||
:NoSed |
|||
echo FAIL: Sed is not available. |
|||
GoTo End |
|||
:NoDjTar |
|||
echo FAIL: DJTAR is not available or no fnchange.lst file in %1. |
|||
GoTo End |
|||
:NoArchive |
|||
echo FAIL: the file %1 does not seem to exist. |
|||
echo Remember that %1 cannot use forward slashes, only backslashes. |
|||
GoTo End |
|||
:End |
|||
set GDBVER= |
|||
Loading…
Reference in new issue