| 1 | = Canadian Cross Compiler = |
| 2 | |
| 3 | |
| 4 | |
| 5 | [[TOC(TBR/Delete/Canadian_Cross_Compiler, depth=2)]] |
| 6 | |
| 7 | |
| 8 | '''Mentors:''' rtems-devel |
| 9 | |
| 10 | '''Students:''' Help Wanted |
| 11 | |
| 12 | '''Status:''' Planning |
| 13 | |
| 14 | '''Introduction:''' Definition of a [http://en.wikipedia.org/wiki/Cross_compiler#Canadian_Cross Canadian Cross Compiler]. MinGW lacks the capability to build a native gcc-4.7 compiler, the same bug prevents it from building a sparc-rtems4.11-gcc compiler. |
| 15 | |
| 16 | '''Goal:''' What is desired is a clear set of directions for how to build, and distribute, this cross compiler either on Fedora, or on Cygwin. |
| 17 | |
| 18 | # '''project deliverables:''' |
| 19 | ## '''code:''' script to generate one big package that can be installed by minGW-get (or other package management tool on Windows) |
| 20 | ## '''docs:''' tutorial that explains how to build such a package. Every line of code commented. |
| 21 | ## '''testing:''' run the script on the build machine (say, Fedora), extract the toolset from the package on a freshly installed version of Windows on a VM, run gcc-testing on toolset on the host machine using a non-x86 target (say sparc), running the ticker demo on a non-x86 target, say sparc |
| 22 | # '''required/suggested methodology:''' look at the packages for minGW and cygwin, make it match that format. |
| 23 | # '''standards of quality:''' |
| 24 | ## '''code:''' the toolset extracts on the host through the utilized package management system, RTEMS can be built successfully, from the toolset. |
| 25 | ## '''testing:''' Mentors can follow the directions on the tutorial and build the toolset. Targets to be tested are: arm, sparc, i386, others as time allows |
| 26 | # '''Possible goal extensions beyond the main objective:''' A tutorial explaining how to test the canadian cross-compiler. |
| 27 | |
| 28 | '''Requirements:''' List the requirements and level of expertise you estimate are required by the developer tackling this project will have to have: |
| 29 | # '''Required level of programming language(s):''' |
| 30 | ## Shell script: moderate |
| 31 | ## Virtual machines: moderate |
| 32 | # '''specific areas of RTEMS or tools:''' |
| 33 | ## patching |
| 34 | ## building a cross compiler |
| 35 | ## '''Level of familiarity with RTEMS:''' none |
| 36 | ## '''Cross-development:''' moderate |
| 37 | ## '''GNU/Linux:''' moderate |
| 38 | ## '''Development/documentation/testing tools:''' moderate |
| 39 | ## '''Mathematical/algorithmic background:''' none |
| 40 | ## '''Other desirable skills:''' the patience of J*b, and the ability to explain things to people who don't know what your talking about. |
| 41 | |
| 42 | '''Resources:''' Chris Johns, Sebastian Huber, papers, etc that may help you in this project. |
| 43 | |
| 44 | '''Acknowledgements''' |
| 45 | * who helped and did work |
| 46 | = Miscellaneous Sections = |
| 47 | |
| 48 | As the project progresses, you will need to add build instructions, etc and this page will evolve from a project description into a HOWTO. |
| 49 | = References = |
| 50 | |
| 51 | |
| 52 | * TBD |
| 53 | |
| 54 | '''Other sections:''' If you have more to say about the project that doesn't fit in the proposed sections of this template, feel free to add other sections at will. |