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 | a0ad28d | 2020-02-28 14:08:59 +0000 | [diff] [blame] | 11 | Regular quarterly releases are tagged as vYY.MM, the latest |
Szabolcs Nagy | 58af293 | 2020-11-16 12:14:49 +0000 | [diff] [blame] | 12 | release is v20.11. |
Szabolcs Nagy | 709020e | 2019-11-27 15:00:10 +0000 | [diff] [blame] | 13 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 14 | Source code layout: |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 15 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 16 | build/ - build directory (created by make). |
Szabolcs Nagy | 0af9fce | 2019-07-18 10:21:43 +0100 | [diff] [blame] | 17 | math/ - math subproject sources. |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 18 | math/include/ - math library public headers. |
Szabolcs Nagy | 0af9fce | 2019-07-18 10:21:43 +0100 | [diff] [blame] | 19 | math/test/ - math test and benchmark related sources. |
| 20 | math/tools/ - tools used for designing the algorithms. |
Ola Liljedahl | 6a988f6 | 2020-02-27 15:10:03 +0100 | [diff] [blame] | 21 | networking/ - networking subproject sources. |
| 22 | networking/include/ - networking library public headers. |
| 23 | networking/test/ - networking test and benchmark related sources. |
Szabolcs Nagy | 6b59443 | 2019-07-18 17:45:08 +0100 | [diff] [blame] | 24 | string/ - string routines subproject sources. |
| 25 | string/include/ - string library public headers. |
| 26 | string/test/ - string test and benchmark related sources. |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 27 | |
Szabolcs Nagy | 0af9fce | 2019-07-18 10:21:43 +0100 | [diff] [blame] | 28 | The steps to build the target libraries and run the tests: |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 29 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 30 | cp config.mk.dist config.mk |
| 31 | # edit config.mk if necessary ... |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 32 | make |
| 33 | make check |
| 34 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 35 | Or building outside of the source directory: |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 36 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 37 | ln -s path/to/src/Makefile Makefile |
| 38 | cp path/to/src/config.mk.dist config.mk |
| 39 | echo 'srcdir = path/to/src' >> config.mk |
| 40 | # further edits to config.mk |
| 41 | make |
| 42 | make check |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 43 | |
Szabolcs Nagy | 39dc36a | 2019-10-08 10:46:50 +0100 | [diff] [blame] | 44 | Or building and testing the math subproject only: |
| 45 | |
| 46 | make all-math |
| 47 | make check-math |
| 48 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 49 | The test system requires libmpfr and libmpc. |
Szabolcs Nagy | 32fe1c5 | 2019-10-08 10:41:03 +0100 | [diff] [blame] | 50 | For example on debian linux they can be installed as: |
| 51 | |
| 52 | sudo apt-get install libmpfr-dev libmpc-dev |
George Lander | da55ef9 | 2015-11-19 12:05:06 +0000 | [diff] [blame] | 53 | |
Szabolcs Nagy | 7889228 | 2018-04-24 17:10:05 +0100 | [diff] [blame] | 54 | For cross build, CROSS_COMPILE should be set in config.mk and EMULATOR |
| 55 | should be set for cross testing (e.g. using qemu-user or remote access |
| 56 | to a target machine), see the examples in config.mk.dist. |