Skip to content

Merge branch 'main' into ci #90

Merge branch 'main' into ci

Merge branch 'main' into ci #90

Workflow file for this run

name: C/C++ CI
on:
push:
branches: [ "main", "ci" ]
pull_request:
branches: [ "main", "ci" ]
jobs:
build-ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install libfuse3 and headers
run: |
sudo apt update
sudo apt install libfuse3-dev
- name: autogen
run: ./autogen.sh
- name: configure
run: ./configure CFLAGS='-Wall -Wextra'
- name: make
run: make
- name: make check
run: make check
- name: make distcheck
run: make distcheck
build-ubuntu-noble-kernel:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3
- name: make
run: cd targets/linux && make
build-ubuntu-jammy-kernel:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: make
run: cd targets/linux && make
build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Install autotools, pkg-config and macfuse
run: |
brew install autoconf automake libtool pkg-config macfuse
- name: autogen
run: ./autogen.sh
- name: configure
run: ./configure --disable-fuse3 CFLAGS='-Wall -Wextra'
- name: make
run: make
- name: make check
run: make check
- name: make distcheck
run: make distcheck DISTCHECK_CONFIGURE_FLAGS='--disable-fuse3'
build-mingw-w64-i686:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install mingw-w64 and libfuse-dev packages
run: |
sudo apt update
sudo apt install mingw-w64 libfuse-dev
- name: Download and extract Dokan library
run: curl -L -O 'https://github.com/dokan-dev/dokany/releases/download/v2.0.6.1000/dokan.zip' && ( mkdir dokan && cd dokan && unzip ../dokan.zip )
- name: autogen
run: ./autogen.sh
- name: configure
run: ./configure --host=i686-w64-mingw32 --disable-shared CFLAGS="-Wall -Wextra -I`pwd`/dokan/Win32/Msys2/include/fuse" LDFLAGS="-L`pwd`/dokan/Win32/Release -ldokanfuse2"
- name: make
run: make
- name: make check
run: make check
- name: make distcheck
run: make distcheck
build-mingw-w64-x86_64:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install mingw-w64 and libfuse-dev packages
run: |
sudo apt update
sudo apt install mingw-w64 libfuse-dev
- name: Download and extract Dokan library
run: curl -L -O 'https://github.com/dokan-dev/dokany/releases/download/v2.0.6.1000/dokan.zip' && ( mkdir dokan && cd dokan && unzip ../dokan.zip )
- name: autogen
run: ./autogen.sh
- name: configure
run: ./configure --host=x86_64-w64-mingw32 --disable-shared CFLAGS="-Wall -Wextra -I`pwd`/dokan/x64/Msys2/include/fuse" LDFLAGS="-L`pwd`/dokan/x64/Release -ldokanfuse2"
- name: make
run: make
- name: make check
run: make check
- name: make distcheck
run: make distcheck
build-freebsd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in FreeBSD
id: test
uses: vmactions/freebsd-vm@v1
with:
usesh: true
prepare: |
pkg install -y fusefs-libs autoconf automake libtool pkgconf
run: |
./autogen.sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck
build-netbsd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in NetBSD
id: build
uses: vmactions/netbsd-vm@v1
with:
usesh: true
prepare: |
/usr/sbin/pkg_add autoconf automake libtool pkgconf
run: |
./autogen.sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck
build-openbsd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in OpenBSD
id: test
uses: vmactions/openbsd-vm@v1
with:
usesh: true
prepare: |
pkg_add autoconf-2.72p0 automake-1.17 libtool pkgconf
run: |
AUTOCONF_VERSION=2.72 AUTOMAKE_VERSION=1.17 ./autogen.sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck
build-dragonflybsd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in DragonFly BSD
id: build
uses: vmactions/dragonflybsd-vm@v1
with:
usesh: true
prepare: |
pkg install -y fusefs-libs autoconf autoconf-switch automake libtool pkgconf
run: |
./autogen.sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck
build-openindiana:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in OpenIndiana
id: build
uses: vmactions/openindiana-vm@v0
with:
usesh: true
prepare: |
pkg install gcc-14 make autoconf automake libtool pkg-config library/libfuse
run: |
./autogen.sh
chmod a+x install-sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck
build-omnios:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in OmniOS
id: build
uses: vmactions/omnios-vm@v1
with:
usesh: true
prepare: |
pkg install build-essential autoconf automake libtool pkg-config
pkg set-publisher -G '*' -g https://sfe.opencsw.org/localhostomnios localhostomnios
pkg install libfuse
run: |
./autogen.sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck
build-solaris:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build in Solaris
id: build
uses: vmactions/solaris-vm@v1
with:
usesh: true
prepare: |
pkg install base-developer-utilities gcc-c autoconf automake libtool pkg-config library/libfuse
run: |
./autogen.sh
./configure CFLAGS='-Wall -Wextra'
make
make check
make distcheck