Replaced test scripts with autotest #4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Build from source on Linux. | |
| name: build_linux | |
| on: | |
| pull_request: | |
| push: | |
| permissions: read-all | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'clang' | |
| configure_options: '' | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '' | |
| - os: ubuntu-24.04-arm | |
| compiler: 'clang' | |
| configure_options: '' | |
| - os: ubuntu-24.04-arm | |
| compiler: 'gcc' | |
| configure_options: '' | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '--with-pthread=no' | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '--enable-wide-character-type' | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '--disable-multi-threading-support --enable-static-executables' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config | |
| - name: Download test data | |
| run: | | |
| if test -x "synctestdata.sh"; then ./synctestdata.sh; fi | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Run tests | |
| run: | | |
| tests/runtests.sh -j4 VERBOSE=1 | |
| build_dist: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config | |
| - name: Download test data | |
| run: | | |
| if test -x "synctestdata.sh"; then ./synctestdata.sh; fi | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Run tests | |
| run: | | |
| make distcheck AM_MAKEFLAGS="-j4" VERBOSE=1 | |
| build_fuse: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config libfuse-dev | |
| - name: Download test data | |
| run: | | |
| if test -x "synctestdata.sh"; then ./synctestdata.sh; fi | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Run tests | |
| run: | | |
| tests/runtests.sh -j4 VERBOSE=1 | |
| build_fuse3: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config libfuse3-dev | |
| - name: Download test data | |
| run: | | |
| if test -x "synctestdata.sh"; then ./synctestdata.sh; fi | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Run tests | |
| run: | | |
| tests/runtests.sh -j4 VERBOSE=1 | |
| build_python: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '--enable-python' | |
| python_version: '' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config python3-dev | |
| - name: Download test data | |
| run: | | |
| if test -x "synctestdata.sh"; then ./synctestdata.sh; fi | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Run tests | |
| env: | |
| PYTHON_VERSION: ${{ matrix.python_version }} | |
| run: | | |
| tests/runtests.sh -j4 VERBOSE=1 | |
| build_pyproject: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config python3 python3-build python3-dev | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Build Python module | |
| run: | | |
| python -m build | |
| build_shared: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '' | |
| - os: ubuntu-24.04 | |
| compiler: 'gcc' | |
| configure_options: '--enable-wide-character-type' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt -y update | |
| sudo apt -y install autoconf automake autopoint build-essential git libfuse3-dev libtool pkg-config | |
| - name: Download test data | |
| run: | | |
| if test -x "synctestdata.sh"; then ./synctestdata.sh; fi | |
| - name: Prepare shared libraries | |
| run: | | |
| tests/syncsharedlibs.sh --use-head | |
| - name: Build from source | |
| env: | |
| CC: ${{ matrix.compiler }} | |
| run: | | |
| ./synclibs.sh --use-head | |
| ./autogen.sh | |
| ./configure ${{ matrix.configure_options }} | |
| make -j4 > /dev/null | |
| - name: Run tests | |
| run: | | |
| tests/runtests.sh -j4 VERBOSE=1 |