Browse Source

Update java bootstrap

master
mid-kid 1 week ago
parent
commit
280e0b6881
  1. 4
      java/build.sh
  2. 2
      java/build_icedtea7.sh
  3. 6
      java/build_icedtea8.sh
  4. 43
      java/build_jdk.sh
  5. 22
      java/download.sh
  6. 14
      java/download.sha256
  7. 17
      java/install_gentoo.txt

4
java/build.sh

@ -21,3 +21,7 @@ test -d build/install-jdk18 || ./build_jdk.sh jdk17 jdk18
test -d build/install-jdk19 || ./build_jdk.sh jdk18 jdk19
test -d build/install-jdk20 || ./build_jdk.sh jdk19 jdk20
test -d build/install-jdk21 || ./build_jdk.sh jdk20 jdk21
test -d build/install-jdk22 || ./build_jdk.sh jdk21 jdk22
test -d build/install-jdk23 || ./build_jdk.sh jdk22 jdk23
test -d build/install-jdk24 || ./build_jdk.sh jdk23 jdk24
test -d build/install-jdk25 || ./build_jdk.sh jdk24 jdk25

2
java/build_icedtea7.sh

@ -57,3 +57,5 @@ make \
DISTRIBUTION_PATCHES=icedtea-2.6.28-fix-includes.patch \
DISTRIBUTION_BOOT_PATCHES=icedtea-2.6.28-fix-bootstrap.patch
make install
find "$dir_install" -name '*.debuginfo' -delete

6
java/build_icedtea8.sh

@ -11,7 +11,7 @@ makeopts_jobs() {
echo ${jobs:-1}
}
version_icedtea8=3.33.0
version_icedtea8=3.37.0
dir_download="$PWD/download"
mkdir -p build; cd build
@ -28,7 +28,7 @@ unset _JAVA_OPTIONS
export PATH="$PWD/../install-icedtea7/bin:$PATH"
# Configure source
CFLAGS='-Wno-error=int-conversion -Wno-error=incompatible-pointer-types' \
CFLAGS='-Wno-error=int-conversion -Wno-error=incompatible-pointer-types -std=gnu17' \
CONFIG_SHELL=/bin/bash ./configure \
--prefix="$dir_install" \
--with-jdk-home="$PWD/../install-icedtea7" \
@ -50,3 +50,5 @@ CONFIG_SHELL=/bin/bash ./configure \
unset MAKEFLAGS
make
make install
find "$dir_install" -name '*.debuginfo' -delete

43
java/build_jdk.sh

@ -11,17 +11,21 @@ makeopts_jobs() {
echo ${jobs:-1}
}
version_jdk21=21.0.6+6
version_jdk25=25.0.3+0
version_jdk24=24.0.2+12
version_jdk23=23.0.2+7
version_jdk22=22.0.2+9
version_jdk21=21.0.10+5
version_jdk20=20.0.2+9
version_jdk19=19.0.2+7
version_jdk18=18.0.2.1+1
version_jdk17=17.0.14+6
version_jdk17=17.0.18+5
version_jdk16=16.0.2+7
version_jdk15=15.0.10+5
version_jdk14=14.0.2+12
version_jdk13=13.0.14+5
version_jdk12=12.0.2+10
version_jdk11=11.0.26+3
version_jdk11=11.0.30+4
version_jdk10=10.0.2+13
version_jdk9=9+181
@ -43,6 +47,7 @@ cd "$srcdir"
chmod +x configure
# Some jdk versions require fixing up things
noinstall=false # TODO: Invert...
CFLAGS=
CXXFLAGS=
case "$version_jdk_major" in
@ -52,7 +57,7 @@ jdk9)
sed -i -e '/^ *COMPILER_VERSION_NUMBER=/{N;s/\[1-9\]/&[0-9]*/}' \
common/autoconf/generated-configure.sh
export MAKE="$PWD/../install-make42/make"
CFLAGS="$CFLAGS -fcommon -Wno-error=int-conversion"
CFLAGS="$CFLAGS -fcommon -Wno-error=int-conversion -std=gnu17"
;;
jdk10)
patch -p1 -i "$dir_files/jdk-10.0.2+13-disarm-timebomb.patch"
@ -60,13 +65,13 @@ jdk10)
sed -i -e '/^ *COMPILER_VERSION_NUMBER=/{N;s/\[1-9\]/&[0-9]*/}' \
make/autoconf/generated-configure.sh
export MAKE="$PWD/../install-make42/make"
CFLAGS="$CFLAGS -fcommon"
CFLAGS="$CFLAGS -fcommon -std=gnu17"
;;
jdk12)
sed -i -e '/^ *COMPILER_VERSION_NUMBER=/{N;s/@<:@1-9@:>@/&@<:@0-9@:>@*/}' \
make/autoconf/toolchain.m4
export MAKE="$PWD/../install-make42/make"
CFLAGS="$CFLAGS -fcommon"
CFLAGS="$CFLAGS -fcommon -std=gnu17"
;;
jdk13)
sed -i -e '/^ *COMPILER_VERSION_NUMBER=/{N;s/@<:@1-9@:>@/&@<:@0-9@:>@*/}' \
@ -74,15 +79,27 @@ jdk13)
CFLAGS="$CFLAGS -fcommon"
;;
jdk14)
## Don't detect WSL
#sed -i -e 's/grep -i microsoft/false/' \
#make/autoconf/build-aux/config.guess
CFLAGS="$CFLAGS -fcommon"
;;
jdk16)
sed -i -e 's/\<prefix\>/fixpath_prefix/g' \
make/autoconf/util_paths.m4
;;
jdk21)
noinstall=true
;;
jdk22)
noinstall=true
;;
jdk23)
noinstall=true
;;
jdk24)
noinstall=true
;;
jdk25)
noinstall=true
;;
esac
unset _JAVA_OPTIONS JAVAC
@ -94,7 +111,7 @@ CONFIG_SHELL=/bin/bash ./configure \
--with-boot-jdk="$PWD/../install-$version_jdk_bootstrap" \
--with-jobs="$(makeopts_jobs)" \
--with-extra-cflags="$CFLAGS -w" \
--with-extra-cxxflags="$CFLAGS -w" \
--with-extra-cxxflags="$CXXFLAGS -w" \
--enable-headless-only \
--disable-full-docs \
--disable-warnings-as-errors
@ -102,4 +119,10 @@ echo "$version_jdk" > .src-rev
# Build and install
unset MAKEFLAGS
if ! $noinstall; then
make install
else
make product-images
cp -rT build/*-release/images/jdk "$dir_install"
fi
find "$dir_install" -name '*.debuginfo' -delete

22
java/download.sh

@ -1,21 +1,25 @@
#!/bin/sh
set -eu
version_jdk21=21.0.6+6 # https://github.com/openjdk/jdk21u/tags
version_jdk25=25.0.3+0 # https://github.com/openjdk/jdk25u/tags
version_jdk24=24.0.2+12 # https://github.com/openjdk/jdk24u/tags
version_jdk23=23.0.2+7 # https://github.com/openjdk/jdk23u/tags
version_jdk22=22.0.2+9 # https://github.com/openjdk/jdk22u/tags
version_jdk21=21.0.10+5 # https://github.com/openjdk/jdk21u/tags
version_jdk20=20.0.2+9 # https://github.com/openjdk/jdk20u/tags
version_jdk19=19.0.2+7 # https://github.com/openjdk/jdk19u/tags
version_jdk18=18.0.2.1+1 # https://github.com/openjdk/jdk18u/tags
version_jdk17=17.0.14+6 # https://github.com/openjdk/jdk17u/tags
version_jdk17=17.0.18+5 # https://github.com/openjdk/jdk17u/tags
version_jdk16=16.0.2+7 # https://github.com/openjdk/jdk16u/tags
version_jdk15=15.0.10+5 # https://github.com/openjdk/jdk15u/tags
version_jdk14=14.0.2+12 # https://github.com/openjdk/jdk14u/tags
version_jdk13=13.0.14+5 # https://github.com/openjdk/jdk13u/tags
version_jdk12=12.0.2+10 # https://github.com/openjdk/jdk12u/tags
version_jdk11=11.0.26+3 # https://github.com/openjdk/jdk11u/tags
version_jdk11=11.0.30+4 # https://github.com/openjdk/jdk11u/tags
version_jdk10=10.0.2+13 # https://github.com/openjdk/jdk10u/tags
version_jdk9=9+181 # https://github.com/openjdk/jdk9u/tags
version_make42=4.2.1 # https://ftp.gnu.org/gnu/make/
version_icedtea8=3.33.0 # https://icedtea.classpath.org/download/source/
version_icedtea8=3.37.0 # https://icedtea.classpath.org/download/source/
version_icedtea7=2.6.28 # https://icedtea.classpath.org/download/source/
version_ant=1.9.16 # https://ant.apache.org/manual-1.9.x/index.html
version_gcc=6.5.0 # Final version
@ -24,6 +28,10 @@ version_ecj=4.9 # Final version
mkdir -p download
cd download
wget -O "jdk25u-jdk-$version_jdk25.tar.gz" -c "https://github.com/openjdk/jdk25u/archive/refs/tags/jdk-$version_jdk25.tar.gz"
wget -O "jdk24u-jdk-$version_jdk24.tar.gz" -c "https://github.com/openjdk/jdk24u/archive/refs/tags/jdk-$version_jdk24.tar.gz"
wget -O "jdk23u-jdk-$version_jdk23.tar.gz" -c "https://github.com/openjdk/jdk23u/archive/refs/tags/jdk-$version_jdk23.tar.gz"
wget -O "jdk22u-jdk-$version_jdk22.tar.gz" -c "https://github.com/openjdk/jdk22u/archive/refs/tags/jdk-$version_jdk22.tar.gz"
wget -O "jdk21u-jdk-$version_jdk21.tar.gz" -c "https://github.com/openjdk/jdk21u/archive/refs/tags/jdk-$version_jdk21.tar.gz"
wget -O "jdk20u-jdk-$version_jdk20.tar.gz" -c "https://github.com/openjdk/jdk20u/archive/refs/tags/jdk-$version_jdk20.tar.gz"
wget -O "jdk19u-jdk-$version_jdk19.tar.gz" -c "https://github.com/openjdk/jdk19u/archive/refs/tags/jdk-$version_jdk19.tar.gz"
@ -45,11 +53,11 @@ wget -c "https://ftp.gnu.org/gnu/gcc/gcc-$version_gcc/gcc-$version_gcc.tar.xz"
wget -c "ftp://sourceware.org/pub/java/ecj-$version_ecj.jar"
wget -O javac.in -c 'https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-java/gcj-jdk/files/javac.in?id=56bd759df1d0c750a065b8c845e93d5dfa6b549d'
for part in corba hotspot jaxp jaxws jdk langtools openjdk; do
wget -O "icedtea-$version_icedtea7-$part.tar.bz2" -c "http://icedtea.classpath.org/download/drops/icedtea7/$version_icedtea7/$part.tar.bz2"
done
for part in openjdk-git; do
wget -O "icedtea-$version_icedtea8-$part.tar.xz" -c "http://icedtea.classpath.org/download/drops/icedtea8/$version_icedtea8/$part.tar.xz"
done
for part in corba hotspot jaxp jaxws jdk langtools openjdk; do
wget -O "icedtea-$version_icedtea7-$part.tar.bz2" -c "http://icedtea.classpath.org/download/drops/icedtea7/$version_icedtea7/$part.tar.bz2"
done
sha256sum -c ../download.sha256

14
java/download.sha256

@ -9,20 +9,24 @@ fd93e65a4692593c2100963be2c75d697a32ba51ee2c02c7e7dccc524dfb1788 icedtea-2.6.28
24799d5ebebfb1e316f9434db1db5a360ac7c86e5783ce58693536f978a0aa47 icedtea-2.6.28-langtools.tar.bz2
78e5e89fc510280401e227d980abe30d49ea508c3eec537035481fd21a3b2c32 icedtea-2.6.28-openjdk.tar.bz2
951188e6c0e3599de22f5cb2d95b5da9bf480763b5c8c600dae9fec88cff1735 icedtea-2.6.28.tar.xz
bb2cd8a2c5bbe08d232693c77ea6efa5542c7178f05e8f7cd82eec9be2980d5b icedtea-3.33.0-openjdk-git.tar.xz
44975cd55e90b6ee7ff6b7b4de05b716a95f6a6ec54a57b1a3b88f5a9ab8b45e icedtea-3.33.0.tar.xz
1fce7d19b7f46f92dde19a8d5a5e0359ccfeeb6c6e4bc43091f13dfce6536806 icedtea-3.37.0-openjdk-git.tar.xz
e51e2f4914f459dec6e78f753edf8abb671d8b71466842f7efca94b220da8000 icedtea-3.37.0.tar.xz
3bb23cff0a6e5a7a820e19cce4b9b0f51a7b84ee9e0eeb048b463a5f3e996db0 javac.in
39ce1238d5b2066ffe1c1a09d87c170766309fe18290f27a4ab7d15844d34dc1 jdk10u-jdk-10.0.2+13.tar.gz
3d1818a29d9c1125c81b019cb9df9803d696544d5c1b23e6c7b132b2fa90fd5e jdk11u-jdk-11.0.26+3.tar.gz
dd7d6920bd456d8f1b34b5a5eace2b8ebade3584c091fb04efc359945d6ccccd jdk11u-jdk-11.0.30+4.tar.gz
8494fa3a6ffef590c86b403379422f325101bc86607557cb27c6774d59710b84 jdk12u-jdk-12.0.2+10.tar.gz
4c8e88490ed30276ea0145d37f33e094fcf436ce528bab29f6a9a3546820faf4 jdk13u-jdk-13.0.14+5.tar.gz
582e3d805ab74582332250f95f9845608c8f3d3273aa92af6f683c45d1a4f8e8 jdk14u-jdk-14.0.2+12.tar.gz
7aaeab4a68471e630d91eaf5540d067c8ffd5f023031be082b889763c1f94f3a jdk15u-jdk-15.0.10+5.tar.gz
b4a0e71e41a11175e8a7c1dba86ed5b0aa878413158c8d48813db1b64ac9536c jdk16u-jdk-16.0.2+7.tar.gz
cfc8ce80723ebb38b03352276f433809b19e5e1f3c776fda3ea5d7c779dbe1b4 jdk17u-jdk-17.0.14+6.tar.gz
6a4258468eda101ca78b1f9c2e55564ca54fa4d83d1e9ac884db1629114680b9 jdk17u-jdk-17.0.18+5.tar.gz
7d026848a48e8777d3242bab2adf30122f0acda88abbd3f92636f8793eaf3455 jdk18u-jdk-18.0.2.1+1.tar.gz
5903efd527dd08e9c235c8822e3d5699c3d18a8618c3e533307e8d6491ffbbf0 jdk19u-jdk-19.0.2+7.tar.gz
4d6f176075d5f2ce62fd16ebd5cc4c27a3e551ce4d3d3bc0e9946454e52fc88d jdk20u-jdk-20.0.2+9.tar.gz
7b4142594fbb9b3ce92b9134d0d4a6b86fe74ae4998dbfcbc822207459751d03 jdk21u-jdk-21.0.6+6.tar.gz
8d8a833db4e052033d6ce515568648c9bf1c55185382a051c30b5ff9f40cc652 jdk21u-jdk-21.0.10+5.tar.gz
f3bc990ed34dd0c9a1467640a9c654df4375ff948e854038b913abec12be6179 jdk22u-jdk-22.0.2+9.tar.gz
a5072191906781fc9b6d70e335ae8d23f008739ce58372b0198025b4ba2fbec6 jdk23u-jdk-23.0.2+7.tar.gz
947087e85c4222f25e1b9a707cea89b04c00a0a9eb79ded489f0bab92ea42beb jdk24u-jdk-24.0.2+12.tar.gz
e571ba045ef06ca7e5cc7c6539509dd04012fdaad258c4466744600409845f34 jdk25u-jdk-25.0.3+0.tar.gz
a80c59433d394b241ebcd36968ec6ff017fab3fdf3700a459a5b59e978dab396 jdk9u-jdk-9+181.tar.gz
d6e262bf3601b42d2b1e4ef8310029e1dcf20083c5446b4b7aa67081fdffc589 make-4.2.1.tar.bz2

17
java/install_gentoo.txt

@ -3,25 +3,32 @@
sudo rsync -rvP build/install-icedtea8/ /opt/icedtea8
sudo mkdir -p /var/db/pkg/dev-java/openjdk-bin-8
echo 8 | sudo tee /var/db/pkg/dev-java/openjdk-bin-8/SLOT > /dev/null
sudo JDK_HOME=/opt/icedtea8 emerge dev-java/openjdk:8
sudo JDK_HOME=/opt/icedtea8 emerge --usepkg=n dev-java/openjdk:8
sudo rm -rf /opt/icedtea8 /var/db/pkg/dev-java/openjdk-bin-8
sudo rsync -rvP build/install-jdk11/ /opt/jdk11
sudo mkdir -p /var/db/pkg/dev-java/openjdk-bin-11
echo 11 | sudo tee /var/db/pkg/dev-java/openjdk-bin-11/SLOT > /dev/null
sudo JDK_HOME="$(echo /opt/jdk11/jvm/*/)" emerge dev-java/openjdk:11
sudo JDK_HOME="$(echo /opt/jdk11/jvm/*/)" emerge --usepkg=n dev-java/openjdk:11
sudo rm -rf /opt/jdk11 /var/db/pkg/dev-java/openjdk-bin-11
sudo rsync -rvP build/install-jdk17/ /opt/jdk17
sudo mkdir -p /var/db/pkg/dev-java/openjdk-bin-17
echo 17 | sudo tee /var/db/pkg/dev-java/openjdk-bin-17/SLOT > /dev/null
sudo ln -s /opt/jdk17/jvm/*/ /opt/openjdk-bin-17
sudo emerge dev-java/openjdk:17
sudo emerge --usepkg=n dev-java/openjdk:17
sudo rm -rf /opt/jdk17 /opt/openjdk-bin-17 /var/db/pkg/dev-java/openjdk-bin-17
sudo rsync -rvP build/install-jdk21/ /opt/jdk21
sudo mkdir -p /var/db/pkg/dev-java/openjdk-bin-21
echo 21 | sudo tee /var/db/pkg/dev-java/openjdk-bin-21/SLOT > /dev/null
sudo ln -s /opt/jdk21/jvm/*/ /opt/openjdk-bin-21
sudo emerge dev-java/openjdk:21
sudo ln -s /opt/jdk21/ /opt/openjdk-bin-21
sudo emerge --usepkg=n dev-java/openjdk:21
sudo rm -rf /opt/jdk21 /opt/openjdk-bin-21 /var/db/pkg/dev-java/openjdk-bin-21
sudo rsync -rvP build/install-jdk25/ /opt/jdk25
sudo mkdir -p /var/db/pkg/dev-java/openjdk-bin-25
echo 25 | sudo tee /var/db/pkg/dev-java/openjdk-bin-25/SLOT > /dev/null
sudo ln -s /opt/jdk25/ /opt/openjdk-bin-25
sudo emerge --usepkg=n dev-java/openjdk:25
sudo rm -rf /opt/jdk25 /opt/openjdk-bin-25 /var/db/pkg/dev-java/openjdk-bin-25

Loading…
Cancel
Save