AROS-v0/tools/collect-aros
Kalamatee 9a3d0551fe put the target cpu's in alphabetical order, and add the riscv emulation modes. 2023-04-02 15:11:28 +02:00
..
Makefile only add the switches if they aren't already in the command. update copyright info on touched files. 2020-04-26 19:46:32 +02:00
README
backend-bfd.c tools: detabbed 2021-05-02 14:02:02 +02:00
backend-generic.c tools: detabbed 2021-05-02 14:02:02 +02:00
backend.h
collect-aros.c tools: detabbed 2021-05-02 14:02:02 +02:00
docommand-exec.c tools: detabbed 2021-05-02 14:02:02 +02:00
docommand-spawn.c tools: detabbed 2021-05-02 14:02:02 +02:00
docommand.h
env.h.in put the target cpu's in alphabetical order, and add the riscv emulation modes. 2023-04-02 15:11:28 +02:00
gensets.c tools: detabbed 2021-05-02 14:02:02 +02:00
gensets.h copyright header fixed 2021-05-02 13:46:08 +02:00
ldscript.h dont hard code FORCE_COMMON_ALLOCATI in the ldscript. pass -dc to gnu ld instead. 2020-04-26 19:46:31 +02:00
misc.c tools: detabbed 2021-05-02 14:02:02 +02:00
misc.h
mmakefile Rename AROS_DEVELOPER variable 2020-11-11 16:49:05 +01:00

README

 Notes on bootstrapping a new crosscompiler environment.

 You can easily build a standalone version of collect-aros from the configured AROS
source tree using 'make standalone-collect-aros' command.

 If you are bootstrapping a build for a new architecture, and don't have a compiler for
the target at all, you'll be unable to configure the tree. In this case you need to do the
following:

1. Copy env.h.in file as env.h and replace @aros_target_cpu@ with your CPU and @aros_object_format@
   with correct object format name.
2. Run "make USER_CFLAGS=-D_STANDALONE_" right in this directory. If you're building on MinGW32,
   this command won't work. Use "make CC=gcc AROS_HOST_ARCH=mingw32".

 You need to perform the following steps to create a new crosscompiler from scratch:

1. Download patches from contrib/gnu/gcc and contrib/gnu/binutils
2. Download corresponding binutils and gcc source archives. Note that for i386-aros target
   you may use the latest binutils because support for this target is already in mainstream.
3. Download AROS SDK from AROS web site.
4. Patch, configure, build and install binutils with --target=<cpu>-aros
5. Extract include and lib directories from SDK into /usr/local/<cpu>-aros/ directory.
   This assumes that you didn't specify any --prefix while configuring your tools.
   Otherwise specify yor prefix instead of /usr/local. Rename 'include' to 'sys-include'.
   If you're on Windows, check also lib/libm.a and lib/libz.a. Originally they are symlinks
   to libarosm.a and libarosz.a respectively, and they are extracted as zero-length files,
   which cause linker to fail. Replace them with plain copies of libarosm.a and libarosz.a.
6. Build collect-aros and install into <prefix>/<cpu>-aros/bin directory
   (/usr/local/i386-aros/bin for example). In theory you can put it into any directory in
   your path (like /usr/local/bin), but this will prevent multiple crosstoolchains from
   coexisting (i386-aros and ppc-aros for example).
7. Patch, configure, build and install gcc. That's all.