-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path0001-protobuf.sh
executable file
·76 lines (69 loc) · 2.18 KB
/
0001-protobuf.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#!/bin/bash
set -e
VER="2.5.0"
PKG=protobuf-${VER}
TGZ=${PKG}.tar.gz
URL=https://protobuf.googlecode.com/files/${TGZ}
SHA1=sha1sum
MD5=md5sum
GPG=gpg
SHASUM=7f6ea7bc1382202fb1ce8c6933f1ef8fea0c0148
function SHA() {
if shasum --version >/dev/null 2>&1 ; then
shasum "$@" | cut -f1 -d' '
elif sha1sum --version >/dev/null 2>&1 ; then
sha1sum "$@" | cut -f1 -d' '
else
# force fail
echo "0"
fi
return
}
function main() {
rm -rf ${PKG}
rm -rf ${TGZ}
wget ${URL}
if [ $(SHA ${TGZ}) != ${SHASUM} ]; then
echo "SHA checksum mismatch ${SHASUM} vs $(SHA ${TGZ})"
exit 1
fi
tar xzf ${TGZ}
cd ${PKG}
grep -lrF com.google.protobuf src/ \
| grep -vF ".pb.cc" \
| xargs sed -i -e 's/com\.google\.protobuf/org.spark_project.protobuf/g'
grep -lrF com.google.protobuf java/src/{main,test}/ \
| xargs sed -i -e 's/com\.google\.protobuf/org.spark_project.protobuf/g'
grep -lrF com.google.protobuf java/src/test/ \
| xargs sed -i -e 's/package org.spark_project.protobuf;/package org.spark_project.org;\
import com.google.protobuf.*;/g'
sed -i -e "s#com\.google\.protobuf#org\.spark-project\.protobuf#g" java/pom.xml
sed -i -e "s#<version>${VER}</version>#<version>${VER}-spark</version>#g" java/pom.xml
mv java/src/main/java/com/google java/src/main/java/com/spark_project
mv java/src/main/java/com java/src/main/java/org
./configure --quiet
make --quiet
cd java
mvn -DskipTests install package
cd target/
# For now just create emtpy source/javadoc jars
# to meet Sonatype sanity checks.
touch unused.txt
exts=( "-sources" "-javadoc" )
for ext in "${exts[@]}"
do
jar cvf protobuf-java-2.5.0-spark$ext.jar unused.txt
done
exts=( "" "-sources" "-javadoc" )
for ext in "${exts[@]}"
do
filename=protobuf-java-2.5.0-spark$ext.jar
$MD5 $filename | awk '{ print $1; }' > $filename.md5
$SHA1 $filename | awk '{ print $1; }' > $filename.sha1
$GPG --output $filename.asc --detach-sig --armour $filename
cp ../pom.xml .
$GPG --output pom.xml.asc --detach-sig --armour pom.xml
jar cvf protobuf-java-2.5.0-spark-bundle.jar *.md5 *.jar *.asc pom.xml
done
}
main "$@"