Skip to content

Fix the binary ninja plugin build after the introduction of fmt library into the binary ninja API #122

Fix the binary ninja plugin build after the introduction of fmt library into the binary ninja API

Fix the binary ninja plugin build after the introduction of fmt library into the binary ninja API #122

Workflow file for this run

name: cmake-build
on: [push, pull_request]
env:
BUILD_TYPE: Release
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
- os: macos-12
- os: windows-2022
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Install ninja-build tool
uses: turtlesec-no/get-ninja@1.1.0
- name: Create Build Environment
env:
RUNNER_WORKSPACE: ${{ runner.workspace }}
IDASDK_SECRET: ${{ secrets.IDASDK_SECRET }}
working-directory: ${{ github.workspace }}
shell: bash
run: |
cmake -E make_directory "${RUNNER_WORKSPACE}/build"
./.github/scripts/decrypt_secret.sh
unzip -q "${RUNNER_WORKSPACE}/build/idasdk_teams80.zip" \
-d "${RUNNER_WORKSPACE}/build/"
- name: Enable Developer Command Prompt (Windows)
if: matrix.os == 'windows-2022'
uses: ilammy/msvc-dev-cmd@v1.12.1
- name: Enable mold linker (Linux)
if: matrix.os == 'ubuntu-22.04'
uses: rui314/setup-mold@v1
- name: Configure CMake
working-directory: ${{ runner.workspace }}/build
shell: bash
run: |
cmake "${GITHUB_WORKSPACE}" -G Ninja \
"-DCMAKE_BUILD_TYPE=${BUILD_TYPE}" \
"-DIdaSdk_ROOT_DIR=${{ runner.workspace }}/build/idasdk_teams80"
- name: Build
working-directory: ${{ runner.workspace }}/build
shell: bash
run: cmake --build . --config "${BUILD_TYPE}"
- name: Test
working-directory: ${{ runner.workspace }}/build
shell: bash
run: ctest --build-config "${BUILD_TYPE}" --output-on-failure -R '^[A-Z]'
- name: Upload Build Artifacts
uses: actions/upload-artifact@v3.1.2
with:
name: BinExport-${{ runner.os }}
path: |
${{ runner.workspace }}/build/binaryninja/binexport*
${{ runner.workspace }}/build/ida/binexport*
${{ runner.workspace }}/build/tools/binexport2dump*