mirror of
https://github.com/radareorg/radare2.git
synced 2024-10-07 10:33:30 +00:00
Create more GitHub Actions jobs for meson and gcc/clang ##build (#16442)
* Create more GitHub Actions jobs for meson and gcc/clang * Add workflow for GitHub Actions when we commit in master
This commit is contained in:
parent
4fbb986436
commit
6136666e9c
42
.github/workflows/ccpp.yml
vendored
42
.github/workflows/ccpp.yml
vendored
@ -1,42 +0,0 @@
|
||||
name: Radare2 CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
node_version: ['12']
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install pkg-config with Homebrew
|
||||
if: matrix.os == 'macos-latest'
|
||||
run: brew install pkg-config
|
||||
- name: Checkout our Testsuite Binaries
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
repository: radareorg/radare2-testbins
|
||||
path: test/bins
|
||||
- name: Configure with ACR
|
||||
run: ./configure --prefix=${HOME}
|
||||
- name: Build
|
||||
run: make
|
||||
- name: Install and run tests
|
||||
run: |
|
||||
# Install the radare2
|
||||
export PATH=${HOME}/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${PKG_CONFIG_PATH}
|
||||
make install
|
||||
# Running the test suite
|
||||
cd test && make
|
||||
|
93
.github/workflows/ci.yaml
vendored
Normal file
93
.github/workflows/ci.yaml
vendored
Normal file
@ -0,0 +1,93 @@
|
||||
name: Radare2 CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
compiler: [gcc, clang]
|
||||
build_system: [acr, meson]
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
build_system: meson
|
||||
compiler: gcc
|
||||
coverage: true
|
||||
env:
|
||||
MESON_OPTIONS: -Db_coverage=true
|
||||
- os: ubuntu-latest
|
||||
build_system: meson
|
||||
compiler: gcc
|
||||
env:
|
||||
MESON_OPTIONS: -Duse_treesitter=true
|
||||
R2_CFG_NEWSHELL: 1
|
||||
exclude:
|
||||
- os: macos-latest
|
||||
build_system: meson
|
||||
- os: macos-latest
|
||||
compiler: gcc
|
||||
- os: ubuntu-latest
|
||||
build_system: meson
|
||||
compiler: clang
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install pkg-config with Homebrew
|
||||
if: matrix.os == 'macos-latest'
|
||||
run: brew install pkg-config
|
||||
- name: Install meson and ninja
|
||||
if: matrix.build_system == 'meson'
|
||||
run: sudo apt-get --assume-yes install python3-wheel python3-setuptools && pip3 install --user meson ninja
|
||||
- name: Install clang
|
||||
if: matrix.compiler == 'clang' && matrix.os == 'ubuntu-latest'
|
||||
run: sudo apt-get --assume-yes install clang
|
||||
- name: Checkout our Testsuite Binaries
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
repository: radareorg/radare2-testbins
|
||||
path: test/bins
|
||||
- name: Configure with ACR and build
|
||||
if: matrix.build_system == 'acr'
|
||||
run: ./configure --prefix=${HOME} && make
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
- name: Build with Meson
|
||||
if: matrix.build_system == 'meson'
|
||||
run: |
|
||||
export PATH=${HOME}/.local/bin:${PATH}
|
||||
meson ${MESON_OPTIONS} --prefix=${HOME} build && ninja -C build
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
- name: Install with make
|
||||
if: matrix.build_system == 'acr'
|
||||
run: |
|
||||
# Install the radare2
|
||||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH}
|
||||
make install
|
||||
- name: Install with meson
|
||||
if: matrix.build_system == 'meson'
|
||||
run: |
|
||||
# Install the radare2
|
||||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH}
|
||||
ninja -C build install
|
||||
- name: Run tests
|
||||
run: |
|
||||
# Running the test suite
|
||||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH}
|
||||
cd test
|
||||
make
|
||||
- name: Upload coverage info
|
||||
uses: codecov/codecov-action@v1
|
||||
if: matrix.coverage
|
78
.github/workflows/pr.yaml
vendored
Normal file
78
.github/workflows/pr.yaml
vendored
Normal file
@ -0,0 +1,78 @@
|
||||
name: Radare2 CI PR
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
compiler: [gcc, clang]
|
||||
build_system: [acr, meson]
|
||||
exclude:
|
||||
- os: macos-latest
|
||||
build_system: meson
|
||||
- os: macos-latest
|
||||
compiler: gcc
|
||||
- os: ubuntu-latest
|
||||
build_system: meson
|
||||
compiler: clang
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install pkg-config with Homebrew
|
||||
if: matrix.os == 'macos-latest'
|
||||
run: brew install pkg-config
|
||||
- name: Install meson and ninja
|
||||
if: matrix.build_system == 'meson'
|
||||
run: sudo apt-get --assume-yes install python3-wheel python3-setuptools && pip3 install --user meson ninja
|
||||
- name: Install clang
|
||||
if: matrix.compiler == 'clang' && matrix.os == 'ubuntu-latest'
|
||||
run: sudo apt-get --assume-yes install clang
|
||||
- name: Checkout our Testsuite Binaries
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
repository: radareorg/radare2-testbins
|
||||
path: test/bins
|
||||
- name: Configure with ACR and build
|
||||
if: matrix.build_system == 'acr'
|
||||
run: ./configure --prefix=${HOME} && make
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
- name: Build with Meson
|
||||
if: matrix.build_system == 'meson'
|
||||
run: |
|
||||
export PATH=${HOME}/.local/bin:${PATH}
|
||||
meson --prefix=${HOME} build && ninja -C build
|
||||
env:
|
||||
CC: ${{ matrix.compiler }}
|
||||
- name: Install with make
|
||||
if: matrix.build_system == 'acr' && matrix.os == 'macos-latest'
|
||||
run: |
|
||||
# Install the radare2
|
||||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH}
|
||||
make install
|
||||
- name: Install with meson
|
||||
if: matrix.build_system == 'meson'
|
||||
run: |
|
||||
# Install the radare2
|
||||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH}
|
||||
ninja -C build install
|
||||
- name: Run tests
|
||||
if: matrix.os == 'macos-latest' || (matrix.os == 'ubuntu-latest' && matrix.build_system == 'meson')
|
||||
run: |
|
||||
# Running the test suite
|
||||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH}
|
||||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH}
|
||||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH}
|
||||
cd test
|
||||
make
|
||||
|
Loading…
Reference in New Issue
Block a user