|
@@ -0,0 +1,30 @@
|
|
|
+#!/bin/bash
|
|
|
+
|
|
|
+set -x
|
|
|
+
|
|
|
+# Change to repo root.
|
|
|
+cd $(dirname $0)/../../../..
|
|
|
+
|
|
|
+# Use docker image to build linux artifacts.
|
|
|
+DOCKER_IMAGE_NAME=protobuf/protoc_$(sha1sum protoc-artifacts/Dockerfile | cut -f1 -d " ")
|
|
|
+docker pull $DOCKER_IMAGE_NAME
|
|
|
+
|
|
|
+docker run -v $(pwd):/var/local/protobuf --rm $DOCKER_IMAGE_NAME \
|
|
|
+ bash -l /var/local/protobuf/protoc-artifacts/build-protoc.sh \
|
|
|
+ linux x86_64 protoc || {
|
|
|
+ echo "Failed to build protoc for linux + x86_64."
|
|
|
+ exit 1
|
|
|
+}
|
|
|
+
|
|
|
+docker run -v $(pwd):/var/local/protobuf --rm $DOCKER_IMAGE_NAME \
|
|
|
+ bash -l /var/local/protobuf/protoc-artifacts/build-protoc.sh \
|
|
|
+ linux x86_32 protoc || {
|
|
|
+ echo "Failed to build protoc for linux + x86_32."
|
|
|
+ exit 1
|
|
|
+}
|
|
|
+
|
|
|
+# Cross-build for some architectures.
|
|
|
+sudo apt install g++-aarch64-linux-gnu
|
|
|
+# TODO(xiaofeng): It currently fails with "machine `aarch64' not recognized"
|
|
|
+# error.
|
|
|
+# protoc-artifacts/build-protoc.sh linux aarch_64 protoc
|