17 changed files with 333 additions and 69 deletions
			
			
		
								
									Binary file not shown.
								
							
						
					@ -0,0 +1,57 @@ | 
				
			|||||
 | 
					#!/usr/bin/perl -w | 
				
			||||
 | 
					use strict; | 
				
			||||
 | 
					use constant NO_DUP_ARGS => qw(-source -target -d -encoding); | 
				
			||||
 | 
					use constant STRIP_ARGS => qw(-Werror -implicit:none -J-Xbootclasspath/p:); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					my $ECJ_WARNINGS="-nowarn"; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					my ( @bcoption, @source15, @target15, @cp ); | 
				
			||||
 | 
					push @bcoption, '-bootclasspath', '@RT_JAR@:@TOOLS_JAR@' | 
				
			||||
 | 
					    unless grep {$_ eq '-bootclasspath'} @ARGV; | 
				
			||||
 | 
					push @source15, '-source', '1.5' | 
				
			||||
 | 
					    unless grep {$_ eq '-source'} @ARGV; | 
				
			||||
 | 
					push @target15, '-target', '1.5' | 
				
			||||
 | 
					    unless grep {$_ eq '-target'} @ARGV;   | 
				
			||||
 | 
					push @cp, '-cp', '.' | 
				
			||||
 | 
					    unless grep {$_ =~ '\-c(p|lasspath)'} @ARGV or $ENV{CLASSPATH}; | 
				
			||||
 | 
					my @ecj_parms = ($ECJ_WARNINGS, @bcoption, @source15, @target15, @cp); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					# Work around ecj's inability to handle duplicate command-line | 
				
			||||
 | 
					# options and unknown javac options. | 
				
			||||
 | 
					sub gen_ecj_opts | 
				
			||||
 | 
					{ | 
				
			||||
 | 
					    my @new_args = @{$_[0]}; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    for my $opt (NO_DUP_ARGS)  | 
				
			||||
 | 
					    { | 
				
			||||
 | 
						my @indices = reverse grep {$new_args[$_] eq $opt} 0..$#new_args; | 
				
			||||
 | 
						if (@indices > 1) { | 
				
			||||
 | 
						    shift @indices;    # keep last instance only | 
				
			||||
 | 
						    splice @new_args, $_, 2 for @indices; | 
				
			||||
 | 
						} | 
				
			||||
 | 
					    } | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    for my $opt (STRIP_ARGS)  | 
				
			||||
 | 
					    { | 
				
			||||
 | 
						my @indices = reverse grep {$new_args[$_] eq $opt} 0..$#new_args; | 
				
			||||
 | 
						splice @new_args, $_, 1 for @indices; | 
				
			||||
 | 
					    } | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    return \@new_args; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					sub split_vm_args | 
				
			||||
 | 
					{ | 
				
			||||
 | 
					    my @new_args = @{$_[0]}; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    my @vm_args = map { substr $_, 2 } grep $_ =~ /^-J/, @new_args; | 
				
			||||
 | 
					    my @javac_args = grep $_ !~ /^-J/, @new_args; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    return (\@vm_args, \@javac_args); | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					my ($vm_args, $javac_args) = split_vm_args (gen_ecj_opts( \@ARGV )); | 
				
			||||
 | 
					my @CLASSPATH = ('@ECJ_JAR@'); | 
				
			||||
 | 
					push @CLASSPATH, split /:/, $ENV{"CLASSPATH"} if exists $ENV{"CLASSPATH"}; | 
				
			||||
 | 
					$ENV{"CLASSPATH"} = join ':', @CLASSPATH; | 
				
			||||
 | 
					exec '@JAVA@', @$vm_args, 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @$javac_args; | 
				
			||||
@ -0,0 +1,21 @@ | 
				
			|||||
 | 
					#!/bin/sh | 
				
			||||
 | 
					set -eu | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					version_make42=4.2.1 | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					dir_download="$PWD/download" | 
				
			||||
 | 
					mkdir -p build; cd build | 
				
			||||
 | 
					dir_install="$PWD/install-make42" | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					# Prepare source | 
				
			||||
 | 
					tar xf "$dir_download/make-$version_make42.tar.bz2" | 
				
			||||
 | 
					cd "make-$version_make42" | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					# Configure source | 
				
			||||
 | 
					CFLAGS="-D__alloca=alloca -D__stat=stat" \ | 
				
			||||
 | 
					./configure \ | 
				
			||||
 | 
					    --prefix="$dir_install" | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					# Build and install | 
				
			||||
 | 
					make | 
				
			||||
 | 
					install -Dm755 make "$dir_install/make" | 
				
			||||
@ -1,33 +1,47 @@ | 
				
			|||||
#!/bin/sh | 
					#!/bin/sh | 
				
			||||
set -eu | 
					set -eu | 
				
			||||
 | 
					
 | 
				
			||||
version_jdk11=11.0.9.1+1  # https://hg.openjdk.java.net/jdk-updates/jdk11u/tags | 
					version_jdk17=17.0.1+12  # https://github.com/openjdk/jdk17u/tags | 
				
			||||
 | 
					version_jdk16=16.0.2+7  # https://github.com/openjdk/jdk16u/tags | 
				
			||||
 | 
					version_jdk15=15.0.3+3  # https://hg.openjdk.java.net/jdk-updates/jdk15u/tags | 
				
			||||
 | 
					version_jdk14=14.0.2+12  # https://hg.openjdk.java.net/jdk-updates/jdk14u/tags | 
				
			||||
 | 
					version_jdk13=13.0.5.1+1  # https://hg.openjdk.java.net/jdk-updates/jdk13u/tags | 
				
			||||
 | 
					version_jdk12=12.0.2+10  # https://hg.openjdk.java.net/jdk-updates/jdk12u/tags | 
				
			||||
 | 
					version_jdk11=11.0.12+7  # https://hg.openjdk.java.net/jdk-updates/jdk11u/tags | 
				
			||||
version_jdk10=10.0.2+13  # https://hg.openjdk.java.net/jdk-updates/jdk10u/tags | 
					version_jdk10=10.0.2+13  # https://hg.openjdk.java.net/jdk-updates/jdk10u/tags | 
				
			||||
version_jdk9=9+181  # https://hg.openjdk.java.net/jdk/jdk/tags | 
					version_jdk9=9+181  # https://hg.openjdk.java.net/jdk/jdk/tags | 
				
			||||
version_icedtea8=3.17.0  # https://icedtea.classpath.org/wiki/Main_Page#Getting_IcedTea | 
					version_make42=4.2.1  # https://ftp.gnu.org/gnu/make/ | 
				
			||||
version_icedtea7=2.6.17  # https://icedtea.classpath.org/wiki/Main_Page#Getting_IcedTea (2.6.18+ seems to fail) | 
					version_icedtea8=3.21.0  # https://icedtea.classpath.org/wiki/Main_Page#Getting_IcedTea | 
				
			||||
version_ant=1.9.13  # https://ant.apache.org/manual-1.9.x/index.html (1.9.14+ seems to fail) | 
					version_icedtea7=2.6.28  # https://icedtea.classpath.org/wiki/Main_Page#Getting_IcedTea (2.6.18+ seems to fail) | 
				
			||||
 | 
					version_ant=1.9.16  # https://ant.apache.org/manual-1.9.x/index.html | 
				
			||||
version_gcc=6.5.0  # Final version | 
					version_gcc=6.5.0  # Final version | 
				
			||||
version_ecj=4.9  # Final version | 
					version_ecj=4.9  # Final version | 
				
			||||
 | 
					
 | 
				
			||||
mkdir -p download | 
					mkdir -p download | 
				
			||||
cd download | 
					cd download | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					wget -O "jdk17u-jdk-$version_jdk17.tar.gz" -c "https://github.com/openjdk/jdk17u/archive/refs/tags/jdk-$version_jdk17.tar.gz" | 
				
			||||
 | 
					wget -O "jdk16u-jdk-$version_jdk16.tar.gz" -c "https://github.com/openjdk/jdk16u/archive/refs/tags/jdk-$version_jdk16.tar.gz" | 
				
			||||
 | 
					wget -O "jdk15u-jdk-$version_jdk15.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk15u/archive/jdk-$version_jdk15.tar.bz2" | 
				
			||||
 | 
					wget -O "jdk14u-jdk-$version_jdk14.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk14u/archive/jdk-$version_jdk14.tar.bz2" | 
				
			||||
 | 
					wget -O "jdk13u-jdk-$version_jdk13.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk13u/archive/jdk-$version_jdk13.tar.bz2" | 
				
			||||
 | 
					wget -O "jdk12u-jdk-$version_jdk12.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk12u/archive/jdk-$version_jdk12.tar.bz2" | 
				
			||||
wget -O "jdk11u-jdk-$version_jdk11.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk11u/archive/jdk-$version_jdk11.tar.bz2" | 
					wget -O "jdk11u-jdk-$version_jdk11.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk11u/archive/jdk-$version_jdk11.tar.bz2" | 
				
			||||
wget -O "jdk10u-jdk-$version_jdk10.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk10u/archive/jdk-$version_jdk10.tar.bz2" | 
					wget -O "jdk10u-jdk-$version_jdk10.tar.bz2" -c "https://hg.openjdk.java.net/jdk-updates/jdk10u/archive/jdk-$version_jdk10.tar.bz2" | 
				
			||||
wget -O "jdk-jdk-$version_jdk9.tar.bz2" -c "https://hg.openjdk.java.net/jdk/jdk/archive/jdk-$version_jdk9.tar.bz2" | 
					wget -O "jdk-jdk-$version_jdk9.tar.bz2" -c "https://hg.openjdk.java.net/jdk/jdk/archive/jdk-$version_jdk9.tar.bz2" | 
				
			||||
wget -c "http://icedtea.wildebeest.org/download/source/icedtea-$version_icedtea8.tar.xz" | 
					wget -c "https://ftp.gnu.org/gnu/make/make-$version_make42.tar.bz2" | 
				
			||||
wget -c "http://icedtea.wildebeest.org/download/source/icedtea-$version_icedtea7.tar.xz" | 
					wget -c "http://icedtea.classpath.org/download/source/icedtea-$version_icedtea8.tar.xz" | 
				
			||||
 | 
					wget -c "http://icedtea.classpath.org/download/source/icedtea-$version_icedtea7.tar.xz" | 
				
			||||
wget -c "https://archive.apache.org/dist/ant/source/apache-ant-$version_ant-src.tar.bz2" | 
					wget -c "https://archive.apache.org/dist/ant/source/apache-ant-$version_ant-src.tar.bz2" | 
				
			||||
wget -c "https://ftp.gnu.org/gnu/gcc/gcc-$version_gcc/gcc-$version_gcc.tar.xz" | 
					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 -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' | 
					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.tar.bz2 hotspot.tar.bz2 jaxp.tar.bz2 jaxws.tar.bz2 jdk.tar.bz2 langtools.tar.bz2 openjdk.tar.bz2; do | 
					for part in corba hotspot jaxp jaxws jdk langtools openjdk; do | 
				
			||||
    wget -O "icedtea-$version_icedtea7-$part" -c "http://icedtea.wildebeest.org/download/drops/icedtea7/$version_icedtea7/$part" | 
					    wget -O "icedtea-$version_icedtea7-$part.tar.bz2" -c "http://icedtea.classpath.org/download/drops/icedtea7/$version_icedtea7/$part.tar.bz2" | 
				
			||||
done | 
					done | 
				
			||||
for part in corba.tar.xz hotspot.tar.xz jaxp.tar.xz jaxws.tar.xz jdk.tar.xz langtools.tar.xz nashorn.tar.xz openjdk.tar.xz; do | 
					for part in corba hotspot jaxp jaxws jdk langtools nashorn openjdk; do | 
				
			||||
    wget -O "icedtea-$version_icedtea8-$part" -c "http://icedtea.wildebeest.org/download/drops/icedtea8/$version_icedtea8/$part" | 
					    wget -O "icedtea-$version_icedtea8-$part.tar.xz" -c "http://icedtea.classpath.org/download/drops/icedtea8/$version_icedtea8/$part.tar.xz" | 
				
			||||
done | 
					done | 
				
			||||
 | 
					
 | 
				
			||||
sha256sum -c ../download.sha256 | 
					sha256sum -c ../download.sha256 | 
				
			||||
 | 
				
			|||||
@ -1,24 +1,31 @@ | 
				
			|||||
fdefd01c909a69fbeab1c45a815e3a80d86351f61b992dfe2e2191d9b009aaaf  apache-ant-1.9.13-src.tar.bz2 | 
					965489b1caca437b3c60f3885f7a671c8ea88610a650b4af883bf2b39e21530c  apache-ant-1.9.16-src.tar.bz2 | 
				
			||||
9506e75b862f782213df61af67338eb7a23c35ff425d328affc65585477d34cd  ecj-4.9.jar | 
					9506e75b862f782213df61af67338eb7a23c35ff425d328affc65585477d34cd  ecj-4.9.jar | 
				
			||||
7ef1796ce497e89479183702635b14bb7a46b53249209a5e0f999bebf4740945  gcc-6.5.0.tar.xz | 
					7ef1796ce497e89479183702635b14bb7a46b53249209a5e0f999bebf4740945  gcc-6.5.0.tar.xz | 
				
			||||
808e6120513aa15e6b219899c1189e2d591c3984454d7db4b239556d437cf764  icedtea-2.6.17-corba.tar.bz2 | 
					b002240621be404783ed0117fe052552b4ef86adade4f2c8561ccee60ecba845  icedtea-2.6.28-corba.tar.bz2 | 
				
			||||
b22bca4cd64c18750b7e31c0cbf97919f9f5df610916cfa5e01e80832f139496  icedtea-2.6.17-hotspot.tar.bz2 | 
					b6897cd5dd70af201e6ca107b2759217f92ca207643c5128dcca9e0a33b34cfc  icedtea-2.6.28-hotspot.tar.bz2 | 
				
			||||
4aa64f80dd103ebece1aaaa6d126f751eafabb2f677537dbb25c0e0c350ad3fb  icedtea-2.6.17-jaxp.tar.bz2 | 
					fd93e65a4692593c2100963be2c75d697a32ba51ee2c02c7e7dccc524dfb1788  icedtea-2.6.28-jaxp.tar.bz2 | 
				
			||||
0703a48a420932fb62288c211ccb27596db4e3f1cfd0701321abcca259c93e97  icedtea-2.6.17-jaxws.tar.bz2 | 
					23b2c621752608f03f8b61753e19b21246dd5850648bcdfa49f2c6b8cd930a2f  icedtea-2.6.28-jaxws.tar.bz2 | 
				
			||||
236180ad395eb5036cc8577aad7c4cdc2a96dc79da717fe37673a43ba26e08ee  icedtea-2.6.17-jdk.tar.bz2 | 
					0812269b1f8a3884d2c2659d944e20fcfb054d916a5712e405d7a54fab2b5167  icedtea-2.6.28-jdk.tar.bz2 | 
				
			||||
b3c9130e6e813d12376cf685f1726988bad04b256390b00a5ef403a5619e6698  icedtea-2.6.17-langtools.tar.bz2 | 
					24799d5ebebfb1e316f9434db1db5a360ac7c86e5783ce58693536f978a0aa47  icedtea-2.6.28-langtools.tar.bz2 | 
				
			||||
7627e8483566b1eec4dd52c5f5052a46139529d68335c10d8ac8b0ff11215455  icedtea-2.6.17-openjdk.tar.bz2 | 
					78e5e89fc510280401e227d980abe30d49ea508c3eec537035481fd21a3b2c32  icedtea-2.6.28-openjdk.tar.bz2 | 
				
			||||
56360402eabda81200439485a60f0fdb3790000f957651757ea688b336cdab57  icedtea-2.6.17.tar.xz | 
					951188e6c0e3599de22f5cb2d95b5da9bf480763b5c8c600dae9fec88cff1735  icedtea-2.6.28.tar.xz | 
				
			||||
8cd38fecfeceea5b4f342702d9d527c8485691984e3a0e1e69253ba62a58397d  icedtea-3.17.0-corba.tar.xz | 
					ab0bff4445822c5e5741088da0e83a9bc20d059b8a95fcffd5885c03969bbeeb  icedtea-3.21.0-corba.tar.xz | 
				
			||||
874a81943dbba0e00d1586f200f132c72417781f437910f448ed7af244e9e9a0  icedtea-3.17.0-hotspot.tar.xz | 
					4231a4b534b1c44aaf5e0b51833f0e40f0654dcaa41c6259cf65037eccd427ae  icedtea-3.21.0-hotspot.tar.xz | 
				
			||||
b987fb2ab789e55d312c9b955e441fb5f39443e3bb57967c3ea03961e68cac41  icedtea-3.17.0-jaxp.tar.xz | 
					c5bb8b86a8d24ca7abde8f6cf15dec18c6e9a5201e4942a7ef117b28c960f54f  icedtea-3.21.0-jaxp.tar.xz | 
				
			||||
4c58d1e7c1aa2291d90a9f5881ef918e3ac5a947c355df4be275fedf82fe55db  icedtea-3.17.0-jaxws.tar.xz | 
					6a1244d4b8c0f78d34e44edb92a96cb127ec4b43847a6d5a176c37f392499993  icedtea-3.21.0-jaxws.tar.xz | 
				
			||||
39e77d08e322c2d60af2254743867dde50bbf6bf4f39d5b46df1eb311ba14af4  icedtea-3.17.0-jdk.tar.xz | 
					eab27c3ad455b68b29fec2f59730d48c97f53699000da21a5e1640b825840385  icedtea-3.21.0-jdk.tar.xz | 
				
			||||
b6f28501eafc5b35396ed9e265c9f7f1e764a8cb11f910b85481048fae78bfbb  icedtea-3.17.0-langtools.tar.xz | 
					499c749aa8dbe120bde899d0712d47e3cebc7d4a0a4b4c9b6afb2b0bdda98b82  icedtea-3.21.0-langtools.tar.xz | 
				
			||||
0d1dd7128a3503063589be89d775221508bfa87a31f5cf12f8497bac30cbe459  icedtea-3.17.0-nashorn.tar.xz | 
					495276d1e1e6b3a5a0d257c21b2e6349b000ac083be209a47a01b45894a65d59  icedtea-3.21.0-nashorn.tar.xz | 
				
			||||
fec83cb0e6e0df32799c60a0980deb5ecd7612004af82c76320d1c3c1bc4baf0  icedtea-3.17.0-openjdk.tar.xz | 
					ea3fe2097a0ce02e6781e8a0cc1b923ab52803a527cc34ef686779c04a3e1c21  icedtea-3.21.0-openjdk.tar.xz | 
				
			||||
089e85d6046775fc565cda87eba2c0245efd38b1bf713bc0b773f6dd40a49288  icedtea-3.17.0.tar.xz | 
					f83ee85d39f39a304dbd6c79aaeb4fa04257fc2e61031d0a28587a1953ba2459  icedtea-3.21.0.tar.xz | 
				
			||||
3bb23cff0a6e5a7a820e19cce4b9b0f51a7b84ee9e0eeb048b463a5f3e996db0  javac.in | 
					3bb23cff0a6e5a7a820e19cce4b9b0f51a7b84ee9e0eeb048b463a5f3e996db0  javac.in | 
				
			||||
8df9102cd985df96733cd7b6e58136681bd6df8812698393d6fcf5049b0dc7e3  jdk-jdk-9+181.tar.bz2 | 
					 | 
				
			||||
374f7ae35f0a7439a40bd2c765d1f410607c75c6c1e788f1a344a42e59431f51  jdk10u-jdk-10.0.2+13.tar.bz2 | 
					374f7ae35f0a7439a40bd2c765d1f410607c75c6c1e788f1a344a42e59431f51  jdk10u-jdk-10.0.2+13.tar.bz2 | 
				
			||||
1bfcf63e0be8fc37517856e6181b97ed1d83a2436949ad21855ffc6ce14a5a0e  jdk11u-jdk-11.0.9.1+1.tar.bz2 | 
					03531735116e74644b729fc0b8663ed72f7c83ebe093c02f1887be89264d8b92  jdk11u-jdk-11.0.12+7.tar.bz2 | 
				
			||||
 | 
					f7242b56e0292bc7ec5795bbaeb98552ef30d7a686cd7ca0a877fe37b399f384  jdk12u-jdk-12.0.2+10.tar.bz2 | 
				
			||||
 | 
					f7b2b121f4badb9da8167bda48d74b01cee39c19c4148e0eba383812c7258c8e  jdk13u-jdk-13.0.5.1+1.tar.bz2 | 
				
			||||
 | 
					a2e858dcce16fe89c20e265d9735e2cf1ae68a81b79cf55deb658ffc9de44c25  jdk14u-jdk-14.0.2+12.tar.bz2 | 
				
			||||
 | 
					4caca47081a23e4ec4d558f7649a9a3f0f34d300f4e6fde5767325c76214e19b  jdk15u-jdk-15.0.3+3.tar.bz2 | 
				
			||||
 | 
					b4a0e71e41a11175e8a7c1dba86ed5b0aa878413158c8d48813db1b64ac9536c  jdk16u-jdk-16.0.2+7.tar.gz | 
				
			||||
 | 
					8c076203a6f85ab916b3e54de1992bcbcc5ffe580c52b1ac8d52ca7afb9f02d1  jdk17u-jdk-17.0.1+12.tar.gz | 
				
			||||
 | 
					8df9102cd985df96733cd7b6e58136681bd6df8812698393d6fcf5049b0dc7e3  jdk-jdk-9+181.tar.bz2 | 
				
			||||
 | 
					d6e262bf3601b42d2b1e4ef8310029e1dcf20083c5446b4b7aa67081fdffc589  make-4.2.1.tar.bz2 | 
				
			||||
 | 
				
			|||||
@ -0,0 +1,48 @@ | 
				
			|||||
 | 
					--- apache-ant-1.9.16.orig/src/main/org/apache/tools/ant/taskdefs/condition/IsReachable.java
 | 
				
			||||
 | 
					+++ apache-ant-1.9.16/src/main/org/apache/tools/ant/taskdefs/condition/IsReachable.java
 | 
				
			||||
 | 
					@@ -131,6 +131,8 @@
 | 
				
			||||
 | 
					         return string == null || string.length() == 0; | 
				
			||||
 | 
					     } | 
				
			||||
 | 
					  | 
				
			||||
 | 
					+    private static Class[] parameterTypes = {Integer.TYPE};
 | 
				
			||||
 | 
					+
 | 
				
			||||
 | 
					     /** | 
				
			||||
 | 
					      * Evaluate the condition. | 
				
			||||
 | 
					      * | 
				
			||||
 | 
					@@ -173,11 +175,32 @@
 | 
				
			||||
 | 
					         log("Host address = " + address.getHostAddress(), | 
				
			||||
 | 
					                 Project.MSG_VERBOSE); | 
				
			||||
 | 
					         boolean reachable; | 
				
			||||
 | 
					+        //Java1.5: reachable = address.isReachable(timeout * 1000);
 | 
				
			||||
 | 
					+        Method reachableMethod = null;
 | 
				
			||||
 | 
					         try { | 
				
			||||
 | 
					-            reachable = address.isReachable(timeout * SECOND);
 | 
				
			||||
 | 
					-        } catch (final IOException ioe) {
 | 
				
			||||
 | 
					-            reachable = false;
 | 
				
			||||
 | 
					-            log(ERROR_ON_NETWORK + target + ": " + ioe.toString());
 | 
				
			||||
 | 
					+            reachableMethod = InetAddress.class.getMethod(METHOD_NAME,
 | 
				
			||||
 | 
					+                    parameterTypes);
 | 
				
			||||
 | 
					+            final Object[] params = new Object[1];
 | 
				
			||||
 | 
					+            params[0] = new Integer(timeout * SECOND);
 | 
				
			||||
 | 
					+            try {
 | 
				
			||||
 | 
					+                reachable = ((Boolean) reachableMethod.invoke(address, params))
 | 
				
			||||
 | 
					+                        .booleanValue();
 | 
				
			||||
 | 
					+            } catch (final IllegalAccessException e) {
 | 
				
			||||
 | 
					+                //utterly implausible, but catered for anyway
 | 
				
			||||
 | 
					+                throw new BuildException("When calling " + reachableMethod);
 | 
				
			||||
 | 
					+            } catch (final InvocationTargetException e) {
 | 
				
			||||
 | 
					+                //assume this is an IOException about un readability
 | 
				
			||||
 | 
					+                final Throwable nested = e.getTargetException();
 | 
				
			||||
 | 
					+                log(ERROR_ON_NETWORK + target + ": " + nested.toString());
 | 
				
			||||
 | 
					+                //any kind of fault: not reachable.
 | 
				
			||||
 | 
					+                reachable = false;
 | 
				
			||||
 | 
					+            }
 | 
				
			||||
 | 
					+        } catch (final NoSuchMethodException e) {
 | 
				
			||||
 | 
					+            //java1.4
 | 
				
			||||
 | 
					+            log("Not found: InetAddress." + METHOD_NAME, Project.MSG_VERBOSE);
 | 
				
			||||
 | 
					+            log(MSG_NO_REACHABLE_TEST);
 | 
				
			||||
 | 
					+            reachable = true;
 | 
				
			||||
 | 
					+
 | 
				
			||||
 | 
					         } | 
				
			||||
 | 
					  | 
				
			||||
 | 
					         log("host is" + (reachable ? "" : " not") + " reachable", Project.MSG_VERBOSE); | 
				
			||||
@ -0,0 +1,16 @@ | 
				
			|||||
 | 
					--- openjdk-boot/jdk/src/share/classes/sun/security/util/Optional.java.orig
 | 
				
			||||
 | 
					+++ openjdk-boot/jdk/src/share/classes/sun/security/util/Optional.java
 | 
				
			||||
 | 
					@@ -189,12 +189,7 @@
 | 
				
			||||
 | 
					      * @throws NullPointerException if the mapping function is null | 
				
			||||
 | 
					      */ | 
				
			||||
 | 
					     public<U> Optional<U> map(Function<? super T, ? extends U> mapper) { | 
				
			||||
 | 
					-        Objects.requireNonNull(mapper);
 | 
				
			||||
 | 
					-        if (!isPresent())
 | 
				
			||||
 | 
					-            return empty();
 | 
				
			||||
 | 
					-        else {
 | 
				
			||||
 | 
					-            return Optional.ofNullable(mapper.apply(value));
 | 
				
			||||
 | 
					-        }
 | 
				
			||||
 | 
					+        return empty();
 | 
				
			||||
 | 
					     } | 
				
			||||
 | 
					  | 
				
			||||
 | 
					     /** | 
				
			||||
@ -0,0 +1,11 @@ | 
				
			|||||
 | 
					--- jdk10u-jdk-10.0.2+13.orig/src/hotspot/os/linux/os_linux.cpp
 | 
				
			||||
 | 
					+++ jdk10u-jdk-10.0.2+13/src/hotspot/os/linux/os_linux.cpp
 | 
				
			||||
 | 
					@@ -2155,7 +2155,7 @@
 | 
				
			||||
 | 
					     } | 
				
			||||
 | 
					  | 
				
			||||
 | 
					     p = OSContainer::cpu_cpuset_memory_nodes(); | 
				
			||||
 | 
					-    if (p < 0)
 | 
				
			||||
 | 
					+    if (p < (void *)0)
 | 
				
			||||
 | 
					       st->print("cpu_memory_nodes() failed\n"); | 
				
			||||
 | 
					     else { | 
				
			||||
 | 
					       st->print("cpu_memory_nodes: %s\n", p); | 
				
			||||
@ -0,0 +1,22 @@ | 
				
			|||||
 | 
					--- jdk-jdk-9+181.orig/hotspot/src/share/vm/memory/virtualspace.cpp
 | 
				
			||||
 | 
					+++ jdk-jdk-9+181/hotspot/src/share/vm/memory/virtualspace.cpp
 | 
				
			||||
 | 
					@@ -581,7 +581,7 @@
 | 
				
			||||
 | 
					   assert(markOopDesc::encode_pointer_as_mark(&_base[size])->decode_pointer() == &_base[size], | 
				
			||||
 | 
					          "area must be distinguishable from marks for mark-sweep"); | 
				
			||||
 | 
					  | 
				
			||||
 | 
					-  if (base() > 0) {
 | 
				
			||||
 | 
					+  if (base() > (void *)0) {
 | 
				
			||||
 | 
					     MemTracker::record_virtual_memory_type((address)base(), mtJavaHeap); | 
				
			||||
 | 
					   } | 
				
			||||
 | 
					 } | 
				
			||||
 | 
					--- jdk-jdk-9+181.orig/hotspot/src/share/vm/opto/lcm.cpp
 | 
				
			||||
 | 
					+++ jdk-jdk-9+181/hotspot/src/share/vm/opto/lcm.cpp
 | 
				
			||||
 | 
					@@ -39,7 +39,7 @@
 | 
				
			||||
 | 
					 // Check whether val is not-null-decoded compressed oop, | 
				
			||||
 | 
					 // i.e. will grab into the base of the heap if it represents NULL. | 
				
			||||
 | 
					 static bool accesses_heap_base_zone(Node *val) { | 
				
			||||
 | 
					-  if (Universe::narrow_oop_base() > 0) { // Implies UseCompressedOops.
 | 
				
			||||
 | 
					+  if (Universe::narrow_oop_base() > (void *)0) { // Implies UseCompressedOops.
 | 
				
			||||
 | 
					     if (val && val->is_Mach()) { | 
				
			||||
 | 
					       if (val->as_Mach()->ideal_Opcode() == Op_DecodeN) { | 
				
			||||
 | 
					         // This assumes all Decodes with TypePtr::NotNull are matched to nodes that | 
				
			||||
@ -1,7 +0,0 @@ | 
				
			|||||
---------- | 
					 | 
				
			||||
1. ERROR in /root/java/build/icedtea-2.6.19/openjdk-boot/jdk/src/share/classes/sun/security/util/Optional.java (at line 196) | 
					 | 
				
			||||
	return Optional.ofNullable(mapper.apply(value)); | 
					 | 
				
			||||
	       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | 
					 | 
				
			||||
Type mismatch: cannot convert from Optional<capture#5-of ? extends U> to Optional<U> | 
					 | 
				
			||||
---------- | 
					 | 
				
			||||
1 problem (1 error)gmake[6]: *** [/root/java/build/icedtea-2.6.19/openjdk-boot/jdk/make/common/Rules.gmk:254: .compile.classlist] Error 255 | 
					 | 
				
			||||
@ -0,0 +1,3 @@ | 
				
			|||||
 | 
					#!/bin/sh | 
				
			||||
 | 
					set -eu | 
				
			||||
 | 
					find "$1" -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs -L1 -t strip --strip-unneeded | 
				
			||||
					Loading…
					
					
				
		Reference in new issue