53 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Batchfile
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Batchfile
		
	
	
		
			Executable File
		
	
	
@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,@V@,%GDBVER%,g" < 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=
 |