Replace monkeypatch distutils with CMake setuptools Extensions #214
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: CI | |
on: [push, pull_request] | |
jobs: | |
build-Linux: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/[email protected] | |
- name: Install system dependencies | |
run: > | |
sudo apt-get update; | |
sudo apt-get --no-install-recommends install | |
catch2 | |
cmake | |
libfreetype6-dev | |
libglew-dev | |
libglm-dev | |
libmsgpack-dev | |
libnetcdf-dev | |
libpng-dev | |
libxml2-dev | |
python-is-python3 | |
python3-biopython | |
python3-dev | |
python3-setuptools | |
python3-numpy | |
python3-pil | |
python3-pytest | |
- name: Install collada2gltf | |
run: | | |
wget -nv https://anaconda.org/schrodinger/collada2gltf/2.1.4/download/linux-64/collada2gltf-2.1.4-h6bb024c_0.tar.bz2 | |
sudo tar xf collada2gltf-*.tar.bz2 -C / bin/collada2gltf | |
- name: Get additional sources | |
run: | | |
git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git | |
cp -R mmtf-cpp/include/mmtf* include/ | |
- name: Build | |
run: | | |
python setup.py --testing install --prefix=install-prefix | |
env: | |
DEBUG: 1 | |
- name: Test | |
run: | | |
./install-prefix/bin/pymol -ckqy testing/testing.py --run all | |
build-Windows: | |
runs-on: windows-latest | |
env: | |
CONDA_ROOT: ${{github.workspace}}\..\tmp\mambaforge | |
MAMBAFORGE_EXEC: ${{github.workspace}}\..\tmp\mambaforge.exe | |
steps: | |
- uses: actions/[email protected] | |
- name: Download miniconda | |
shell: cmd | |
run: |- | |
if not exist %CONDA_ROOT% mkdir %CONDA_ROOT% | |
curl -L -o %MAMBAFORGE_EXEC% https://github.com/conda-forge/miniforge/releases/download/24.3.0-0/Mambaforge-24.3.0-0-Windows-x86_64.exe | |
start /wait %MAMBAFORGE_EXEC% /S /D=%CONDA_ROOT% | |
- name: Set up Miniconda | |
shell: cmd | |
run: |- | |
CALL %CONDA_ROOT%\\Scripts\\activate.bat | |
conda install -y -c conda-forge -c schrodinger python cmake libpng freetype pyqt glew libxml2 numpy catch2=2.13.3 glm libnetcdf collada2gltf biopython pillow msgpack-python pytest | |
- name: Conda info | |
shell: cmd | |
run: |- | |
CALL %CONDA_ROOT%\\Scripts\\activate.bat | |
conda info | |
- name: Get additional sources | |
shell: cmd | |
run: | | |
git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git | |
cp -R mmtf-cpp/include/mmtf* %CONDA_ROOT%/Library/include/ | |
git clone --depth 1 --single-branch --branch cpp_master https://github.com/msgpack/msgpack-c.git | |
cp -R msgpack-c/include/msgpack* %CONDA_ROOT%/Library/include/ | |
- name: Build PyMOL | |
shell: cmd | |
run: | | |
CALL %CONDA_ROOT%\\Scripts\\activate.bat | |
python setup.py --testing install --prefix=%GITHUB_WORKSPACE%\\install-prefix | |
- name: Test | |
shell: cmd | |
run: | | |
CALL %CONDA_ROOT%\\Scripts\\activate.bat | |
%GITHUB_WORKSPACE%\\install-prefix\\Scripts\\pymol.bat -ckqy testing\\testing.py --run all | |
build-MacOS: | |
runs-on: macos-latest | |
env: | |
CONDA_ROOT: "/tmp/miniconda" | |
steps: | |
- uses: actions/[email protected] | |
- name: Set up Miniconda and Build | |
run: |- | |
curl -L -o $CONDA_ROOT.sh https://github.com/conda-forge/miniforge/releases/download/24.3.0-0/Mambaforge-MacOSX-x86_64.sh | |
bash $CONDA_ROOT.sh -b -p $CONDA_ROOT | |
export PATH="$CONDA_ROOT/bin:$PATH" | |
conda config --set quiet yes | |
conda install -y -c conda-forge -c schrodinger python cmake libpng freetype pyqt glew libxml2 numpy catch2=2.13.3 glm libnetcdf collada2gltf biopython pillow msgpack-python pytest | |
conda info | |
- name: Get additional sources | |
run: | | |
git clone --depth 1 https://github.com/rcsb/mmtf-cpp.git | |
cp -R mmtf-cpp/include/mmtf* ${CONDA_ROOT}/include/ | |
git clone --depth 1 --single-branch --branch cpp_master https://github.com/msgpack/msgpack-c.git | |
cp -R msgpack-c/include/msgpack* ${CONDA_ROOT}/include/ | |
- name: Build PyMOL | |
run: |- | |
export MACOSX_DEPLOYMENT_TARGET=12.0 | |
export PATH="$CONDA_ROOT/bin:$PATH" | |
python setup.py install --prefix=${GITHUB_WORKSPACE}/install-prefix | |
- name: Test | |
run: |- | |
export PATH="$CONDA_ROOT/bin:$PATH" | |
${GITHUB_WORKSPACE}/install-prefix/bin/pymol -ckqy testing/testing.py --run all |