Skip to content

Build Installer

Build Installer #30

Workflow file for this run

name: Build 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: Install OpenCL (Ubuntu)
if: matrix.os_arch.os == 'ubuntu-22.04'
run: |
sudo apt-get install -y ocl-icd-opencl-dev
- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
version: '5.15.2'
cache: true
- name: Conan setup
run: |
conan config install .github/conan_profiles/${{ env.OS_ARCH }} -tf profiles
- 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
cmake --build build/Release --preset conan-release
cmake --build build/Release --preset conan-release --target package
- name: Tar binaries to keep file permissions
run: |
tar -cvf build/package.tar build/Release/package
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ env.OS_ARCH }}
path: build/package.tar