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