blob: 25b4a02d4d389ba0dbc1a103f488fff662cfd7cf (
plain)
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
- job:
name: jdk8-build-release
project-type: matrix
defaults: global
description: |
* Configures and builds jdk8u for release. Run after the source has passed tests.
* Tags build with Linaro-YYMM as per normal release procedure.
* The source tarball is copied from the jdk8-update-src-tree job.<br>
properties:
- authorization:
anonymous:
- job-read
- job-extended-read
openjdk-members:
- job-build
- job-cancel
- job-workspace
- build-discarder:
days-to-keep: 30
num-to-keep: 10
artifact-num-to-keep: 5
disabled: true
node: j12-qrep-01
display-name: 'OpenJDK 8 - Configure and build OpenJDK 8 Release'
scm:
- git:
url: https://git.linaro.org/leg/openjdk/openjdk8-jenkins-only-build-patches.git
refspec: +refs/heads/master:refs/remotes/origin/master
name: origin
branches:
- refs/heads/master
basedir: patches
skip-tag: true
shallow-clone: true
wipe-workspace: false
axes:
- axis:
type: user-defined
name: BUILD_TYPE
values:
- release
- axis:
type: slave
name: label
values:
- j12-qrep-01
execution-strategy:
sequential: true
wrappers:
- workspace-cleanup:
dirmatch: false
- timestamps
- matrix-tie-parent:
node: j12-qrep-01
builders:
- copyartifact:
project: jdk8-update-src-tree
filter: 'out/jdk8u.tar.gz'
target: incoming
flatten: true
target: incoming
flatten: true
- shell: |
#!/bin/bash
set -exu
# Generate files names dependent on year/month.
RELEASE=$(date +%y%m)
JDKDIR=jdk8u-${BUILD_TYPE}-${RELEASE}
JDK_SRCDIR=jdk8u-src-${RELEASE}
ccache_build_opts=--disable-ccache
rm -rf jdk* primordial-jdk* build* out
mkdir -p build-stage1 build-stage2 out
cd $HOME/srv/jdk-cache/jdk8u
export JAVA_HOME=${PWD}
export PATH=${JAVA_HOME}/bin:${PATH}
cd ${WORKSPACE}
# Extract sources from upstream job
rm -rf jdk8u
tar xf incoming/jdk8u.tar.gz
mv jdk8u $JDK_SRCDIR
# Tar up the source before sullying it with a build.
tar --exclude=.hg\* -acf out/jdk8u-src-${RELEASE}.tar.xz $JDK_SRCDIR
mv $JDK_SRCDIR $JDKDIR
shopt -s nullglob
# Configure and build.
two_stage_build=0
which java
java -version
EXTRA_CFLAGS="-Wno-error -fno-delete-null-pointer-checks \
-fno-lifetime-dse -Wno-deprecated-declarations \
-Wno-maybe-uninitialized -Wno-misleading-indentation \
-Wno-shift-negative-value"
EXTRA_CPP_FLAGS="-Wno-error -std=gnu++98 \
-fno-delete-null-pointer-checks -fno-lifetime-dse \
-Wno-deprecated-declarations -Wno-maybe-uninitialized \
-Wno-misleading-indentation -Wno-shift-negative-value"
if [ $two_stage_build = 1 ]; then
pushd build-stage1
sh ../$JDKDIR/configure --with-debug-level=${BUILD_TYPE} --with-boot-jdk=${WORKSPACE}/primordial-jdk7 ${ccache_build_opts} \
--with-extra-cxxflags="$EXTRA_CPP_FLAGS" --with-extra-cflags="$EXTRA_CFLAGS"
make images
popd
pushd build-stage2
sh ../$JDKDIR/configure --with-debug-level=${BUILD_TYPE} \
--with-boot-jdk=${WORKSPACE}/build-stage1/images/j2sdk-image \
${ccache_build_opts} \
--with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
--with-extra-cflags="$EXTRA_CFLAGS" \
--with-user-release-suffix="Linaro-$RELEASE" \
--with-milestone="release"
make images
popd
else
pushd build-stage2
sh ../$JDKDIR/configure --with-debug-level=${BUILD_TYPE} \
${ccache_build_opts} \
--with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
--with-extra-cflags="$EXTRA_CFLAGS" \
--with-user-release-suffix="Linaro-$RELEASE" \
--with-milestone="release"
make images
popd
fi
# Archive the result
artifact_name=jdk8u-${BUILD_TYPE}-${RELEASE}
# This is different from ordinary builds.
tar -C build-stage2/images --exclude=\*.diz --transform="s!^j2sdk-image!$artifact_name!" -acf out/${artifact_name}.tar.xz j2sdk-image
publishers:
- archive:
artifacts: 'out/*.tar.xz'
- email:
recipients: 'stuart.monteith@linaro.org fathi.boudra@linaro.org'
|