mirror of
https://github.com/SChernykh/p2pool.git
synced 2024-08-19 21:18:46 -06:00
146 lines
2.9 KiB
YAML
146 lines
2.9 KiB
YAML
name: C/C++ CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ master ]
|
|
pull_request:
|
|
branches: [ master ]
|
|
|
|
jobs:
|
|
build-ubuntu:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Install dependencies
|
|
run: sudo apt update && sudo apt install git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev
|
|
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: true
|
|
|
|
- name: cmake p2pool
|
|
run: mkdir build && cd build && cmake ..
|
|
|
|
- name: make p2pool
|
|
run: cd build && make -j2
|
|
|
|
- name: cmake tests
|
|
run: cd tests && mkdir build && cd build && cmake ..
|
|
|
|
- name: make tests
|
|
run: cd tests/build && make -j2
|
|
|
|
- name: run tests
|
|
run: cd tests/build && ./p2pool_tests
|
|
|
|
build-windows-msys2:
|
|
|
|
runs-on: windows-latest
|
|
|
|
defaults:
|
|
run:
|
|
shell: msys2 {0}
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Setup MSYS2
|
|
uses: eine/setup-msys2@v2
|
|
with:
|
|
update: true
|
|
install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-libuv
|
|
|
|
- name: Build p2pool
|
|
run: |
|
|
mkdir build
|
|
cd build
|
|
cmake .. -G "Unix Makefiles"
|
|
make -j2
|
|
|
|
- name: Build tests
|
|
run: |
|
|
cd tests
|
|
mkdir build
|
|
cd build
|
|
cmake .. -G "Unix Makefiles"
|
|
make -j2
|
|
|
|
- name: Run tests
|
|
run: |
|
|
cd tests/build
|
|
./p2pool_tests.exe
|
|
|
|
build-windows-msbuild:
|
|
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Setup cmake
|
|
uses: lukka/get-cmake@latest
|
|
|
|
- name: Add msbuild to PATH
|
|
uses: microsoft/setup-msbuild@v1.0.3
|
|
|
|
- name: Build p2pool
|
|
run: |
|
|
mkdir build
|
|
cd build
|
|
cmake .. -G "Visual Studio 16 2019"
|
|
msbuild /m /p:Configuration=Release p2pool.vcxproj
|
|
|
|
- name: Build tests
|
|
run: |
|
|
cd tests
|
|
mkdir build
|
|
cd build
|
|
cmake .. -G "Visual Studio 16 2019"
|
|
msbuild /m /p:Configuration=Release p2pool_tests.vcxproj
|
|
|
|
- name: Run tests
|
|
run: |
|
|
cd tests/build/Release
|
|
./p2pool_tests.exe
|
|
|
|
build-macos:
|
|
|
|
runs-on: macOS-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Install dependencies
|
|
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install cmake libuv zmq libpgm
|
|
|
|
- name: Build p2pool
|
|
run: |
|
|
mkdir build
|
|
cd build
|
|
cmake ..
|
|
make -j3
|
|
|
|
- name: Build tests
|
|
run: |
|
|
cd tests
|
|
mkdir build
|
|
cd build
|
|
cmake ..
|
|
make -j3
|
|
|
|
- name: Run tests
|
|
run: |
|
|
cd tests/build
|
|
./p2pool_tests
|