|
@@ -44,6 +44,30 @@ build_cpp() {
|
|
build_cpp_distcheck() {
|
|
build_cpp_distcheck() {
|
|
./autogen.sh
|
|
./autogen.sh
|
|
./configure
|
|
./configure
|
|
|
|
+ make dist
|
|
|
|
+
|
|
|
|
+ # List all files that should be included in the distribution package.
|
|
|
|
+ git ls-files | grep "^\(java\|python\|objectivec\|csharp\|js\|ruby\|cmake\|examples\)" |\
|
|
|
|
+ grep -v ".gitignore" | grep -v "java/compatibility_tests" > dist.lst
|
|
|
|
+ # Unzip the dist tar file.
|
|
|
|
+ DIST=`ls *.tar.gz`
|
|
|
|
+ tar -xf $DIST
|
|
|
|
+ cd ${DIST//.tar.gz}
|
|
|
|
+ # Check if every file exists in the dist tar file.
|
|
|
|
+ FILES_MISSING=""
|
|
|
|
+ for FILE in $(<../dist.lst); do
|
|
|
|
+ if ! file $FILE &>/dev/null; then
|
|
|
|
+ echo "$FILE is not found!"
|
|
|
|
+ FILES_MISSING="$FILE $FILES_MISSING"
|
|
|
|
+ fi
|
|
|
|
+ done
|
|
|
|
+ cd ..
|
|
|
|
+ if [ ! -z "$FILES_MISSING" ]; then
|
|
|
|
+ echo "Missing files in EXTRA_DIST: $FILES_MISSING"
|
|
|
|
+ exit 1
|
|
|
|
+ fi
|
|
|
|
+
|
|
|
|
+ # Do the regular dist-check for C++.
|
|
make distcheck -j2
|
|
make distcheck -j2
|
|
}
|
|
}
|
|
|
|
|
|
@@ -63,7 +87,7 @@ build_csharp() {
|
|
sudo apt-get install -qq mono-devel referenceassemblies-pcl nunit
|
|
sudo apt-get install -qq mono-devel referenceassemblies-pcl nunit
|
|
|
|
|
|
# Then install the dotnet SDK as per Ubuntu 14.04 instructions on dot.net.
|
|
# Then install the dotnet SDK as per Ubuntu 14.04 instructions on dot.net.
|
|
- sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
|
|
|
|
|
|
+ sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
|
|
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
|
|
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
|
|
sudo apt-get update -qq
|
|
sudo apt-get update -qq
|
|
sudo apt-get install -qq dotnet-dev-1.0.0-preview2-003121
|
|
sudo apt-get install -qq dotnet-dev-1.0.0-preview2-003121
|
|
@@ -89,10 +113,12 @@ build_golang() {
|
|
export PATH="`pwd`/src:$PATH"
|
|
export PATH="`pwd`/src:$PATH"
|
|
|
|
|
|
# Install Go and the Go protobuf compiler plugin.
|
|
# Install Go and the Go protobuf compiler plugin.
|
|
- sudo apt-get update -qq
|
|
|
|
- sudo apt-get install -qq golang
|
|
|
|
|
|
+ on_travis sudo apt-get update -qq
|
|
|
|
+ on_travis sudo apt-get install -qq golang
|
|
|
|
+
|
|
export GOPATH="$HOME/gocode"
|
|
export GOPATH="$HOME/gocode"
|
|
mkdir -p "$GOPATH/src/github.com/google"
|
|
mkdir -p "$GOPATH/src/github.com/google"
|
|
|
|
+ rm -f "$GOPATH/src/github.com/google/protobuf"
|
|
ln -s "`pwd`" "$GOPATH/src/github.com/google/protobuf"
|
|
ln -s "`pwd`" "$GOPATH/src/github.com/google/protobuf"
|
|
export PATH="$GOPATH/bin:$PATH"
|
|
export PATH="$GOPATH/bin:$PATH"
|
|
go get github.com/golang/protobuf/protoc-gen-go
|
|
go get github.com/golang/protobuf/protoc-gen-go
|
|
@@ -103,13 +129,10 @@ build_golang() {
|
|
use_java() {
|
|
use_java() {
|
|
version=$1
|
|
version=$1
|
|
case "$version" in
|
|
case "$version" in
|
|
- jdk6)
|
|
|
|
- on_travis sudo apt-get install openjdk-6-jdk
|
|
|
|
- export PATH=/usr/lib/jvm/java-6-openjdk-amd64/bin:$PATH
|
|
|
|
- ;;
|
|
|
|
jdk7)
|
|
jdk7)
|
|
on_travis sudo apt-get install openjdk-7-jdk
|
|
on_travis sudo apt-get install openjdk-7-jdk
|
|
export PATH=/usr/lib/jvm/java-7-openjdk-amd64/bin:$PATH
|
|
export PATH=/usr/lib/jvm/java-7-openjdk-amd64/bin:$PATH
|
|
|
|
+ export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
|
|
;;
|
|
;;
|
|
oracle7)
|
|
oracle7)
|
|
if [ "$TRAVIS" == "true" ]; then
|
|
if [ "$TRAVIS" == "true" ]; then
|
|
@@ -120,6 +143,7 @@ use_java() {
|
|
yes | sudo apt-get install oracle-java7-installer
|
|
yes | sudo apt-get install oracle-java7-installer
|
|
fi;
|
|
fi;
|
|
export PATH=/usr/lib/jvm/java-7-oracle/bin:$PATH
|
|
export PATH=/usr/lib/jvm/java-7-oracle/bin:$PATH
|
|
|
|
+ export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
|
|
;;
|
|
;;
|
|
esac
|
|
esac
|
|
|
|
|
|
@@ -130,6 +154,7 @@ use_java() {
|
|
|
|
|
|
which java
|
|
which java
|
|
java -version
|
|
java -version
|
|
|
|
+ $MVN -version
|
|
}
|
|
}
|
|
|
|
|
|
# --batch-mode supresses download progress output that spams the logs.
|
|
# --batch-mode supresses download progress output that spams the logs.
|
|
@@ -162,10 +187,6 @@ build_javanano() {
|
|
cd javanano && $MVN test && cd ..
|
|
cd javanano && $MVN test && cd ..
|
|
}
|
|
}
|
|
|
|
|
|
-build_java_jdk6() {
|
|
|
|
- use_java jdk6
|
|
|
|
- build_java jdk6
|
|
|
|
-}
|
|
|
|
build_java_jdk7() {
|
|
build_java_jdk7() {
|
|
use_java jdk7
|
|
use_java jdk7
|
|
build_java_with_conformance_tests
|
|
build_java_with_conformance_tests
|
|
@@ -175,10 +196,6 @@ build_java_oracle7() {
|
|
build_java oracle7
|
|
build_java oracle7
|
|
}
|
|
}
|
|
|
|
|
|
-build_javanano_jdk6() {
|
|
|
|
- use_java jdk6
|
|
|
|
- build_javanano
|
|
|
|
-}
|
|
|
|
build_javanano_jdk7() {
|
|
build_javanano_jdk7() {
|
|
use_java jdk7
|
|
use_java jdk7
|
|
build_javanano
|
|
build_javanano
|
|
@@ -281,14 +298,6 @@ build_python_cpp() {
|
|
cd ..
|
|
cd ..
|
|
}
|
|
}
|
|
|
|
|
|
-build_ruby19() {
|
|
|
|
- internal_build_cpp # For conformance tests.
|
|
|
|
- cd ruby && bash travis-test.sh ruby-1.9 && cd ..
|
|
|
|
-}
|
|
|
|
-build_ruby20() {
|
|
|
|
- internal_build_cpp # For conformance tests.
|
|
|
|
- cd ruby && bash travis-test.sh ruby-2.0 && cd ..
|
|
|
|
-}
|
|
|
|
build_ruby21() {
|
|
build_ruby21() {
|
|
internal_build_cpp # For conformance tests.
|
|
internal_build_cpp # For conformance tests.
|
|
cd ruby && bash travis-test.sh ruby-2.1 && cd ..
|
|
cd ruby && bash travis-test.sh ruby-2.1 && cd ..
|
|
@@ -299,7 +308,14 @@ build_ruby22() {
|
|
}
|
|
}
|
|
build_jruby() {
|
|
build_jruby() {
|
|
internal_build_cpp # For conformance tests.
|
|
internal_build_cpp # For conformance tests.
|
|
- cd ruby && bash travis-test.sh jruby && cd ..
|
|
|
|
|
|
+ # TODO(xiaofeng): Upgrade to jruby-9.x. There are some broken jests to be
|
|
|
|
+ # fixed.
|
|
|
|
+ cd ruby && bash travis-test.sh jruby-1.7 && cd ..
|
|
|
|
+}
|
|
|
|
+build_ruby_all() {
|
|
|
|
+ build_ruby21
|
|
|
|
+ build_ruby22
|
|
|
|
+ build_jruby
|
|
}
|
|
}
|
|
|
|
|
|
build_javascript() {
|
|
build_javascript() {
|
|
@@ -320,11 +336,10 @@ build_javascript() {
|
|
if [ "$#" -ne 1 ]; then
|
|
if [ "$#" -ne 1 ]; then
|
|
echo "
|
|
echo "
|
|
Usage: $0 { cpp |
|
|
Usage: $0 { cpp |
|
|
|
|
+ cpp_distcheck |
|
|
csharp |
|
|
csharp |
|
|
- java_jdk6 |
|
|
|
|
java_jdk7 |
|
|
java_jdk7 |
|
|
java_oracle7 |
|
|
java_oracle7 |
|
|
- javanano_jdk6 |
|
|
|
|
javanano_jdk7 |
|
|
javanano_jdk7 |
|
|
javanano_oracle7 |
|
|
javanano_oracle7 |
|
|
objectivec_ios |
|
|
objectivec_ios |
|
|
@@ -334,11 +349,10 @@ Usage: $0 { cpp |
|
|
objectivec_cocoapods_integration |
|
|
objectivec_cocoapods_integration |
|
|
python |
|
|
python |
|
|
python_cpp |
|
|
python_cpp |
|
|
- ruby19 |
|
|
|
|
- ruby20 |
|
|
|
|
ruby21 |
|
|
ruby21 |
|
|
ruby22 |
|
|
ruby22 |
|
|
- jruby }
|
|
|
|
|
|
+ jruby |
|
|
|
|
+ ruby_all)
|
|
"
|
|
"
|
|
exit 1
|
|
exit 1
|
|
fi
|
|
fi
|