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| CentOS 7 | 3.10 | 2.17 | 4.8.5 | - 25| Ubuntu 16.04 LTS xenial | 4.4 | 2.23 | 5.3.1 | - 26| Debian 9 stretch (oldstable) | 4.9.30 | 2.24 | 6.3.0 | 3.8 27|============================================================== 28 29Older distributions are not officially supported, which means that it 30may or may not work. It all depends on your luck. It should be possible 31to compile latest LTP even on slightly older distributions than we 32support with a few manual tweaks, e.g. disabling manually tests for 33newly added syscalls, etc. Trivial fixes/workarounds may be accepted, 34but users are encouraged to move to a newer distro. 35 36If latest LTP cannot be compiled even with some amount of workarounds, 37you may result to older LTP releases, however these are _not_ supported 38in any way. Also if you are trying to run LTP on more than 10 years old 39distribution you may as well reconsider you life choices. 40 411.2 Tested architectures 42~~~~~~~~~~~~~~~~~~~~~~~~ 43 44[align="center",options="header"] 45|================================== 46| arch | build 47| x86_64 | native 48| x86 emulation | native 49| aarch64 | cross compilation 50| ppc64le | cross compilation 51| s390x | cross compilation 52|================================== 53 541.3 Supported libc 55~~~~~~~~~~~~~~~~~~ 56 57[align="center",options="header"] 58|================================== 59| Libc | Note 60| https://www.gnu.org/software/libc/[GNU C Library (glibc)] | Targetted libc, tested both compilation and actual test results. 61| https://uclibc-ng.org/[uClibc-ng] | Although not being tested it should work as well as it attempt to maintain a glibc compatible interface. 62| https://www.uclibc.org/[uClibc] | Older https://www.uclibc.org/[uClibc] might have problems. 63| https://musl.libc.org/[musl] | Not yet fully supported (see 64 https://github.com/linux-test-project/ltp/blob/master/ci/alpine.sh[CI script] 65 for list of files which need to be deleted in order to compile under musl). 66| binder (Android) | Please use https://android.googlesource.com/platform/external/ltp/[AOSP fork]. 67