Skip to content

cmake: show python version #763

cmake: show python version

cmake: show python version #763

name: Conda-CI
on: [push,pull_request]
jobs:
eigenpy-conda:
name: ${{ matrix.os }} - Python ${{ matrix.python-version }} ${{ matrix.build_type }} ${{ matrix.cxx_options }}
runs-on: ${{ matrix.os }}
env:
CCACHE_DIR: ${{ matrix.CCACHE_DIR }}
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest", "macos-latest"]
cxx_options: ['', '-mavx2']
build_type: [Release, Debug]
python-version: ["3.10", "3.11", "3.12"]
include:
- os: ubuntu-latest
CCACHE_DIR: /home/runner/.ccache
- os: macos-latest
CCACHE_DIR: /Users/runner/.ccache
exclude:
- build_type: Debug
cxx_options: -mavx2
os: macos-latest
- build_type: Release
cxx_options: -mavx2
os: macos-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: eigenpy
auto-update-conda: true
environment-file: .github/workflows/conda/environment.yml
python-version: ${{ matrix.python-version }}
- uses: actions/cache@v3
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.cxx_options }}
- name: Prepare cache dir
run: sudo mkdir -p ${CCACHE_DIR}/tmp && sudo chown -R $(id -un) ${CCACHE_DIR}
- name: Install cmake and update conda
shell: bash -l {0}
run: |
conda activate eigenpy
conda install cmake ccache -c conda-forge
conda list
- name: Build EigenPy
shell: bash -l {0}
run: |
conda activate eigenpy
echo $CONDA_PREFIX
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DPYTHON_EXECUTABLE=$(which python3) -DGENERATE_PYTHON_STUBS=ON -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DCMAKE_CXX_FLAGS=${{ matrix.cxx_options }}
make
make build_tests
export CTEST_OUTPUT_ON_FAILURE=1
make test
make install
- name: Test packaging
shell: bash -l {0}
run: |
conda activate eigenpy
cmake -B test-packaging -S unittest/packaging/cmake -DPYTHON_EXECUTABLE=$(which python3)
- name: Configure hpp-fcl
shell: bash -l {0}
run: |
conda activate eigenpy
conda install -c conda-forge octomap assimp qhull
git clone https://github.com/humanoid-path-planner/hpp-fcl.git --recursive
cd hpp-fcl
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=$(which python3)
- name: Uninstall EigenPy
shell: bash -l {0}
run: |
cd build
make uninstall