Add initial GitLab CI support
* .gitlab-ci.yml: New file. * travis-build.sh: Print $CC -print-multi-lib. Print config.log in case of configure failure. * travis-install.sh: Check sudo availability. Install autoconf, automake, file, gawk, gcc-multilib, git, gzip, make, and xz-utils for all targets. (musl-gcc): Install ca-certificates.
This commit is contained in:
parent
acffeae467
commit
66b37bb737
37
.gitlab-ci.yml
Normal file
37
.gitlab-ci.yml
Normal file
@ -0,0 +1,37 @@
|
||||
image: "ubuntu:17.10"
|
||||
|
||||
before_script:
|
||||
- ./travis-install.sh
|
||||
|
||||
variables:
|
||||
GIT_DEPTH: "2147483647"
|
||||
SLEEP_A_BIT: "sleep 0.2"
|
||||
VERBOSE: "1"
|
||||
|
||||
gcc-x86_64:
|
||||
stage: test
|
||||
script: ./travis-build.sh
|
||||
variables:
|
||||
CC: "gcc"
|
||||
TARGET: "x86_64"
|
||||
|
||||
gcc-x86:
|
||||
stage: test
|
||||
script: ./travis-build.sh
|
||||
variables:
|
||||
CC: "gcc"
|
||||
TARGET: "x86"
|
||||
|
||||
clang-x86_64:
|
||||
stage: test
|
||||
script: ./travis-build.sh
|
||||
variables:
|
||||
CC: "clang"
|
||||
TARGET: "x86_64"
|
||||
|
||||
clang-x86:
|
||||
stage: test
|
||||
script: ./travis-build.sh
|
||||
variables:
|
||||
CC: "clang"
|
||||
TARGET: "x86"
|
@ -49,6 +49,7 @@ libc="$(ldd /bin/sh |sed -n 's|^[^/]*\(/[^ ]*/libc\.so[^ ]*\).*|\1|p' |head -1)"
|
||||
$libc |head -1
|
||||
file -L /bin/sh
|
||||
$CC --version |head -1
|
||||
$CC -print-multi-lib ||:
|
||||
make --version |head -1
|
||||
autoconf --version |head -1
|
||||
automake --version |head -1
|
||||
@ -62,7 +63,11 @@ export CC_FOR_BUILD="$CC"
|
||||
./bootstrap
|
||||
./configure --enable-maintainer-mode \
|
||||
${DISTCHECK_CONFIGURE_FLAGS-} \
|
||||
#
|
||||
|| {
|
||||
rc=$?
|
||||
cat config.log
|
||||
exit $rc
|
||||
}
|
||||
|
||||
j=-j`getconf _NPROCESSORS_ONLN 2> /dev/null` || j=
|
||||
|
||||
|
@ -1,21 +1,24 @@
|
||||
#!/bin/sh -ex
|
||||
|
||||
type sudo >/dev/null 2>&1 && sudo=sudo || sudo=
|
||||
common_packages='autoconf automake file gawk gcc-multilib git gzip make xz-utils'
|
||||
|
||||
updated=
|
||||
apt_get_install()
|
||||
{
|
||||
[ -n "$updated" ] || {
|
||||
sudo apt-get -qq update
|
||||
$sudo apt-get -qq update
|
||||
updated=1
|
||||
}
|
||||
sudo apt-get -qq --no-install-suggests --no-install-recommends \
|
||||
$sudo apt-get -qq --no-install-suggests --no-install-recommends \
|
||||
install -y "$@"
|
||||
}
|
||||
|
||||
case "$KHEADERS" in
|
||||
*/*)
|
||||
git clone --depth=1 https://github.com/"$KHEADERS" kernel
|
||||
sudo make -C kernel headers_install INSTALL_HDR_PATH=/opt/kernel
|
||||
sudo rm -rf kernel
|
||||
$sudo make -C kernel headers_install INSTALL_HDR_PATH=/opt/kernel
|
||||
$sudo rm -rf kernel
|
||||
KHEADERS_INC=/opt/kernel/include
|
||||
;;
|
||||
*)
|
||||
@ -25,17 +28,17 @@ esac
|
||||
|
||||
case "$CC" in
|
||||
gcc)
|
||||
apt_get_install gcc-multilib
|
||||
apt_get_install $common_packages
|
||||
;;
|
||||
gcc-*)
|
||||
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
||||
apt_get_install gcc-multilib "$CC"-multilib
|
||||
$sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
||||
apt_get_install $common_packages "$CC"-multilib
|
||||
;;
|
||||
clang-*)
|
||||
apt_get_install gcc-multilib "$CC"
|
||||
clang*)
|
||||
apt_get_install $common_packages "$CC"
|
||||
;;
|
||||
musl-gcc)
|
||||
apt_get_install gcc-multilib
|
||||
apt_get_install $common_packages ca-certificates
|
||||
git clone --depth=1 https://github.com/strace/musl
|
||||
cd musl
|
||||
CC=gcc
|
||||
@ -51,10 +54,10 @@ case "$CC" in
|
||||
esac
|
||||
./configure --prefix=/opt/musl --exec-prefix=/usr ${build}
|
||||
make
|
||||
sudo make install
|
||||
$sudo make install
|
||||
cd -
|
||||
rm -rf musl
|
||||
sudo ln -s \
|
||||
$sudo ln -s \
|
||||
$KHEADERS_INC/asm* \
|
||||
$KHEADERS_INC/linux \
|
||||
$KHEADERS_INC/mtd \
|
||||
|
Loading…
x
Reference in New Issue
Block a user