]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/arm-optimized-routines/README
contrib/spleen: update to Spleen 2.0.0
[FreeBSD/FreeBSD.git] / contrib / arm-optimized-routines / README
1 Arm Optimized Routines
2 ----------------------
3
4 This repository contains implementations of library functions
5 provided by Arm under MIT License (See LICENSE). Contributions
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.
10
11 Regular quarterly releases are tagged as vYY.MM, the latest
12 release is v21.02.
13
14 Source code layout:
15
16 build/          - build directory (created by make).
17 math/           - math subproject sources.
18 math/include/   - math library public headers.
19 math/test/      - math test and benchmark related sources.
20 math/tools/     - tools used for designing the algorithms.
21 networking/     - networking subproject sources.
22 networking/include/ - networking library public headers.
23 networking/test/ - networking test and benchmark related sources.
24 string/         - string routines subproject sources.
25 string/include/ - string library public headers.
26 string/test/    - string test and benchmark related sources.
27
28 The steps to build the target libraries and run the tests:
29
30 cp config.mk.dist config.mk
31 # edit config.mk if necessary ...
32 make
33 make check
34
35 Or building outside of the source directory:
36
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
43
44 Or building and testing the math subproject only:
45
46 make all-math
47 make check-math
48
49 The test system requires libmpfr and libmpc.
50 For example on debian linux they can be installed as:
51
52 sudo apt-get install libmpfr-dev libmpc-dev
53
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.