Skip to content

Commit

Permalink
Merge pull request #4990 from acozzette/aarch64-build
Browse files Browse the repository at this point in the history
Added support for building the aarch64 and ppcle64 protoc binaries with Kokoro
  • Loading branch information
Adam Cozzette committed Aug 1, 2018
2 parents 21fc01b + 377f64f commit 04faf48
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 8 deletions.
16 changes: 10 additions & 6 deletions kokoro/release/protoc/linux/build.sh
Expand Up @@ -11,6 +11,16 @@ git submodule update --init --recursive
# Generate the configure script.
./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.
DOCKER_IMAGE_NAME=protobuf/protoc_$(sha1sum protoc-artifacts/Dockerfile | cut -f1 -d " ")
docker pull $DOCKER_IMAGE_NAME
Expand All @@ -28,9 +38,3 @@ docker run -v $(pwd):/var/local/protobuf --rm $DOCKER_IMAGE_NAME \
echo "Failed to build protoc for linux + x86_32."
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
5 changes: 3 additions & 2 deletions protoc-artifacts/README.md
Expand Up @@ -154,17 +154,18 @@ and upload these zip packages to the download section of the github
release. For example:

```
$ ./build-zip.sh 3.6.0
$ ./build-zip.sh protoc 3.6.0
```

The above command will create 5 zip files:
The above command will create 7 zip files:

```
dist/protoc-3.6.0-win32.zip
dist/protoc-3.6.0-osx-x86_32.zip
dist/protoc-3.6.0-osx-x86_64.zip
dist/protoc-3.6.0-linux-x86_32.zip
dist/protoc-3.6.0-linux-x86_64.zip
dist/protoc-3.6.0-linux-aarch_64.zip
dist/protoc-3.6.0-linux-ppcle_64.zip
```

Expand Down

0 comments on commit 04faf48

Please sign in to comment.