build+ci: sync with ndn-cxx
Change-Id: Iff3ad63469eccb47571ba4abd3d42936f0cd8650
diff --git a/.jenkins.d/00-deps.sh b/.jenkins.d/00-deps.sh
index 7e03e98..b64145e 100755
--- a/.jenkins.d/00-deps.sh
+++ b/.jenkins.d/00-deps.sh
@@ -2,7 +2,8 @@
set -eo pipefail
APT_PKGS=(
- build-essential
+ dpkg-dev
+ g++
libboost-chrono-dev
libboost-date-time-dev
libboost-dev
@@ -14,26 +15,42 @@
libboost-thread-dev
libsqlite3-dev
libssl-dev
- pkg-config
- python3-minimal
+ pkgconf
+ python3
)
-FORMULAE=(boost openssl pkg-config)
-PIP_PKGS=()
+DNF_PKGS=(
+ boost-devel
+ gcc-c++
+ libasan
+ lld
+ openssl-devel
+ pkgconf
+ python3
+ sqlite-devel
+)
+FORMULAE=(boost openssl pkgconf)
case $JOB_NAME in
*code-coverage)
- APT_PKGS+=(lcov python3-pip)
- PIP_PKGS+=('gcovr~=5.2')
+ APT_PKGS+=(lcov)
;;
*Docs)
- APT_PKGS+=(doxygen graphviz python3-pip)
+ APT_PKGS+=(doxygen graphviz)
FORMULAE+=(doxygen graphviz)
- PIP_PKGS+=(sphinx sphinxcontrib-doxylink)
;;
esac
+install_uv() {
+ if [[ -z $GITHUB_ACTIONS && $ID_LIKE == *debian* ]]; then
+ sudo apt-get install -qy --no-install-recommends pipx
+ pipx upgrade uv || pipx install uv
+ fi
+}
+
set -x
if [[ $ID == macos ]]; then
+ export HOMEBREW_COLOR=1
+ export HOMEBREW_NO_ENV_HINTS=1
if [[ -n $GITHUB_ACTIONS ]]; then
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
fi
@@ -43,10 +60,17 @@
sudo apt-get update -qq
sudo apt-get install -qy --no-install-recommends "${APT_PKGS[@]}"
elif [[ $ID_LIKE == *fedora* ]]; then
- sudo dnf install -y gcc-c++ libasan lld pkgconf-pkg-config python3 \
- boost-devel openssl-devel sqlite-devel
+ sudo dnf install -y "${DNF_PKGS[@]}"
fi
-if (( ${#PIP_PKGS[@]} )); then
- pip3 install --user --upgrade --upgrade-strategy=eager "${PIP_PKGS[@]}"
-fi
+case $JOB_NAME in
+ *code-coverage)
+ install_uv
+ ;;
+ *Docs)
+ install_uv
+ export FORCE_COLOR=1
+ export UV_NO_MANAGED_PYTHON=1
+ uv tool install sphinx --upgrade --with-requirements docs/requirements.txt
+ ;;
+esac