Add arm64 support to Docker image + add librocksdb.a for linux aarch64 (#84)

This commit:

- Adds building docker images for multiple architectures (currently intel, arm64) 
  using docker `buildx`
- Temporarily modifies the `Dockerfile` to use `ppa:mainnet-pat/opt-qt-5.13.2-bionic` 
  which is a clone of previously used `ppa:beineri/opt-qt-5.13.2-bionic` but builds 
  arm64 deb packages as well. Author is contacted to support this in their repo.
    - Calin verified that the input source tree and build control files are identical to ~beineri
- Adds librocksdb.a static lib built for arm64 (should be generally useful outside of docker)
This commit is contained in:
mainnet-pat 2021-07-02 01:36:51 +03:00 committed by GitHub
parent 4ad1ce2c73
commit 8b63f55a21
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 10 additions and 4 deletions

View file

@ -6,6 +6,11 @@ jobs:
fast_finish: true
include:
- os: linux
arch: amd64
dist: bionic
env: TARGET_OS=ubuntu
- os: linux
arch: arm64
dist: bionic
env: TARGET_OS=ubuntu
- os: osx

View file

@ -1,11 +1,11 @@
FROM ubuntu:bionic
FROM --platform=$BUILDPLATFORM ubuntu:bionic
LABEL maintainer="Axel Gembe <derago@gmail.com>"
ARG MAKEFLAGS
RUN apt-get update -y && \
apt-get install -y software-properties-common && \
add-apt-repository ppa:beineri/opt-qt-5.13.2-bionic && \
add-apt-repository ppa:mainnet-pat/opt-qt-5.13.2-bionic && \
apt-get update -y && \
apt-get install -y qt513base openssl && \
apt-get install -y git build-essential pkg-config zlib1g-dev libbz2-dev libjemalloc-dev libjemalloc1 libzmq3-dev && \

View file

@ -12,4 +12,5 @@ IMAGE_TAG="$1"
here=$(dirname $(realpath "$0" 2> /dev/null || grealpath "$0"))
. "$here"/../base.sh
docker build --build-arg MAKEFLAGS="-j $WORKER_COUNT" -t "$IMAGE_TAG" -f contrib/docker/Dockerfile "$here"/../..
docker buildx build --build-arg MAKEFLAGS="-j $WORKER_COUNT" -t "$IMAGE_TAG" -f contrib/docker/Dockerfile \
--platform linux/arm64/v8,linux/amd64 --push "$here"/../..

View file

@ -1,3 +1,3 @@
#!/bin/sh
sudo add-apt-repository -y ppa:beineri/opt-qt-5.13.2-bionic
sudo add-apt-repository -y ppa:mainnet-pat/opt-qt-5.13.2-bionic
sudo apt-get update -qq

Binary file not shown.