576 Object.keys(zeroProfiles).forEach(function (name) { |
550 Object.keys(zeroProfiles).forEach(function (name) { |
577 var debugName = name + common.debug_suffix; |
551 var debugName = name + common.debug_suffix; |
578 profiles[name] = concatObjects(common.main_profile_base, profiles[name]); |
552 profiles[name] = concatObjects(common.main_profile_base, profiles[name]); |
579 profiles[debugName] = concatObjects(profiles[name], common.debug_profile_base); |
553 profiles[debugName] = concatObjects(profiles[name], common.debug_profile_base); |
580 }); |
554 }); |
|
555 |
|
556 // |
|
557 // Define artifacts for profiles |
|
558 // |
|
559 // Macosx bundles are named osx |
|
560 // tar.gz. |
|
561 var artifactData = { |
|
562 "linux-x64": { |
|
563 platform: "linux-x64", |
|
564 }, |
|
565 "linux-x86": { |
|
566 platform: "linux-x86", |
|
567 }, |
|
568 "macosx-x64": { |
|
569 platform: "osx-x64", |
|
570 jdk_subdir: "jdk-" + data.version + ".jdk/Contents/Home", |
|
571 jre_subdir: "jre-" + data.version + ".jre/Contents/Home" |
|
572 }, |
|
573 "solaris-x64": { |
|
574 platform: "solaris-x64", |
|
575 }, |
|
576 "solaris-sparcv9": { |
|
577 platform: "solaris-sparcv9", |
|
578 }, |
|
579 "windows-x64": { |
|
580 platform: "windows-x64", |
|
581 }, |
|
582 "windows-x86": { |
|
583 platform: "windows-x86", |
|
584 }, |
|
585 "linux-arm64": { |
|
586 platform: "linux-arm64-vfp-hflt", |
|
587 }, |
|
588 "linux-arm-vfp-hflt": { |
|
589 platform: "linux-arm32-vfp-hflt", |
|
590 }, |
|
591 "linux-arm-vfp-hflt-dyn": { |
|
592 platform: "linux-arm32-vfp-hflt-dyn", |
|
593 } |
|
594 } |
|
595 // Generate common artifacts for all main profiles |
|
596 Object.keys(artifactData).forEach(function (name) { |
|
597 profiles[name] = concatObjects(profiles[name], |
|
598 common.main_profile_artifacts(artifactData[name])); |
|
599 }); |
|
600 |
|
601 // Generate common artifacts for all debug profiles |
|
602 Object.keys(artifactData).forEach(function (name) { |
|
603 var debugName = name + common.debug_suffix; |
|
604 profiles[debugName] = concatObjects(profiles[debugName], |
|
605 common.debug_profile_artifacts(artifactData[name])); |
|
606 }); |
|
607 |
|
608 profilesArtifacts = { |
|
609 "linux-x64": { |
|
610 artifacts: { |
|
611 doc_api_spec: { |
|
612 local: "bundles/\\(jdk.*doc-api-spec.tar.gz\\)", |
|
613 remote: [ |
|
614 "bundles/common/jdk-" + data.version + "_doc-api-spec.tar.gz", |
|
615 "bundles/linux-x64/\\1" |
|
616 ], |
|
617 }, |
|
618 } |
|
619 } |
|
620 }; |
|
621 profiles = concatObjects(profiles, profilesArtifacts); |
|
622 |
|
623 // Generate open only profiles for all the main and debug profiles. |
|
624 // Rewrite artifact remote paths by adding "openjdk/GPL". |
|
625 common.main_profile_names.forEach(function (name) { |
|
626 var openName = name + common.open_suffix; |
|
627 profiles[openName] = concatObjects(profiles[name], |
|
628 common.open_profile_base); |
|
629 for (artifactName in profiles[openName].artifacts) { |
|
630 var artifact = profiles[openName].artifacts[artifactName]; |
|
631 artifact.remote = replaceAll( |
|
632 "bundles\/", "bundles/openjdk/GPL/", |
|
633 (artifact.remote != null ? artifact.remote : artifact.local)); |
|
634 } |
|
635 var debugName = name + common.debug_suffix; |
|
636 var openDebugName = name + common.open_suffix + common.debug_suffix; |
|
637 profiles[openDebugName] = concatObjects(profiles[debugName], |
|
638 common.open_profile_base); |
|
639 for (artifactName in profiles[openDebugName].artifacts) { |
|
640 var artifact = profiles[openDebugName].artifacts[artifactName]; |
|
641 artifact.remote = replaceAll( |
|
642 "bundles\/", "bundles/openjdk/GPL/", |
|
643 (artifact.remote != null ? artifact.remote : artifact.local)); |
|
644 } |
|
645 }); |
|
646 |
|
647 // Define the reference implementation profiles. These are basically the same |
|
648 // as the open profiles, but upload artifacts to a different location. |
|
649 common.main_profile_names.forEach(function (name) { |
|
650 var riName = name + "-ri"; |
|
651 var riDebugName = riName + common.debug_suffix; |
|
652 var openName = name + common.open_suffix; |
|
653 var openDebugName = openName + common.debug_suffix; |
|
654 profiles[riName] = clone(profiles[openName]); |
|
655 profiles[riDebugName] = clone(profiles[openDebugName]); |
|
656 // Rewrite all remote dirs to "bundles/openjdk/BCL/..." |
|
657 for (artifactName in profiles[riName].artifacts) { |
|
658 var artifact = profiles[riName].artifacts[artifactName]; |
|
659 artifact.remote = replaceAll( |
|
660 "\/GPL\/", "/BCL/", |
|
661 (artifact.remote != null ? artifact.remote : artifact.local)); |
|
662 } |
|
663 }); |
|
664 |
|
665 // The windows ri profile needs to add the freetype license file |
|
666 profilesRiFreetype = { |
|
667 "windows-x86-ri": { |
|
668 configure_args: "--with-freetype-license=" |
|
669 + input.get("freetype", "install_path") |
|
670 + "/freetype-2.7.1-v120-x86/freetype.md" |
|
671 }, |
|
672 "windows-x64-ri": { |
|
673 configure_args: "--with-freetype-license=" |
|
674 + input.get("freetype", "install_path") |
|
675 + "/freetype-2.7.1-v120-x64/freetype.md" |
|
676 } |
|
677 }; |
|
678 profiles = concatObjects(profiles, profilesRiFreetype); |
581 |
679 |
582 // Profiles used to run tests. Used in JPRT and Mach 5. |
680 // Profiles used to run tests. Used in JPRT and Mach 5. |
583 var testOnlyProfiles = { |
681 var testOnlyProfiles = { |
584 "run-test-jprt": { |
682 "run-test-jprt": { |
585 target_os: input.build_os, |
683 target_os: input.build_os, |
652 } |
751 } |
653 profiles["run-test"] = concatObjects(profiles["run-test"], macosxRunTestExtra); |
752 profiles["run-test"] = concatObjects(profiles["run-test"], macosxRunTestExtra); |
654 profiles["run-test-jprt"] = concatObjects(profiles["run-test-jprt"], macosxRunTestExtra); |
753 profiles["run-test-jprt"] = concatObjects(profiles["run-test-jprt"], macosxRunTestExtra); |
655 profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"], macosxRunTestExtra); |
754 profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"], macosxRunTestExtra); |
656 } |
755 } |
657 |
|
658 // |
|
659 // Define artifacts for profiles |
|
660 // |
|
661 // Macosx bundles are named osx |
|
662 // tar.gz. |
|
663 var artifactData = { |
|
664 "linux-x64": { |
|
665 platform: "linux-x64", |
|
666 }, |
|
667 "linux-x86": { |
|
668 platform: "linux-x86", |
|
669 }, |
|
670 "macosx-x64": { |
|
671 platform: "osx-x64", |
|
672 jdk_subdir: "jdk-" + data.version + ".jdk/Contents/Home", |
|
673 jre_subdir: "jre-" + data.version + ".jre/Contents/Home" |
|
674 }, |
|
675 "solaris-x64": { |
|
676 platform: "solaris-x64", |
|
677 }, |
|
678 "solaris-sparcv9": { |
|
679 platform: "solaris-sparcv9", |
|
680 }, |
|
681 "windows-x64": { |
|
682 platform: "windows-x64", |
|
683 }, |
|
684 "windows-x86": { |
|
685 platform: "windows-x86", |
|
686 }, |
|
687 "linux-arm64": { |
|
688 platform: "linux-arm64-vfp-hflt", |
|
689 }, |
|
690 "linux-arm-vfp-hflt": { |
|
691 platform: "linux-arm32-vfp-hflt", |
|
692 }, |
|
693 "linux-arm-vfp-hflt-dyn": { |
|
694 platform: "linux-arm32-vfp-hflt-dyn", |
|
695 } |
|
696 } |
|
697 // Generate common artifacts for all main profiles |
|
698 Object.keys(artifactData).forEach(function (name) { |
|
699 profiles[name] = concatObjects(profiles[name], |
|
700 common.main_profile_artifacts(artifactData[name])); |
|
701 }); |
|
702 |
|
703 // Generate common artifacts for all debug profiles |
|
704 Object.keys(artifactData).forEach(function (name) { |
|
705 var debugName = name + common.debug_suffix; |
|
706 profiles[debugName] = concatObjects(profiles[debugName], |
|
707 common.debug_profile_artifacts(artifactData[name])); |
|
708 }); |
|
709 |
|
710 // Extra profile specific artifacts |
|
711 profilesArtifacts = { |
|
712 "linux-x64": { |
|
713 artifacts: { |
|
714 doc_api_spec: { |
|
715 local: "bundles/\\(jdk.*doc-api-spec.tar.gz\\)", |
|
716 remote: [ |
|
717 "bundles/common/jdk-" + data.version + "_doc-api-spec.tar.gz", |
|
718 "bundles/linux-x64/\\1" |
|
719 ], |
|
720 }, |
|
721 } |
|
722 }, |
|
723 |
|
724 "linux-x64-open": { |
|
725 artifacts: { |
|
726 jdk: { |
|
727 local: "bundles/\\(jdk.*bin.tar.gz\\)", |
|
728 remote: [ |
|
729 "bundles/openjdk/GPL/linux-x64/jdk-" + data.version |
|
730 + "_linux-x64_bin.tar.gz", |
|
731 "bundles/openjdk/GPL/linux-x64/\\1" |
|
732 ], |
|
733 subdir: "jdk-" + data.version |
|
734 }, |
|
735 jre: { |
|
736 local: "bundles/\\(jre.*bin.tar.gz\\)", |
|
737 remote: "bundles/openjdk/GPL/linux-x64/\\1", |
|
738 }, |
|
739 test: { |
|
740 local: "bundles/\\(jdk.*bin-tests.tar.gz\\)", |
|
741 remote: [ |
|
742 "bundles/openjdk/GPL/linux-x64/jdk-" + data.version |
|
743 + "_linux-x64_bin-tests.tar.gz", |
|
744 "bundles/openjdk/GPL/linux-x64/\\1" |
|
745 ] |
|
746 }, |
|
747 jdk_symbols: { |
|
748 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)", |
|
749 remote: [ |
|
750 "bundles/openjdk/GPL/linux-x64/jdk-" + data.version |
|
751 + "_linux-x64_bin-symbols.tar.gz", |
|
752 "bundles/openjdk/GPL/linux-x64/\\1" |
|
753 ], |
|
754 subdir: "jdk-" + data.version |
|
755 }, |
|
756 jre_symbols: { |
|
757 local: "bundles/\\(jre.*bin-symbols.tar.gz\\)", |
|
758 remote: "bundles/openjdk/GPL/linux-x64/\\1", |
|
759 }, |
|
760 doc_api_spec: { |
|
761 local: "bundles/\\(jdk.*doc-api-spec.tar.gz\\)", |
|
762 remote: "bundles/openjdk/GPL/linux-x64/\\1", |
|
763 }, |
|
764 } |
|
765 }, |
|
766 |
|
767 "linux-x86-open": { |
|
768 artifacts: { |
|
769 jdk: { |
|
770 local: "bundles/\\(jdk.*bin.tar.gz\\)", |
|
771 remote: [ |
|
772 "bundles/openjdk/GPL/linux-x86/jdk-" + data.version |
|
773 + "_linux-x86_bin.tar.gz", |
|
774 "bundles/openjdk/GPL/linux-x86/\\1" |
|
775 ], |
|
776 subdir: "jdk-" + data.version |
|
777 }, |
|
778 jdk_symbols: { |
|
779 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)", |
|
780 remote: [ |
|
781 "bundles/openjdk/GPL/linux-x86/jdk-" + data.version |
|
782 + "_linux-x86_bin-symbols.tar.gz", |
|
783 "bundles/openjdk/GPL/linux-x86/\\1" |
|
784 ], |
|
785 subdir: "jdk-" + data.version |
|
786 }, |
|
787 test: { |
|
788 local: "bundles/\\(jdk.*bin-tests.tar.gz\\)", |
|
789 remote: [ |
|
790 "bundles/openjdk/GPL/linux-x86/jdk-" + data.version |
|
791 + "_linux-x86_bin-tests.tar.gz", |
|
792 "bundles/openjdk/GPL/linux-x86/\\1" |
|
793 ] |
|
794 }, |
|
795 jre: { |
|
796 // This regexp needs to not match the compact* files below |
|
797 local: "bundles/\\(jre.*[+][0-9]\\{1,\\}_linux-x86_bin.tar.gz\\)", |
|
798 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
799 }, |
|
800 jre_compact1: { |
|
801 local: "bundles/\\(jre.*-compact1_linux-x86_bin.tar.gz\\)", |
|
802 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
803 }, |
|
804 jre_compact2: { |
|
805 local: "bundles/\\(jre.*-compact2_linux-x86_bin.tar.gz\\)", |
|
806 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
807 }, |
|
808 jre_compact3: { |
|
809 local: "bundles/\\(jre.*-compact3_linux-x86_bin.tar.gz\\)", |
|
810 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
811 }, |
|
812 } |
|
813 }, |
|
814 |
|
815 "macosx-x64-open": { |
|
816 artifacts: { |
|
817 jdk: { |
|
818 local: "bundles/\\(jdk.*bin.tar.gz\\)", |
|
819 remote: [ |
|
820 "bundles/openjdk/GPL/osx-x64/jdk-" + data.version |
|
821 + "_osx-x64_bin.tar.gz", |
|
822 "bundles/openjdk/GPL/osx-x64/\\1" |
|
823 ], |
|
824 subdir: "jdk-" + data.version |
|
825 }, |
|
826 jre: { |
|
827 local: "bundles/\\(jre.*bin.tar.gz\\)", |
|
828 remote: "bundles/openjdk/GPL/osx-x64/\\1", |
|
829 }, |
|
830 test: { |
|
831 local: "bundles/\\(jdk.*bin-tests.tar.gz\\)", |
|
832 remote: [ |
|
833 "bundles/openjdk/GPL/osx-x64/jdk-" + data.version |
|
834 + "_osx-x64_bin-tests.tar.gz", |
|
835 "bundles/openjdk/GPL/osx-x64/\\1" |
|
836 ] |
|
837 }, |
|
838 jdk_symbols: { |
|
839 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)", |
|
840 remote: [ |
|
841 "bundles/openjdk/GPL/osx-x64/jdk-" + data.version |
|
842 + "_osx-x64_bin-symbols.tar.gz", |
|
843 "bundles/openjdk/GPL/osx-x64/\\1" |
|
844 ], |
|
845 subdir: "jdk-" + data.version |
|
846 }, |
|
847 jre_symbols: { |
|
848 local: "bundles/\\(jre.*bin-symbols.tar.gz\\)", |
|
849 remote: "bundles/openjdk/GPL/osx-x64/\\1", |
|
850 }, |
|
851 doc_api_spec: { |
|
852 local: "bundles/\\(jdk.*doc-api-spec.tar.gz\\)", |
|
853 remote: "bundles/openjdk/GPL/osx-x64/\\1", |
|
854 }, |
|
855 } |
|
856 }, |
|
857 |
|
858 "windows-x86-open": { |
|
859 artifacts: { |
|
860 jdk: { |
|
861 local: "bundles/\\(jdk.*bin.tar.gz\\)", |
|
862 remote: [ |
|
863 "bundles/openjdk/GPL/windows-x86/jdk-" + data.version |
|
864 + "_windows-x86_bin.tar.gz", |
|
865 "bundles/openjdk/GPL/windows-x86/\\1" |
|
866 ], |
|
867 subdir: "jdk-" + data.version |
|
868 }, |
|
869 jre: { |
|
870 local: "bundles/\\(jre.*bin.tar.gz\\)", |
|
871 remote: "bundles/openjdk/GPL/windows-x86/\\1" |
|
872 }, |
|
873 test: { |
|
874 local: "bundles/\\(jdk.*bin-tests.tar.gz\\)", |
|
875 remote: [ |
|
876 "bundles/openjdk/GPL/windows-x86/jdk-" + data.version |
|
877 + "_windows-x86_bin-tests.tar.gz", |
|
878 "bundles/openjdk/GPL/windows-x86/\\1" |
|
879 ] |
|
880 }, |
|
881 jdk_symbols: { |
|
882 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)", |
|
883 remote: [ |
|
884 "bundles/openjdk/GPL/windows-x86/jdk-" + data.version |
|
885 + "_windows-x86_bin-symbols.tar.gz", |
|
886 "bundles/openjdk/GPL/windows-x86/\\1" |
|
887 ], |
|
888 subdir: "jdk-" + data.version |
|
889 }, |
|
890 jre_symbols: { |
|
891 local: "bundles/\\(jre.*bin-symbols.tar.gz\\)", |
|
892 remote: "bundles/openjdk/GPL/windows-x86/\\1", |
|
893 } |
|
894 } |
|
895 }, |
|
896 |
|
897 "windows-x64-open": { |
|
898 artifacts: { |
|
899 jdk: { |
|
900 local: "bundles/\\(jdk.*bin.tar.gz\\)", |
|
901 remote: [ |
|
902 "bundles/openjdk/GPL/windows-x64/jdk-" + data.version |
|
903 + "_windows-x64_bin.tar.gz", |
|
904 "bundles/openjdk/GPL/windows-x64/\\1" |
|
905 ], |
|
906 subdir: "jdk-" + data.version |
|
907 }, |
|
908 jre: { |
|
909 local: "bundles/\\(jre.*bin.tar.gz\\)", |
|
910 remote: "bundles/openjdk/GPL/windows-x64/\\1" |
|
911 }, |
|
912 test: { |
|
913 local: "bundles/\\(jdk.*bin-tests.tar.gz\\)", |
|
914 remote: [ |
|
915 "bundles/openjdk/GPL/windows-x64/jdk-" + data.version |
|
916 + "_windows-x64_bin-tests.tar.gz", |
|
917 "bundles/openjdk/GPL/windows-x64/\\1" |
|
918 ] |
|
919 }, |
|
920 jdk_symbols: { |
|
921 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)", |
|
922 remote: [ |
|
923 "bundles/openjdk/GPL/windows-x64/jdk-" + data.version |
|
924 + "_windows-x64_bin-symbols.tar.gz", |
|
925 "bundles/openjdk/GPL/windows-x64/\\1" |
|
926 ], |
|
927 subdir: "jdk-" + data.version |
|
928 }, |
|
929 jre_symbols: { |
|
930 local: "bundles/\\(jre.*bin-symbols.tar.gz\\)", |
|
931 remote: "bundles/openjdk/GPL/windows-x64/\\1", |
|
932 } |
|
933 } |
|
934 }, |
|
935 |
|
936 "linux-x86-open-debug": { |
|
937 artifacts: { |
|
938 jdk: { |
|
939 local: "bundles/\\(jdk.*bin-debug.tar.gz\\)", |
|
940 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
941 }, |
|
942 jre: { |
|
943 local: "bundles/\\(jre.*bin-debug.tar.gz\\)", |
|
944 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
945 }, |
|
946 jdk_symbols: { |
|
947 local: "bundles/\\(jdk.*bin-debug-symbols.tar.gz\\)", |
|
948 remote: "bundles/openjdk/GPL/profile/linux-x86/\\1", |
|
949 }, |
|
950 } |
|
951 }, |
|
952 |
|
953 }; |
|
954 profiles = concatObjects(profiles, profilesArtifacts); |
|
955 |
|
956 |
|
957 // Define the reference implementation profiles. These are basically the same |
|
958 // as the open profiles, but upload artifacts to a different location and |
|
959 // are only defined for specific platforms. |
|
960 profiles["linux-x64-ri"] = clone(profiles["linux-x64-open"]); |
|
961 profiles["linux-x86-ri"] = clone(profiles["linux-x86-open"]); |
|
962 profiles["linux-x86-ri-debug"] = clone(profiles["linux-x86-open-debug"]); |
|
963 profiles["macosx-x64-ri"] = clone(profiles["macosx-x64-open"]); |
|
964 profiles["windows-x86-ri"] = clone(profiles["windows-x86-open"]); |
|
965 profiles["windows-x64-ri"] = clone(profiles["windows-x64-open"]); |
|
966 |
|
967 // Generate artifacts for ri profiles |
|
968 [ "linux-x64-ri", "linux-x86-ri", "linux-x86-ri-debug", "macosx-x64-ri", "windows-x86-ri", "windows-x64-ri" ] |
|
969 .forEach(function (name) { |
|
970 // Rewrite all remote dirs to "bundles/openjdk/BCL/..." |
|
971 for (artifactName in profiles[name].artifacts) { |
|
972 var artifact = profiles[name].artifacts[artifactName]; |
|
973 artifact.remote = replaceAll("\/GPL\/", "/BCL/", |
|
974 (artifact.remote != null ? artifact.remote : artifact.local)); |
|
975 } |
|
976 }); |
|
977 |
|
978 // The windows ri profile needs to add the freetype license file |
|
979 profilesRiFreetype = { |
|
980 "windows-x86-ri": { |
|
981 configure_args: "--with-freetype-license=" |
|
982 + input.get("freetype", "install_path") |
|
983 + "/freetype-2.7.1-v120-x86/freetype.md" |
|
984 }, |
|
985 "windows-x64-ri": { |
|
986 configure_args: "--with-freetype-license=" |
|
987 + input.get("freetype", "install_path") |
|
988 + "/freetype-2.7.1-v120-x64/freetype.md" |
|
989 } |
|
990 }; |
|
991 profiles = concatObjects(profiles, profilesRiFreetype); |
|
992 |
756 |
993 // Generate the missing platform attributes |
757 // Generate the missing platform attributes |
994 profiles = generatePlatformAttributes(profiles); |
758 profiles = generatePlatformAttributes(profiles); |
995 profiles = generateDefaultMakeTargetsConfigureArg(common, profiles); |
759 profiles = generateDefaultMakeTargetsConfigureArg(common, profiles); |
996 return profiles; |
760 return profiles; |