mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Drop direct support for Ubuntu 18.04 and switch to static PPA releases for it.
This commit is contained in:
parent
8623e7fbe8
commit
a3a5d93b34
@ -7,10 +7,6 @@
|
|||||||
# - ems: Emscripten
|
# - ems: Emscripten
|
||||||
version: 2.1
|
version: 2.1
|
||||||
parameters:
|
parameters:
|
||||||
ubuntu-1804-docker-image:
|
|
||||||
type: string
|
|
||||||
# solbuildpackpusher/solidity-buildpack-deps:ubuntu1804-4
|
|
||||||
default: "solbuildpackpusher/solidity-buildpack-deps@sha256:79ccaf5a294a3c4f480b2cd69c6d845540c12435e64d732e8536f8f99ad35f03"
|
|
||||||
ubuntu-2004-docker-image:
|
ubuntu-2004-docker-image:
|
||||||
type: string
|
type: string
|
||||||
# solbuildpackpusher/solidity-buildpack-deps:ubuntu2004-4
|
# solbuildpackpusher/solidity-buildpack-deps:ubuntu2004-4
|
||||||
@ -478,19 +474,6 @@ jobs:
|
|||||||
command: strip build/solc/solc
|
command: strip build/solc/solc
|
||||||
- store_artifacts: *artifacts_solc
|
- store_artifacts: *artifacts_solc
|
||||||
|
|
||||||
b_ubu18: &build_ubuntu1804
|
|
||||||
docker:
|
|
||||||
- image: << pipeline.parameters.ubuntu-1804-docker-image >>
|
|
||||||
environment:
|
|
||||||
CMAKE_OPTIONS: -DCMAKE_CXX_FLAGS=-O2
|
|
||||||
CMAKE_BUILD_TYPE: RelWithDebugInfo
|
|
||||||
MAKEFLAGS: -j 3
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- run: *run_build
|
|
||||||
- store_artifacts: *artifacts_solc
|
|
||||||
- persist_to_workspace: *artifacts_executables
|
|
||||||
|
|
||||||
b_ubu_codecov:
|
b_ubu_codecov:
|
||||||
<<: *build_ubuntu2004
|
<<: *build_ubuntu2004
|
||||||
environment:
|
environment:
|
||||||
@ -1164,7 +1147,6 @@ workflows:
|
|||||||
|
|
||||||
# Ubuntu build and tests
|
# Ubuntu build and tests
|
||||||
- b_ubu: *workflow_trigger_on_tags
|
- b_ubu: *workflow_trigger_on_tags
|
||||||
- b_ubu18: *workflow_trigger_on_tags
|
|
||||||
- t_ubu_cli: *workflow_ubuntu2004
|
- t_ubu_cli: *workflow_ubuntu2004
|
||||||
- t_ubu_soltest: *workflow_ubuntu2004
|
- t_ubu_soltest: *workflow_ubuntu2004
|
||||||
- t_ubu_soltest_enforce_yul: *workflow_ubuntu2004
|
- t_ubu_soltest_enforce_yul: *workflow_ubuntu2004
|
||||||
|
3
.github/workflows/buildpack-deps.yml
vendored
3
.github/workflows/buildpack-deps.yml
vendored
@ -6,7 +6,6 @@ on:
|
|||||||
paths:
|
paths:
|
||||||
- 'scripts/docker/buildpack-deps/Dockerfile.emscripten'
|
- 'scripts/docker/buildpack-deps/Dockerfile.emscripten'
|
||||||
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu1604.clang.ossfuzz'
|
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu1604.clang.ossfuzz'
|
||||||
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu1804'
|
|
||||||
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu2004.clang'
|
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu2004.clang'
|
||||||
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu2004'
|
- 'scripts/docker/buildpack-deps/Dockerfile.ubuntu2004'
|
||||||
|
|
||||||
@ -23,7 +22,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
image_variant: [emscripten, ubuntu1604.clang.ossfuzz, ubuntu1804, ubuntu2004.clang, ubuntu2004]
|
image_variant: [emscripten, ubuntu1604.clang.ossfuzz, ubuntu2004.clang, ubuntu2004]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
@ -52,7 +52,7 @@
|
|||||||
### PPA
|
### PPA
|
||||||
- [ ] Change ``scripts/release_ppa.sh`` to match your key's email and key id.
|
- [ ] Change ``scripts/release_ppa.sh`` to match your key's email and key id.
|
||||||
- [ ] Run ``scripts/release_ppa.sh v$VERSION`` to create the PPA release (you need the relevant openssl key).
|
- [ ] Run ``scripts/release_ppa.sh v$VERSION`` to create the PPA release (you need the relevant openssl key).
|
||||||
- [ ] Wait for the ``~ethereum/ubuntu/ethereum-static`` PPA build to be finished and published for *all platforms*. SERIOUSLY: DO NOT PROCEED EARLIER!!! *After* the static builds are *published*, copy the static package to the ``~ethereum/ubuntu/ethereum`` PPA for the destination series ``Trusty`` and ``Xenial`` while selecting ``Copy existing binaries``.
|
- [ ] Wait for the ``~ethereum/ubuntu/ethereum-static`` PPA build to be finished and published for *all platforms*. SERIOUSLY: DO NOT PROCEED EARLIER!!! *After* the static builds are *published*, copy the static package to the ``~ethereum/ubuntu/ethereum`` PPA for the destination series ``Trusty``, ``Xenial`` and ``Bionic`` while selecting ``Copy existing binaries``.
|
||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
- [ ] Build the new version on https://readthedocs.org/projects/solidity/ (select `latest` at the bottom of the page and click `BUILD`)
|
- [ ] Build the new version on https://readthedocs.org/projects/solidity/ (select `latest` at the bottom of the page and click `BUILD`)
|
||||||
|
@ -27,7 +27,7 @@ email=builds@ethereum.org
|
|||||||
packagename=libz3-static-dev
|
packagename=libz3-static-dev
|
||||||
version=4.8.9
|
version=4.8.9
|
||||||
|
|
||||||
DISTRIBUTIONS="bionic focal groovy"
|
DISTRIBUTIONS="focal groovy"
|
||||||
|
|
||||||
for distribution in $DISTRIBUTIONS
|
for distribution in $DISTRIBUTIONS
|
||||||
do
|
do
|
||||||
|
@ -1,108 +0,0 @@
|
|||||||
# vim:syntax=dockerfile
|
|
||||||
#------------------------------------------------------------------------------
|
|
||||||
# Dockerfile for building and testing Solidity Compiler on CI
|
|
||||||
# Target: Ubuntu 18.04 (Bionic Beaver)
|
|
||||||
# URL: https://hub.docker.com/r/ethereum/solidity-buildpack-deps
|
|
||||||
#
|
|
||||||
# This file is part of solidity.
|
|
||||||
#
|
|
||||||
# solidity is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# solidity is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with solidity. If not, see <http://www.gnu.org/licenses/>
|
|
||||||
#
|
|
||||||
# (c) 2016-2019 solidity contributors.
|
|
||||||
#------------------------------------------------------------------------------
|
|
||||||
FROM buildpack-deps:bionic AS base
|
|
||||||
LABEL version="4"
|
|
||||||
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
|
||||||
|
|
||||||
RUN set -ex; \
|
|
||||||
dist=$(grep DISTRIB_CODENAME /etc/lsb-release | cut -d= -f2); \
|
|
||||||
echo "deb http://ppa.launchpad.net/ethereum/cpp-build-deps/ubuntu $dist main" >> /etc/apt/sources.list ; \
|
|
||||||
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1c52189c923f6ca9 ; \
|
|
||||||
apt-get update; \
|
|
||||||
apt-get install -qqy --no-install-recommends \
|
|
||||||
build-essential \
|
|
||||||
software-properties-common \
|
|
||||||
cmake ninja-build clang++-8 \
|
|
||||||
libboost-filesystem-dev libboost-test-dev libboost-system-dev \
|
|
||||||
libboost-program-options-dev \
|
|
||||||
libjsoncpp-dev \
|
|
||||||
llvm-8-dev libz3-static-dev \
|
|
||||||
; \
|
|
||||||
apt-get install -qy python-pip python-sphinx; \
|
|
||||||
update-alternatives --install /usr/bin/llvm-symbolizer llvm-symbolizer /usr/bin/llvm-symbolizer-8 1; \
|
|
||||||
pip install codecov; \
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
FROM base AS libraries
|
|
||||||
|
|
||||||
# OSSFUZZ: libprotobuf-mutator
|
|
||||||
RUN set -ex; \
|
|
||||||
git clone https://github.com/google/libprotobuf-mutator.git \
|
|
||||||
/usr/src/libprotobuf-mutator; \
|
|
||||||
cd /usr/src/libprotobuf-mutator; \
|
|
||||||
git checkout d1fe8a7d8ae18f3d454f055eba5213c291986f21; \
|
|
||||||
mkdir build; \
|
|
||||||
cd build; \
|
|
||||||
cmake .. -GNinja -DLIB_PROTO_MUTATOR_DOWNLOAD_PROTOBUF=ON \
|
|
||||||
-DLIB_PROTO_MUTATOR_TESTING=OFF -DCMAKE_BUILD_TYPE=Release \
|
|
||||||
-DCMAKE_INSTALL_PREFIX="/usr"; \
|
|
||||||
ninja; \
|
|
||||||
cp -vpr external.protobuf/bin/* /usr/bin/; \
|
|
||||||
cp -vpr external.protobuf/include/* /usr/include/; \
|
|
||||||
cp -vpr external.protobuf/lib/* /usr/lib/; \
|
|
||||||
ninja install/strip; \
|
|
||||||
rm -rf /usr/src/libprotobuf-mutator
|
|
||||||
|
|
||||||
# OSSFUZZ: libfuzzer
|
|
||||||
RUN set -ex; \
|
|
||||||
cd /var/tmp; \
|
|
||||||
svn co https://llvm.org/svn/llvm-project/compiler-rt/trunk/lib/fuzzer libfuzzer; \
|
|
||||||
mkdir -p build-libfuzzer; \
|
|
||||||
cd build-libfuzzer; \
|
|
||||||
clang++-8 -O1 -stdlib=libstdc++ -std=c++11 -O2 -fPIC -c ../libfuzzer/*.cpp -I../libfuzzer; \
|
|
||||||
ar r /usr/lib/libFuzzingEngine.a *.o; \
|
|
||||||
rm -rf /var/lib/libfuzzer
|
|
||||||
|
|
||||||
# EVMONE
|
|
||||||
ARG EVMONE_HASH="e9f8df89c52d9c60c9a38dd00687b1ec9e9ae9650b400a87c4c0cf7468e35307"
|
|
||||||
ARG EVMONE_MAJOR="0"
|
|
||||||
ARG EVMONE_MINOR="4"
|
|
||||||
ARG EVMONE_MICRO="0"
|
|
||||||
RUN set -ex; \
|
|
||||||
EVMONE_VERSION="$EVMONE_MAJOR.$EVMONE_MINOR.$EVMONE_MICRO"; \
|
|
||||||
TGZFILE="evmone-$EVMONE_VERSION-linux-x86_64.tar.gz"; \
|
|
||||||
wget https://github.com/ethereum/evmone/releases/download/v$EVMONE_VERSION/$TGZFILE; \
|
|
||||||
sha256sum $TGZFILE | grep ${EVMONE_HASH}; \
|
|
||||||
tar xzpf $TGZFILE -C /usr; \
|
|
||||||
rm -f $TGZFILE;
|
|
||||||
|
|
||||||
# HERA
|
|
||||||
ARG HERA_HASH="1a0b3cf626910c969f0ac86b7a731969a2e5b8254bc4e626b8f3a60471481f03"
|
|
||||||
ARG HERA_MAJOR="0"
|
|
||||||
ARG HERA_MINOR="3"
|
|
||||||
ARG HERA_MICRO="2"
|
|
||||||
RUN set -ex; \
|
|
||||||
HERA_VERSION="$HERA_MAJOR.$HERA_MINOR.$HERA_MICRO"; \
|
|
||||||
TGZFILE="hera-$HERA_VERSION-linux-x86_64.tar.gz"; \
|
|
||||||
wget https://github.com/ewasm/hera/releases/download/v$HERA_VERSION/$TGZFILE; \
|
|
||||||
sha256sum $TGZFILE | grep ${HERA_HASH}; \
|
|
||||||
tar xzpf $TGZFILE -C /usr; \
|
|
||||||
rm -f $TGZFILE;
|
|
||||||
|
|
||||||
FROM base
|
|
||||||
COPY --from=libraries /usr/lib /usr/lib
|
|
||||||
COPY --from=libraries /usr/bin /usr/bin
|
|
||||||
COPY --from=libraries /usr/include /usr/include
|
|
||||||
|
|
@ -57,7 +57,7 @@ packagename=solc
|
|||||||
|
|
||||||
static_build_distribution=focal
|
static_build_distribution=focal
|
||||||
|
|
||||||
DISTRIBUTIONS="bionic focal groovy"
|
DISTRIBUTIONS="focal groovy"
|
||||||
|
|
||||||
if is_release
|
if is_release
|
||||||
then
|
then
|
||||||
|
Loading…
Reference in New Issue
Block a user