Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 1 | Arm Optimized Routines |
| 2 | ---------------------- |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 3 | |
Szabolcs Nagy | 709020e | 2019-11-27 15:00:10 +0000 | [diff] [blame] | 4 | This repository contains implementations of library functions |
Szabolcs Nagy | 11253b0 | 2018-11-12 11:10:57 +0000 | [diff] [blame] | 5 | provided by Arm under MIT License (See LICENSE). Contributions |
Szabolcs Nagy | dbb919d | 2020-01-02 17:15:16 +0000 | [diff] [blame^] | 6 | to this project are accepted, but Contributors have to sign an |
| 7 | Assignment Agreement, please follow the instructions in |
| 8 | contributor-agreement.pdf. This is needed so upstreaming code |
| 9 | to projects that require copyright assignment is possible. |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 10 | |
Szabolcs Nagy | 709020e | 2019-11-27 15:00:10 +0000 | [diff] [blame] | 11 | Regular quarterly releases are tagged as vYY.MM (e.g. v19.11). |
| 12 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 13 | Source code layout: |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 14 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 15 | build/ - build directory (created by make). |
Szabolcs Nagy | 0af9fce | 2019-07-18 10:21:43 +0100 | [diff] [blame] | 16 | math/ - math subproject sources. |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 17 | math/include/ - math library public headers. |
Szabolcs Nagy | 0af9fce | 2019-07-18 10:21:43 +0100 | [diff] [blame] | 18 | math/test/ - math test and benchmark related sources. |
| 19 | math/tools/ - tools used for designing the algorithms. |
Szabolcs Nagy | 6b59443 | 2019-07-18 17:45:08 +0100 | [diff] [blame] | 20 | string/ - string routines subproject sources. |
| 21 | string/include/ - string library public headers. |
| 22 | string/test/ - string test and benchmark related sources. |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 23 | |
Szabolcs Nagy | 0af9fce | 2019-07-18 10:21:43 +0100 | [diff] [blame] | 24 | The steps to build the target libraries and run the tests: |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 25 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 26 | cp config.mk.dist config.mk |
| 27 | # edit config.mk if necessary ... |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 28 | make |
| 29 | make check |
| 30 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 31 | Or building outside of the source directory: |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 32 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 33 | ln -s path/to/src/Makefile Makefile |
| 34 | cp path/to/src/config.mk.dist config.mk |
| 35 | echo 'srcdir = path/to/src' >> config.mk |
| 36 | # further edits to config.mk |
| 37 | make |
| 38 | make check |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 39 | |
Szabolcs Nagy | 39dc36a | 2019-10-08 10:46:50 +0100 | [diff] [blame] | 40 | Or building and testing the math subproject only: |
| 41 | |
| 42 | make all-math |
| 43 | make check-math |
| 44 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 45 | The test system requires libmpfr and libmpc. |
Szabolcs Nagy | 32fe1c5 | 2019-10-08 10:41:03 +0100 | [diff] [blame] | 46 | For example on debian linux they can be installed as: |
| 47 | |
| 48 | sudo apt-get install libmpfr-dev libmpc-dev |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 49 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 50 | For cross build, CROSS_COMPILE should be set in config.mk and EMULATOR |
| 51 | should be set for cross testing (e.g. using qemu-user or remote access |
| 52 | to a target machine), see the examples in config.mk.dist. |