libdatasketches_sys 0.1.3

Low-level bindings for Apache DataSketches C++ library
Documentation
name: C/C++ CI

on: [push, pull_request]

env:
  BUILD_TYPE: Release

jobs:
  build:
    name: ${{ matrix.config.name }}
    runs-on: ${{ matrix.config.os }}
    strategy:
      fail-fast: false
      matrix:
        config:
        - {
            name: "MacOS Latest, Clang",
            os: macos-latest,
            test_target: test,
            cc: "clang", cxx: "clang++"
          }
        - {
            name: "Ubuntu Latest, GCC",
            os: ubuntu-latest,
            test_target: test,
            cc: "gcc", cxx: "g++"
          }
        - {
            name: "Windows Latest, MSVC",
            os: windows-latest,
            test_target: RUN_TESTS,
            cc: "cl", cxx: "cl",
            environment_script: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat"
          }
        #- {
        #    name: "Windows Latest, MinGW+gcc",
        #    os: windows-latest,
        #    cc: "gcc", cxx: "g++"
        #  }
            
    steps:
      - name: Checkout
        uses: actions/checkout@v4
        with:
          submodules: true
          persist-credentials: false
      - name: Configure
        run: cmake -B build -S . -DCMAKE_INSTALL_PREFIX=./install_test
      - name: Build C++ unit tests
        run: cmake --build build --config Release
      - name: Run C++ tests
        run: cmake --build build --config Release --target ${{ matrix.config.test_target }}
      - name: Install headers
        run: cmake --build build -t install