This is a collection of all the compilation tools necessary to
compile ISO C and C++ programs, for various architectures used
in Axis products, and to make pure binary files of the linked
output.  See each README.<TARGET> for specific information.

To configure, compile and install, do:

./install-comptools [install-dir [man-dir [info-dir [temp-dir] ["/" [tooltuples]]]]

The install script will ask a couple of questions regarding
installation directories, test for file access permissions, and test
for presence of a previous installation.  You have to have write
permissions in these directories, of course.  You may specify
/dev/null for man-dir or info-dir if you do not want documentation.
No space characters are allowed in any of the argument paths,
the path to install-comptools and the current directory; "cwd", "pwd".

Different compiler parts (including header files) will be installed in
various sub-directories under install-dir.  The compiler tools will be
installed in install-dir/bin, with some compatibility scripts and
links in install-dir.  Temporary files such as object files will be
located in temp-dir; it defaults to "./tmpdir".

The "/" argument is a placeholder for a future
installation-prefix (used with packaging, not an end-user
feature), which currently does not work due to not being
supported in this version of gcc.  It must currently be
specified as "" (an empty argument) or "/".

The "tooltuples" argument allow for installation of a subset of
the possible compiler-tools variants, represented by their GNU
target tuple, for example "cris-axis-linux-gnu
crisv32-axis-elf".  See README.<TARGET> for the default value
for that target.

If you're opposed to executing unknown shell scripts, you're welcome
to look in the install-comptools shell script and execute the steps
manually.  Beware, this is error-prone and tedious.  The shell script
is provided as a convenience: it checks details that must not be
forgotten and produces a log to include in an email in case things go
wrong.

There are also comptools-<target>.spec files, corresponding to
what is used in RPM:s distributed at
<ftp://ftp.axis.se/pub/axis/tools/cris/compiler-kit/>.

If you encounter problems, or have questions regarding these tools, email
<compiler-contact@axis.com>.  But before that, please look at the
error-message in the log for locally induced failures, such as "disk
full" (though simple disk-full situations should be detected
early by the build script.)  Please also note that some NFS
configurations have problems, showing behavior similar to fluky
hardware.  For information about diagnosing fluky hardware, see
<URL:http://www.bitwizard.nl/sig11/>.


Relation between this and the closest publicly available sources:

- comptools-N.M/binutils-sim directory: Latest import is from FSF
  gdb and binutils CVS of 2008-04-23 (pre 2.19).  See
  <URL:http://sourceware.org/binutils/> and
  <URL:http://sourceware.org/gdb/>.
  Testsuites for architectures other than those supported by the
  installation script may be omitted.
  Axis-specific changes are entered into ChangeLog files named
  ChangeLog.Axis.

- comptools-N.M/gnu-toplev/newlib and comptools-N.M/gnu-toplev/libgloss
  directories: Latest import is the CVS version of 2008-05-21
  (pre-1.16.0).  See <URL:http://sourceware.org/newlib/>.
  Changes are logged in files named ChangeLog.Axis.

- The rest of comptools-N.M/gnu-toplev comes from FSF gcc-4_3-branch
  revision 135713, see <URL:http://gcc.gnu.org/>.  Changes are logged
  in files named ChangeLog.Axis.  Many large directories and files not
  necessary for installation are not included (for example, most
  testsuites, unsupported languages and their libraries).

For producing ROMmable binary files, I recommend using the
binutils "objcopy" program.  It can be used if you need to
generate S1-record format output.  However, it has a bug when
using the "-i" option (FIXME: quote and fix), which is worked
around in the axis-binstrip shell-script.  The script takes
slightly different options in order to be compatible with an old
program compatible with an even older program.  The script is
installed as axis-binstrip.

Note that GNU make is required.  Additionally, if glibc is included, a
GNU host system such as GNU/Linux is required.

/Best regards
Axis Communications
