diff options
author | 2016-04-12 13:59:41 +0000 | |
---|---|---|
committer | 2016-04-13 08:08:43 +0000 | |
commit | 6cb8d820689ad029a9d0dc4ee1100db9b2d96515 (patch) | |
tree | 8cd2592242f96ef77a676ffc23a4d87bb7922336 /scripts/ci/build.sh | |
parent | 75250e614fbfc9d1597ca8d7c7324880690c1e27 (diff) |
Refactor build for JDK 7
Now the JDK 7 tuning happens all in Bazel, removing logic
from the CI script. It uses remote repositories to access
JDK 7 dependencies.
--
Change-Id: Iff590c6642ca5b2343aa15096f8fd837d1c80787
Reviewed-on: https://bazel-review.googlesource.com/#/c/3327
MOS_MIGRATED_REVID=119634530
Diffstat (limited to 'scripts/ci/build.sh')
-rwxr-xr-x | scripts/ci/build.sh | 49 |
1 files changed, 6 insertions, 43 deletions
diff --git a/scripts/ci/build.sh b/scripts/ci/build.sh index df7e794b39..63f7de705f 100755 --- a/scripts/ci/build.sh +++ b/scripts/ci/build.sh @@ -98,45 +98,6 @@ EOF fi } -# Set the various arguments when JDK 7 is required (deprecated). -# This method is here to continue to build binary release of Bazel -# for JDK 7. We will drop this method and JDK 7 support when our -# ci system turn red on this one. -function setup_jdk7() { - # This is a JDK 7 JavaBuilder from release 0.1.0. - local javabuilder_url="https://storage.googleapis.com/bazel/0.1.0/JavaBuilder_deploy.jar" - local javac_url="https://github.com/bazelbuild/bazel/blob/0.1.0/third_party/java/jdk/langtools/javac.jar?raw=true" - sed -i.bak 's/_version = "8"/_version = "7"/' tools/jdk/BUILD - rm -f tools/jdk/BUILD.bak - rm -f third_party/java/jdk/langtools/javac.jar - curl -Ls -o tools/jdk/JavaBuilder_deploy.jar "${javabuilder_url}" - curl -Ls -o third_party/java/jdk/langtools/javac.jar "${javac_url}" - # Do not use the skylark bootstrapped version of JavaBuilder - export BAZEL_ARGS="--singlejar_top=//src/java_tools/singlejar:bootstrap_deploy.jar \ - --genclass_top=//src/java_tools/buildjar:bootstrap_genclass_deploy.jar \ - --ijar_top=//third_party/ijar" - # Skip building JavaBuilder - export BAZEL_SKIP_TOOL_COMPILATION=tools/jdk/JavaBuilder_deploy.jar - # Ignore JDK8 tests - export BAZEL_TEST_FILTERS="-jdk8" - if ! grep -Fq 'RealJavaBuilder' src/java_tools/buildjar/BUILD; then - # And more ugly hack. Overwrite the BUILD file of JavaBuilder - # so we use the pre-built version in integration tests. - sed -i.bak 's/name = \"JavaBuilder\"/name = \"RealJavaBuilder\"/' \ - src/java_tools/buildjar/BUILD - rm -f src/java_tools/buildjar/BUILD.bak - cat >>src/java_tools/buildjar/BUILD <<'EOF' -genrule( - name = "JavaBuilder", - outs = ["JavaBuilder_deploy.jar"], - srcs = ["//tools/jdk:JavaBuilder_deploy.jar"], - cmd = "cp $< $@", - visibility = ["//visibility:public"], -) -EOF - fi -} - # Main entry point for building bazel. # It sets the embed label to the release name if any, calls the whole # test suite, compile the various packages, then copy the artifacts @@ -151,9 +112,10 @@ function bazel_build() { if [[ "${JAVA_VERSION-}" =~ ^(1\.)?7$ ]]; then JAVA_VERSION=1.7 - setup_jdk7 + FLAVOUR="-jdk7" release_label="${release_label}-jdk7" else + FLAVOUR="" JAVA_VERSION=1.8 fi @@ -177,15 +139,16 @@ function bazel_build() { --workspace_status_command=scripts/ci/build_status_command.sh \ --define JAVA_VERSION=${JAVA_VERSION} \ ${ARGS} \ - //scripts/packages/... || exit $? + //scripts/packages:install${FLAVOUR}.sh \ + //scripts/bazel-debian${FLAVOUR}.deb} || exit $? if [ -n "${1-}" ]; then # Copy the results to the output directory mkdir -p $1/packages cp output/bazel $1/bazel - cp bazel-bin/scripts/packages/install.sh $1/bazel-${release_label}-installer.sh + cp bazel-bin/scripts/packages/install${FLAVOUR}.sh $1/bazel-${release_label}-installer.sh if [ "$PLATFORM" = "linux" ]; then - cp bazel-bin/scripts/packages/bazel-debian.deb $1/bazel_${release_label}.deb + cp bazel-bin/scripts/packages/bazel-debian${FLAVOUR}.deb $1/bazel_${release_label}.deb fi cp bazel-genfiles/scripts/packages/README.md $1/README.md fi |