# HG changeset patch # User bobv # Date 1528912119 14400 # Node ID c7633e5f865780b617c2fd0c54796c55219a546a # Parent a1a3d41b6c13f3466b12418fd854821987892418# Parent ad42438983ee0d8b43e120bf449c30b7e50f32ac Merge diff -r a1a3d41b6c13 -r c7633e5f8657 make/conf/jib-profiles.js --- a/make/conf/jib-profiles.js Wed Jun 13 13:44:56 2018 -0400 +++ b/make/conf/jib-profiles.js Wed Jun 13 13:48:39 2018 -0400 @@ -438,6 +438,7 @@ dependencies: ["devkit", "autoconf", "build_devkit", "cups"], configure_args: [ "--openjdk-target=aarch64-linux-gnu", "--with-freetype=bundled", + "--disable-warnings-as-errors", "--with-cpu-port=aarch64", ], }, @@ -568,6 +569,29 @@ profiles[debugName] = concatObjects(profiles[name], common.debug_profile_base); }); + // Bootcycle profiles runs the build with itself as the boot jdk. This can + // be done in two ways. Either using the builtin bootcycle target in the + // build system. Or by supplying the main jdk build as bootjdk to configure. + [ "linux-x64", "macosx-x64", "solaris-sparcv9", "windows-x64"] + .forEach(function (name) { + var bootcycleName = name + "-bootcycle"; + var bootcyclePrebuiltName = name + "-bootcycle-prebuilt"; + // The base bootcycle profile just changes the default target + // compared to the base profile + profiles[bootcycleName] = clone(profiles[name]); + profiles[bootcycleName].default_make_targets = [ "bootcycle-images" ]; + // The prebuilt bootcycle variant modifies the boot jdk argument + var bootcyclePrebuiltBase = { + dependencies: [ name + ".jdk" ], + configure_args: "--with-boot-jdk=" + input.get(name + ".jdk", "home_path"), + } + profiles[bootcyclePrebuiltName] = concatObjects(profiles[name], + bootcyclePrebuiltBase); + var bootJdkIndex = profiles[bootcyclePrebuiltName].dependencies.indexOf("boot_jdk"); + delete profiles[bootcyclePrebuiltName].dependencies[bootJdkIndex]; + profiles[bootcyclePrebuiltName].default_make_targets = [ "product-images" ]; + }); + // // Define artifacts for profiles //