diff options
Diffstat (limited to '.gitlab/ci/cibuild-setup-ubuntu.sh')
-rwxr-xr-x | .gitlab/ci/cibuild-setup-ubuntu.sh | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/.gitlab/ci/cibuild-setup-ubuntu.sh b/.gitlab/ci/cibuild-setup-ubuntu.sh new file mode 100755 index 0000000..07b0990 --- /dev/null +++ b/.gitlab/ci/cibuild-setup-ubuntu.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +set -ex + +PACKAGES=( + git make autoconf automake autopoint pkg-config libtool libtool-bin + gettext libssl-dev libdevmapper-dev libpopt-dev uuid-dev libsepol-dev + libjson-c-dev libssh-dev libblkid-dev tar libargon2-0-dev libpwquality-dev + sharutils dmsetup jq xxd expect keyutils netcat passwd openssh-client sshpass + asciidoctor +) + +COMPILER="${COMPILER:?}" +COMPILER_VERSION="${COMPILER_VERSION:?}" + +grep -E '^deb' /etc/apt/sources.list > /etc/apt/sources.list~ +sed -Ei 's/^deb /deb-src /' /etc/apt/sources.list~ +cat /etc/apt/sources.list~ >> /etc/apt/sources.list + +apt-get -y update --fix-missing +DEBIAN_FRONTEND=noninteractive apt-get -yq install software-properties-common wget lsb-release +RELEASE="$(lsb_release -cs)" + +if [[ $COMPILER == "gcc" ]]; then + # Latest gcc stack deb packages provided by + # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test + add-apt-repository -y ppa:ubuntu-toolchain-r/test + PACKAGES+=(gcc-$COMPILER_VERSION) +elif [[ $COMPILER == "clang" ]]; then + wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - + add-apt-repository "deb http://apt.llvm.org/${RELEASE}/ llvm-toolchain-${RELEASE}-${COMPILER_VERSION} main" + + # scan-build + PACKAGES+=(clang-tools-$COMPILER_VERSION clang-$COMPILER_VERSION lldb-$COMPILER_VERSION lld-$COMPILER_VERSION clangd-$COMPILER_VERSION) + PACKAGES+=(perl) +else + exit 1 +fi + +apt-get -y update --fix-missing +DEBIAN_FRONTEND=noninteractive apt-get -yq install "${PACKAGES[@]}" +apt-get -y build-dep cryptsetup + +echo "====================== VERSIONS ===================" +if [[ $COMPILER == "clang" ]]; then + echo "Using scan-build${COMPILER_VERSION:+-$COMPILER_VERSION}" +fi + +${COMPILER}-$COMPILER_VERSION -v +echo "====================== END VERSIONS ===================" |