To install these and use with the GCC 3.2 you must perform the following steps:

NOTE: These instructions pertain to the Dignus 1.6 version.

1. It helps to create a Unix like structure and move the Dignus programs and
   modules into it. For example:

   /usr/local/dignus			- The high level directory.
   /usr/local/dignus/bin		- The binary directory.
   /usr/local/dignus/lib		- The runtime libraries.
   /usr/local/dignus/maclib		- The Macro library.
   /usr/local/dignus/include		- The Include library.

2. Copy the Dignus executables into the bin directory:

   $ cd /your_dignus_sysc
   $ cp d2s dar dcc dccpc dranlib goff2xsd plink /usr/local/dignus/bin/

   $ cd /your_dignus_sysasm
   $ cp dasm dccpa /usr/local/dignus/bin

3. Create the runtime libraries:

   $ cd /your_dignus_sysc/objs_norent
   $ dar rv ../libc.a *
   $ dar rv ../libmvs.a *38
   $ cd ..
   $ dranlib libc.a
   $ dranlib libmvs.a
   $ cp libc.a libmvs.a /usr/local/dignus/lib/

   Note: GCC currently does not support the re-entrant libraries.

4. Copy the maclib libraries:

   $ cd /your_dignus_sysc/maclib
   $ cp * /usr/local/dignus/maclib/

5. Copy the include headers:

   $ cd /your_dignus_sysc
   $ cp -r include /usr/local/dignus

6. Get the GCC 3.2 sources from the following ftp site:

   ftp://www.cozx.com/pub/gnu/gcc-3.2.tar.gz
   ftp://www.cozx.com/pub/gnu/gcc-addons.tar.gz

7. After getting the GCC 3.2 source onto your system do the following:

   $ cd /your_source_dir
   $ tar xzf gcc-3.2.tar.gz
   $ tar xzf gcc-addons.tar.gz
   $ mkdir gcc-bin
   $ cd gcc-bin
   $ ../gcc-3.2/configure --enable-languages=c \
      --with-ld=/usr/local/dignus/bin/glink \
      --with-as=/usr/local/dignus/bin/gasm \
      --target=i370-ibm-mvsdignus 
   $ make

   The make will fail making the libgcc modules (We're still working on it).
   However, we don't need it and the resulting compiler works for most things.

8. Copy the GCC shims to the bin directory:

   $ cd /your_source_dir/gcc-addons/support/dignus
   $ cp gasm glink /usr/local/dignus/bin/

9. Install the compiler:

   $ mkdir -p /usr/local/lib/gcc-lib/i370-ibm-mvsdignus/3.2/
   $ cd /your_source_dir/gcc-bin/gcc
   $ cp cc1 collect2 cpp cpp0 gcov tradcpp0 specs \
      /usr/local/lib/gcc-lib/i370-ibm-mvsdignus/3.2/
   $ cp xgcc /usr/local/bin/gcc-mvsdignus

10. Create a link to the Dignus Include headers:

   $ cd /usr/local/lib/gcc-lib/i370-ibm-mvsdignus/3.2
   $ ln -s /usr/local/dignus/include include

11. You must now patch the Dignus headers to run with GCC:

   $ cd /usr/local/dignus
   $ patch -p0 -N </your_source_dir/gcc-addons/support/dignus/include.diff

   These patches may not work on pre 1.6 versions of the Dignus include headers.


You are now ready to run GCC using the Dignus environment. The resulting output
of the plink is not a true executable. It must be transferred to the IBM system
in binary mode and run through the link editor to make a load module.

