Eadrom IP Change #105
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
name: Depends Ubuntu 20.04 | |
on: | |
push: | |
paths-ignore: | |
- '**/README.md' | |
pull_request: | |
paths-ignore: | |
- '**/README.md' | |
env: | |
APT_SET_CONF: | | |
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom | |
echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom | |
echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom | |
CCACHE_SETTINGS: | | |
ccache --max-size=150M | |
ccache --set-config=compression=true | |
jobs: | |
Depends: | |
runs-on: ubuntu-20.04 | |
env: | |
CCACHE_TEMPDIR: /tmp/.ccache-temp | |
strategy: | |
fail-fast: false | |
matrix: | |
toolchain: | |
- name: "ARM-v7" | |
host: "arm-linux-gnueabihf" | |
packages: "python3 gperf g++-arm-linux-gnueabihf" | |
- name: "ARM-v8" | |
host: "aarch64-linux-gnu" | |
packages: "python3 gperf g++-aarch64-linux-gnu" | |
- name: "ARM-v8-Pi" | |
host: "aarch64-linux-gnu" | |
packages: "python3 gperf g++-aarch64-linux-gnu" | |
cmake_opts: "-DNO_AES=ON" | |
- name: "Windows-x86_64" | |
host: "x86_64-w64-mingw32" | |
packages: "cmake python3 g++-mingw-w64-x86-64 qttools5-dev-tools" | |
- name: "Linux-x86_64" | |
host: "x86_64-unknown-linux-gnu" | |
packages: "gperf cmake python3-zmq libdbus-1-dev libharfbuzz-dev" | |
- name: "macOS-x86_64" | |
host: "x86_64-apple-darwin19.2.0" | |
packages: "gperf cmake python3-zmq libdbus-1-dev libharfbuzz-dev" | |
name: ${{ matrix.toolchain.name }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Ccache | |
uses: actions/cache@v4 | |
with: | |
path: ~/.ccache | |
key: ccache-${{ matrix.toolchain.host }}-${{ github.sha }} | |
restore-keys: ccache-${{ matrix.toolchain.host }}- | |
- name: Depends cache | |
uses: actions/cache@v4 | |
with: | |
path: contrib/depends/built | |
key: depends-${{ matrix.toolchain.host }}-${{ hashFiles('contrib/depends/packages/*') }} | |
restore-keys: | | |
depends-${{ matrix.toolchain.host }}-${{ hashFiles('contrib/depends/packages/*') }} | |
depends-${{ matrix.toolchain.host }}- | |
- name: Set apt Conf | |
run: | | |
${{env.APT_SET_CONF}} | |
- name: Install GNTL Dependencies | |
run: | | |
sudo apt update; sudo apt -y install build-essential libtool cmake autotools-dev automake pkg-config bsdmainutils curl git imagemagick libcap-dev librsvg2-bin libz-dev libtiff-tools python3-setuptools ca-certificates ccache ${{ matrix.toolchain.packages }} | |
- name: Prepare w64-mingw32 | |
if: ${{ matrix.toolchain.host == 'x86_64-w64-mingw32' }} | |
run: | | |
sudo update-alternatives --set ${{ matrix.toolchain.host }}-g++ $(which ${{ matrix.toolchain.host }}-g++-posix) | |
sudo update-alternatives --set ${{ matrix.toolchain.host }}-gcc $(which ${{ matrix.toolchain.host }}-gcc-posix) | |
- name: Add mac SDK | |
if: ${{ matrix.toolchain.host == 'x86_64-apple-darwin19.2.0' }} | |
run: | | |
git clone -b arqma https://github.com/malbit/MacOSX-SDKs.git contrib/depends/SDKs | |
- name: Build | |
run: | | |
${{env.CCACHE_SETTINGS}} | |
make depends target=${{ matrix.toolchain.host }} cmake_opts=${{ matrix.toolchain.cmake_opts }} -j2 | |
- name: Tar binaries | |
run: | | |
cd build/${{ matrix.toolchain.host }}/release/ | |
mv bin gntl | |
tar -czvf ${{ matrix.toolchain.name }}.tar.gz gntl | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.toolchain.name }}.tar.gz | |
path: build/${{ matrix.toolchain.host }}/release/${{ matrix.toolchain.name }}.tar.gz |