add ubuntu toolchain ppa #330
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
push | |
jobs: | |
macos12: | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: git config credential.helper | |
run: git config credential.helper | |
- name: which clang/xcode | |
run: clang --version | |
- 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 --enable-scrypt-sse2 --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 .dmg | |
run: make deploy | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: verge-macos12 | |
path: | | |
*.dmg | |
macos13: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: git config credential.helper | |
run: git config credential.helper | |
- name: Brew install base dependencies | |
run: | | |
# A workaround for "The `brew link` step did not complete successfully" error. | |
brew install --quiet python@3 || brew link --overwrite python@3 | |
brew install --quiet 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: which clang/xcode | |
run: clang --version | |
- name: Auto generate | |
run: ./autogen.sh | |
- name: configure | |
run: ./configure --enable-scrypt-sse2 --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 .dmg | |
run: make deploy | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: verge-macos13 | |
path: | | |
*.dmg | |
macos14: | |
runs-on: macos-14 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: git config credential.helper | |
run: git config credential.helper | |
- name: get previous xcode and switch to it | |
run: ls -la /Applications/Xcode* && sudo xcode-select -switch /Applications/Xcode_15.2.app | |
- name: Brew install base dependencies | |
run: | | |
# A workaround for "The `brew link` step did not complete successfully" error. | |
brew install --quiet python@3 || brew link --overwrite python@3 | |
brew install --quiet automake autoconf berkeley-db@4 [email protected] pkg-config miniupnpc zeromq libtool qt@5 gperf qrencode librsvg && curl -L https://raw.githubusercontent.com/vergecurrency/protobuf261/master/protobuf261.rb > protobuf261.rb && brew install protobuf261.rb | |
brew upgrade libevent && brew link --force libevent | |
# brew unlink libevent && curl -L https://raw.githubusercontent.com/vergecurrency/libevent/master/libevent.rb > libevent.rb && brew install libevent.rb | |
- name: Brew link dependencies | |
run: brew link [email protected] qt@5 berkeley-db@4 libevent | |
- name: which clang/xcode | |
run: clang --version | |
- name: export boost flags and run Auto generate | |
run: ./autogen.sh | |
- name: configure | |
run: export LDFLAGS="-L/opt/homebrew/opt/[email protected]/lib" && export CPPFLAGS="-I/opt/homebrew/opt/[email protected]/include" && ./configure --disable-bench --disable-tests --disable-dependency-tracking --disable-werror --with-gui --bindir=`pwd`/release/bin --libdir=`pwd`/release/lib --with-openssl-dir=/opt/homebrew/Cellar/openssl@3/3.3.1 --with-libevent-dir=/opt/homebrew/Cellar/libevent/2.1.12_1 --with-boost=/opt/homebrew/Cellar/[email protected]/1.76.0_5 | |
- name: make | |
run: make -j4 | |
- name: make .dmg | |
run: make deploy | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: verge-macos14 | |
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 --enable-scrypt-sse2 --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: strip | |
run: cd ./src && strip verged verge-cli verge-tx && cd ./qt && strip verge-qt | |
- 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 --enable-scrypt-sse2 --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: strip | |
run: cd ./src && strip verged verge-cli verge-tx && cd ./qt && strip verge-qt | |
- 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 --enable-scrypt-sse2 --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: strip | |
run: cd ./src && strip verged verge-cli verge-tx && cd ./qt && strip verge-qt | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: verge-ubuntu20 | |
path: | | |
./src/verged | |
./src/verge-cli | |
./src/verge-tx | |
./src/qt/verge-qt | |
windows32-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 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 --disable-bench --disable-tests --disable-dependency-tracking --disable-werror --prefix=`pwd`/depends/i686-w64-mingw32 --bindir=`pwd`/release/bin --libdir=`pwd`/release/lib | |
- 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-ubuntu20 | |
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 | |
windows32-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 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-ubuntu22 | |
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 | |
windows32-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 libtool gperf autotools-dev automake pkg-config bsdmainutils curl git bison byacc python3 nsis | |
- name: Install MingW32 version 10 | |
run: | | |
sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa && sudo apt-get update && sudo apt-get install g++-mingw-w64-i686=10.3.0-2 gcc-mingw-w64-i686=10.3.0-2 mingw-w64-i686-dev=10.3.0-2 | |
- 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-ubuntu24 | |
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-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 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 --enable-scrypt-sse2 --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-windows64bit-ubuntu22 | |
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-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 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 --enable-scrypt-sse2 --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-windows64bit-ubuntu20 | |
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-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 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 --enable-scrypt-sse2 --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-windows64bit-ubuntu24 | |
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 |