notcurses/.github/workflows/macos_test.yml

95 lines
2.3 KiB
YAML
Raw Normal View History

---
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: Build libqrcodegen
run: |
mkdir "${HOME}/repos" && cd "${HOME}/repos"
git clone https://github.com/nayuki/QR-Code-generator.git
cd QR-Code-generator/c
AR=/usr/local/opt/llvm/bin/llvm-ar
make AR="${AR}"
mkdir -p "${HOME}"/opt/qrcodegen/{include,lib}
cd "${HOME}/opt/qrcodegen/include" \
&& ln -s "${HOME}/repos/QR-Code-generator/c" ./qrcodegen
cd "${HOME}/opt/qrcodegen/lib" \
&& ln -s "${HOME}/repos/QR-Code-generator/c/libqrcodegen.a" ./libqrcodegen.a
cd /usr/local/opt && ln -s "${HOME}/opt/qrcodegen" ./qrcodegen
- name: cmake
run: |
mkdir build && cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_FLAGS="-I/usr/local/opt/qrcodegen/include -L/usr/local/opt/qrcodegen/lib" \
-DUSE_QRCODEGEN=on
- 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
- 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