From e38e59320c365aecbd900751ec3ecf21e3fc552d Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Fri, 4 Jun 2021 09:50:48 +0200 Subject: [PATCH] better way of building protoc aarch64 artifacts (#26416) --- .../grpc_artifact_protoc_aarch64/Dockerfile | 16 ++++++++++++++++ tools/run_tests/artifacts/artifact_targets.py | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 tools/dockerfile/grpc_artifact_protoc_aarch64/Dockerfile diff --git a/tools/dockerfile/grpc_artifact_protoc_aarch64/Dockerfile b/tools/dockerfile/grpc_artifact_protoc_aarch64/Dockerfile new file mode 100644 index 00000000000..1f871ed2a7f --- /dev/null +++ b/tools/dockerfile/grpc_artifact_protoc_aarch64/Dockerfile @@ -0,0 +1,16 @@ +# Copyright 2021 The gRPC Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# On aarch64 the protoc and codegen plugins are built via crosscompilation. +FROM dockcross/linux-arm64 diff --git a/tools/run_tests/artifacts/artifact_targets.py b/tools/run_tests/artifacts/artifact_targets.py index 7ba32699f7a..df964500de0 100644 --- a/tools/run_tests/artifacts/artifact_targets.py +++ b/tools/run_tests/artifacts/artifact_targets.py @@ -318,7 +318,7 @@ class ProtocArtifact: if self.arch == 'aarch64': # for aarch64, use a dockcross manylinux image that will # give us both ready to use crosscompiler and sufficient backward compatibility - dockerfile_dir = 'tools/dockerfile/grpc_artifact_python_manylinux2014_aarch64' + dockerfile_dir = 'tools/dockerfile/grpc_artifact_protoc_aarch64' environ['LDFLAGS'] += ' -static-libgcc -static-libstdc++ -s' return create_docker_jobspec( self.name,