summaryrefslogtreecommitdiff
path: root/README
blob: db891fe55cea2da821549294b6ffd49efffbdbd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
REMEMBER!
---------
THE RESULTING TOOLCHAIN IS FOR BARE BONE ARM PROCESSOR SOFTWARE. NOT FOR USE
WITH GLIBC OR THE LINUX KERNEL. DO NOT EVEN BOTHER TO ASK FOR THAT!

To compile the ARM toolchain for barebone ARM devices:
------------------------------------------------------
* Edit the shell script to match your environment
* Run it
* Profit

Currently tested and known to work target platforms:
----------------------------------------------------
* STM32F10x (Olimex STM32-H103 eval board, Open-BLDC v0.1, v0.2, v0.3)

Currently tested and known to work host platforms:
--------------------------------------------------
* Linux 32bit and 64bit (Debian unstable)
* Mac OS X Snow Leopard with MacPorts

Notes for Mac OS X users:
-------------------------
You need to install gmp, mpfr, mpc and libiconv packages using MacPorts,
DarwinPorts or fink. GCC-4.5.1 requires them.

port install gmp mpfr libmpc

For xml support in gdb you may want to install expat too. And add the 
--with-expat parameter to GDB target.

Notes for Linux users:
----------------------
You need to install several packages on debian just run:

apt-get install flex bison libgmp3-dev libmpfr-dev libncurses5-dev \
libmpc-dev autoconf texinfo build-essential

You may want to try running the following comand instead too:

apt-get build-dep gcc-4.5

For xml support in gdb you may want to install libexpat1 and libexpat1-dev 
too. 

How to submit improvements and patches
--------------------------------------
As more and more people start to submit patches and improvements to
Summon-Arm-Toolchain (SAR) this section seems to become necessary.

First of all any way of submission is appreciated, if you just want to dump
your version of the script to us feel free to do so. Still if you want your
improvements and fixes to go upstream quicker there is a good way to do that.

1) Create an account on GitHub. (or some other git hosting service, if you
   really have to)
2) Fork the main SAR repository.
3) Clone the forked repository to your disk
4) Change the script, try to make small changes adding one feature or bugfix at
   a time (That makes review much easier for us).
5) Push your changes to GitHub, or the other service you chose
6) Test your changes, by compiling the toolchain. (You probably want to do that
   with different options)
7) Make sure that everything still works
8) Test a little bit more
9) Click on pull request on GitHub or drop us a line so that we can pull your
   changes

I know that sounds like a lot of work, but if you don't we have to do it and that means that your awesome improvement or bugfix will take longer to be integrated into the official script. And as you we want everyone to profit from such changes sooner then later. :)