summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2000-04-23 07:47:02 +0000
committerEli Zaretskii <eliz@gnu.org>2000-04-23 07:47:02 +0000
commit933e4ef57c0b28f528bc5e46b81b11f01b93114a (patch)
tree16d689c9bc3f3bcc053bb19a69627962a1578a33
parent629597fc56edaeda15a3e0993939328617be37a0 (diff)
downloadgdb-933e4ef57c0b28f528bc5e46b81b11f01b93114a.tar.gz
* djunpack.bat: New file.
* config/djgpp/README: Explain how to unpack using djunpack.bat.
-rw-r--r--ChangeLog4
-rwxr-xr-xdjunpack.bat52
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/config/djgpp/README42
4 files changed, 87 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index e85d24dbc77..3e0a546e7aa 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2000-04-23 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * djunpack.bat: New file.
+
Wed Apr 19 12:46:26 2000 Andrew Cagney <cagney@b1.cygnus.com>
* Makefile.in (taz, gdb-taz, gas.tar.bz2, binutils.tar.bz2,
diff --git a/djunpack.bat b/djunpack.bat
new file mode 100755
index 00000000000..1a9e4aa197f
--- /dev/null
+++ b/djunpack.bat
@@ -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=
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 474144106b4..d183e848645 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2000-04-23 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * config/djgpp/README: Explain how to unpack using djunpack.bat.
+
2000-04-21 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdb-stabs.h (SECT_OFF_MAX): Increase to 40.
diff --git a/gdb/config/djgpp/README b/gdb/config/djgpp/README
index cced23473df..b45c00334af 100644
--- a/gdb/config/djgpp/README
+++ b/gdb/config/djgpp/README
@@ -65,21 +65,33 @@ use unzip32.exe available with the rest of DJGPP), and proceed to the
section "How to build" below.
Source distributions downloaded from one of the GNU FTP sites need
-some more work to unpack. First, you MUST use the `djtar' program to
-unzip the package. That's because some file names in the official
-distributions need to be changed to avoid problems on the various
-platforms supported by DJGPP. `djtar' can rename files on the fly
-given a file with name mappings; the distribution includes a file
-`gdb/config/djgpp/fnchange.lst' with the necessary mappings. So you
-need first to retrieve that file, and then invoke `djtar' to unpack
-the distribution. Here's how:
-
-
- djtar -x -p -o gdb-5.0/gdb/config/djgpp/fnchange.lst gdb-5.0.tar.gz > lst
- djtar -x -n lst gdb-5.0.tar.gz
-
-(The name of the distribution archive and the top-level directory will
-be different for versions other than 5.0.)
+some more work to unpack. First, you MUST use the `djunpack' batch
+file to unzip the package. That's because some file names in the
+official distributions need to be changed to avoid problems on the
+various platforms supported by DJGPP. `djunpack' invokes the `djtar'
+program (that is part of the basic DJGPP development kit) to rename
+these files on the fly given a file with name mappings; the
+distribution includes a file `gdb/config/djgpp/fnchange.lst' with the
+necessary mappings. So you need first to retrieve that batch file,
+and then invoke it to unpack the distribution. Here's how:
+
+ djtar -x -p -o gdb-5.0/djunpack.bat gdb-5.0.tar.gz > djunpack.bat
+ djunpack gdb-5.0.tar.gz
+
+(The name of the distribution archive and the leading directory of the
+path to `djunpack.bat' in the distribution will be different for
+versions of GDB other than 5.0.)
+
+If the argument to `djunpack.bat' include leading directories, it MUST
+be given with the DOS-style backslashes; Unix-style forward slashes
+will NOT work.
+
+If the distribution comes as a .tar.bz2 archive, you need to unpack it
+as follows:
+
+ bnzip2 gdb-5.0.tar.bz2
+ djtar -x -p -o gdb-5.0/djunpack.bat gdb-5.0.tar > djunpack.bat
+ djunpack gdb-5.0.tar
3. How to build