diff options
author | Fathi Boudra <fathi.boudra@linaro.org> | 2015-10-26 10:34:10 +0200 |
---|---|---|
committer | Fathi Boudra <fathi.boudra@linaro.org> | 2015-10-26 10:34:10 +0200 |
commit | 8a70be3f4a728b12cd6f3194bca731a32c9a4847 (patch) | |
tree | 2c173c0ad02225a8b74d23aa20ec41328b7f70a8 /jdk8-build-image.yaml | |
parent | 50fedc016709f75a1257b0eb6ec5f89e38af88ca (diff) |
jdk8-build-image: add new OpenJDK CI job
Change-Id: I7b6358501399f3a86e85a5f8112e126248b05a2c
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'jdk8-build-image.yaml')
-rw-r--r-- | jdk8-build-image.yaml | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/jdk8-build-image.yaml b/jdk8-build-image.yaml new file mode 100644 index 0000000000..574a293b5f --- /dev/null +++ b/jdk8-build-image.yaml @@ -0,0 +1,121 @@ +- job: + name: jdk8-build-image + project-type: matrix + defaults: global + description: | + * Configures and builds jdk8 (ie, bin/java, bin/javac, et al) for various configurations.<br> + * The source tarball is copied from the jdk8-update-src-tree job.<br> + * <b>Note:</b> we are no longer building -fastdebug variants as there is not enough time to test the images. + logrotate: + numToKeep: 10 + artifactNumToKeep: 1 + properties: + - authorization: + anonymous: + - job-read + - job-extended-read + disabled: false + node: aarch64-06 + display-name: 'OpenJDK - Configure and build OpenJDK 8' + 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: JVM_VARIANT + values: + - server + - client + - axis: + type: user-defined + name: BUILD_TYPE + values: + - release + execution-strategy: + sequential: true + wrappers: + - workspace-cleanup: + dirmatch: false + - timestamps + - matrix-tie-parent: + node: aarch64-06 + builders: + - copyartifact: + project: jdk8-update-src-tree + filter: 'out/jdk8.tar.gz' + target: incoming + flatten: true + - copyartifact: + project: archive-primordial-jdk7 + filter: 'out/primordial-jdk7.tar.gz' + target: incoming + flatten: true + - shell: | + #!/bin/bash + + set -exu + + #export CCACHE_DIR=~/.ccache-${JVM_VARIANT}-${BUILD_TYPE} + #ccache -M 1G + #ccache -s + + ccache_build_opts=--disable-ccache + + # Extract sources from upstream job + rm -rf jdk8 + tar xf incoming/jdk8.tar.gz + + shopt -s nullglob + + for i in ${WORKSPACE}/patches/*.patch; do + echo "Applying patch: $i" + (cd jdk8; patch -p1 < $i) + done + + # Extract boot jdk + rm -rf primordial-jdk7 + tar xf incoming/primordial-jdk7.tar.gz + + # Configure and build. + rm -rf build* + mkdir -p build-stage1 build-stage2 + + two_stage_build=0 + + which java + java -version + + if [ $two_stage_build = 1 ]; then + pushd build-stage1 + sh ../jdk8/configure --with-jvm-variants=${JVM_VARIANT} --with-debug-level=${BUILD_TYPE} --with-boot-jdk=${WORKSPACE}/primordial-jdk7 ${ccache_build_opts} + make images + popd + + pushd build-stage2 + sh ../jdk8/configure --with-jvm-variants=${JVM_VARIANT} --with-debug-level=${BUILD_TYPE} --with-boot-jdk=${WORKSPACE}/build-stage1/images/j2sdk-image ${ccache_build_opts} + make images + popd + else + pushd build-stage2 + sh ../jdk8/configure --with-jvm-variants=${JVM_VARIANT} --with-debug-level=${BUILD_TYPE} ${ccache_build_opts} + make images + popd + fi + + # Archive the result + rm -rf out + mkdir out + artifact_name=jdk8-${JVM_VARIANT}-${BUILD_TYPE} + tar -C build-stage2/images/j2sdk-image --exclude=\*.diz --transform="s!^!$artifact_name/!" -acf out/${artifact_name}.tar.gz jre bin lib + publishers: + - archive: + artifacts: 'out/*.tar.gz' |