aboutsummaryrefslogtreecommitdiff
path: root/ci
diff options
context:
space:
mode:
Diffstat (limited to 'ci')
-rwxr-xr-xci/ciimage/arch/install.sh1
-rw-r--r--ci/ciimage/cuda-cross/image.json8
-rwxr-xr-xci/ciimage/cuda-cross/install.sh38
-rwxr-xr-xci/ciimage/fedora/install.sh9
-rwxr-xr-xci/ciimage/gentoo/install.sh2
-rwxr-xr-xci/ciimage/opensuse/install.sh9
-rwxr-xr-xci/ciimage/ubuntu-rolling/install.sh2
-rwxr-xr-xci/combine_cov.sh10
-rw-r--r--ci/coverage.ps114
-rw-r--r--ci/run.ps14
-rw-r--r--ci/usercustomize.py5
11 files changed, 67 insertions, 35 deletions
diff --git a/ci/ciimage/arch/install.sh b/ci/ciimage/arch/install.sh
index de43cb2..4602d8f 100755
--- a/ci/ciimage/arch/install.sh
+++ b/ci/ciimage/arch/install.sh
@@ -15,6 +15,7 @@ pkgs=(
doxygen vulkan-headers vulkan-icd-loader vulkan-validation-layers openssh mercurial gtk-sharp-2 qt5-tools
libwmf cmake netcdf-fortran openmpi nasm gnustep-base gettext
python-lxml hotdoc rust-bindgen qt6-base qt6-tools qt6-declarative wayland wayland-protocols
+ intel-oneapi-mkl
# cuda
)
diff --git a/ci/ciimage/cuda-cross/image.json b/ci/ciimage/cuda-cross/image.json
new file mode 100644
index 0000000..062322e
--- /dev/null
+++ b/ci/ciimage/cuda-cross/image.json
@@ -0,0 +1,8 @@
+{
+ "base_image": "ubuntu:22.04",
+ "args": ["--only", "cuda", "--cross", "cuda-cross.json"],
+ "env": {
+ "CI": "1",
+ "MESON_CI_JOBNAME": "linux-cuda-cross"
+ }
+}
diff --git a/ci/ciimage/cuda-cross/install.sh b/ci/ciimage/cuda-cross/install.sh
new file mode 100755
index 0000000..6b5fe7f
--- /dev/null
+++ b/ci/ciimage/cuda-cross/install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+set -e
+
+source /ci/common.sh
+
+export DEBIAN_FRONTEND=noninteractive
+export LANG='C.UTF-8'
+
+apt-get -y update
+apt-get -y upgrade
+apt-get -y install wget
+
+# Cuda repo + keyring.
+wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
+apt-get -y install ./cuda-keyring_1.1-1_all.deb
+
+# Cuda cross repo.
+echo "deb [signed-by=/usr/share/keyrings/cuda-archive-keyring.gpg] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/cross-linux-aarch64/ /" \
+ > /etc/apt/sources.list.d/cuda-ubuntu2204-cross-linux-aarch64.list
+apt-get -y update
+
+pkgs=(
+ clang cmake crossbuild-essential-arm64 cuda-cross-aarch64
+ cuda-nvcc-12-9 git libglib2.0-dev ninja-build pkg-config python3-pip
+)
+
+apt-get -y install "${pkgs[@]}"
+
+install_minimal_python_packages
+
+# Tests need nvcc in PATH in order to run cuda tests.
+echo "export PATH=\$PATH:/usr/local/cuda/bin" >> /ci/env_vars.sh
+
+# cleanup
+apt-get -y clean
+apt-get -y autoclean
+rm cuda-keyring_1.1-1_all.deb
diff --git a/ci/ciimage/fedora/install.sh b/ci/ciimage/fedora/install.sh
index aa87655..2845555 100755
--- a/ci/ciimage/fedora/install.sh
+++ b/ci/ciimage/fedora/install.sh
@@ -17,6 +17,8 @@ pkgs=(
qt6-qtdeclarative-devel qt6-qtbase-devel qt6-qttools-devel qt6-linguist qt6-qtbase-private-devel
libwmf-devel valgrind cmake openmpi-devel nasm gnustep-base-devel gettext-devel ncurses-devel
libxml2-devel libxslt-devel libyaml-devel glib2-devel json-glib-devel libgcrypt-devel wayland-devel wayland-protocols-devel
+ # HACK: remove npm once we switch back to hotdoc sdist
+ nodejs-npm
)
# Sys update
@@ -24,7 +26,12 @@ dnf -y upgrade
# Install deps
dnf -y install "${pkgs[@]}"
-install_python_packages hotdoc
+# HACK: build hotdoc from git repo since current sdist is broken on modern compilers
+# change back to 'hotdoc' once it's fixed
+install_python_packages git+https://github.com/hotdoc/hotdoc
+
+# HACK: uninstall npm after building hotdoc, remove when we remove npm
+dnf -y remove nodejs-npm
# Cleanup
dnf -y clean all
diff --git a/ci/ciimage/gentoo/install.sh b/ci/ciimage/gentoo/install.sh
index 30b0299..909a595 100755
--- a/ci/ciimage/gentoo/install.sh
+++ b/ci/ciimage/gentoo/install.sh
@@ -108,7 +108,7 @@ cat <<-EOF > /etc/portage/package.use/ci
# Some of these settings are needed just to get the binpkg but
# aren't negative to have anyway
- sys-devel/gcc ada d
+ sys-devel/gcc ada d jit
>=sys-devel/gcc-13 ada objc objc++
sys-devel/gcc pgo lto
diff --git a/ci/ciimage/opensuse/install.sh b/ci/ciimage/opensuse/install.sh
index 7a76071..18f4ea7 100755
--- a/ci/ciimage/opensuse/install.sh
+++ b/ci/ciimage/opensuse/install.sh
@@ -19,6 +19,8 @@ pkgs=(
boost-devel libboost_date_time-devel libboost_filesystem-devel libboost_locale-devel libboost_system-devel
libboost_test-devel libboost_log-devel libboost_regex-devel
libboost_python3-devel libboost_regex-devel
+ # HACK: remove npm once we switch back to hotdoc sdist
+ npm
)
# Sys update
@@ -27,7 +29,12 @@ zypper --non-interactive update
# Install deps
zypper install -y "${pkgs[@]}"
-install_python_packages hotdoc
+# HACK: build hotdoc from git repo since current sdist is broken on modern compilers
+# change back to 'hotdoc' once it's fixed
+install_python_packages git+https://github.com/hotdoc/hotdoc
+
+# HACK: uninstall npm after building hotdoc, remove when we remove npm
+zypper remove -y -u npm
echo 'export PKG_CONFIG_PATH="/usr/lib64/mpi/gcc/openmpi3/lib64/pkgconfig:$PKG_CONFIG_PATH"' >> /ci/env_vars.sh
diff --git a/ci/ciimage/ubuntu-rolling/install.sh b/ci/ciimage/ubuntu-rolling/install.sh
index 1c0891c..8a2561b 100755
--- a/ci/ciimage/ubuntu-rolling/install.sh
+++ b/ci/ciimage/ubuntu-rolling/install.sh
@@ -69,7 +69,7 @@ rustup target add arm-unknown-linux-gnueabihf
# Use the GitHub API to get the latest release information
LATEST_RELEASE=$(wget -qO- "https://api.github.com/repos/ziglang/zig/releases/latest")
ZIGVER=$(echo "$LATEST_RELEASE" | jq -r '.tag_name')
-ZIG_BASE="zig-linux-x86_64-$ZIGVER"
+ZIG_BASE="zig-x86_64-linux-$ZIGVER"
wget "https://ziglang.org/download/$ZIGVER/$ZIG_BASE.tar.xz"
tar xf "$ZIG_BASE.tar.xz"
rm -rf "$ZIG_BASE.tar.xz"
diff --git a/ci/combine_cov.sh b/ci/combine_cov.sh
deleted file mode 100755
index 99a503b..0000000
--- a/ci/combine_cov.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/bash
-
-echo "Combining coverage reports..."
-coverage combine
-
-echo "Generating XML report..."
-coverage xml
-
-echo "Printing report"
-coverage report
diff --git a/ci/coverage.ps1 b/ci/coverage.ps1
deleted file mode 100644
index ebd7cd4..0000000
--- a/ci/coverage.ps1
+++ /dev/null
@@ -1,14 +0,0 @@
-echo ""
-echo ""
-echo "=== Gathering coverage report ==="
-echo ""
-
-python3 -m coverage combine
-python3 -m coverage xml
-python3 -m coverage report
-
-# Currently codecov.py does not handle Azure, use this fork of a fork to get it
-# working without requiring a token
-git clone https://github.com/mensinda/codecov-python
-python3 -m pip install --ignore-installed ./codecov-python
-python3 -m codecov -f .coverage/coverage.xml -n "VS$env:compiler $env:arch $env:backend" -c $env:SOURCE_VERSION
diff --git a/ci/run.ps1 b/ci/run.ps1
index d781cf7..5b754bd 100644
--- a/ci/run.ps1
+++ b/ci/run.ps1
@@ -92,7 +92,7 @@ python --version
# Needed for running unit tests in parallel.
echo ""
-python -m pip --disable-pip-version-check install --upgrade pefile pytest-xdist pytest-subtests fastjsonschema coverage
+python -m pip --disable-pip-version-check install --upgrade pefile pytest-xdist pytest-subtests fastjsonschema
# Needed for running the Cython tests
python -m pip --disable-pip-version-check install cython
@@ -102,6 +102,6 @@ echo "=== Start running tests ==="
# Starting from VS2019 Powershell(?) will fail the test run
# if it prints anything to stderr. Python's test runner
# does that by default so we need to forward it.
-cmd /c "python 2>&1 ./tools/run_with_cov.py run_tests.py --backend $env:backend $env:extraargs"
+cmd /c "python 2>&1 run_tests.py --backend $env:backend $env:extraargs"
exit $LastExitCode
diff --git a/ci/usercustomize.py b/ci/usercustomize.py
deleted file mode 100644
index d72c6ad..0000000
--- a/ci/usercustomize.py
+++ /dev/null
@@ -1,5 +0,0 @@
-# SPDX-License-Identifier: Apache-2.0
-# Copyright 2021 The Meson development team
-
-import coverage
-coverage.process_startup()