The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
1.8 KiB
69 lines
1.8 KiB
#!/bin/bash |
|
|
|
set -e |
|
|
|
source /ci/common.sh |
|
|
|
export DEBIAN_FRONTEND=noninteractive |
|
export LANG='C.UTF-8' |
|
export DC=gdc |
|
|
|
pkgs=( |
|
python3-pip libxml2-dev libxslt1-dev libyaml-dev libjson-glib-dev |
|
python3.7 python3.7-dev |
|
wget unzip cmake doxygen |
|
clang |
|
pkg-config-arm-linux-gnueabihf |
|
qt4-linguist-tools qt5-default qtbase5-private-dev |
|
python-dev |
|
libomp-dev |
|
llvm lcov |
|
ldc |
|
libclang-dev |
|
libgcrypt20-dev |
|
libgpgme-dev |
|
libhdf5-dev openssh-server |
|
libboost-python-dev libboost-regex-dev |
|
libblocksruntime-dev |
|
libperl-dev libscalapack-mpi-dev libncurses-dev |
|
itstool |
|
openjdk-11-jre |
|
) |
|
|
|
boost_pkgs=(atomic chrono date-time filesystem log regex serialization system test thread) |
|
|
|
sed -i '/^#\sdeb-src /s/^#//' "/etc/apt/sources.list" |
|
apt-get -y update |
|
apt-get -y upgrade |
|
apt-get -y install eatmydata |
|
|
|
# Base stuff |
|
eatmydata apt-get -y build-dep meson |
|
|
|
# Add boost packages |
|
for i in "${boost_pkgs[@]}"; do |
|
for j in "1.62.0" "1.65.1"; do |
|
pkgs+=("libboost-${i}${j}") |
|
done |
|
done |
|
|
|
# packages |
|
eatmydata apt-get -y install "${pkgs[@]}" |
|
|
|
# Actually select the right python version |
|
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1 \ |
|
--slave /usr/lib/x86_64-linux-gnu/pkgconfig/python3.pc python3.pc /usr/lib/x86_64-linux-gnu/pkgconfig/python-3.6.pc |
|
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2 \ |
|
--slave /usr/lib/x86_64-linux-gnu/pkgconfig/python3.pc python3.pc /usr/lib/x86_64-linux-gnu/pkgconfig/python-3.7.pc |
|
|
|
python3 -m pip install -U "${base_python_pkgs[@]}" "${python_pkgs[@]}" |
|
|
|
# Install the ninja 0.10 |
|
wget https://github.com/ninja-build/ninja/releases/download/v1.10.0/ninja-linux.zip |
|
unzip ninja-linux.zip -d /ci |
|
|
|
# cleanup |
|
apt-get -y remove ninja-build |
|
apt-get -y clean |
|
apt-get -y autoclean |
|
rm ninja-linux.zip
|
|
|