• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Supported kernel, libc, toolchain versions
2==========================================
3
41. Build testing with GitHub Actions
5------------------------------------
6
7We test master branch in https://github.com/linux-test-project/ltp/actions[GitHub Actions]
8to ensure LTP builds on various distributions including old, current and bleeding edge.
9We test both gcc and clang toolchains, various architectures with cross-compilation.
10For list of tested distros see
11https://github.com/linux-test-project/ltp/blob/master/.github/workflows/ci.yml[.github/workflows/ci.yml].
12
13
14NOTE: GitHub Actions does only build testing, passing the CI means only that
15      the test compiles fine on variety of different distributions and releases.
16      GitHub Actions also uses the latest distribution image of a particular release.
17
181.1 Oldest tested distributions
19~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20
21[align="center",options="header"]
22|===============================================================
23| Distro                       | kernel  | glibc | gcc   | clang
24| openSUSE Leap 42.2           | 4.4     | 2.22  | 4.8.5 | -
25| Ubuntu 18.04 LTS bionic      | 4.15    | 2.27  | 7.3.0 | -
26|===============================================================
27
28Older distributions are not officially supported, which means that it
29may or may not work. It all depends on your luck. It should be possible
30to compile latest LTP even on slightly older distributions than we
31support with a few manual tweaks, e.g. disabling manually tests for
32newly added syscalls, etc. Trivial fixes/workarounds may be accepted,
33but users are encouraged to move to a newer distro.
34
35If latest LTP cannot be compiled even with some amount of workarounds,
36you may result to older LTP releases, however these are _not_ supported
37in any way. Also if you are trying to run LTP on more than 10 years old
38distribution you may as well reconsider you life choices.
39
401.2 Tested architectures
41~~~~~~~~~~~~~~~~~~~~~~~~
42
43[align="center",options="header"]
44|==================================
45| arch          | build
46| x86_64        | native
47| x86 emulation | native
48| aarch64       | cross compilation
49| ppc64le       | cross compilation
50| s390x         | cross compilation
51|==================================
52
531.3 Minimal supported kernel version
54~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55
56Minimal supported kernel version is 3.10.
57
581.4 Supported libc
59~~~~~~~~~~~~~~~~~~
60
61[align="center",options="header"]
62|==================================
63| Libc      | Note
64| https://www.gnu.org/software/libc/[GNU C Library (glibc)] | Targeted libc, tested both compilation and actual test results.
65| https://uclibc-ng.org/[uClibc-ng] | Although not being tested it should work as well as it attempt to maintain a glibc compatible interface.
66| https://www.uclibc.org/[uClibc]   | Older https://www.uclibc.org/[uClibc] might have problems.
67| https://musl.libc.org/[musl] | Not yet fully supported (see
68                                 https://github.com/linux-test-project/ltp/blob/master/ci/alpine.sh[CI script]
69                                 for list of files which need to be deleted in order to compile under musl).
70| binder (Android) | Please use https://android.googlesource.com/platform/external/ltp/[AOSP fork].
71|==================================
72
731.5 Used C standard
74~~~~~~~~~~~~~~~~~~~
75
76LTP compiles with '-std=gnu99'.
77