89 lines
2.2 KiB
YAML
89 lines
2.2 KiB
YAML
name: CMake for Fun on Ubuntu-Latest
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
|
|
env:
|
|
BUILD_TYPE: Release
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
defaults:
|
|
run:
|
|
working-directory: ${{github.workspace}}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Update apt
|
|
run: sudo apt update
|
|
|
|
- name: Upgrade apt
|
|
run: sudo apt upgrade -y
|
|
|
|
- name: Install dependencies
|
|
run: sudo apt install cmake libjson-c-dev -y
|
|
|
|
- name: Configure CMake
|
|
run: >
|
|
cmake -S . -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \
|
|
-DFUN_DEBUG=OFF \
|
|
-DFUN_WITH_REPL=OFF \
|
|
-DFUN_WITH_PCSC=OFF \
|
|
-DFUN_WITH_LIBSQL=OFF \
|
|
-DFUN_WITH_SQLITE=OFF \
|
|
-DFUN_WITH_CURL=OFF \
|
|
-DFUN_WITH_PCRE2=OFF \
|
|
-DFUN_WITH_XML2=OFF \
|
|
-DFUN_WITH_JSON=ON \
|
|
-DFUN_WITH_TCLTK=OFF \
|
|
-DFUN_WITH_INI=OFF \
|
|
-DFUN_WITH_NOTCURSES=OFF \
|
|
-DFUN_WITH_CPP=ON \
|
|
-DFUN_WITH_OPENSSL=OFF \
|
|
-DFUN_WITH_LIBRESSL=OFF \
|
|
-DFUN_WITH_YAML=OFF \
|
|
-DFUN_USE_MUSL=OFF \
|
|
-DFUN_WITH_RUST=OFF
|
|
|
|
- name: Build
|
|
run: cmake --build build --config ${{env.BUILD_TYPE}} --target all
|
|
|
|
- name: Test
|
|
working-directory: ${{github.workspace}}/build
|
|
run: ctest -C ${{env.BUILD_TYPE}}
|
|
|
|
- name: Run Examples
|
|
run: ./scripts/run_examples.sh
|
|
|
|
- name: Run Examples (algos)
|
|
run: ./scripts/run_examples.sh algos
|
|
|
|
- name: Run Examples (arrays)
|
|
run: ./scripts/run_examples.sh arrays
|
|
|
|
- name: Run Examples (basics)
|
|
run: ./scripts/run_examples.sh basics
|
|
|
|
- name: Run Examples (compose)
|
|
run: ./scripts/run_examples.sh compose
|
|
|
|
- name: Run Examples (crypto)
|
|
run: ./scripts/run_examples.sh crypto
|
|
|
|
- name: Run Examples (extra)
|
|
run: ./scripts/run_examples.sh extra
|
|
|
|
- name: Run Examples (io)
|
|
run: ./scripts/run_examples.sh io
|
|
|
|
- name: Run Examples (math)
|
|
run: ./scripts/run_examples.sh math
|
|
|
|
- name: Run Examples (patterns)
|
|
run: ./scripts/run_examples.sh patterns
|
|
|
|
- name: Run Examples (strings)
|
|
run: ./scripts/run_examples.sh strings
|