mirror of
https://github.com/XRPLF/clio.git
synced 2025-11-04 11:55:51 +00:00
38 lines
1.3 KiB
YAML
38 lines
1.3 KiB
YAML
name: Build clio
|
|
description: Build clio in build directory
|
|
inputs:
|
|
conan_profile:
|
|
description: Conan profile name
|
|
required: true
|
|
default: default
|
|
conan_cache_hit:
|
|
description: Whether conan cache has been downloaded
|
|
required: true
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Get number of threads on mac
|
|
id: mac_threads
|
|
if: ${{ runner.os == 'macOS' }}
|
|
shell: bash
|
|
run: echo "num=$(($(sysctl -n hw.logicalcpu) - 2))" >> $GITHUB_OUTPUT
|
|
|
|
- name: Get number of threads on Linux
|
|
id: linux_threads
|
|
if: ${{ runner.os == 'Linux' }}
|
|
shell: bash
|
|
run: echo "num=$(($(nproc) - 2))" >> $GITHUB_OUTPUT
|
|
|
|
- name: Build Clio
|
|
shell: bash
|
|
env:
|
|
BUILD_OPTION: "${{ inputs.conan_cache_hit == 'true' && 'missing' || '' }}"
|
|
LINT: "${{ runner.os == 'Linux' && 'True' || 'False' }}"
|
|
run: |
|
|
mkdir -p build
|
|
cd build
|
|
threads_num=${{ steps.mac_threads.outputs.num || steps.linux_threads.outputs.num }}
|
|
conan install .. -of . -b $BUILD_OPTION -s build_type=Release -o clio:tests=True -o clio:lint=$LINT --profile ${{ inputs.conan_profile }}
|
|
cmake -DCMAKE_TOOLCHAIN_FILE:FILEPATH=build/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release .. -G Ninja
|
|
cmake --build . --parallel $threads_num
|