2 # This script expects to be invoked from the base fio directory.
5 SCRIPT_DIR=$(dirname "$0")
6 # shellcheck disable=SC1091
7 . "${SCRIPT_DIR}/common.sh"
12 cat <<DPKGCFG | sudo tee /etc/dpkg/dpkg.cfg.d/dpkg-speedup > /dev/null
15 # Don't install documentation
16 path-exclude=/usr/share/man/*
17 path-exclude=/usr/share/locale/*/LC_MESSAGES/*.mo
18 path-exclude=/usr/share/doc/*
20 # Packages available on i686 and x86_64
30 case "${CI_TARGET_ARCH}" in
32 sudo dpkg --add-architecture i386
33 pkgs=("${pkgs[@]/%/:i386}")
45 libgoogle-perftools-dev
57 echo "Removing libunwind-14-dev because of conflicts with libunwind-dev"
58 sudo apt remove -y libunwind-14-dev
62 # Architecture-independent packages and packages for which we don't
63 # care about the architecture.
70 echo "Updating APT..."
71 sudo apt-get -qq update
72 echo "Installing packages... ${pkgs[@]}"
73 sudo apt-get install -o APT::Immediate-Configure=false --no-install-recommends -qq -y "${pkgs[@]}"
74 if [ "${CI_TARGET_ARCH}" == "x86_64" ]; then
75 # install librpma from sources
76 ci/actions-install-librpma.sh
85 # Assumes homebrew and python3 are already installed
86 #echo "Updating homebrew..."
87 #brew update >/dev/null 2>&1
88 echo "Installing packages..."
89 HOMEBREW_NO_AUTO_UPDATE=1 brew install cunit libnfs sphinx-doc
90 brew link sphinx-doc --force
91 pip3 install scipy six statsmodels
95 pip3 install scipy six statsmodels sphinx
99 case "${CI_TARGET_BUILD}" in
101 echo "Installing Android NDK..."
102 wget --quiet https://dl.google.com/android/repository/android-ndk-r24-linux.zip
103 unzip -q android-ndk-r24-linux.zip
110 install_function="install_${CI_TARGET_OS}"
113 echo "Python3 path: $(type -p python3 2>&1)"
114 echo "Python3 version: $(python3 -V 2>&1)"