mirror of https://github.com/grpc/grpc-java.git
38 lines
1.0 KiB
Bash
Executable File
38 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# This file is used for both Linux and MacOS builds.
|
|
# TODO(zpencer): test this script for Linux
|
|
|
|
# This script assumes `set -e`. Removing it may lead to undefined behavior.
|
|
set -exu -o pipefail
|
|
|
|
export GRADLE_OPTS=-Xmx512m
|
|
export PROTOBUF_VERSION=3.5.0
|
|
export LDFLAGS=-L/tmp/protobuf/lib
|
|
export CXXFLAGS=-I/tmp/protobuf/include
|
|
export LD_LIBRARY_PATH=/tmp/protobuf/lib
|
|
export OS_NAME=$(uname)
|
|
|
|
cd ./github/grpc-java
|
|
|
|
# TODO(zpencer): always make sure we are using Oracle jdk8
|
|
|
|
# Proto deps
|
|
buildscripts/make_dependencies.sh
|
|
ln -s "/tmp/protobuf-${PROTOBUF_VERSION}/$(uname -s)-$(uname -p)" /tmp/protobuf
|
|
|
|
# Gradle build config
|
|
mkdir -p $HOME/.gradle
|
|
echo "checkstyle.ignoreFailures=false" >> $HOME/.gradle/gradle.properties
|
|
echo "failOnWarnings=true" >> $HOME/.gradle/gradle.properties
|
|
echo "errorProne=true" >> $HOME/.gradle/gradle.properties
|
|
|
|
# Run tests
|
|
./gradlew assemble generateTestProto install
|
|
pushd examples
|
|
./gradlew build
|
|
# --batch-mode reduces log spam
|
|
mvn verify --batch-mode
|
|
popd
|
|
# TODO(zpencer): also build the GAE examples
|