blob: 7fde65a0060de5a7dfeeab80dd439e6f0081bf87 [file]
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# A script to install dependencies required for release
# verification on Ubuntu.
set -exu
codename=$(. /etc/os-release && echo ${UBUNTU_CODENAME})
case ${codename} in
bionic)
llvm=12
nlohmann_json=
python=3.8
apt-get update -y -q
apt-get install -y -q --no-install-recommends \
apt-transport-https \
ca-certificates \
gnupg \
wget
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \
echo "deb https://apt.llvm.org/${codename}/ llvm-toolchain-${codename}-${llvm} main" > \
/etc/apt/sources.list.d/llvm.list
apt-get update -y -q
apt-get install -y -q --no-install-recommends \
llvm-${llvm}-dev
;;
*)
nlohmann_json=3
python=3
apt-get update -y -q
apt-get install -y -q --no-install-recommends \
llvm-dev
;;
esac
case ${codename} in
bionic|focal)
;;
*)
apt-get update -y -q
apt-get install -y -q --no-install-recommends \
libxsimd-dev
;;
esac
apt-get install -y -q --no-install-recommends \
build-essential \
bundler \
clang \
cmake \
curl \
git \
gnupg \
libcurl4-openssl-dev \
libgirepository1.0-dev \
libglib2.0-dev \
libsqlite3-dev \
libssl-dev \
maven \
ninja-build \
nlohmann-json${nlohmann_json}-dev \
openjdk-11-jdk \
pkg-config \
python${python}-dev \
python${python}-venv \
python3-pip \
ruby-dev \
tzdata \
wget
case ${codename} in
bionic)
python${python} -m pip install -U pip
update-alternatives \
--install /usr/bin/python3 python3 /usr/bin/python${python} 1
;;
esac