From 1236ef9d9a4138ab026249807ad54aa716777f8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Cs=C3=A1rdi?= Date: Sat, 26 Oct 2024 01:42:42 +0200 Subject: [PATCH] GHA: add DragonFlyBSD workflow (#39) * GHA: add DragonFlyBSD workflow * GHA: do dragonflybsd check on push, pr * dragonflybsd: use dev version of debug-shell * dragonflybad: run debug shell earlier So it runs if other steps error. * Need dev fs on DragonflyBSD * Fix compilation on DragonFlyBSD * Need dev openssl on GHA for DragonFlyBSD * dragonfly GHA: need to ignore spelling It depends on Rcpp, which fails to install. We don't need the soft dependencies of fs, anyway, but have no way of expression this currently. * DragonFly: fix remote in GHA workflow * GHA dragonfly: ignore sodium as well Not needed, has system dep. --- .github/workflows/dragonflybsd.yaml | 64 +++++++++++++++++++++++++++++ configure | 8 +++- 2 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/dragonflybsd.yaml diff --git a/.github/workflows/dragonflybsd.yaml b/.github/workflows/dragonflybsd.yaml new file mode 100644 index 0000000..4d0a100 --- /dev/null +++ b/.github/workflows/dragonflybsd.yaml @@ -0,0 +1,64 @@ +on: + push: + branches: [main, master] + pull_request: + workflow_dispatch: + inputs: + release: + description: 'DragonFlyBSD release' + required: true + type: choice + options: + - '6.4.0' + default: '6.4.0' + +name: dragonflybsd.yaml + +jobs: + dragonflybsd: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: r-hub/actions/setup-r-dragonflybsd@main + with: + release: ${{ github.event.inputs.release || '6.4.0' }} + + - uses: r-hub/actions/debug-shell@main + + - name: Test R in DragonFlyBSD VM + run: | + getRversion() + R.version[["platform"]] + .libPaths() + .Library + find.package("pak") + Sys.getenv() + shell: Rscript {0} + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + pak-version: none + install-pandoc: false + install-quarto: false + cache-version: dragonflybsd-1 + extra-packages: | + any::rcmdcheck + r-lib/fs + jeroen/openssl + spelling=?ignore + sodium=?ignore + needs: check + + - uses: r-lib/actions/check-r-package@v2 + with: + build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")' + upload-results: never + upload-snapshots: false + env: + NOT_CRAN: true + + - uses: actions/upload-artifact@v4 + if: failure() + with: + name: 'check-results' + path: check diff --git a/configure b/configure index 949f6d3..788f870 100755 --- a/configure +++ b/configure @@ -46,8 +46,11 @@ if [ "$UNAME" = "OpenBSD" ]; then OPENBSD=true; POSIX=true; fi unset NETBSD ## if [ "$UNAME" = "NetBSD" ]; then NETBSD=true; POSIX=true; fi +unset DRAGONFLY +if [ "$UNAME" = "DragonFly" ]; then DRAGONFLY=true; POSIX=true; fi + unset BSD -if [ -n "$FREEBSD" ] || [ -n "$OPENBSD" ] || [ -n "$NETBSD" ]; then +if [ -n "$FREEBSD" ] || [ -n "$OPENBSD" ] || [ -n "$NETBSD" ] || [ -n "$DRAGONFLY" ]; then BSD=true fi @@ -69,6 +72,9 @@ if [ -n "$WINDOWS" ]; then elif [ -n "$FREEBSD" ]; then LIBRARIES= +elif [ -n "$DRAGONFLY" ]; then + LIBRARIES= + elif [ -n "$OPENBSD" ]; then LIBRARIES=bind LIBDIRS=-L/usr/local/lib/libbind