Skip to content

fix build n release, add another windows variation option #77

fix build n release, add another windows variation option

fix build n release, add another windows variation option #77

name: '[Full Build - Linux (Ubuntu 20,22,24), Windows32, Windows64, MacOS]'
on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
jobs:
macos:
runs-on: macos-12
steps:
- uses: actions/checkout@v4
- name: git config credential.helper
run: git config credential.helper
- name: Brew install base dependencies
run: brew install automake berkeley-db@4 [email protected] miniupnpc qt@5 gperf qrencode librsvg && curl -L https://raw.githubusercontent.com/vergecurrency/protobuf261/master/protobuf261.rb > protobuf261.rb && brew install protobuf261.rb
- name: Brew link dependencies
run: brew link [email protected] qt@5 berkeley-db@4
- name: Auto generate
run: ./autogen.sh
- name: configure
run: ./configure --disable-bench --disable-tests --disable-dependency-tracking --disable-werror --with-gui --bindir=`pwd`/release/bin --libdir=`pwd`/release/lib
- name: make
run: make -j4
- name: make check
run: make check -j4
- name: make .dmg
run: make deploy
- uses: actions/upload-artifact@v4
with:
name: verge-macos
path: |
*.dmg
ubuntu24:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Update apt repos
run: sudo apt-get update
- name: Install base dependencies
run: sudo apt-get install build-essential xutils-dev libtool gperf autotools-dev automake pkg-config bsdmainutils libattr1-dev make automake bison byacc cmake curl g++-multilib binutils-gold bison byacc python3
- name: Build depends
run: cd depends/ && make -j4 HOST=x86_64-linux-gnu
- name: Auto generate
run: ./autogen.sh
- name: configure
run: CONFIG_SITE=$PWD/depends/x86_64-linux-gnu/share/config.site ./configure --disable-bench --disable-tests --disable-dependency-tracking --disable-werror --prefix=`pwd`/depends/x86_64-linux-gnu --bindir=`pwd`/release/bin --libdir=`pwd`/release/lib
- name: make
run: make -j4
- name: make check
run: make check -j4
- uses: actions/upload-artifact@v4
with:
name: verge-ubuntu24
path: |
./src/verged
./src/verge-cli
./src/verge-tx
./src/qt/verge-qt
ubuntu22:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Update apt repos
run: sudo apt-get update
- name: Install base dependencies
run: sudo apt-get install build-essential xutils-dev libtool gperf autotools-dev automake pkg-config bsdmainutils libattr1-dev make automake bison byacc cmake curl g++-multilib binutils-gold bison byacc python3
- name: Build depends
run: cd depends/ && make -j4 HOST=x86_64-linux-gnu
- name: Auto generate
run: ./autogen.sh
- name: configure
run: CONFIG_SITE=$PWD/depends/x86_64-linux-gnu/share/config.site ./configure --disable-bench --disable-tests --disable-dependency-tracking --disable-werror --prefix=`pwd`/depends/x86_64-linux-gnu --bindir=`pwd`/release/bin --libdir=`pwd`/release/lib
- name: make
run: make -j4
- name: make check
run: make check -j4
- uses: actions/upload-artifact@v4
with:
name: verge-ubuntu22
path: |
./src/verged
./src/verge-cli
./src/verge-tx
./src/qt/verge-qt
ubuntu20:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- name: Update apt repos
run: sudo apt-get update
- name: Install base dependencies
run: sudo apt-get install build-essential xutils-dev libtool gperf autotools-dev automake pkg-config bsdmainutils libattr1-dev make automake bison byacc cmake curl g++-multilib binutils-gold bison byacc python3
- name: Build depends
run: cd depends/ && make -j4 HOST=x86_64-linux-gnu
- name: Auto generate
run: ./autogen.sh
- name: configure
run: CONFIG_SITE=$PWD/depends/x86_64-linux-gnu/share/config.site ./configure --disable-bench --disable-tests --disable-dependency-tracking --disable-werror --prefix=`pwd`/depends/x86_64-linux-gnu --bindir=`pwd`/release/bin --libdir=`pwd`/release/lib
- name: make
run: make -j4
- name: make check
run: make check -j4
- uses: actions/upload-artifact@v4
with:
name: verge-ubuntu20
path: |
./src/verged
./src/verge-cli
./src/verge-tx
./src/qt/verge-qt
windows32:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Update apt repos
run: sudo apt-get update
- name: Install base dependencies
run: sudo apt-get install build-essential libtool gperf autotools-dev automake pkg-config bsdmainutils curl git bison byacc python3 nsis
- name: Force Posix
run: sudo apt-get install g++-mingw-w64-i686 mingw-w64-i686-dev && sudo update-alternatives --set i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++-posix
- name: Build depends for MingW32 Cross Compile
run: PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g') && cd depends/ && make HOST=i686-w64-mingw32 -j2
- name: Auto generate
run: ./autogen.sh
- name: configure
run: CONFIG_SITE=$PWD/depends/i686-w64-mingw32/share/config.site ./configure --prefix=/ --disable-bench --disable-tests
- name: make
run: make -j2
- name: strip
run: cd ./src && strip verged.exe verge-cli.exe verge-tx.exe && cd ./qt && strip verge-qt.exe
- uses: actions/upload-artifact@v4
with:
name: verge-windows32
path: |
/home/runner/work/verge/verge/src/verged.exe
/home/runner/work/verge/verge/src/verge-cli.exe
/home/runner/work/verge/verge/src/verge-tx.exe
/home/runner/work/verge/verge/src/qt/verge-qt.exe
windows64:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Update apt repos
run: sudo apt-get update
- name: Install base dependencies
run: sudo apt-get install build-essential libtool gperf autotools-dev automake pkg-config bsdmainutils curl git bison byacc python3 nsis
- name: Force Posix
run: sudo apt install g++-mingw-w64-x86-64 && sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix
- name: Build depends for MingW32 Cross Compile
run: PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g') && cd depends/ && make HOST=x86_64-w64-mingw32 -j2
- name: Auto generate
run: ./autogen.sh
- name: configure
run: CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/ --disable-bench --disable-tests
- name: make
run: make -j2
- name: strip
run: cd ./src && strip verged.exe verge-cli.exe verge-tx.exe && cd ./qt && strip verge-qt.exe
- uses: actions/upload-artifact@v4
with:
name: verge-windows64
path: |
/home/runner/work/verge/verge/src/verged.exe
/home/runner/work/verge/verge/src/verge-cli.exe
/home/runner/work/verge/verge/src/verge-tx.exe
/home/runner/work/verge/verge/src/qt/verge-qt.exe
SendReleases:
runs-on: ubuntu-latest
needs: [macos, linux-ubuntu20, linux-ubuntu22, windows32, windows64]

Check failure on line 233 in .github/workflows/build-all-and-release.yml

View workflow run for this annotation

GitHub Actions / [Full Build - Linux (Ubuntu 20,22,24), Windows32, Windows64, MacOS]

Invalid workflow file

The workflow is not valid. .github/workflows/build-all-and-release.yml (Line: 233, Col: 20): Job 'SendReleases' depends on unknown job 'linux-ubuntu20'. .github/workflows/build-all-and-release.yml (Line: 233, Col: 36): Job 'SendReleases' depends on unknown job 'linux-ubuntu22'.
steps:
- name: Generate Changelog
run: echo "# Changelog" > ${{ github.workspace }}-CHANGELOG.txt
- uses: actions/download-artifact@v4
with:
name: verge-windows32
- uses: actions/download-artifact@v4
with:
name: verge-windows64
- uses: actions/download-artifact@v4
with:
name: verge-macos
- uses: actions/download-artifact@v4
with:
name: verge-ubuntu20
- uses: actions/download-artifact@v4
with:
name: verge-ubuntu22
- uses: actions/download-artifact@v4
with:
name: verge-ubuntu24
- name: push zips to release
uses: softprops/action-gh-release@v2
with:
tag_name: v7.6.0
files: |
verge-windows32.zip
verge-windows64.zip
verge-macos.zip
verge-ubuntu20.zip
verge-ubuntu22.zip
verge-ubuntu24.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}