Merge branch 'dev' into alpha #113
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: Build | |
on: [push] | |
env: | |
CUDA_BIN: /usr/local/cuda/bin | |
jobs: | |
build: | |
name: ${{ matrix.os }} (${{ matrix.config }}) ${{ matrix.cuda }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-24.04] | |
config: [Release, Debug] | |
cuda: [cuda, ''] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install Dependencies | |
run: | | |
sudo apt update | |
sudo apt install \ | |
libarmadillo-dev \ | |
libsuitesparse-dev \ | |
libopenblas-dev \ | |
libglew-dev \ | |
libglfw3-dev \ | |
libflann-dev \ | |
cimg-dev \ | |
wget | |
- name: Install Cuda | |
if: matrix.cuda == 'cuda' | |
run: | | |
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb | |
sudo dpkg -i cuda-keyring_1.1-1_all.deb | |
sudo apt update | |
sudo apt install -y cuda-toolkit | |
- name: Install Embree | |
working-directory: /opt | |
run: | | |
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null | |
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list | |
sudo apt update | |
sudo apt install intel-renderkit | |
- name: Create Build Environment | |
run: cmake -E make_directory ${{runner.workspace}}/build | |
- name: Configure CMake | |
shell: bash | |
working-directory: ${{runner.workspace}}/build | |
run: | | |
source /opt/intel/oneapi/setvars.sh | |
export PATH=${CUDA_BIN}:${PATH} | |
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.config}} | |
- name: Build | |
working-directory: ${{runner.workspace}}/build | |
shell: bash | |
run: | | |
source /opt/intel/oneapi/setvars.sh | |
cmake --build . --config ${{matrix.config}} |