Skip to content

Build windows installer #4

Build windows installer

Build windows installer #4

name: Build windows installer
on:
workflow_dispatch:
jobs:
build:
strategy:
matrix:
os_arch: [{ os: windows-2022, arch: x64 }]
runs-on: ${{ matrix.os_arch.os }}
env:
OS_ARCH: ${{ matrix.os_arch.os }}-${{ matrix.os_arch.arch }}
steps:
- name: Install conan
run: pip install conan ninja
- name: conan cache
id: conan_cache
uses: actions/cache@v4
with:
path: ~/.conan2
key: ${{ env.OS_ARCH }}-conan
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Compiler (Windows)
uses: ilammy/msvc-dev-cmd@v1
if: matrix.os_arch.os == 'windows-2022'
- name: Conan setup
run: |
conan config install .github/conan_profiles/${{ env.OS_ARCH }} -tf profiles
- name: Install plugin-GUI
run: |
git clone https://github.com/open-ephys/plugin-GUI.git --branch main
cmake -G"Ninja Multi-Config" -S plugin-GUI -B plugin-GUI/Build
cmake --build plugin-GUI/Build --config Release --target open-ephys
- name: Install libxdaq
run: |
git submodule update --init --recursive
conan create libxdaq-dist --profile:all ${{ env.OS_ARCH }} -s build_type=Release --build=missing
- name: Build XDAQ-OE
run: |
conan install . --build=missing --profile:all ${{ env.OS_ARCH }} -s build_type=Release
cmake -S . -B build/Release --preset conan-release -DINSTALL_TO_SYSTEM=ON -DGUI_BASE_DIR=plugin-GUI
cmake --build build/Release --preset conan-release
cmake --build build/Release --preset conan-release --target package
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ env.OS_ARCH }}
path: build/Release/package