Prepare for development #57
This file contains 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
name: Main | |
on: [push, pull_request] | |
jobs: | |
Ubuntu: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
submodules: 'recursive' | |
- name: Set PATH | |
run: echo "${HOME}/.local/bin" >> $GITHUB_PATH | |
- name: Update apt | |
run: sudo apt update | |
- name: Install pip dependencies | |
run: | | |
sudo apt install python3-setuptools python3-wheel | |
pip3 install -r requirements.txt | |
- name: Install apt dependencies | |
run: sudo apt install -y $(bindep -b testing | tr '\n' ' ') | |
- name: Install Boost | |
run: | | |
wget https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.gz | |
tar -xf boost_1_80_0.tar.gz | |
cd boost_1_80_0 | |
./bootstrap.sh --with-python=python3 --prefix=/opt/boost | |
./b2 -j 2 --with-python --with-graph --with-iostreams --with-test install | |
- name: Install Graphviz | |
run: | | |
sudo apt install librsvg2-dev libpango1.0-dev libperl-dev | |
wget http://graphviz.gitlab.io/pub/graphviz/stable/SOURCES/graphviz.tar.gz | |
tar -xf graphviz.tar.gz --one-top-level=graphviz --strip-components=1 | |
cd graphviz | |
./configure | |
make -j 2 | |
sudo make install | |
- name: Bootstrap | |
run: ./bootstrap.sh | |
- name: Configure | |
env: | |
CXXFLAGS: -Werror | |
run: | | |
mkdir build | |
cd build | |
cmake ../ -DBUILD_DOC=on -DBUILD_TESTING=on -DBOOST_ROOT=/opt/boost | |
- name: Build | |
run: cd build && make -j 2 | |
- name: Install | |
run: cd build && sudo make install | |
- name: Build tests | |
run: cd build && make tests -j 2 | |
- name: Run tests | |
run: cd build && ctest --output-on-failure -j 2 | |
- name: Run simple test | |
run: mod -e "smiles('O').print()" | |
macOS-12: | |
runs-on: macos-12 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
submodules: 'recursive' | |
- name: Install Brew dependencies | |
run: brew bundle | |
- name: Install pip dependencies | |
run: pip3 install -r requirements.txt | |
- name: Set PATH | |
run: | | |
/usr/libexec/path_helper | sed -e 's/^PATH="//' -e 's/"; export PATH;//' | tr ":" "\n" | tail -r >> $GITHUB_PATH | |
python3 -c 'import os,sysconfig;print(sysconfig.get_path("scripts",f"{os.name}_prefix"))' >> $GITHUB_PATH | |
- name: Bootstrap | |
run: ./bootstrap.sh | |
- name: Configure | |
run: | | |
mkdir build | |
cd build | |
cmake ../ -DBUILD_DOC=on -DBUILD_TESTING=on | |
- name: Build | |
run: cd build && make -j 3 | |
- name: Install | |
run: cd build && sudo make install | |
- name: Build tests | |
run: cd build && make tests -j 3 | |
- name: Run tests | |
run: cd build && ctest --output-on-failure -j 3 | |
- name: Run simple test | |
run: mod -e "smiles('O').print()" | |
macOS-13: | |
runs-on: macos-13 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
submodules: 'recursive' | |
- name: Install Brew dependencies | |
run: | | |
brew bundle | |
/usr/libexec/path_helper | sed -e 's/^PATH="//' -e 's/"; export PATH;//' | tr ":" "\n" | tail -r >> $GITHUB_PATH | |
- name: Install pip dependencies | |
run: pip3 install -r requirements.txt | |
- name: Bootstrap | |
run: ./bootstrap.sh | |
- name: Configure | |
run: | | |
mkdir build | |
cd build | |
cmake ../ -DBUILD_DOC=on -DBUILD_TESTING=on | |
- name: Build | |
run: cd build && make -j 4 | |
- name: Install | |
run: cd build && sudo make install | |
- name: Build tests | |
run: cd build && make tests -j 4 | |
- name: Run tests | |
run: cd build && ctest --output-on-failure -j 4 | |
- name: Run simple test | |
run: mod -e "smiles('O').print()" | |
macOS-14: | |
runs-on: macos-14 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
submodules: 'recursive' | |
- name: Install Brew dependencies | |
run: | | |
brew bundle | |
/usr/libexec/path_helper | sed -e 's/^PATH="//' -e 's/"; export PATH;//' | tr ":" "\n" | tail -r >> $GITHUB_PATH | |
- name: Install pip dependencies | |
run: pip3 install -r requirements.txt | |
- name: Bootstrap | |
run: ./bootstrap.sh | |
- name: Configure | |
run: | | |
mkdir build | |
cd build | |
cmake ../ -DBUILD_DOC=on -DBUILD_TESTING=on | |
- name: Build | |
run: cd build && make -j 3 | |
- name: Install | |
run: cd build && sudo make install | |
- name: Build tests | |
run: cd build && make tests -j 3 | |
- name: Run tests | |
run: cd build && ctest --output-on-failure -j 3 | |
- name: Run simple test | |
run: mod -e "smiles('O').print()" |