forked from dragonwell-project/dragonwell11
-
Notifications
You must be signed in to change notification settings - Fork 1
/
make.sh
executable file
·113 lines (97 loc) · 3.11 KB
/
make.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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#!/bin/bash
if [ $# != 1 ]; then
echo "USAGE: $0 release/debug/fastdebug"
exit
fi
# incr by every Dragonwell release
DRAGONWELL_VERSION=22
LC_ALL=C
BUILD_MODE=$1
arch=$(uname -m)
case "${BUILD_MODE}" in
release)
DEBUG_LEVEL="release"
JDK_IMAGES_DIR=`pwd`/build/linux-${arch}-normal-server-release/images
;;
debug)
DEBUG_LEVEL="slowdebug"
JDK_IMAGES_DIR=`pwd`/build/linux-${arch}-normal-server-slowdebug/images
;;
fastdebug)
DEBUG_LEVEL="fastdebug"
JDK_IMAGES_DIR=`pwd`/build/linux-${arch}-normal-server-fastdebug/images
;;
*)
echo "Argument must be release or debug or fastdebug!"
exit 1
;;
esac
NEW_JAVA_HOME=${JDK_IMAGES_DIR}/jdk
if [ "x${BUILD_NUMBER}" = "x" ]; then
BUILD_NUMBER=0
fi
bash ./configure --with-freetype=system \
--enable-unlimited-crypto \
--with-jvm-variants=server \
--with-debug-level=${DEBUG_LEVEL} \
--with-cacerts-file=`pwd`/make/data/security/cacerts \
--with-vendor-name="Alibaba" \
--with-vendor-url="http://www.alibabagroup.com" \
--with-vendor-bug-url="mailto:[email protected]" \
--with-vendor-version-string="(Alibaba Dragonwell)" \
--with-version-pre="" \
--with-version-opt="" \
--with-version-build="${BUILD_NUMBER}" \
--with-version-feature="11" \
--with-version-patch="${DRAGONWELL_VERSION}" \
--with-version-date="$(date +%Y-%m-%d)" \
--with-zlib=system \
--with-jvm-features=zgc
if [ 0 != $? ]; then
echo 'Configure failed!'
exit 1
fi
make CONF=${BUILD_MODE} LOG=cmdlines JOBS=8 images
if [ 0 != $? ]; then
echo 'Build failed!'
exit 1
fi
# Sanity tests
echo "================= Start sanity test ======================"
JAVA_EXES=("${NEW_JAVA_HOME}/bin/java")
VERSION_OPTS=("-version" "-Xinternalversion" "-fullversion")
for EXE in "${JAVA_EXES[@]}"; do
for OPT in "${VERSION_OPTS[@]}"; do
${EXE} ${OPT} > /dev/null 2>&1
if [ 0 -ne $? ]; then
echo "Failed: ${EXE} ${OPT}"
exit 128
fi
done
done
# Keep old output
${NEW_JAVA_HOME}/bin/java -version
cat > /tmp/systemProperty.java << EOF
public class systemProperty {
public static void main(String[] args) {
System.getProperties().list(System.out);
}
}
EOF
${NEW_JAVA_HOME}/bin/javac /tmp/systemProperty.java
${NEW_JAVA_HOME}/bin/java -cp /tmp/ systemProperty > /tmp/systemProperty.out
EXPECTED_PATTERN=('^java\.vm\.vendor\=.*Alibaba.*$'
'^java\.vendor\.url\=http\:\/\/www\.alibabagroup\.com$'
'^java\.vendor\=Alibaba$'
'^java\.vendor\.url\.bug\=mailto\:dragonwell_use@googlegroups\.com$')
RET=0
for p in ${EXPECTED_PATTERN[*]}
do
cat /tmp/systemProperty.out | grep "$p"
if [ 0 != $? ]; then RET=1; fi
done
\rm -f /tmp/systemProperty*
ldd ${NEW_JAVA_HOME}/lib/libzip.so | grep libz
if [ 0 != $? ]; then RET=1; fi
echo "================= Sanity test end ======================"
exit ${RET}