---
name: macOS

on:
  pull_request:
  push:
    branches:
      - master

jobs:
  tests:
    env:
      COLORTERM: truecolor
      NPROC: 2
      TERM: xterm
    name: 🍎 build, test, & install
    runs-on: macos-latest

    steps:

      - name: Install tools and libraries via Homebrew
        run: |
          brew install \
            coreutils \
            doctest \
            ffmpeg \
            libunistring \
            ncurses \
            pandoc \
            readline

      - uses: actions/checkout@v2

      - name: cmake
        run: |
          mkdir build && cd build
          cmake .. \
            -DCMAKE_BUILD_TYPE=Release

      - name: make
        run: |
          cd build
          make -j${NPROC}

      - name: ctest
        run: |
          cd build
          ctest --output-on-failure

      - name: make install
        run: |
          cd build
          sudo make install

      - name: python wrappers (old)
        run: |
          python3 -m pip install --upgrade pip
          pip install cffi pypandoc
          cd cffi
          python3 setup.py sdist build
          sudo python3 setup.py install
          notcurses-pydemo > /dev/null
          ncdirect-pydemo > /dev/null

          # temporarily disabled while failing
          #      - name: python wrappers (new)
          #run: |
          #cd python
          #python3 setup.py build
          #sudo python3 setup.py install
          #python3 examples/000-print-version.py

          #- name: rust wrappers
          #run: |
          #export PKG_CONFIG_PATH="/usr/local/libdata/pkgconfig"
          #cd rust
          #rustc --version
          #cargo build
          #cargo t_all
