ci: add travis ci support for native aarch64

Add Travis compilation jobs for native aarch64. gcc/clang compilations
for static/shared libraries are added.

Some limitations for current aarch64 Travis support:
1. Container is used. Huge page is not available due to security reason.
2. Missing kernel header package in Xenial distribution.

Solutions to address the limitations:
1. Not to add unit test for now. And run tests with no-huge in future.
2. Use Bionic distribution for all aarch64 jobs.

Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Acked-by: Aaron Conole <aconole@redhat.com>
This commit is contained in:
Ruifeng Wang 2020-01-13 14:26:06 +08:00 committed by David Marchand
parent aafc3ce7f2
commit 31bb45bcfd
2 changed files with 48 additions and 5 deletions

View File

@ -3,7 +3,10 @@
# need to install as 'root' since some of the unit tests won't run without it
sudo python3 -m pip install --upgrade 'meson==0.47.1'
# setup hugepages
cat /proc/meminfo
sudo sh -c 'echo 1024 > /proc/sys/vm/nr_hugepages'
cat /proc/meminfo
# skip hugepage settings if tests will not run
if [ "$RUN_TESTS" = "1" ]; then
# setup hugepages
cat /proc/meminfo
sudo sh -c 'echo 1024 > /proc/sys/vm/nr_hugepages'
cat /proc/meminfo
fi

View File

@ -115,6 +115,46 @@ matrix:
apt:
packages:
- *extra_packages
- env: DEF_LIB="static"
arch: arm64
compiler: gcc
dist: bionic
addons:
apt:
packages:
- *required_packages
- env: DEF_LIB="shared"
arch: arm64
compiler: gcc
dist: bionic
addons:
apt:
packages:
- *required_packages
- env: DEF_LIB="static"
arch: arm64
dist: bionic
compiler: clang
addons:
apt:
packages:
- *required_packages
- env: DEF_LIB="shared"
arch: arm64
dist: bionic
compiler: clang
addons:
apt:
packages:
- *required_packages
- env: DEF_LIB="shared" OPTS="-Denable_kmods=false" BUILD_DOCS=1
arch: arm64
compiler: gcc
dist: bionic
addons:
apt:
packages:
- *required_packages
- *doc_packages
script: ./.ci/${TRAVIS_OS_NAME}-build.sh