Skip to content

Merge pull request #442 from evoskuil/master #325

Merge pull request #442 from evoskuil/master

Merge pull request #442 from evoskuil/master #325

Workflow file for this run

###############################################################################
# Copyright (c) 2014-2026 libbitcoin-build developers (see COPYING).
#
###############################################################################
name: Continuous Integration Build
on: [ pull_request, push, workflow_dispatch ]
jobs:
generate:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
script: generate4.sh
branch: master
shell: bash
- os: macos-latest
script: generate4.sh
branch: master
shell: bash
# - os: windows-latest
# script: generate4.cmd
# branch: master
# shell: cmd
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository [build]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-build'
repository: ${{ github.repository }}
- name: Checkout repository [system]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-system'
repository: '${{ github.repository_owner }}/libbitcoin-system'
ref: ${{ matrix.branch }}
- name: Checkout repository [explorer]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-explorer'
repository: '${{ github.repository_owner }}/libbitcoin-explorer'
ref: ${{ matrix.branch }}
- name: Checkout repository [network]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-network'
repository: '${{ github.repository_owner }}/libbitcoin-network'
ref: ${{ matrix.branch }}
- name: Checkout repository [database]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-database'
repository: '${{ github.repository_owner }}/libbitcoin-database'
ref: ${{ matrix.branch }}
- name: Checkout repository [node]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-node'
repository: '${{ github.repository_owner }}/libbitcoin-node'
ref: ${{ matrix.branch }}
- name: Checkout repository [server]
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'libbitcoin-server'
repository: '${{ github.repository_owner }}/libbitcoin-server'
ref: ${{ matrix.branch }}
- name: Checkout repository [zeromq/gsl]
if: ${{ startsWith(matrix.os, 'macos') || startsWith(matrix.os, 'ubuntu') }}
uses: actions/checkout@v6
with:
fetch-depth: 1
path: 'gsl'
repository: 'zeromq/gsl'
- name: Prepare platform toolchain [macos]
if: ${{ startsWith(matrix.os, 'macos') }}
run: |
brew install pcre
- name: Prepare platform toolchain [ubuntu]
if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: |
sudo apt-get update
sudo apt-get install libpcre3-dev
- name: Prepare platform toolchain [windows]
if: ${{ startsWith(matrix.os, 'windows') }}
uses: microsoft/setup-msbuild@v3
- name: Aquire gsl [macos]
if: ${{ startsWith(matrix.os, 'macos') }}
run: |
pushd "gsl/src"
CPPFLAGS="-I/opt/homebrew/include ${CPPFLAGS}" make --silent
sudo make install
popd
- name: Aquire gsl [ubuntu]
if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: |
pushd "gsl/src"
make --silent
sudo make install
popd
- name: Aquire gsl [windows]
if: ${{ startsWith(matrix.os, 'windows') }}
shell: powershell
run: |
echo "${{ github.workspace }}\libbitcoin-build\bin\winx64" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Execute generation [bash]
if: ${{ startsWith(matrix.shell, 'bash') }}
shell: bash
working-directory: ${{ github.workspace }}/libbitcoin-build
run: >
./${{ matrix.script }}
- name: Execute generation [cmd]
if: ${{ startsWith(matrix.shell, 'cmd') }}
shell: cmd
working-directory: ${{ github.workspace }}\libbitcoin-build
run: .\\${{ matrix.script }}
- name: Execute generation [powershell]
if: ${{ startsWith(matrix.shell, 'powershell') }}
shell: pwsh
working-directory: ${{ github.workspace }}\libbitcoin-build
run: .\\${{ matrix.script }}