@ -11,6 +11,16 @@ git submodule update --init --recursive
# Generate the configure script.
# Generate the configure script.
./autogen.sh
./autogen.sh
# Cross-build for aarch64 and ppc64le. Note: we do these builds first to avoid
# file permission issues. The Docker builds will create directories owned by
# root, which causes problems if we try to add new artifacts to those
# directories afterward.
sudo apt install -y g++-aarch64-linux-gnu
protoc-artifacts/build-protoc.sh linux aarch_64 protoc
sudo apt install -y g++-powerpc64le-linux-gnu
protoc-artifacts/build-protoc.sh linux ppcle_64 protoc
# Use docker image to build linux artifacts.
# Use docker image to build linux artifacts.
DOCKER_IMAGE_NAME = protobuf/protoc_$( sha1sum protoc-artifacts/Dockerfile | cut -f1 -d " " )
DOCKER_IMAGE_NAME = protobuf/protoc_$( sha1sum protoc-artifacts/Dockerfile | cut -f1 -d " " )
docker pull $DOCKER_IMAGE_NAME
docker pull $DOCKER_IMAGE_NAME
@ -28,9 +38,3 @@ docker run -v $(pwd):/var/local/protobuf --rm $DOCKER_IMAGE_NAME \
echo "Failed to build protoc for linux + x86_32."
echo "Failed to build protoc for linux + x86_32."
exit 1
exit 1
}
}
# Cross-build for some architectures.
# TODO(xiaofeng): It currently fails with "machine `aarch64' not recognized"
# error.
# sudo apt install -y g++-aarch64-linux-gnu
# protoc-artifacts/build-protoc.sh linux aarch_64 protoc