Skip to content

Merge pull request #241 from QBDI/Fix_arm_mov_pc #5

Merge pull request #241 from QBDI/Fix_arm_mov_pc

Merge pull request #241 from QBDI/Fix_arm_mov_pc #5

Workflow file for this run

name: Tests and Package OSX
on:
push:
branches:
- master
- dev-next
pull_request:
workflow_dispatch:
jobs:
build-x86:
runs-on: macos-latest
env:
QBDI_ARCH: 'X86_64'
QBDI_PLATFORM: 'osx'
MACOSX_DEPLOYMENT_TARGET: '10.14'
steps:
- name: Install system dependencies
run: |
brew install cmake ninja ccache
python3 -m pip install --upgrade pip setuptools wheel
- name: checkout
uses: actions/checkout@v3
- name: Cache ccache
uses: actions/cache@v3
id: cache-ccache
with:
path: |
~/.ccache
key: ccache-osx-${{ env.QBDI_ARCH }}-${{ hashFiles('.github/workflows/ccache.conf') }}-${{ github.run_number }}
restore-keys: |
ccache-osx-${{ env.QBDI_ARCH }}-${{ hashFiles('.github/workflows/ccache.conf') }}-
- if: steps.cache-ccache.outputs.cache-hit != 'true'
run: |
mkdir -p ~/.ccache
cp .github/workflows/ccache.conf ~/.ccache/ccache.conf
- name: Cache third-party
uses: actions/cache@v3
with:
path: |
third-party
key: QBDI-third-party-${{ hashFiles('**/CMakeLists.txt') }}-${{ hashFiles('**/*.cmake') }}
- run: mkdir -p build
- name: build QBDI
working-directory: ./build
run: |
cmake -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DQBDI_PLATFORM=${{ env.QBDI_PLATFORM }} \
-DQBDI_ARCH=${{ env.QBDI_ARCH }} \
-DQBDI_TOOLS_VALIDATOR=ON \
-DQBDI_EXAMPLES=ON \
..
ninja
cpack
- name: test QBDI
working-directory: ./build/test
run: |
./QBDITest
- name: Export package
uses: actions/upload-artifact@v3
with:
name: package_OSX_${{ env.QBDI_ARCH }}
path: build/QBDI-*.pkg
build-aarch64:
runs-on: [self-hosted, macOS, ARM64]
env:
QBDI_ARCH: 'AARCH64'
QBDI_PLATFORM: 'osx'
MACOSX_DEPLOYMENT_TARGET: '10.14'
steps:
- name: Install system dependencies
run: |
python3 -m pip install --upgrade pip setuptools wheel
- name: checkout
uses: actions/checkout@v3
- name: Cache ccache
uses: actions/cache@v3
id: cache-ccache
with:
path: |
~/.ccache
key: ccache-osx-${{ env.QBDI_ARCH }}-${{ hashFiles('.github/workflows/ccache.conf') }}-${{ github.run_number }}
restore-keys: |
ccache-osx-${{ env.QBDI_ARCH }}-${{ hashFiles('.github/workflows/ccache.conf') }}-
- if: steps.cache-ccache.outputs.cache-hit != 'true'
run: |
mkdir -p ~/.ccache
cp .github/workflows/ccache.conf ~/.ccache/ccache.conf
- name: Cache third-party
uses: actions/cache@v3
with:
path: |
third-party
key: QBDI-third-party-${{ hashFiles('**/CMakeLists.txt') }}-${{ hashFiles('**/*.cmake') }}
- run: mkdir -p build
- name: build QBDI
working-directory: ./build
run: |
cmake -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DQBDI_PLATFORM=${{ env.QBDI_PLATFORM }} \
-DQBDI_ARCH=${{ env.QBDI_ARCH }} \
-DQBDI_TOOLS_VALIDATOR=ON \
-DQBDI_EXAMPLES=ON \
..
ninja
cpack
- name: test QBDI
working-directory: ./build/test
run: |
./QBDITest
- name: Export package
uses: actions/upload-artifact@v3
with:
name: package_OSX_${{ env.QBDI_ARCH }}
path: build/QBDI-*.pkg