Compare commits

...

No commits in common. "c8" and "c9s" have entirely different histories.
c8 ... c9s

67 changed files with 2849 additions and 1155 deletions

459
.gitignore vendored
View File

@ -1,2 +1,457 @@
SOURCES/shenandoah8u472-b08.tar.xz
SOURCES/tapsets-icedtea-3.15.0.tar.xz
*.rpm
/class-rewriter.tar.gz
/desktop-files.tar.gz
/jdk8-b79.tar.gz
/systemtap-tapset.tar.gz
/jdk8-b87.tar.gz
/jdk8-b89.tar.gz
/jdk8-b89.tar.xz
/jdk8-arm64-b01-internal.tar.xz
/jdk8-b01-internal.tar.xz
/java-1.8.0-openjdk-aarch64-port-b01-internal.tar.xz
/java-1.8.0-openjdk-jdk8-b01-internal.tar.xz
/aarch64-port-b89.tar.xz
/aarch64-port-b89x.tar.xz
/jdk8-b89x.tar.xz
/aarch64-port-aarch64-20130813.tar.xz
/jdk8-jdk8-b106.tar.xz
/aarch64-port-preview_rc2.tar.xz
/jdk8-jdk8-b115.tar.xz
/jdk8-jdk8-b123.tar.xz
/jdk8-jdk8-b126.tar.xz
/jdk8-jdk8-b129.tar.xz
/jdk8-jdk8-b132.tar.xz
/aarch64-port-rc4.tar.xz
/aarch64-port-jdk8-b128-aarch64-992.tar.xz
/jdk8u-jdk8u5-b13.tar.xz
/jdk8u-jdk8u11-b12.tar.xz
/aarch64-hotspot-jdk8-b128-aarch64-992.tar.xz
/jdk8u-jdk8u20-b23.tar.xz
/jdk8u-jdk8u40-b01.tar.xz
/jdk8u-jdk8u40-b02.tar.xz
/jdk8u-jdk8u20-b26.tar.xz
/jdk8u-jdk8u25-b17.tar.xz
/aarch64-hotspot-jdk8u40-b02.tar.xz
/aarch64-hotspot-jdk8u40-b02-c6375c27cbfa.tar.xz
/aarch64-hotspot-jdk8u40-b04-a6df78e590bb.tar.xz
/aarch64-hotspot-jdk8u40-b04-d0ea7bcfcd8c.tar.xz
/jdk8-jdk8u40-b12-aarch64-1263.tar.xz
/jdk8-jdk8u40-b12-aarch64-hs3135441ed942.tar.xz
/jdk8u-jdk8u31-b13.tar.xz
/jdk8-jdk8u45-b13-aarch64-jdk8u45-b13.tar.xz
/jdk8u45-jdk8u45-b13.tar.xz
/jdk8u45-jdk8u45-b14.tar.xz
/jdk8u-jdk8u60-b16.tar.xz
/jdk8u-aarch64-jdk8u51-b16.tar.xz
/jdk8u-jdk8u60-b24.tar.xz
/jdk8u-arch64-jdk8u60-b24.tar.xz
/jdk8u60-jdk8u60-b27.tar.xz
/jdk8-aarch64-jdk8u60-b24.2.tar.xz
/jdk8u60-aarch64-jdk8u60-b28.tar.xz
/jdk8u60-aarch64-jdk8u65-b17.tar.xz
/aarch64-port-jdk8u60-aarch64-jdk8u65-b17.tar.xz
/aarch64-jdk8u71-b15.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u72-b15.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u72-b15-ec.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u72-b16-ec.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u77-b03.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u91-b14.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u80-b00-beta01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u71-b15-beta02.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u92-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u101-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u92-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u101-b14.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u101-b14-shenandoah-merge-2016-07-25.tar.xz
/systemtap-tapset-3.1.0.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u101-b15.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u102-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u111-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u111-b15.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u111-b18.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u112-b16.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u121-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u111-b16.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u111-b16.tar.xz
/openjdk8-forests-latest-aarch64-aarch64-jdk8u121-b14.tar.xz
/openjdk8-forests-latest-shenandoah-aarch64-shenandoah-jdk8u121-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u121-b14.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u121-b14-shenandoah-merge-2017-02-20.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u121-b14-shenandoah-merge-2017-03-08.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u121-b14-shenandoah-merge-2017-03-09.tar.xz
/systemtap-tapset-3.4.0.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u131-b11.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u131-b11.tar.xz
/systemtap-tapset-3.4.0pre01.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u131-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u131-b12.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u141-b15.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u141-b15.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u141-b16.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u141-b16.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u144-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u144-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u144-b02-shenandoah-merge-2017-10-02.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u151-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u151-b12.tar.xz
/systemtap-tapset-3.6.0pre02.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u161-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u161-b12.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u151-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u151-b13.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u152-b16.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u152-b16.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u161-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u161-b13.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u161-b14.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u161-b14.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u162-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u162-b12.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u171-b10.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u171-b10.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u171-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u171-b12.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u172-b11.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u172-b11.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u172-b11--shenandoah-merge-2018-05-15.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u172-b11--shenandoah-merge-2018-06-21.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u181-b03.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b03.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u181-b04.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b04.tar.xz
/aarch64-port-jdk8u-aarch64-jdk8u181-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b13.tar.xz
/systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b15.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b16.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u191-b10.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u191-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u191-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u191-b14.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u192-b12.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u201-b09.tar.xz
/tapsets-icedtea-3.11.0.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u201-b13.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u202-b08.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b02.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b03.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b04.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b02.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b03.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b04.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b05.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b06.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b07.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b08.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b09.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u222-b10.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b02.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b03.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b04.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b05.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b05-shenandoah-merge-2019-09-09.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b06.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b07.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b08.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u232-b09.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b02.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b04.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b05.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b06.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b07.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u242-b08.tar.xz
/tapsets-icedtea-3.15.0.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b02.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b06-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b06.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b07.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b08-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b08.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b09-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b09.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b03-shenandoah-merge-2020-05-20-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b05-shenandoah-merge-2020-06-04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b06-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b07-shenandoah-merge-2020-06-18-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b08-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b09-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b09-shenandoah-merge-2020-07-03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b10-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u265-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b05-shenandoah-merge-2020-08-28-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b06-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b08-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b09-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b10-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u272-b10.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u275-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u275-b01.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b06-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u282-b08-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b05-shenandoah-merge-2021-03-11-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b06-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b08-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b09-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u292-b10-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b03-shenandoah-merge-2021-06-23-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b06-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b08-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u302-b08-4curve-clean.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b04-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b05-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b05-shenandoah-merge-2021-10-07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u312-b07-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u322-b01-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u322-b02-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u322-b03-4curve.tar.xz
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u322-b04-4curve.tar.xz
/openjdk-shenandoah-jdk8u-aarch64-shenandoah-jdk8u322-b05-4curve.tar.xz
/openjdk-shenandoah-jdk8u-aarch64-shenandoah-jdk8u322-b06-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u332-b01-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u332-b06-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u332-b09-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u342-b06-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u342-b07-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u345-b01-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u352-b07-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u352-b08-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b01-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b07-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b08-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b09-4curve.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.aarch64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.ppc64le.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.s390x.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.x86_64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.aarch64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.ppc64le.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.x86_64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.aarch64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.ppc64le.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.s390x.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.x86_64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.aarch64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.ppc64le.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.x86_64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.aarch64.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.ppc64le.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.s390x.tar.xz
/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.x86_64.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u372-b07-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b01-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b04-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u382-b05-4curve.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u392-b01.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u392-b07.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u392-b08.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u402-b01.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u402-b05.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u402-b06.tar.xz
/openjdk-shenandoah-jdk8u-shenandoah-jdk8u412-b01.tar.xz
/shenandoah8u412-b01.tar.xz
/shenandoah8u412-b07.tar.xz
/shenandoah8u412-b08.tar.xz
/shenandoah8u422-b01.tar.xz
/shenandoah8u422-b05.tar.xz
/shenandoah8u432-b05.tar.xz
/shenandoah8u432-b06.tar.xz
/shenandoah8u442-b01.tar.xz
/shenandoah8u442-b05.tar.xz
/shenandoah8u442-b06.tar.xz
/openjdk8u272-ga.tar.xz
/openjdk8u275-ga.tar.xz
/openjdk8u282-b01-ea.tar.xz
/openjdk8u282-b02-ea.tar.xz
/openjdk8u282-b03-ea.tar.xz
/openjdk8u282-b04-ea.tar.xz
/openjdk8u282-b05-ea.tar.xz
/openjdk8u282-b06-ea.tar.xz
/openjdk8u282-b07-ea.tar.xz
/openjdk8u282-ga.tar.xz
/openjdk8u282-b08-ea.tar.xz
/openjdk8u292-b01-ea.tar.xz
/openjdk8u292-b02-ea.tar.xz
/openjdk8u292-b03-ea.tar.xz
/openjdk8u292-b04-ea.tar.xz
/openjdk8u292-b05-ea.tar.xz
/openjdk8u292-b06-ea.tar.xz
/openjdk8u292-b07-ea.tar.xz
/openjdk8u292-b08-ea.tar.xz
/openjdk8u292-b09-ea.tar.xz
/openjdk8u292-b10-ea.tar.xz
/openjdk8u292-ga.tar.xz
/openjdk8u302-b01-ea.tar.xz
/openjdk8u302-b02-ea.tar.xz
/openjdk8u302-b03-ea.tar.xz
/openjdk8u302-b04-ea.tar.xz
/openjdk8u302-b05-ea.tar.xz
/openjdk8u302-b06-ea.tar.xz
/openjdk8u302-b07-ea.tar.xz
/openjdk8u302-ga.tar.xz
/openjdk8u312-b01-ea.tar.xz
/openjdk8u312-b02-ea.tar.xz
/openjdk8u312-b03-ea.tar.xz
/openjdk8u312-b04-ea.tar.xz
/openjdk8u312-b05-ea.tar.xz
/openjdk8u312-b06-ea.tar.xz
/openjdk8u312-ga.tar.xz
/openjdk8u322-b01-ea.tar.xz
/openjdk8u322-b02-ea.tar.xz
/openjdk8u322-b03-ea.tar.xz
/openjdk8u322-b04-ea.tar.xz
/openjdk8u322-b05-ea.tar.xz
/openjdk8u322-ga.tar.xz
/openjdk8u332-b01-ea.tar.xz
/openjdk8u332-b02-ea.tar.xz
/openjdk8u332-b03-ea.tar.xz
/openjdk8u332-b04-ea.tar.xz
/openjdk8u332-b05-ea.tar.xz
/openjdk8u332-b06-ea.tar.xz
/openjdk8u332-b09.tar.xz
/openjdk8u342-b01-ea.tar.xz
/openjdk8u342-b02-ea.tar.xz
/openjdk8u342-b03-ea.tar.xz
/openjdk8u342-b04-ea.tar.xz
/openjdk8u342-b05-ea.tar.xz
/openjdk8u342-b06-ea.tar.xz
/openjdk8u342-b07.tar.xz
/openjdk8u345-b01.tar.xz
/openjdk8u352-b01-ea.tar.xz
/openjdk8u352-b02-ea.tar.xz
/openjdk8u352-b03-ea.tar.xz
/openjdk8u352-b04-ea.tar.xz
/openjdk8u352-b05-ea.tar.xz
/openjdk8u352-b06-ea.tar.xz
/openjdk8u352-b07-ea.tar.xz
/openjdk8u352-b08.tar.xz
/openjdk8u362-b01-ea.tar.xz
/openjdk8u362-b02-ea.tar.xz
/openjdk8u362-b03-ea.tar.xz
/openjdk8u362-b04-ea.tar.xz
/openjdk8u362-b05-ea.tar.xz
/openjdk8u362-b06-ea.tar.xz
/openjdk8u362-b07-ea.tar.xz
/openjdk8u362-b08.tar.xz
/openjdk8u362-b09.tar.xz
/openjdk8u372-b01-ea.tar.xz
/openjdk8u372-b02-ea.tar.xz
/openjdk8u372-b03-ea.tar.xz
/openjdk8u372-b04-ea.tar.xz
/openjdk8u372-b05-ea.tar.xz
/openjdk8u372-b06-ea.tar.xz
/openjdk8u372-b07.tar.xz
/openjdk8u382-b01-ea.tar.xz
/openjdk8u382-b02-ea.tar.xz
/openjdk8u382-b03-ea.tar.xz
/openjdk8u382-b04-ea.tar.xz
/openjdk8u382-b05.tar.xz
/openjdk8u392-b01-ea.tar.xz
/openjdk8u392-b02-ea.tar.xz
/openjdk8u392-b04-ea.tar.xz
/openjdk8u392-b05-ea.tar.xz
/openjdk8u392-b06-ea.tar.xz
/openjdk8u392-b07-ea.tar.xz
/openjdk8u392-b08.tar.xz
/openjdk8u402-b01-ea.tar.xz
/openjdk8u402-b02-ea.tar.xz
/openjdk8u402-b03-ea.tar.xz
/openjdk8u402-b04-ea.tar.xz
/openjdk8u402-b05-ea.tar.xz
/openjdk8u402-b06.tar.xz
/openjdk8u412-b01-ea.tar.xz
/openjdk8u412-b02-ea.tar.xz
/openjdk8u412-b03-ea.tar.xz
/openjdk8u412-b04-ea.tar.xz
/openjdk8u412-b05-ea.tar.xz
/openjdk8u412-b06-ea.tar.xz
/openjdk8u412-b07-ea.tar.xz
/openjdk8u412-b08.tar.xz
/openjdk8u422-b01-ea.tar.xz
/openjdk8u422-b02-ea.tar.xz
/openjdk8u422-b03-ea.tar.xz
/openjdk8u422-b04-ea.tar.xz
/openjdk8u422-b05.tar.xz
/openjdk8u432-b01-ea.tar.xz
/openjdk8u432-b02-ea.tar.xz
/openjdk8u432-b03-ea.tar.xz
/openjdk8u432-b04-ea.tar.xz
/openjdk8u432-b05-ea.tar.xz
/openjdk8u432-b06.tar.xz
/openjdk8u442-b01-ea.tar.xz
/openjdk8u442-b02-ea.tar.xz
/openjdk8u442-b03-ea.tar.xz
/openjdk8u442-b04-ea.tar.xz
/openjdk8u442-b05-ea.tar.xz
/openjdk8u442-b06.tar.xz
/openjdk8u452-b01-ea.tar.xz
/openjdk8u452-b03-ea.tar.xz
/openjdk8u452-b04-ea.tar.xz
/openjdk8u452-b05-ea.tar.xz
/openjdk8u452-b06-ea.tar.xz
/openjdk8u452-b07-ea.tar.xz
/openjdk8u452-b08.tar.xz
/openjdk8u452-b09.tar.xz
/shenandoah8u452-b09.tar.xz
/shenandoah8u462-b08.tar.xz
/openjdk8u462-b01-ea.tar.xz
/openjdk8u462-b02-ea.tar.xz
/openjdk8u462-b03-ea.tar.xz
/openjdk8u462-b04-ea.tar.xz
/openjdk8u462-b05-ea.tar.xz
/openjdk8u462-b06-ea.tar.xz
/openjdk8u462-b07-ea.tar.xz
/openjdk8u462-b08.tar.xz
/openjdk8u472-b01-ea.tar.xz
/openjdk8u472-b02-ea.tar.xz
/openjdk8u472-b03-ea.tar.xz
/openjdk8u472-b04-ea.tar.xz
/openjdk8u472-b05-ea.tar.xz
/openjdk8u472-b06-ea.tar.xz
/openjdk8u472-b07-ea.tar.xz
/openjdk8u472-b08.tar.xz
/shenandoah8u472-b08.tar.xz

View File

@ -1,2 +0,0 @@
49b36394ecd6c900aff812c4bff4ad132b613f3c SOURCES/shenandoah8u472-b08.tar.xz
7ae2cba67467825b2c2a5fec7aea041865023002 SOURCES/tapsets-icedtea-3.15.0.tar.xz

View File

View File

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
# recipients: java-qa
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

File diff suppressed because it is too large Load Diff

View File

@ -16,7 +16,7 @@ diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenan
Atomic::add(val, &_sum);
- int mag = log2_intptr(val) + 1;
+ int mag = log2_long(val) + 1;
+ int mag = log2_intptr((uintptr_t)val) + 1;
// Defensively saturate for product bits:
if (mag < 0) {

29
scripts/builds/build_centos.sh Executable file
View File

@ -0,0 +1,29 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds the RPM on CentOS 9 or 10
centpkg -v build
# Local Variables:
# compile-command: "shellcheck build_centos.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,29 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds the portable on CentOS
centpkg -v build --target java-openjdk-portable-build --rhel-target none
# Local Variables:
# compile-command: "shellcheck build_centos_portable_build.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,29 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds the portable on RHEL 7
rhpkg -v build
# Local Variables:
# compile-command: "shellcheck build_rhel_7_portable_build.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

43
scripts/builds/build_rhel_8.sh Executable file
View File

@ -0,0 +1,43 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds the RPM on RHEL 8
NVR=${1}
USER=${2}
if test "${NVR}" = ""; then
echo "${0} <NVR> <USER>";
exit 1;
fi
if test "${USER}" = ""; then
echo "${0} <NVR> <USER>";
exit 2;
fi
METADATA="{\"osci\": {\"upstream_nvr\": \"${NVR}\", \"upstream_owner_name\": \"${USER}\"}, \"rhel-target\": \"latest\"}"
rhpkg -v build --target=java-openjdk-rhel-8-build --custom-user-metadata "${METADATA}"
# Local Variables:
# compile-command: "shellcheck build_rhel_8.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

43
scripts/builds/build_rhel_9.sh Executable file
View File

@ -0,0 +1,43 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds the RPM on RHEL 9
NVR=${1}
USER=${2}
if test "${NVR}" = ""; then
echo "${0} <NVR> <USER>";
exit 1;
fi
if test "${USER}" = ""; then
echo "${0} <NVR> <USER>";
exit 2;
fi
METADATA="{\"osci\": {\"upstream_nvr\": \"${NVR}\", \"upstream_owner_name\": \"${USER}\"}, \"rhel-target\": \"latest\"}"
rhpkg -v build --target=java-openjdk-rhel-9-build --custom-user-metadata "${METADATA}"
# Local Variables:
# compile-command: "shellcheck build_rhel_9.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,29 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds the portable on RHEL 8
rhpkg -v build --target=java-openjdk-rhel-8-build --skip-nvr-check
# Local Variables:
# compile-command: "shellcheck build_rhel_portable_build.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

43
scripts/builds/build_vanilla.sh Executable file
View File

@ -0,0 +1,43 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Builds a scratch build of vanilla OpenJDK with no local patches
SEPARATE_ARCHES=${1}
CMD="--target java-openjdk-rhel-8-build --skip-nvr-check --nowait";
SUPPORTED_ARCHES="aarch64 ppc64le s390x x86_64";
if [ "x${SEPARATE_ARCHES}" = "x" ] ; then
SEPARATE_ARCHES=0;
fi
if [ ${SEPARATE_ARCHES} -eq 1 ] ; then
for arch in ${SUPPORTED_ARCHES}; do \
rhpkg -v build --arches ${arch} --scratch ${CMD} ; \
done && brew watch-task --mine
else
rhpkg -v build ${CMD} && brew watch-task --mine
fi
# Local Variables:
# compile-command: "shellcheck build_vanilla.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

42
scripts/builds/tag_rhel_8.sh Executable file
View File

@ -0,0 +1,42 @@
#!/bin/sh
# Copyright (C) 2025 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Tag RHEL 8 RPMs into all supported streams
SUPPORTED_VERS="8.2.0-z 8.4.0-z 8.6.0-z 8.8.0-z 8.10.0-z"
BUILD=${1}
if test "${BUILD}" = ""; then
echo "${0} <BUILD>";
exit 1;
fi
for ver in ${SUPPORTED_VERS}; do
tag="rhel-${ver}-gate";
echo "Tagging ${BUILD} into ${tag}";
brew tag-build --nowait ${tag} ${BUILD};
done
brew watch-task --mine
# Local Variables:
# compile-command: "shellcheck tag_rhel_8.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,42 @@
#!/bin/sh
# Copyright (C) 2025 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Tag embargoed RHEL 8 RPMs into supported z-streams
SUPPORTED_VERS="8.2.0-z 8.4.0-z 8.6.0-z 8.8.0-z 8.10.0-z"
BUILD=${1}
if test "${BUILD}" = ""; then
echo "${0} <BUILD>";
exit 1;
fi
for ver in ${SUPPORTED_VERS}; do
tag="rhel-${ver}-nocompose-candidate";
echo "Tagging ${BUILD} into ${tag}";
brew tag-build --nowait ${tag} ${BUILD};
done
brew watch-task --mine
# Local Variables:
# compile-command: "shellcheck tag_rhel_8_nocompose.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

42
scripts/builds/tag_rhel_9.sh Executable file
View File

@ -0,0 +1,42 @@
#!/bin/sh
# Copyright (C) 2025 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Tag RHEL 9 RPMs into all supported streams
SUPPORTED_VERS="9.0.0-z 9.2.0-z 9.4.0-z 9.6.0-z 9.7.0-z 9.8.0"
BUILD=${1}
if test "${BUILD}" = ""; then
echo "${0} <BUILD>";
exit 1;
fi
for ver in ${SUPPORTED_VERS}; do
tag="rhel-${ver}-gate";
echo "Tagging ${BUILD} into ${tag}";
brew tag-build --nowait ${tag} ${BUILD};
done
brew watch-task --mine
# Local Variables:
# compile-command: "shellcheck tag_rhel_9.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,42 @@
#!/bin/sh
# Copyright (C) 2025 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Tag embargoed RHEL 9 RPMs into supported z-streams
SUPPORTED_VERS="9.0.0-z 9.2.0-z 9.4.0-z 9.6.0-z"
BUILD=${1}
if test "${BUILD}" = ""; then
echo "${0} <BUILD>";
exit 1;
fi
for ver in ${SUPPORTED_VERS}; do
tag="rhel-${ver}-nocompose-candidate";
echo "Tagging ${BUILD} into ${tag}";
brew tag-build --nowait ${tag} ${BUILD};
done
brew watch-task --mine
# Local Variables:
# compile-command: "shellcheck tag_rhel_9_nocompose.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

61
scripts/discover_trees.sh Executable file
View File

@ -0,0 +1,61 @@
#!/bin/sh
# Copyright (C) 2024 Red Hat, Inc.
# Written by Andrew John Hughes <gnu.andrew@redhat.com>.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
TREE=${1}
if test "${TREE}" = ""; then
TREE=${PWD}
fi
if [ -e "${TREE}"/nashorn/.hg ] || [ -e "${TREE}"/nashorn/merge.changeset ] ; then
NASHORN="nashorn" ;
fi
if [ -e "${TREE}"/corba/.hg ] || [ -e "${TREE}"/corba/merge.changeset ] ; then
CORBA="corba";
fi
if [ -e "${TREE}"/jaxp/.hg ] || [ -e "${TREE}"/jaxp/merge.changeset ] ; then
JAXP="jaxp";
fi
if [ -e "${TREE}"/jaxws/.hg ] || [ -e "${TREE}"/jaxws/merge.changeset ] ; then
JAXWS="jaxws";
fi
if [ -e "${TREE}"/langtools/.hg ] || [ -e "${TREE}"/langtools/merge.changeset ] ; then
LANGTOOLS="langtools";
fi
if [ -e "${TREE}"/jdk/.hg ] || [ -e "${TREE}"/jdk/merge.changeset ] ; then
JDK="jdk";
fi
if [ -e "${TREE}"/hotspot/.hg ] || [ -e "${TREE}"/hotspot/merge.changeset ] ; then
HOTSPOT="hotspot";
fi
SUBTREES="${CORBA} ${JAXP} ${JAXWS} ${LANGTOOLS} ${NASHORN} ${JDK} ${HOTSPOT}";
echo "${SUBTREES}"
# Local Variables:
# compile-command: "shellcheck discover_trees.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,322 @@
#!/bin/bash
# Copyright (C) 2024 Red Hat, Inc.
# Written by:
# Andrew John Hughes <gnu.andrew@redhat.com>
# Thomas Fitzsimmons <fitzsim@redhat.com>
# Jiri Vanek <jvanek@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Generates the source tarball for OpenJDK projects.
#
# There are multiple ways to specify the source code location and version:
#
# 1. Specify the version (VERSION), the location of the Git repository
# (REPO_ROOT) and the root of the output tarball name (FILE_NAME_ROOT)
# 2. Specify the version (VERSION) along with an upstream project name
# (PROJECT_NAME) and repository name (REPO_NAME) that can be used
# to construct the URL of the upstream OpenJDK repository.
# 3. Specify OPENJDK_LATEST=1 and allow the script to obtain the JDK
# feature version from the spec file, which is then used to
# obtain the latest build promotion from the upstream repository.
#
# An appropriate bootstrap JDK is also required for when ./configure
# is run within the checked out repository to generate the .src-rev.
# file. This can be specified by setting BOOT_JDK.
#
# Example 1:
# This will check out the specified version from the specified
# repository and construct a tarball called openjdk-17.0.3+5.tar.xz:
#
# $ VERSION=jdk-17.0.3+5 FILE_NAME_ROOT=open${VERSION} \
# REPO_ROOT=$HOME/projects/openjdk/upstream/17u \
# BOOT_JDK=/usr/lib/jvm/java-17-openjdk ./generate_source_tarball.sh
#
# Example 2:
# This will check out the same version as example 1, but from the
# upstream repository:
#
# $ VERSION=jdk-17.0.3+5 PROJECT_NAME=openjdk REPO_NAME=jdk17u \
# BOOT_JDK=/usr/lib/jvm/java-17-openjdk ./generate_source_tarball.sh
#
# Example 3:
# This will read the OpenJDK feature version from the spec file, then create a
# tarball from the most recent tag for that version in the upstream Git
# repository.
#
# $ OPENJDK_LATEST=1 \
# BOOT_JDK=/usr/lib/jvm/java-17-openjdk ./generate_source_tarball.sh
#
SCRIPT_DIR=$(dirname "$0")
JCONSOLE_PATCH_DEFAULT=${SCRIPT_DIR}/jconsole-plugin.patch
if [ "x${JCONSOLE_PATCH}" != "x" ] ; then
if [ ! -f "${JCONSOLE_PATCH}" ] ; then
echo "You have specified the jconsole.js patch as ${JCONSOLE_PATCH} but it does not exist. Exiting.";
exit 2;
fi
else
JCONSOLE_PATCH=${JCONSOLE_PATCH_DEFAULT}
fi
set -e
OPENJDK_URL_DEFAULT=https://github.com
COMPRESSION_DEFAULT=xz
if [ "$1" = "help" ] ; then
echo "Behaviour may be specified by setting the following variables:"
echo
echo "VERSION - the version of the specified OpenJDK project"
echo " (required unless OPENJDK_LATEST is set)"
echo "PROJECT_NAME - the name of the OpenJDK project being archived"
echo " (needed to compute REPO_ROOT and/or"
echo " FILE_NAME_ROOT automatically;"
echo " optional if they are set explicitly)"
echo "REPO_NAME - the name of the OpenJDK repository"
echo " (needed to compute REPO_ROOT automatically;"
echo " optional if REPO_ROOT is set explicitly)"
echo "OPENJDK_URL - the URL to retrieve code from"
echo " (defaults to ${OPENJDK_URL_DEFAULT})"
echo "COMPRESSION - the compression type to use"
echo " (defaults to ${COMPRESSION_DEFAULT})"
echo "FILE_NAME_ROOT - name of the archive, minus extensions"
echo " (defaults to PROJECT_NAME-VERSION)"
echo "REPO_ROOT - the location of the Git repository to archive"
echo " (defaults to OPENJDK_URL/PROJECT_NAME/REPO_NAME.git)"
echo "TO_COMPRESS - what part of clone to pack"
echo " (defaults to ${VERSION})"
echo "JCONSOLE_PATCH - the path to a patch to fix non-availiability of"
echo " jconsole.js (optional; defaults to ${JCONSOLE_PATCH_DEFAULT})"
echo "BOOT_JDK - the bootstrap JDK to satisfy the configure run"
echo " (defaults to packaged JDK version)"
echo "WITH_TEMP - run in a temporary directory"
echo " (defaults to disabled)"
echo "OPENJDK_LATEST - deduce VERSION from most recent upstream tag"
echo " (implies WITH_TEMP, computes everything else"
echo " automatically; Note: accesses network to read"
echo " tag list from remote Git repository)"
exit 1;
fi
if [ "$OPENJDK_LATEST" != "" ] ; then
FEATURE_VERSION=$(echo '%majorver' \
| rpmspec --shell ./*.spec 2>/dev/null \
| grep --after-context 1 majorver \
| tail --lines 1)
PROJECT_NAME=openjdk
REPO_NAME=shenandoah-jdk"${FEATURE_VERSION}"u
# FIXME: Temporarily use private fork until main repository is in sync
# Skip -ga tags since those are the same as the most recent non-ga tag, and
# the non-ga tag is the one that is used to generated the official source
# tarball. For example:
# ca760c86642aa2e0d9b571aaabac054c0239fbdc refs/tags/jdk-17.0.10-ga^{}
# 25a2e6c20c9a96853714284cabc6b456eb095070 refs/tags/jdk-17.0.10-ga
# ca760c86642aa2e0d9b571aaabac054c0239fbdc refs/tags/jdk-17.0.10+7^{}
# e49c5749b10f3e90274b72e9279f794fdd191d27 refs/tags/jdk-17.0.10+7
VERSION=$(git ls-remote --tags --refs --sort=-version:refname \
"${OPENJDK_URL_DEFAULT}/gnu-andrew/${REPO_NAME}.git" \
"shenandoah${FEATURE_VERSION}u*" \
| grep --invert-match '\-ga$' \
| head --lines 1 | cut --characters 52-)
FILE_NAME_ROOT=${VERSION}
WITH_TEMP=1
fi
if [ "$WITH_TEMP" != "" ] ; then
pushd "$(mktemp --directory --tmpdir temp-generated-source-tarball-XXX)"
fi
if [ "$VERSION" = "" ] ; then
echo "No VERSION specified"
exit 2
fi
echo "Version: ${VERSION}"
NUM_VER=${VERSION##shenandoah}
RELEASE_VER=${NUM_VER%%-b*}
BUILD_VER=${NUM_VER##*-}
MAJOR_VER=${RELEASE_VER%%u*}
echo "Major version is ${MAJOR_VER}, release ${RELEASE_VER}, build ${BUILD_VER}"
if [ "$BOOT_JDK" = "" ] ; then
echo "No boot JDK specified".
BOOT_JDK=/usr/lib/jvm/java-1.${MAJOR_VER}.0-openjdk;
echo -n "Checking for ${BOOT_JDK}...";
if [ -d "${BOOT_JDK}" ] && [ -x "${BOOT_JDK}"/bin/java ] ; then
echo "Boot JDK found at ${BOOT_JDK}";
else
echo "Not found";
PREV_VER=$((MAJOR_VER - 1));
BOOT_JDK=/usr/lib/jvm/java-1.${PREV_VER}.0-openjdk;
echo -n "Checking for ${BOOT_JDK}...";
if [ -d ${BOOT_JDK} ] && [ -x ${BOOT_JDK}/bin/java ] ; then
echo "Boot JDK found at ${BOOT_JDK}";
else
echo "Not found";
exit 4;
fi
fi
else
echo "Boot JDK: ${BOOT_JDK}";
fi
if [ "$OPENJDK_URL" = "" ] ; then
OPENJDK_URL=${OPENJDK_URL_DEFAULT}
echo "No OpenJDK URL specified; defaulting to ${OPENJDK_URL}"
else
echo "OpenJDK URL: ${OPENJDK_URL}"
fi
if [ "$COMPRESSION" = "" ] ; then
# rhel 5 needs tar.gz
COMPRESSION=${COMPRESSION_DEFAULT}
fi
echo "Creating a tar.${COMPRESSION} archive"
if [ "$FILE_NAME_ROOT" = "" ] ; then
if [ "$PROJECT_NAME" = "" ] ; then
echo "No PROJECT_NAME specified, needed by FILE_NAME_ROOT"
exit 1
fi
FILE_NAME_ROOT=${PROJECT_NAME}-${VERSION}
echo "No file name root specified; default to ${FILE_NAME_ROOT}"
fi
if [ "$REPO_ROOT" = "" ] ; then
if [ "$PROJECT_NAME" = "" ] ; then
echo "No PROJECT_NAME specified, needed by REPO_ROOT"
exit 1
fi
if [ "$REPO_NAME" = "" ] ; then
echo "No REPO_NAME specified, needed by REPO_ROOT"
exit 3
fi
REPO_ROOT="${OPENJDK_URL}/${PROJECT_NAME}/${REPO_NAME}.git"
echo "No repository root specified; default to ${REPO_ROOT}"
fi;
if [ "$TO_COMPRESS" = "" ] ; then
TO_COMPRESS="${VERSION}"
echo "No targets to be compressed specified ; default to ${TO_COMPRESS}"
fi;
echo -e "Settings:"
echo -e "\tVERSION: ${VERSION}"
echo -e "\tPROJECT_NAME: ${PROJECT_NAME}"
echo -e "\tREPO_NAME: ${REPO_NAME}"
echo -e "\tOPENJDK_URL: ${OPENJDK_URL}"
echo -e "\tCOMPRESSION: ${COMPRESSION}"
echo -e "\tFILE_NAME_ROOT: ${FILE_NAME_ROOT}"
echo -e "\tREPO_ROOT: ${REPO_ROOT}"
echo -e "\tTO_COMPRESS: ${TO_COMPRESS}"
echo -e "\tJCONSOLE_PATCH: ${JCONSOLE_PATCH}"
echo -e "\tBOOT_JDK: ${BOOT_JDK}"
if [ -d "${FILE_NAME_ROOT}" ] ; then
echo "Reusing existing ${FILE_NAME_ROOT}"
STAT_TIME="$(stat --format=%Y "${FILE_NAME_ROOT}")"
TAR_TIME="$(date --date=@"${STAT_TIME}" --iso-8601=seconds)"
else
mkdir "${FILE_NAME_ROOT}"
pushd "${FILE_NAME_ROOT}"
echo "Cloning ${VERSION} root repository from ${REPO_ROOT}"
if realpath -q "${REPO_ROOT}"; then
echo "Local path detected; not adding depth argument";
else
DEPTH="--depth=1";
echo "Remote repository detected; adding ${DEPTH}";
fi
git clone ${DEPTH} -b "${VERSION}" "${REPO_ROOT}" "${VERSION}"
pushd "${VERSION}"
TAR_TIME="$(git log --max-count 1 --format=%cI)"
# UnderlineTaglet.java has a BSD license with a field-of-use restriction, making it non-Free
if [ -d langtools ] ; then
echo "Removing langtools test case with non-Free license"
rm -vf langtools/test/tools/javadoc/api/basic/TagletPathTest.java
rm -vf langtools/test/tools/javadoc/api/basic/taglets/UnderlineTaglet.java
fi
if [ -d jdk ]; then
# jconsole.js has a BSD license with a field-of-use restriction, making it non-Free
echo "Removing jconsole-plugin file with non-Free license"
rm -vf jdk/src/share/demo/scripting/jconsole-plugin/src/resources/jconsole.js
fi
echo "Patching out use of jconsole.js"
git apply --stat --apply -v -p1 "${JCONSOLE_PATCH}"
find . -name '*.orig' -exec rm -vf '{}' ';'
popd
popd
fi
pushd "${FILE_NAME_ROOT}"
# Generate .src-rev so build has knowledge of the revision the tarball was
# created from
mkdir build
pushd build
sh "${PWD}"/../"${VERSION}"/configure --with-boot-jdk="${BOOT_JDK}"
make store-source-revision
popd
rm -rf build
# Remove commit checks
echo "Removing $(find "${VERSION}" -name '.jcheck' -print)"
find "${VERSION}" -name '.jcheck' -print0 | xargs -0 rm -r
# Remove history and GHA
echo "find ${VERSION} -name '.hgtags'"
find "${VERSION}" -name '.hgtags' -exec rm -v '{}' '+'
echo "find ${VERSION} -name '.hgignore'"
find "${VERSION}" -name '.hgignore' -exec rm -v '{}' '+'
echo "find ${VERSION} -name '.gitattributes'"
find "${VERSION}" -name '.gitattributes' -exec rm -v '{}' '+'
echo "find ${VERSION} -name '.gitignore'"
find "${VERSION}" -name '.gitignore' -exec rm -v '{}' '+'
# Work around some Git objects not having write permissions.
echo "chmod --recursive u+w ${VERSION}/.git"
chmod --recursive u+w "${VERSION}"/.git
echo "find ${VERSION} -name '.git'"
find "${VERSION}" -name '.git' -exec rm -rv '{}' '+'
echo "find ${VERSION} -name '.github'"
find "${VERSION}" -name '.github' -exec rm -rv '{}' '+'
echo "Compressing remaining forest"
if [ "$COMPRESSION" = "xz" ] ; then
SWITCH=cJf
else
SWITCH=czf
fi
TARBALL_NAME=${FILE_NAME_ROOT}.tar.${COMPRESSION}
XZ_OPT=${XZ_OPT-"-T0"} \
tar --mtime="${TAR_TIME}" --owner=root --group=root --sort=name \
--exclude-vcs -$SWITCH "${TARBALL_NAME}" "${TO_COMPRESS}"
mv "${TARBALL_NAME}" ..
popd
if [ "$WITH_TEMP" != "" ] ; then
echo "Tarball is: $(realpath .)/${TARBALL_NAME}"
popd
else
echo -n "Done. You may want to remove the uncompressed version"
echo " - $FILE_NAME_ROOT"
fi
# Local Variables:
# compile-command: "shellcheck generate_source_tarball.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

172
scripts/get_bundle_versions.sh Executable file
View File

@ -0,0 +1,172 @@
#!/usr/bin/env sh
# Copyright (C) 2025 Red Hat, Inc.
# Original written by Antonio Vieiro <avieirov@redhat.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
if [ $# -ne 1 ]; then
echo "Usage: $0 openjdk-root-directory"
exit 1
fi
JDKROOT=$1
if [ ! -d "${JDKROOT}" ] ; then
echo "${JDKROOT} is not a directory.";
exit 2
fi
# Work out the OpenJDK version
# OpenJDK >= 10 has its version in the build machinery
# OpenJDK >= 17 stores it in a new location (JDK-8258246)
VERSION_FILE="${JDKROOT}"/make/conf/version-numbers.conf
printf "Checking for %s..." "${VERSION_FILE}";
if [ ! -f "${VERSION_FILE}" ] ; then
VERSION_FILE="${JDKROOT}"/make/autoconf/version-numbers
echo "Not found; using old version file ${VERSION_FILE}";
else
echo "found.";
fi
if [ -e "${VERSION_FILE}" ] ; then
openjdk_version=$(grep '^DEFAULT_VERSION_FEATURE' "${VERSION_FILE}" | cut -d '=' -f 2)
elif [ -e "${JDKROOT}"/jdk/src/java.base/share/classes/java/lang/Object.java ] ; then
openjdk_version=9;
elif [ -e "${JDKROOT}"/common/autoconf ] ; then
openjdk_version=8;
else
openjdk_version=7;
fi
echo "OpenJDK version: ${openjdk_version}";
#
# Freetype
#
if [ "${openjdk_version}" -gt 8 ] ; then
FREETYPE=src/java.desktop/share/native/libfreetype/include/freetype/freetype.h
ABS_FREETYPE="${JDKROOT}"/"${FREETYPE}"
if [ ! -f "${ABS_FREETYPE}" ]; then
echo "Freetype header not found!"
exit 2
fi
FREETYPE_VERSION=$(awk '/#define FREETYPE_MAJOR/ {MAJOR=$3} /#define FREETYPE_MINOR/ {MINOR=$3} /#define FREETYPE_PATCH/ {PATCH=$3} END {printf "%s.%s.%s", MAJOR, MINOR, PATCH}' "${ABS_FREETYPE}")
else
echo "No bundled FreeType on ${openjdk_version}";
fi
# giflib
if [ "${openjdk_version}" -gt 8 ] ; then
GIFLIB=src/java.desktop/share/native/libsplashscreen/giflib/gif_lib.h
else
GIFLIB=jdk/src/share/native/sun/awt/giflib/gif_lib.h
fi
ABS_GIFLIB="${JDKROOT}"/"${GIFLIB}"
if [ ! -f "${ABS_GIFLIB}" ]; then
echo "giflib header not found!"
exit 3
fi
GIFLIB_VERSION=$(awk '/#define GIFLIB_MAJOR/ {MAJOR=$3} /#define GIFLIB_MINOR/ {MINOR=$3} /#define GIFLIB_RELEASE/ {PATCH=$3} END {printf "%s.%s.%s", MAJOR, MINOR, PATCH}' "${ABS_GIFLIB}")
# harfbuzz
if [ "${openjdk_version}" -gt 8 ] ; then
HARFBUZZ=src/java.desktop/share/native/libharfbuzz/hb-version.h
ABS_HARFBUZZ="${JDKROOT}/${HARFBUZZ}"
if [ ! -f "${ABS_HARFBUZZ}" ]; then
echo "HarfBuzz header not found!"
exit 4
fi
HARFBUZZ_VERSION=$(awk '/#define HB_VERSION_MAJOR/ {MAJOR=$3} /#define HB_VERSION_MINOR/ {MINOR=$3} /#define HB_VERSION_MICRO/ {PATCH=$3} END {printf "%s.%s.%s", MAJOR, MINOR, PATCH}' "${ABS_HARFBUZZ}")
else
echo "No HarfBuzz on ${openjdk_version}";
fi
# lcms
if [ "${openjdk_version}" -gt 8 ] ; then
LCMS=src/java.desktop/share/native/liblcms/lcms2.h
else
LCMS=jdk/src/share/native/sun/java2d/cmm/lcms/lcms2.h
fi
ABS_LCMS="${JDKROOT}"/"${LCMS}"
if [ ! -f "${ABS_LCMS}" ]; then
echo "lcms header not found!"
exit 5
fi
LCMS_VERSION=$(awk '/#define LCMS_VERSION/ { MAJOR=int($3 / 1000); REST=$3 % 1000; MINOR=int(REST / 10); PATCH=REST % 10; } END {printf "%s.%s.%s", MAJOR, MINOR, PATCH}' "${ABS_LCMS}")
# jpeg
if [ "${openjdk_version}" -gt 8 ] ; then
JPEG=src/java.desktop/share/native/libjavajpeg/jpeglib.h
else
JPEG=jdk/src/share/native/sun/awt/image/jpeg/jpeglib.h
fi
ABS_JPEG="${JDKROOT}"/"${JPEG}"
if [ ! -f "${ABS_JPEG}" ]; then
echo "jpeg header not found!"
exit 6
fi
JPEG_VERSION=$(awk '/#define JPEG_LIB_VERSION/ { VERSION=$3; MAJOR=int(VERSION / 10); MINOR=VERSION%10; } END {printf "%s%c", MAJOR, (MINOR+96)}' "${ABS_JPEG}")
# png
if [ "${openjdk_version}" -gt 8 ] ; then
PNG=src/java.desktop/share/native/libsplashscreen/libpng/png.h
else
PNG=jdk/src/share/native/sun/awt/libpng/png.h
fi
ABS_PNG="${JDKROOT}"/"${PNG}"
if [ ! -f "${ABS_PNG}" ]; then
echo "png header not found!"
exit 7
fi
PNG_VERSION=$(awk '/#define PNG_LIBPNG_VER_STRING/ { VERSION=$3; gsub("\"", "", VERSION) } END {print VERSION}' "${ABS_PNG}")
# zlib
if [ "${openjdk_version}" -gt 8 ] ; then
ZLIB=src/java.base/share/native/libzip/zlib/zlib.h
else
ZLIB=jdk/src/share/native/java/util/zip/zlib/zlib.h
fi
ABS_ZLIB="${JDKROOT}"/"${ZLIB}"
if [ ! -f "${ABS_ZLIB}" ]; then
echo "zlib header not found!"
exit 8
fi
ZLIB_VERSION=$(awk '/#define ZLIB_VERSION/ { VERSION=$3; gsub("\"", "", VERSION) } END {print VERSION}' "${ABS_ZLIB}")
# Print output
printf "\nRPM definitions:\n"
if [ "${openjdk_version}" -gt 8 ] ; then
echo "# Version in ${FREETYPE}"
echo "Provides: bundled(freetype) = ${FREETYPE_VERSION}"
fi
echo "# Version in ${GIFLIB}"
echo "Provides: bundled(giflib) = ${GIFLIB_VERSION}"
if [ "${openjdk_version}" -gt 8 ] ; then
echo "# Version in ${HARFBUZZ}"
echo "Provides: bundled(harfbuzz) = ${HARFBUZZ_VERSION}"
fi
echo "# Version in ${LCMS}"
echo "Provides: bundled(lcms2) = ${LCMS_VERSION}"
echo "# Version in ${JPEG}"
echo "Provides: bundled(libjpeg) = ${JPEG_VERSION}"
echo "# Version in ${PNG}"
echo "Provides: bundled(libpng) = ${PNG_VERSION}"
echo "# Version in ${ZLIB}"
echo "Provides: bundled(zlib) = ${ZLIB_VERSION}"
# Local Variables:
# compile-command: "shellcheck get_bundle_versions.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

201
scripts/icedtea_sync.sh Executable file
View File

@ -0,0 +1,201 @@
#!/bin/bash
# Copyright (C) 2024 Red Hat, Inc.
# Written by Andrew John Hughes <gnu.andrew@redhat.com>.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
ICEDTEA_USE_VCS=false
ICEDTEA_VERSION=3.15.0
ICEDTEA_URL=https://icedtea.classpath.org/download/source
ICEDTEA_SIGNING_KEY=CFDA0F9B35964222
ICEDTEA_HG_URL=https://icedtea.classpath.org/hg/icedtea8
set -e
RPM_DIR=${PWD}
if [ ! -f "${RPM_DIR}/jconsole.desktop.in" ] ; then
echo "Not in RPM source tree.";
exit 1;
fi
if test "${TMPDIR}" = ""; then
TMPDIR=/tmp;
fi
WORKDIR=${TMPDIR}/it.sync
echo "Using working directory ${WORKDIR}"
mkdir "${WORKDIR}"
pushd "${WORKDIR}"
if test "${WGET}" = ""; then
WGET=$(which wget);
if test "${WGET}" = ""; then
echo "wget not found";
exit 1;
fi
fi
if test "${TAR}" = ""; then
TAR=$(which tar)
if test "${TAR}" = ""; then
echo "tar not found";
exit 2;
fi
fi
echo "Dependencies:";
echo -e "\tWGET: ${WGET}";
echo -e "\tTAR: ${TAR}\n";
if test "${ICEDTEA_USE_VCS}" = "true"; then
echo "Mode: Using VCS";
if test "${GREP}" = ""; then
GREP=$(which grep);
if test "${GREP}" = ""; then
echo "grep not found";
exit 3;
fi
fi
if test "${CUT}" = ""; then
CUT=$(which cut);
if test "${CUT}" = ""; then
echo "cut not found";
exit 4;
fi
fi
if test "${TR}" = ""; then
TR=$(which tr);
if test "${TR}" = ""; then
echo "tr not found";
exit 5;
fi
fi
if test "${HG}" = ""; then
HG=$(which hg);
if test "${HG}" = ""; then
echo "hg not found";
exit 6;
fi
fi
echo "Dependencies:";
echo -e "\tGREP: ${GREP}";
echo -e "\tCUT: ${CUT}";
echo -e "\tTR: ${TR}";
echo -e "\tHG: ${HG}";
echo "Checking out repository from VCS...";
${HG} clone ${ICEDTEA_HG_URL} icedtea
echo "Obtaining version from configure.ac...";
ROOT_VER=$(${GREP} '^AC_INIT' icedtea/configure.ac|${CUT} -d ',' -f 2|${TR} -d '[][:space:]')
echo "Root version from configure: ${ROOT_VER}";
VCS_REV=$(${HG} log -R icedtea --template '{node|short}' -r tip)
echo "VCS revision: ${VCS_REV}";
ICEDTEA_VERSION="${ROOT_VER}-${VCS_REV}"
echo "Creating icedtea-${ICEDTEA_VERSION}";
mkdir "icedtea-${ICEDTEA_VERSION}"
echo "Copying required files from checkout to icedtea-${ICEDTEA_VERSION}";
# Commented out for now as IcedTea 6's jconsole.desktop.in is outdated
#cp -a icedtea/jconsole.desktop.in ../icedtea-${ICEDTEA_VERSION}
cp -a "${RPM_DIR}/jconsole.desktop.in" "icedtea-${ICEDTEA_VERSION}"
cp -a icedtea/tapset "icedtea-${ICEDTEA_VERSION}"
rm -rf icedtea
else
echo "Mode: Using tarball";
if test "${ICEDTEA_VERSION}" = ""; then
echo "No IcedTea version specified for tarball download.";
exit 3;
fi
if test "${CHECKSUM}" = ""; then
CHECKSUM=$(which sha256sum)
if test "${CHECKSUM}" = ""; then
echo "sha256sum not found";
exit 4;
fi
fi
if test "${PGP}" = ""; then
PGP=$(which gpg)
if test "${PGP}" = ""; then
echo "gpg not found";
exit 5;
fi
fi
echo "Dependencies:";
echo -e "\tCHECKSUM: ${CHECKSUM}";
echo -e "\tPGP: ${PGP}\n";
echo "Checking for IcedTea signing key ${ICEDTEA_SIGNING_KEY}...";
if ! gpg --list-keys ${ICEDTEA_SIGNING_KEY}; then
echo "IcedTea signing key ${ICEDTEA_SIGNING_KEY} not installed.";
exit 6;
fi
echo "Downloading IcedTea release tarball...";
${WGET} -v ${ICEDTEA_URL}/icedtea-${ICEDTEA_VERSION}.tar.xz
echo "Downloading IcedTea tarball signature...";
${WGET} -v ${ICEDTEA_URL}/icedtea-${ICEDTEA_VERSION}.tar.xz.sig
echo "Downloading IcedTea tarball checksums...";
${WGET} -v ${ICEDTEA_URL}/icedtea-${ICEDTEA_VERSION}.sha256
echo "Verifying checksums...";
${CHECKSUM} --check --ignore-missing icedtea-${ICEDTEA_VERSION}.sha256
echo "Checking signature...";
${PGP} --verify icedtea-${ICEDTEA_VERSION}.tar.xz.sig
echo "Extracting files...";
${TAR} xJf icedtea-${ICEDTEA_VERSION}.tar.xz \
icedtea-${ICEDTEA_VERSION}/tapset \
icedtea-${ICEDTEA_VERSION}/jconsole.desktop.in \
icedtea-${ICEDTEA_VERSION}/policytool.desktop.in
rm -vf icedtea-${ICEDTEA_VERSION}.tar.xz
rm -vf icedtea-${ICEDTEA_VERSION}.tar.xz.sig
rm -vf icedtea-${ICEDTEA_VERSION}.sha256
fi
echo "Replacing desktop files...";
mv -v "icedtea-${ICEDTEA_VERSION}/jconsole.desktop.in" "${RPM_DIR}"
mv -v "icedtea-${ICEDTEA_VERSION}/policytool.desktop.in" "${RPM_DIR}"
echo "Creating new tapset tarball...";
mv -v "icedtea-${ICEDTEA_VERSION}" openjdk
${TAR} cJf "${RPM_DIR}/tapsets-icedtea-${ICEDTEA_VERSION}.tar.xz" openjdk
rm -rvf openjdk
popd
rm -rf "${WORKDIR}"
# Local Variables:
# compile-command: "shellcheck icedtea_sync.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

View File

@ -0,0 +1,31 @@
diff --git openjdk.orig/jdk/src/share/demo/scripting/jconsole-plugin/README.txt openjdk/jdk/src/share/demo/scripting/jconsole-plugin/README.txt
--- openjdk.orig/jdk/src/share/demo/scripting/jconsole-plugin/README.txt
+++ openjdk/jdk/src/share/demo/scripting/jconsole-plugin/README.txt
@@ -18,11 +18,9 @@
engine javax.script.ScriptEngine
plugin com.sun.tools.jconsole.JConsolePlugin
-If you use JavaScript, there are many useful global functions defined in
-./src/resources/jconsole.js. This is built into the script plugin jar file.
-In addition, you can add other global functions and global variables by
-defining those in ~/jconsole.js (or jconsole.<ext> where <ext> is the file
-extension for your scripting language of choice under your home directory).
+You can add global functions and global variables by defining those in
+~/jconsole.js (or jconsole.<ext> where <ext> is the file extension for
+your scripting language of choice under your home directory).
How do I compile script console plugin?
diff --git openjdk.orig/jdk/src/share/demo/scripting/jconsole-plugin/build.xml openjdk/jdk/src/share/demo/scripting/jconsole-plugin/build.xml
--- openjdk.orig/jdk/src/share/demo/scripting/jconsole-plugin/build.xml
+++ openjdk/jdk/src/share/demo/scripting/jconsole-plugin/build.xml
@@ -73,9 +73,6 @@
<copy todir="${classes.dir}/META-INF/services">
<fileset dir="${src.dir}/META-INF/services"/>
</copy>
- <copy todir="${resources.dir}">
- <fileset dir="${src.dir}/resources"/>
- </copy>
</target>
<target name="all" depends="compile" description="buile deployment bundle">

114
scripts/openjdk_news.sh Executable file
View File

@ -0,0 +1,114 @@
#!/bin/bash
# Copyright (C) 2024 Red Hat, Inc.
# Written by Andrew John Hughes <gnu.andrew@redhat.com>, 2012-2022
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
OLD_RELEASE=$1
NEW_RELEASE=$2
REPO=$3
SUBDIR=$4
SCRIPT_DIR=$(dirname "${0}")
if test "${SUBDIR}" = ""; then
echo "No subdirectory specified; using .";
SUBDIR=".";
fi
if test "$REPO" = ""; then
echo "No repository specified; using ${PWD}"
REPO=${PWD}
fi
if test "${TMPDIR}" = ""; then
TMPDIR=/tmp;
fi
echo "Repository: ${REPO}"
if [ -e "${REPO}/.git" ] ; then
TYPE=git;
elif [ -e "${REPO}/.hg" ] ; then
TYPE=hg;
else
echo "No Mercurial or Git repository detected.";
exit 1;
fi
if test "$OLD_RELEASE" = "" || test "$NEW_RELEASE" = ""; then
echo "ERROR: Need to specify old and new release";
exit 2;
fi
echo "Listing fixes between $OLD_RELEASE and $NEW_RELEASE in $REPO"
rm -f "${TMPDIR}/fixes2" "${TMPDIR}/fixes3" "${TMPDIR}/fixes"
for repos in . $("${SCRIPT_DIR}/discover_trees.sh" "${REPO}");
do
if test "$TYPE" = "hg"; then
hg log -r "tag('$NEW_RELEASE'):tag('$OLD_RELEASE') - tag('$OLD_RELEASE')" -R "$REPO/$repos" -G -M "${REPO}/${SUBDIR}" | \
grep -E '^[o:| ]*summary'|grep -v 'Added tag'|sed -r 's#^[o:| ]*summary:\W*([0-9])# - JDK-\1#'| \
sed 's#^[o:| ]*summary:\W*# - #' >> "${TMPDIR}/fixes2";
hg log -v -r "tag('$NEW_RELEASE'):tag('$OLD_RELEASE') - tag('$OLD_RELEASE')" -R "$REPO/$repos" -G -M "${REPO}/${SUBDIR}" | \
grep -E '^[o:| ]*[0-9]{7}'|sed -r 's#^[o:| ]*([0-9]{7})# - JDK-\1#' >> "${TMPDIR}/fixes3";
else
git -C "${REPO}" log --no-merges --pretty=format:%B "${NEW_RELEASE}...${OLD_RELEASE}" -- "${SUBDIR}" |grep -E '^[0-9]{7}' | \
sed -r 's#^([0-9])# - JDK-\1#' >> "${TMPDIR}/fixes2";
touch "${TMPDIR}/fixes3" ; # unused
fi
done
sort "${TMPDIR}/fixes2" "${TMPDIR}/fixes3" > "${TMPDIR}/fixes4"
uniq "${TMPDIR}/fixes4" > "${TMPDIR}/fixes"
rm -f "${TMPDIR}/fixes2" "${TMPDIR}/fixes3"
if ! [ -s "${TMPDIR}/fixes" ] ; then
echo "Failed to obtain fixes.";
exit 3;
fi
echo "In ${TMPDIR}/fixes:"
cat "${TMPDIR}/fixes"
printf "\nChecking for duplicates...";
if uniq -d "${TMPDIR}/fixes4" | grep 'JDK' > "${TMPDIR}/dupes"; then
printf "found.\nWARNING: Review the following duplicates:\n";
cat "${TMPDIR}/dupes";
else
echo "No apparent duplicates.";
fi
rm -f "${TMPDIR}/fixes4";
printf "\nChecking for backouts...";
if grep -i 'backout' "${TMPDIR}/fixes" > "${TMPDIR}/backouts"; then
printf "found.\nWARNING: Review the following backouts:\n"
cat "${TMPDIR}/backouts";
else
echo "No apparent backouts.";
fi
printf "\nChecking for bundled library updates...";
if grep -iE ':( \(tz\))? update.*(freetype|gif|harfbuzz|lcms|jpeg|png|timezone|zlib)' "${TMPDIR}/fixes" > "${TMPDIR}/bundles"; then
printf "found.\nWARNING: Review the following with respect to bundled provides:\n";
cat "${TMPDIR}/bundles";
echo "Compare the output of $(dirname "${0}")/get_bundle_versions.sh with the RPM using the JDK source tree"
else
echo "No apparent library updates.";
fi
# Local Variables:
# compile-command: "shellcheck openjdk_news.sh"
# fill-column: 80
# indent-tabs-mode: nil
# sh-basic-offset: 4
# End:

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (tapsets-icedtea-3.15.0.tar.xz) = c752a197cb3d812d50c35e11e4722772be40096c81d2a57933e0d9b8a3c708b9c157b8108a4e33a06ca7bb81648170994408c75d6f69d5ff12785d0c31009671
SHA512 (shenandoah8u472-b08.tar.xz) = 1aaa201cfe712b125cb24c688b930cccc2ba04977bd2e759da723bd18f81b87b1d93573b876b943a3a2c8e47a7238aff57eb7716b090be19822c365d874fae14

18
tests/tests.yml Normal file
View File

@ -0,0 +1,18 @@
---
- hosts: localhost
roles:
- role: standard-test-source
tags:
- always
- role: standard-test-basic
tags:
- classic
- atomic
required_packages:
- java-1.8.0-openjdk-devel
tests:
- javaVersion1:
dir: ~
run: set -ex; useradd franta1; su franta1 -c 'java -version';
run: set -ex; useradd franta4; su franta4 -c 'javac -version';
run: ls -l /usr/lib/jvm;