diff options
Diffstat (limited to 'ci')
-rwxr-xr-x | ci/ciimage/arch/install.sh | 1 | ||||
-rw-r--r-- | ci/ciimage/cuda-cross/image.json | 8 | ||||
-rwxr-xr-x | ci/ciimage/cuda-cross/install.sh | 38 | ||||
-rwxr-xr-x | ci/ciimage/fedora/install.sh | 9 | ||||
-rwxr-xr-x | ci/ciimage/gentoo/install.sh | 2 | ||||
-rwxr-xr-x | ci/ciimage/opensuse/install.sh | 9 | ||||
-rwxr-xr-x | ci/ciimage/ubuntu-rolling/install.sh | 2 | ||||
-rwxr-xr-x | ci/combine_cov.sh | 10 | ||||
-rw-r--r-- | ci/coverage.ps1 | 14 | ||||
-rw-r--r-- | ci/run.ps1 | 4 | ||||
-rw-r--r-- | ci/usercustomize.py | 5 |
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 @@ -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() |