504 var debugName = name + common.slowdebug_suffix;
505 profiles[debugName] = concatObjects(profiles[name],
506 common.slowdebug_profile_base);
507 });
508 // Generate testmake profiles for the main profile of each build host
509 // platform. This profile only runs the makefile tests.
510 // Ant is needed to run the idea project generator test.
511 var testmakeBase = {
512 dependencies: [ "ant" ],
513 environment: {
514 "ANT_HOME": input.get("ant", "home_path")
515 }
516 };
517 [ "linux-x64", "macosx-x64", "solaris-sparcv9", "solaris-x64", "windows-x64"]
518 .forEach(function (name) {
519 var maketestName = name + "-testmake";
520 profiles[maketestName] = concatObjects(profiles[name], testmakeBase);
521 profiles[maketestName].default_make_targets = [ "test-make" ];
522 });
523
524 // Profiles for building the zero jvm variant. These are used for verification.
525 var zeroProfiles = {
526 "linux-x64-zero": {
527 target_os: "linux",
528 target_cpu: "x64",
529 dependencies: ["devkit"],
530 configure_args: concat(common.configure_args_64bit, [
531 "--with-zlib=system",
532 "--with-jvm-variants=zero",
533 "--enable-libffi-bundling"
534 ])
535 },
536
537 "linux-x86-zero": {
538 target_os: "linux",
539 target_cpu: "x86",
540 build_cpu: "x64",
541 dependencies: ["devkit"],
542 configure_args: concat(common.configure_args_32bit, [
543 "--with-zlib=system",
755 // Artifacts of JCov profiles
756 [ "linux-x64", "macosx-x64", "solaris-sparcv9", "windows-x64"]
757 .forEach(function (name) {
758 var o = artifactData[name]
759 var jdk_subdir = (o.jdk_subdir != null ? o.jdk_subdir : "jdk-" + data.version);
760 var jdk_suffix = (o.jdk_suffix != null ? o.jdk_suffix : "tar.gz");
761 var pf = o.platform
762 var jcovName = name + "-jcov";
763 profiles[jcovName].artifacts = {
764 jdk: {
765 local: "bundles/\\(jdk-jcov.*bin." + jdk_suffix + "\\)",
766 remote: [
767 "bundles/" + pf + "/jdk-jcov-" + data.version + "_" + pf + "_bin." + jdk_suffix
768 ],
769 subdir: jdk_subdir,
770 exploded: "images/jdk-jcov"
771 }
772 };
773 });
774
775 // Profiles used to run tests.
776 var testOnlyProfiles = {
777 "run-test": {
778 target_os: input.build_os,
779 target_cpu: input.build_cpu,
780 dependencies: [ "jtreg", "gnumake", "boot_jdk", "devkit", "jib" ],
781 labels: "test",
782 environment: {
783 "JT_JAVA": common.boot_jdk_home
784 }
785 }
786 };
787 profiles = concatObjects(profiles, testOnlyProfiles);
788
789 // Profiles used to run tests using Jib for internal dependencies.
790 var testedProfile = input.testedProfile;
791 if (testedProfile == null) {
792 testedProfile = input.build_os + "-" + input.build_cpu;
793 }
794 var testedProfileJDK = testedProfile + ".jdk";
795 var testedProfileTest = ""
796 if (testedProfile.endsWith("-jcov")) {
797 testedProfileTest = testedProfile.substring(0, testedProfile.length - "-jcov".length) + ".test";
798 } else {
799 testedProfileTest = testedProfile + ".test";
800 }
801 var testOnlyProfilesPrebuilt = {
802 "run-test-prebuilt": {
803 target_os: input.build_os,
804 target_cpu: input.build_cpu,
805 dependencies: [
806 "jtreg", "gnumake", "boot_jdk", "devkit", "jib", "jcov", testedProfileJDK,
807 testedProfileTest
808 ],
809 src: "src.conf",
810 make_args: [ "run-test-prebuilt", "LOG_CMDLINES=true", "JTREG_VERBOSE=fail,error,time" ],
811 environment: {
812 "BOOT_JDK": common.boot_jdk_home,
813 "JDK_IMAGE_DIR": input.get(testedProfileJDK, "home_path"),
814 "TEST_IMAGE_DIR": input.get(testedProfileTest, "home_path")
815 },
816 labels: "test"
817 }
818 };
819
820 // If actually running the run-test-prebuilt profile, verify that the input
821 // variable is valid and if so, add the appropriate target_* values from
822 // the tested profile.
823 if (input.profile == "run-test-prebuilt") {
824 if (profiles[testedProfile] == null) {
825 error("testedProfile is not defined: " + testedProfile);
826 }
827 }
828 if (profiles[testedProfile] != null) {
829 testOnlyProfilesPrebuilt["run-test-prebuilt"]["target_os"]
830 = profiles[testedProfile]["target_os"];
|
504 var debugName = name + common.slowdebug_suffix;
505 profiles[debugName] = concatObjects(profiles[name],
506 common.slowdebug_profile_base);
507 });
508 // Generate testmake profiles for the main profile of each build host
509 // platform. This profile only runs the makefile tests.
510 // Ant is needed to run the idea project generator test.
511 var testmakeBase = {
512 dependencies: [ "ant" ],
513 environment: {
514 "ANT_HOME": input.get("ant", "home_path")
515 }
516 };
517 [ "linux-x64", "macosx-x64", "solaris-sparcv9", "solaris-x64", "windows-x64"]
518 .forEach(function (name) {
519 var maketestName = name + "-testmake";
520 profiles[maketestName] = concatObjects(profiles[name], testmakeBase);
521 profiles[maketestName].default_make_targets = [ "test-make" ];
522 });
523
524 // Generate -gcov profiles
525 [ "linux-x64", "macosx-x64" ].forEach(function (name) {
526 var gcovName = name + "-gcov";
527 profiles[gcovName] = clone(profiles[name]);
528 profiles[gcovName].configure_args = concat(profiles[gcovName].configure_args,
529 ["--enable-native-coverage", "--disable-warnings-as-errors"]);
530 });
531
532 // Profiles for building the zero jvm variant. These are used for verification.
533 var zeroProfiles = {
534 "linux-x64-zero": {
535 target_os: "linux",
536 target_cpu: "x64",
537 dependencies: ["devkit"],
538 configure_args: concat(common.configure_args_64bit, [
539 "--with-zlib=system",
540 "--with-jvm-variants=zero",
541 "--enable-libffi-bundling"
542 ])
543 },
544
545 "linux-x86-zero": {
546 target_os: "linux",
547 target_cpu: "x86",
548 build_cpu: "x64",
549 dependencies: ["devkit"],
550 configure_args: concat(common.configure_args_32bit, [
551 "--with-zlib=system",
763 // Artifacts of JCov profiles
764 [ "linux-x64", "macosx-x64", "solaris-sparcv9", "windows-x64"]
765 .forEach(function (name) {
766 var o = artifactData[name]
767 var jdk_subdir = (o.jdk_subdir != null ? o.jdk_subdir : "jdk-" + data.version);
768 var jdk_suffix = (o.jdk_suffix != null ? o.jdk_suffix : "tar.gz");
769 var pf = o.platform
770 var jcovName = name + "-jcov";
771 profiles[jcovName].artifacts = {
772 jdk: {
773 local: "bundles/\\(jdk-jcov.*bin." + jdk_suffix + "\\)",
774 remote: [
775 "bundles/" + pf + "/jdk-jcov-" + data.version + "_" + pf + "_bin." + jdk_suffix
776 ],
777 subdir: jdk_subdir,
778 exploded: "images/jdk-jcov"
779 }
780 };
781 });
782
783 // Artifacts of gcov (native-code-coverage) profiles
784 [ "linux-x64", "macosx-x64" ].forEach(function (name) {
785 var o = artifactData[name]
786 var pf = o.platform
787 var jdk_subdir = (o.jdk_subdir != null ? o.jdk_subdir : "jdk-" + data.version);
788 var jdk_suffix = (o.jdk_suffix != null ? o.jdk_suffix : "tar.gz");
789 var gcovName = name + "-gcov";
790 profiles[gcovName].artifacts = {
791 jdk: {
792 local: "bundles/\\(jdk.*bin." + jdk_suffix + "\\)",
793 remote: [
794 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov." + jdk_suffix,
795 // "bundles/" + pf + "/\\1"
796 ],
797 subdir: jdk_subdir,
798 exploded: "images/jdk",
799 },
800 test: {
801 local: "bundles/\\(jdk.*bin-tests.tar.gz\\)",
802 remote: [
803 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov-tests.tar.gz",
804 // "bundles/" + pf + "/\\1"
805 ],
806 exploded: "images/test"
807 },
808 jdk_symbols: {
809 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)",
810 remote: [
811 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov-symbols.tar.gz",
812 // "bundles/" + pf + "/\\1"
813 ],
814 subdir: jdk_subdir,
815 exploded: "images/jdk"
816 },
817 };
818 });
819
820 // Profiles used to run tests.
821 var testOnlyProfiles = {
822 "run-test": {
823 target_os: input.build_os,
824 target_cpu: input.build_cpu,
825 dependencies: [ "jtreg", "gnumake", "boot_jdk", "devkit", "jib" ],
826 labels: "test",
827 environment: {
828 "JT_JAVA": common.boot_jdk_home
829 }
830 }
831 };
832 profiles = concatObjects(profiles, testOnlyProfiles);
833
834 // Profiles used to run tests using Jib for internal dependencies.
835 var testedProfile = input.testedProfile;
836 if (testedProfile == null) {
837 testedProfile = input.build_os + "-" + input.build_cpu;
838 }
839 var testedProfileJDK = testedProfile + ".jdk";
840 var testedProfileTest = ""
841 if (testedProfile.endsWith("-jcov")) {
842 testedProfileTest = testedProfile.substring(0, testedProfile.length - "-jcov".length) + ".test";
843 } else {
844 testedProfileTest = testedProfile + ".test";
845 }
846 var testOnlyMake = [ "run-test-prebuilt", "LOG_CMDLINES=true", "JTREG_VERBOSE=fail,error,time" ];
847 if (testedProfile.endsWith("-gcov")) {
848 testOnlyMake = concat(testOnlyMake, "GCOV_ENABLED=true")
849 }
850 var testOnlyProfilesPrebuilt = {
851 "run-test-prebuilt": {
852 target_os: input.build_os,
853 target_cpu: input.build_cpu,
854 dependencies: [
855 "jtreg", "gnumake", "boot_jdk", "devkit", "jib", "jcov", testedProfileJDK,
856 testedProfileTest
857 ],
858 src: "src.conf",
859 make_args: testOnlyMake,
860 environment: {
861 "BOOT_JDK": common.boot_jdk_home,
862 "JDK_IMAGE_DIR": input.get(testedProfileJDK, "home_path"),
863 "TEST_IMAGE_DIR": input.get(testedProfileTest, "home_path")
864 },
865 labels: "test"
866 }
867 };
868
869 // If actually running the run-test-prebuilt profile, verify that the input
870 // variable is valid and if so, add the appropriate target_* values from
871 // the tested profile.
872 if (input.profile == "run-test-prebuilt") {
873 if (profiles[testedProfile] == null) {
874 error("testedProfile is not defined: " + testedProfile);
875 }
876 }
877 if (profiles[testedProfile] != null) {
878 testOnlyProfilesPrebuilt["run-test-prebuilt"]["target_os"]
879 = profiles[testedProfile]["target_os"];
|