travis: build and test on Linux with musl libc and busybox
Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Đoàn Trần Công Danh committed
Apr 4, 2020 at 08:08 UTC
e0f8690dee7ec9373657eb2ecef9c8d88d0ece08
5 files changed
+24
.travis.yml
+8
index 069aeeff3c..0cfc3c3428 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -33,6 +33,14 @@ matrix:
- docker
before_install:
script: ci/run-docker.sh
+ - env: jobname=linux-musl
+ os: linux
+ compiler:
+ addons:
+ services:
+ - docker
+ before_install:
+ script: ci/run-docker.sh
- env: jobname=StaticAnalysis
os: linux
compiler:
ci/install-docker-dependencies.sh
+4
index a104c61d29..26a6689766 100755
--- a/ci/install-docker-dependencies.sh
+++ b/ci/install-docker-dependencies.sh
@@ -11,4 +11,8 @@ Linux32)
libssl-dev libexpat-dev gettext python >/dev/null
'
;;
+linux-musl)
+ apk add --update build-base curl-dev openssl-dev expat-dev gettext \
+ pcre2-dev python3 musl-libintl perl-utils ncurses >/dev/null
+ ;;
esac
ci/lib.sh
+5
index 8048335281..e9a5c51425 100755
--- a/ci/lib.sh
+++ b/ci/lib.sh
@@ -195,6 +195,11 @@ GIT_TEST_GETTEXT_POISON)
Linux32)
CC=gcc
;;
+linux-musl)
+ CC=gcc
+ MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/python3 USE_LIBPCRE2=Yes"
+ MAKEFLAGS="$MAKEFLAGS NO_REGEX=Yes ICONV_OMITS_BOM=Yes"
+ ;;
esac
MAKEFLAGS="$MAKEFLAGS CC=${CC:-cc}"
ci/run-docker-build.sh
+4
index 4a153492ba..8d47a5fda3 100755
--- a/ci/run-docker-build.sh
+++ b/ci/run-docker-build.sh
@@ -18,6 +18,10 @@ case "$jobname" in
Linux32)
switch_cmd="linux32 --32bit i386"
;;
+linux-musl)
+ switch_cmd=
+ useradd () { adduser -D "$@"; }
+ ;;
*)
exit 1
;;
ci/run-docker.sh
+3
index 3881f99b53..37fa372052 100755
--- a/ci/run-docker.sh
+++ b/ci/run-docker.sh
@@ -9,6 +9,9 @@ case "$jobname" in
Linux32)
CI_CONTAINER="daald/ubuntu32:xenial"
;;
+linux-musl)
+ CI_CONTAINER=alpine
+ ;;
*)
exit 1
;;