Commit f1bcc4bc authored by Jakub Jirutka's avatar Jakub Jirutka
Browse files

community/openjdk8: rewrite to use icedtea and upgrade to 8.101.13

parent bb9e6e10
......@@ -2,30 +2,31 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=openjdk8
_java_ver=8
_jdk_update=92
_jdk_build=14
pkgver=$_java_ver.$_jdk_update.$_jdk_build
pkgrel=1
pkgdesc="Sun OpenJDK 8"
url="http://openjdk.java.net"
arch="x86_64 x86"
_icedteaver=3.1.0
# pkgver is <JDK version>.<JDK update>.<JDK build>
# Check http://icedtea.classpath.org/wiki/Main_Page when updating!
pkgver=8.101.13
pkgrel=0
pkgdesc="OpenJDK 8 provided by IcedTea"
url="http://icedtea.classpath.org/"
arch="all"
license="custom"
depends="$pkgname-jre java-cacerts"
options="sover-namecheck"
makedepends="bash findutils tar zip file paxmark gawk util-linux libxslt
autoconf automake linux-headers sed
autoconf automake linux-headers sed xz coreutils
openjdk7 ca-certificates
nss-dev cups-dev jpeg-dev giflib-dev libpng-dev libxt-dev
lcms2-dev libxp-dev libxtst-dev libxinerama-dev zlib-dev
libxrender-dev alsa-lib-dev freetype-dev fontconfig-dev
gtk+2.0-dev krb5-dev attr-dev pcsc-lite-dev lksctp-tools-dev"
install=""
gtk+2.0-dev krb5-dev attr-dev pcsc-lite-dev lksctp-tools-dev
libxcomposite-dev"
case $CARCH in
x86) _jarch=i386;;
x86_64) _jarch=amd64;;
arm*) _jarch=arm;;
*) _jarch="$CARCH";;
esac
INSTALL_BASE=/usr/lib/jvm/java-1.8-openjdk
......@@ -40,116 +41,126 @@ sonameprefix="$pkgname:"
subpackages="$pkgname-jre-lib:jrelib $pkgname-jre $pkgname-jre-base:jrebase
$pkgname-doc:doc $pkgname-demos:demos"
_dropsurl=http://hg.openjdk.java.net/jdk8u/jdk8u
_dropsver=jdk${_java_ver}u${_jdk_update}-b${_jdk_build}
_dropsver=$_icedteaver
_dropsurl="http://icedtea.classpath.org/download/drops/icedtea8/$_dropsver"
source="jdk8u-$_dropsver.tar.bz2::$_dropsurl/archive/${_dropsver}.tar.bz2
corba-$_dropsver.tar.bz2::$_dropsurl/corba/archive/${_dropsver}.tar.bz2
jaxp-$_dropsver.tar.bz2::$_dropsurl/jaxp/archive/${_dropsver}.tar.bz2
jaxws-$_dropsver.tar.bz2::$_dropsurl/jaxws/archive/${_dropsver}.tar.bz2
jdk-$_dropsver.tar.bz2::$_dropsurl/jdk/archive/${_dropsver}.tar.bz2
langtools-$_dropsver.tar.bz2::$_dropsurl/langtools/archive/${_dropsver}.tar.bz2
nashorn-$_dropsver.tar.bz2::$_dropsurl/nashorn/archive/${_dropsver}.tar.bz2
hotspot-$_dropsver.tar.bz2::$_dropsurl/hotspot/archive/${_dropsver}.tar.bz2
source="http://icedtea.classpath.org/download/source/icedtea-$_icedteaver.tar.gz
openjdk-$_dropsver.tar.xz::$_dropsurl/openjdk.tar.xz
corba-$_dropsver.tar.xz::$_dropsurl/corba.tar.xz
jaxp-$_dropsver.tar.xz::$_dropsurl/jaxp.tar.xz
jaxws-$_dropsver.tar.xz::$_dropsurl/jaxws.tar.xz
jdk-$_dropsver.tar.xz::$_dropsurl/jdk.tar.xz
langtools-$_dropsver.tar.xz::$_dropsurl/langtools.tar.xz
hotspot-$_dropsver.tar.xz::$_dropsurl/hotspot.tar.xz
nashorn-$_dropsver.tar.xz::$_dropsurl/nashorn.tar.xz
icedtea-hotspot-musl.patch
icedtea-hotspot-noagent-musl.patch
icedtea-hotspot-uclibc-fixes.patch
icedtea-jdk-execinfo.patch
icedtea-jdk-fix-ipv6-init.patch
icedtea-jdk-fix-libjvm-load.patch
icedtea-jdk-musl.patch
icedtea-jdk-includes.patch
fix-libjvm-load.patch
build-demo-ldflags.patch
icedtea-autoconf-config.patch
"
builddir="$srcdir/jdk8u-$_dropsver"
builddir="$srcdir/icedtea-$_icedteaver"
unpack() {
if [ -z "$force" ]; then
verify || return 1
initdcheck || return 1
fi
mkdir -p "$srcdir"
msg "Unpacking sources..."
tar -C "$srcdir" -zxf icedtea-$_icedteaver.tar.gz || return 1
}
prepare() {
cd "$builddir"
update_config_sub || return 1
local module
for module in corba hotspot jdk jaxws jaxp langtools nashorn; do
ln -s ../${module}-${_dropsver} $module || return 1
done
# Busybox sha256 does not support longopts.
sed -e "s/--check/-c/g" -i Makefile.am
for patch in $source; do
local patch; for patch in $source; do
case $patch in
icedtea-*.patch)
cp ../$patch patches
;;
*.patch)
msg "Applying patch $patch"
busybox patch -p1 < "$srcdir"/$patch || return 1
patch -p1 -i "$srcdir"/$patch || return 1
;;
esac
done
./autogen.sh
}
build() {
export JAVA_HOME="$BOOTSTRAP_JAVA_HOME"
export PATH="$JAVA_HOME/bin:$PATH"
if [ -z "$JOBS" ]; then
export JOBS=$(printf '%s\n' "$MAKEFLAGS" | sed -n -e 's/.*-j\([0-9]\+\).*/\1/p')
fi
DISTRIBUTION_PATCHES=""
local patch; for patch in $source; do
case $patch in
icedtea-*.patch)
DISTRIBUTION_PATCHES="$DISTRIBUTION_PATCHES patches/$patch"
;;
esac
done
export DISTRIBUTION_PATCHES
echo "icedtea patches: $DISTRIBUTION_PATCHES"
cd "$builddir"
unset JAVA_HOME
export MAKEFLAGS=${MAKEFLAGS/-j*}
sh ./configure \
./configure \
--build=$CBUILD \
--host=$CHOST \
--target=$CTARGET \
--prefix=$INSTALL_BASE \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--localstatedir=/var \
--with-update-version="${_jdk_update}" \
--with-build-number="b${_jdk_build}" \
--with-user-release-suffix="alpine-r${pkgrel}" \
--enable-unlimited-crypto \
--with-zlib=system \
--with-giflib=system \
--with-extra-cflags="$CFLAGS" \
--with-extra-cxxflags="$CXXFLAGS" \
--with-extra-ldflags="$LDFLAGS" \
--disable-freetype-bundling \
--with-boot-jdk="$BOOTSTRAP_JAVA_HOME" \
--disable-dependency-tracking \
--disable-downloading \
--with-parallel-jobs=${JOBS:-2} \
--with-openjdk-src-zip="$srcdir/openjdk-$_dropsver.tar.xz" \
--with-hotspot-src-zip="$srcdir/hotspot-$_dropsver.tar.xz" \
--with-corba-src-zip="$srcdir/corba-$_dropsver.tar.xz" \
--with-jaxp-src-zip="$srcdir/jaxp-$_dropsver.tar.xz" \
--with-jaxws-src-zip="$srcdir/jaxws-$_dropsver.tar.xz" \
--with-jdk-src-zip="$srcdir/jdk-$_dropsver.tar.xz" \
--with-langtools-src-zip="$srcdir/langtools-$_dropsver.tar.xz" \
--with-nashorn-src-zip="$srcdir/nashorn-$_dropsver.tar.xz" \
--with-pax=paxmark \
--with-jdk-home="$BOOTSTRAP_JAVA_HOME" \
--with-pkgversion="Alpine ${pkgver}-r${pkgrel}" \
|| return 1
make DEBUG_BINARIES=true || return 1
make docs || return 1
# agent was patched off; make empty sa-jdi.jar to make image builder happy
local build
for build in build/* ; do
touch $build/jdk/lib/sa-jdi.jar
done
make images || return 1
}
list_paxables() {
file "$@" 2> /dev/null \
| grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//'
}
pax_mark_vm() {
local paxflags="-mp"
[ "$CARCH" = "x86" ] && paxflags="-msp"
local paxable
for paxable in $(list_paxables "${1}"/bin/* "${1}"/jre/bin/*); do
echo "PaX mark $paxflags ${paxable}"
paxmark $paxflags "${paxable}"
done
make || return 1
}
package() {
cd "$builddir"
mkdir -p "$pkgdir"/$INSTALL_BASE
cp -a "$builddir"/build/*/images/j2sdk-image/* "$pkgdir"/$INSTALL_BASE || return 1
cp -a openjdk.build/images/j2sdk-image/* "$pkgdir"/$INSTALL_BASE/ || return 1
rm "$pkgdir"/$INSTALL_BASE/src.zip
find "$pkgdir"/$INSTALL_BASE -iname "*.diz" -delete || return 1
find "$pkgdir"/$INSTALL_BASE -iname "*.debuginfo" -delete || return 1
find "$pkgdir"/$INSTALL_BASE \( -name "*.jar" -o -name "*.sym" \) \
\! -perm /006 | xargs chmod go+r || return 1
# This archive contains absolute paths from the build environment,
# so it does not work on the target system. User can generate it
# running `java -Xshare:dump`.
rm "$pkgdir"/$_jrelib/server/classes.jsa
pax_mark_vm "$pkgdir"/$INSTALL_BASE
# Pax mark again (due to fakeroot xattr handling bug).
./pax-mark-vm "$pkgdir"/$INSTALL_BASE
# symlink to shared java cacerts store
# Symlink to shared java cacerts store.
rm -f "$pkgdir"/$INSTALL_BASE/jre/lib/security/cacerts
ln -sf /etc/ssl/certs/java/cacerts \
"$pkgdir"/$INSTALL_BASE/jre/lib/security/cacerts
......@@ -160,13 +171,19 @@ jrelib() {
arch="noarch"
depends=""
local A; for A in jre/lib/images jre/lib/*.jar jre/lib/security \
jre/lib/ext/*.jar jre/lib/cmm jre/ASSEMBLY_EXCEPTION \
jre/THIRD_PARTY_README jre/LICENSE; do
local dirname=${A%/*}
mkdir -p "$subpkgdir"/$INSTALL_BASE/$dirname
mv "$pkgdir"/$INSTALL_BASE/$A "$subpkgdir"/$INSTALL_BASE/$dirname || return 1
local file dir
for file in jre/lib/images \
jre/lib/*.jar \
jre/lib/security \
jre/lib/ext/*.jar \
jre/lib/cmm \
jre/ASSEMBLY_EXCEPTION \
jre/THIRD_PARTY_README \
jre/LICENSE; do
dir=${file%/*}
mkdir -p "$subpkgdir"/$INSTALL_BASE/$dir
mv "$pkgdir"/$INSTALL_BASE/$file "$subpkgdir"/$INSTALL_BASE/$dir || return 1
done
}
......@@ -179,22 +196,25 @@ jrebase() {
mv "$pkgdir"/$INSTALL_BASE/lib/$_jarch/jli \
"$subpkgdir"/$INSTALL_BASE/lib/$_jarch/ || return 1
local A; for A in java orbd rmid servertool unpack200 keytool \
local file; for file in java orbd rmid servertool unpack200 keytool \
pack200 rmiregistry tnameserv; do
mv "$pkgdir"/$INSTALL_BASE/bin/$A "$subpkgdir"/$INSTALL_BASE/bin || return 1
mv "$pkgdir"/$INSTALL_BASE/bin/$file "$subpkgdir"/$INSTALL_BASE/bin/ || return 1
done
# rest of the jre subdir (which were not taken by -jre subpkg)
mv "$pkgdir"/$INSTALL_BASE/jre "$subpkgdir"/$INSTALL_BASE || return 1
# Rest of the jre subdir (which were not taken by -jre subpkg).
mv "$pkgdir"/$INSTALL_BASE/jre "$subpkgdir"/$INSTALL_BASE/ || return 1
pax_mark_vm "$subpkgdir"/$INSTALL_BASE
# Pax mark again (due to fakeroot xattr handling bug).
"$builddir"/pax-mark-vm "$subpkgdir"/$INSTALL_BASE
}
jre() {
pkgdesc="OpenJDK 8 Java Runtime"
local file dir
mkdir -p "$subpkgdir"
local A; for A in jre/bin/policytool \
for file in jre/bin/policytool \
bin/appletviewer \
bin/policytool \
jre/lib/$_jarch/libawt_xawt.so \
......@@ -202,16 +222,17 @@ jre() {
jre/lib/$_jarch/libjawt.so \
jre/lib/$_jarch/libsplashscreen.so; do
local dirname=${A%/*}
mkdir -p "$subpkgdir"/$INSTALL_BASE/$dirname
mv "$pkgdir"/$INSTALL_BASE/$A "$subpkgdir"/$INSTALL_BASE/$dirname || return 1
dir=${file%/*}
mkdir -p "$subpkgdir"/$INSTALL_BASE/$dir
mv "$pkgdir"/$INSTALL_BASE/$file "$subpkgdir"/$INSTALL_BASE/$dir || return 1
done
pax_mark_vm "$subpkgdir"/$INSTALL_BASE
# Pax mark again (due to fakeroot xattr handling bug).
"$builddir"/pax-mark-vm "$subpkgdir"/$INSTALL_BASE
}
doc() {
default_doc
default_doc || return 1
mkdir -p "$subpkgdir"/$INSTALL_BASE/
mv "$pkgdir"/$INSTALL_BASE/man "$subpkgdir"/$INSTALL_BASE/
......@@ -226,54 +247,57 @@ demos() {
"$subpkgdir"/$INSTALL_BASE/
}
md5sums="226f9051e34b70fbff031ec9d959773d jdk8u-jdk8u92-b14.tar.bz2
9619e84a600aaf81737f7ed71430d3aa corba-jdk8u92-b14.tar.bz2
567189edafbe0aabaff2d75d86c05456 jaxp-jdk8u92-b14.tar.bz2
3e7db7d843ebbcd5eb2ba0a9e7e275d7 jaxws-jdk8u92-b14.tar.bz2
b06f2e3504357820bb3dd29e19ccfc0d jdk-jdk8u92-b14.tar.bz2
afbe0e3a8c0e9e2beac5567e1084f3ee langtools-jdk8u92-b14.tar.bz2
e3641526c2875b5d4d1414980769f6ea nashorn-jdk8u92-b14.tar.bz2
21e8fdc20ab17e7399752ef74c8e03e2 hotspot-jdk8u92-b14.tar.bz2
md5sums="7b54dacd18f3adc0d77008d15db2b5c6 icedtea-3.1.0.tar.gz
1b9b9e9102abfc387acb4d244580fb9a openjdk-3.1.0.tar.xz
d697eb0b8df5ee5242768be1678f1684 corba-3.1.0.tar.xz
a3cbe28e27ebff38c8475ecae56ad446 jaxp-3.1.0.tar.xz
92da27a8622b92ee60ca67452f695927 jaxws-3.1.0.tar.xz
e2143b152be03f3ec66313294606c100 jdk-3.1.0.tar.xz
39c75541d8bbe9be9cfd7f58c0950641 langtools-3.1.0.tar.xz
d4d70521fee922201c309a64be22b239 hotspot-3.1.0.tar.xz
3c266698f3b192fd5616ce9548d1ead2 nashorn-3.1.0.tar.xz
f87dd2c4c3c97fc3ac33080a65ca9e14 icedtea-hotspot-musl.patch
a5841507a216890bd8419d496bb118c3 icedtea-hotspot-noagent-musl.patch
bd148291e75d536972cb2b1b68e5cb05 icedtea-hotspot-noagent-musl.patch
43023861c5f6efc3139a834aa3ec0476 icedtea-hotspot-uclibc-fixes.patch
bdea7060a067faf1c2de5f4eb6e8525d icedtea-jdk-execinfo.patch
250b0807b59762670954b132e8f8dfba icedtea-jdk-fix-ipv6-init.patch
fc1dc983dc562eda399c9d7eabd3b299 icedtea-jdk-musl.patch
fc7d3cc1f5a5615574fd1e416144a042 icedtea-jdk-includes.patch
9b95183ae088ac2520ac66ae587619e4 fix-libjvm-load.patch
34fd6af2160e062b9f4b434a9a350b79 build-demo-ldflags.patch"
sha256sums="948b651e542618ced3f27395f75f0cca8dc0cb69577fdac94c1bb0445b56ca32 jdk8u-jdk8u92-b14.tar.bz2
a0cde75df26176b9f0c75bc77ad2649e42bbbc321fb9bdca19ab339f4d9f949e corba-jdk8u92-b14.tar.bz2
f72662de92ecdae80cbed04d5af6d72530f34631bfb15a73fef58bbb95faf4e2 jaxp-jdk8u92-b14.tar.bz2
0d3e59432bebcd2d8353250e746ed6f59cf73f521471edbfca7392339d1bd264 jaxws-jdk8u92-b14.tar.bz2
4eb3b4823f91c10da9cc5358946643b54f4e66ba499f9ae13904554ef45bbe85 jdk-jdk8u92-b14.tar.bz2
27afacfefd7af8afcc47284fbdc6ac8377c8677f8e542a75b26228309c452b0c langtools-jdk8u92-b14.tar.bz2
5a63849ebafe07c6f0fe13bdcf4f00f5b40a2966ccdf9f5c89d6f7bde62aa718 nashorn-jdk8u92-b14.tar.bz2
251f1c684c951a94fed3af5cb4084e08b0448b564363a590d57fd648db634433 hotspot-jdk8u92-b14.tar.bz2
4dcba8ae18346298c0d0b817f6922415 icedtea-jdk-fix-libjvm-load.patch
b708c7630efb0b0fe7bb3eca58cb1629 icedtea-jdk-musl.patch
da4b0b67d9b5c7f742bcea70722acd94 icedtea-jdk-includes.patch
d13bf1213635a702611af295d3977fe1 icedtea-autoconf-config.patch"
sha256sums="694477835af753d59b5f03f4939a6015d7d4a00e5e5bb3d5c9e3e5186d3163e1 icedtea-3.1.0.tar.gz
c19f7ffaec510db20b3c66b6447040012c28df319ab1dcfaf0a41c0e807bdddc openjdk-3.1.0.tar.xz
5e334d4250de441517c0e761a3202dfdf4beacb75c0f7a03617b62d89cb71c21 corba-3.1.0.tar.xz
6d58edfd2b7f07b4d543910f7525fe08d94d56899b96493efce217b4a226aca3 jaxp-3.1.0.tar.xz
811ad76dfcffe1e6f2ef39a088f27a8858ed3371ef93816c8dc453f90516c7d7 jaxws-3.1.0.tar.xz
83880a4b865e33e7913bec603da1e5439ea3602b3540d8071408de7bef8162a9 jdk-3.1.0.tar.xz
2a7f8dd0b0c1b256c58b8e841033b7915beb08d983350f9a9357115a05677f1d langtools-3.1.0.tar.xz
33581ea3ef4deffa786be82e110ae3d6b0431cc56140eb51453af1f11962b174 hotspot-3.1.0.tar.xz
56b36f5f7c073b140f8316084a23080553d8790d9f1f7e6d6288c6b0fd45cd7f nashorn-3.1.0.tar.xz
a7922430cb767c8a4baae232c8b2e5f377aeb7cfde0c9901cd7774f078e7f92e icedtea-hotspot-musl.patch
9223d4a1ae20b51bcb901ace115a2cd5f15b05655ea076c05f4c7f2c66f341e5 icedtea-hotspot-noagent-musl.patch
c14529a29bfdfb51bf5b4a41c977039073f470758e31235d043d373b48d46a11 icedtea-hotspot-noagent-musl.patch
0ef7592b8f2c954eda0a6cf4dc4a4010942f35ea426f44e34412be6c9a949745 icedtea-hotspot-uclibc-fixes.patch
a35d40f24098747cdb73d9c3742cfb4aecafa0f72c9dfdfe2cb460f9706ff665 icedtea-jdk-execinfo.patch
632683ec88a6fb250ef043aae9cace605d0c669b7058f8c47b62b09b03ecc6c5 icedtea-jdk-fix-ipv6-init.patch
d3fcf4779a23181178e722a93290921f5c61ed7220d3a431953a53c24f89e562 icedtea-jdk-musl.patch
38590e411b7bf9b99f5168709b975e1c432ef600915800c709a6617504e2c13a icedtea-jdk-includes.patch
47028d87c9a65df8d0103b39bf54b2b22de7db7c52a5de1058f88f4c5ea24f0d fix-libjvm-load.patch
606a08d7b986ab4dd52bbf03f0ea2e652b5687d9c929924046373ce0afef479a build-demo-ldflags.patch"
sha512sums="aaea06ba72b2bda8c6f6426ca62ff698c00b73f1acae83f5531ffe9908a03547ce34a683d8af51d7e6d848e3a2c1e699f6f684d8969e602aa4ce0395f307cff9 jdk8u-jdk8u92-b14.tar.bz2
361406d6911edeecb0928f28f53f029e107df4d31eb544a3a32417533b28eb90a4b7ab6c8322514cc14c9da09d523af514e5a7f48de120a908c8f74e0f0e9823 corba-jdk8u92-b14.tar.bz2
df0dfa57aea9a368947e750a2ecfee8dd5d250d6a3fd41655cc589d2026bf5be53e69079d2067e2a5d0c3390257cc9708e77e3ef4e1d951c38fea6b5e5ed62c3 jaxp-jdk8u92-b14.tar.bz2
c3bd6bdd10d01596c00224227c2026210384cca80959a416d9b99618028f0a2da5a1d9439d33e8f729a527b74c63749d19bb8b8424cce4b617e9e6ebdb424b0d jaxws-jdk8u92-b14.tar.bz2
aa424052ccd37b545e014d28ea0a15dfd76499007b86a0b23ba49daabcd204dda34fd39d27ff832854eeb006a0484c58c4149a36dce1b5d0f6aa90ff53b4d100 jdk-jdk8u92-b14.tar.bz2
177080c1b4bc1347ace8e0626a5ee778857e35158a165e1aaf4742d13d77ae9216504f827aa201679049b34e389ec5dcb4925d8e24e98534046f3afc62d06d43 langtools-jdk8u92-b14.tar.bz2
f1cffe2135bdf4eac020fefaeb532fee7ed22805d49407c5b68aba45b5e0793aae7d9cc760e1458a3261a9118bf987e885e5d9d12bb735c4dc1019436469c2f6 nashorn-jdk8u92-b14.tar.bz2
967c9e3ca1881d208daf7683f3093594a0919d71a7897b4332bb7d78488616e831bdd50cc899ab2aa104871c9d3c19f04609ec5f765b0abdce419b90327965b8 hotspot-jdk8u92-b14.tar.bz2
c0f7e07293883142d7d7776c9e43a3bba7d45e4abbce6dc0fb531d25ed836ed4 icedtea-jdk-fix-libjvm-load.patch
749f9a5644253caaa0dc5b1d3ee31ed61e1392fdd127d6c68eef367902fe834c icedtea-jdk-musl.patch
8f4edc784fd70b27f91a0acf05a1de19fc300a35852b74668332ed747ec52073 icedtea-jdk-includes.patch
51ced4c77b97744fd0ecfbeca3f94e2da1fc5072dac7830c141f70887c503c33 icedtea-autoconf-config.patch"
sha512sums="5543f3ffcbf06afbdc94555361af9823707586769d95f6294865a0bfc5b1526aaf84d7b2bf826a481ef26d70b8b9a398f08e0d72654b5ca41c2ec0d2e6c68cd3 icedtea-3.1.0.tar.gz
f2b40a39418e9df667a871293629cec85a8b43edd9051caf80961e1b92916e7a7509dfebaaf6c461ff0d51e6e8d653d7584de8ff35fb7229e8def6ee0f8ddadc openjdk-3.1.0.tar.xz
9b0ebefec9cdc6b653b7b88b2db4c7dd7aebe0e120c23e967cf3433837bc52c65b31da36034161d1c7ae18ddc18a2a5294b2a1469eeec23c7817ef1530909d67 corba-3.1.0.tar.xz
e7e605937292f37aa8a5510f3bfda20ccdeee17d6cbe5a69260eddbb7f39733ef9dd7d91ffd3e968aee926d1c21b4ace2522cb28687915168baf070b0fe38354 jaxp-3.1.0.tar.xz
0fd71e75e38a90e4d74477c9c7a2843d3b7fb9430332fa18a1a2f36376918832f6091bc3f2de86900e332bb4fc11a480ce7aedafeaddc3fc93493944183dc42a jaxws-3.1.0.tar.xz
9fb70cd63412c4de7112fa1645b485ef5840dc21ff8fc35c12a10d843b879d6400a6109634351974257a1e12d2843ad4b22811d4d9662cbe2e2114838bd6cba8 jdk-3.1.0.tar.xz
c6eb7b5287cb7dbf518ac9d7167b9e63df086b9abe893adfc72b7ba5d9e0a16861fa72b5fbb46ce58bd02cf837b81d03cd1b860dea947a9e58ff39a8d62411ee langtools-3.1.0.tar.xz
8fcd3934afb446cd683f991f99c2b22fbeee607a1221665d7300d1e8d53740d7d2fee7894ccc53cddb02b902acaff68fd3ca1454dc244feeb641f5d5fd6308b4 hotspot-3.1.0.tar.xz
61f060f02a8852681212ac26018de0ad3403156f9c1fb984c658fa31bc4e58a0da588188c57d629da022b32c763c2f5915a8938997c6f94b127ceacde8d050f9 nashorn-3.1.0.tar.xz
994e8a79a0a23f26d633bf2ce9dad62198c699892f6e7729cc6e509481330399bb2ba736514b516fd2b3dd125fd6c74a127ae7f16d643c3f6a69776737cdb933 icedtea-hotspot-musl.patch
d930edbb830957729031228196720fa2d50747655a9289097103d36f852ab11b7198e18805bd89c6a438c3ccf224be48cda5f994b193ab1f81a72aada0df2b16 icedtea-hotspot-noagent-musl.patch
3c592a14f1806a431290a96a8c1413ca1cc621e73a87ed778fa98878c82809bd924072210d4e4127a6c0c32ff557d749f6c9b3ce31cbca083b013240b618b224 icedtea-hotspot-noagent-musl.patch
822eee0dc4d3ba677a289dfeb3668b536d2d626708390a9d9702fb4144a481fd443a215a0d2041c6026113837aafa4ba0b5e9ead8589d2da6717a238bbc95a5a icedtea-hotspot-uclibc-fixes.patch
f6365cfafafa008bd6c1bf0ccec01a63f8a39bd1a8bc87baa492a27234d47793ba02d455e5667a873ef50148df3baaf6a8421e2da0b15faac675867da714dd5f icedtea-jdk-execinfo.patch
48533f87fc2cf29d26b259be0df51087d2fe5b252e72d00c6ea2f4add7b0fb113141718c116279c5905e03f64a1118082e719393786811367cf4d472b5d36774 icedtea-jdk-fix-ipv6-init.patch
2fd75bb52e7c9e3b56a383b72ee519d395413b000aef94ad00b106a692a199de34967bac1120164cebce5f71d302413742922a55cc6479b2d33258aaf7d03c1b icedtea-jdk-musl.patch
7df0db85039da8cbde49093ec3299f6804370f4134554a9c26c130a4e9e0b35409a3be833f3e90764ed16718683daffb6447261db8e5988f2e0519f649aedbc6 icedtea-jdk-includes.patch
978539ba0b1f1694cda6a3a1542a4373861cbfb4dc414a3b796cd8841ecf6e12248c746b5efe2c031c85a3b0684101b29e8a5f4ff70e77c1a3f3cd7f5cb148ce fix-libjvm-load.patch
d3f21cfa958d458624c7b1be807d9f4c0028bc83c5d0f55b72ceb05f0cbad71f9e98dfa5248382828cf7c8ed4678cc76c573aeb8c56476dd4709e4f5a841c028 build-demo-ldflags.patch"
b135991c76b0db8fa7c363e0903624668e11eda7b54a943035c214aa4d7fc8c3e8110ed200edcec82792f3c9393150a9bd628625ddf7f3e55720ff163fbbb471 icedtea-jdk-fix-libjvm-load.patch
dc41a132e310101dfdd0d3e17eba8a53acb67392ab0d16cf09d24084ab467921a9ebfa33cde0e4e63e65c55ce7edcaf12edee10eea66e37b12ac9dba0419ac61 icedtea-jdk-musl.patch
c6caaa69a75dfcf922f7a700a4c780568ead18e8774b9df2c1d86d1ab9f5a21c239952c4053f0f839b4255c0da69d2f42cdd87637db7cf5333076872f63580e0 icedtea-jdk-includes.patch
662d662d0a7a84be2978e921317589f212f3ba3b7629527ba0f1140b5ac4c1024893e0ed176211688ed1a4505968c4befc841ed57ffcdbb9d355c2cb0571b167 icedtea-autoconf-config.patch"
our LDFLAGS has -Wl,-z,relro but the commas are expanded too early in makefile.
--- ./jdk/make/CompileDemos.gmk.orig
+++ ./jdk/make/CompileDemos.gmk
@@ -244,6 +244,7 @@
# eval call below, the comma gets expanded too early.
BUILD_DEMO_JVMTI_$1_CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_DEBUG_SYMBOLS) \
-I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3
+ BUILD_DEMO_JVMTI_$1_LDFLAGS := $(filter-out -incremental:no -opt:ref,$(LDFLAGS_JDKLIB))
# Remove the -incremental:no setting to get .ilk-files like in the old build.
$$(eval $$(call SetupNativeCompilation,BUILD_DEMO_JVMTI_$1, \
@@ -251,7 +252,7 @@
LANG := $$(BUILD_DEMO_JVMTI_$1_LANG), \
OPTIMIZATION := LOW, \
CXXFLAGS := $$($1_CXXFLAGS), \
- LDFLAGS := $(filter-out -incremental:no -opt:ref, $$(LDFLAGS_JDKLIB)), \
+ LDFLAGS := $$(BUILD_DEMO_JVMTI_$1_LDFLAGS), \
LDFLAGS_macosx := $$(call SET_EXECUTABLE_ORIGIN), \
LDFLAGS_SUFFIX := $$($1_EXTRA_CXX), \
LDFLAGS_SUFFIX_posix := $5, \
OpenJDK contains very outdated autoconf-config.guess and autoconf-config.sub
that don't handle triplet with -musl. It also contains wrapper scripts
config.guess and config.sub that we don't need at all.
This patch modifies these wrapper scripts to just include up-to-date
config.guess and config.sub from the icedtea tarball.
--- openjdk.orig/common/autoconf/build-aux/config.guess
+++ openjdk/common/autoconf/build-aux/config.guess
@@ -28,62 +28,4 @@
# and fix the broken property, if needed.
DIR=`dirname $0`
-OUT=`. $DIR/autoconf-config.guess`
-
-# Test and fix solaris on x86_64
-echo $OUT | grep i386-pc-solaris > /dev/null 2> /dev/null
-if test $? = 0; then
- # isainfo -n returns either i386 or amd64
- REAL_CPU=`isainfo -n`
- OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'`
-fi
-
-# Test and fix solaris on sparcv9
-echo $OUT | grep sparc-sun-solaris > /dev/null 2> /dev/null
-if test $? = 0; then
- # isainfo -n returns either sparc or sparcv9
- REAL_CPU=`isainfo -n`
- OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'`
-fi
-
-# Test and fix cygwin on x86_64
-echo $OUT | grep 86-pc-cygwin > /dev/null 2> /dev/null
-if test $? != 0; then
- echo $OUT | grep 86-pc-mingw > /dev/null 2> /dev/null
-fi
-if test $? = 0; then
- case `echo $PROCESSOR_IDENTIFIER | cut -f1 -d' '` in
- intel64|Intel64|INTEL64|em64t|EM64T|amd64|AMD64|8664|x86_64)
- REAL_CPU=x86_64
- OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'`
- ;;
- esac
-fi
-
-# Test and fix architecture string on AIX
-# On AIX 'config.guess' returns 'powerpc' as architecture but 'powerpc' is
-# implicitely handled as 32-bit architecture in 'platform.m4' so we check
-# for the kernel mode rewrite it to 'powerpc64' if we'Re running in 64-bit mode.
-# The check could also be done with `/usr/sbin/prtconf | grep "Kernel Type" | grep "64-bit"`
-echo $OUT | grep powerpc-ibm-aix > /dev/null 2> /dev/null
-if test $? = 0; then
- if [ -x /bin/getconf ] ; then
- KERNEL_BITMODE=`getconf KERNEL_BITMODE`
- if [ "$KERNEL_BITMODE" = "32" ]; then
- KERNEL_BITMODE=""
- fi
- fi
- OUT=powerpc$KERNEL_BITMODE`echo $OUT | sed -e 's/[^-]*//'`
-fi
-
-# Test and fix little endian PowerPC64.
-# TODO: should be handled by autoconf-config.guess.
-if [ "x$OUT" = x ]; then
- if [ `uname -m` = ppc64le ]; then
- if [ `uname -s` = Linux ]; then
- OUT=powerpc64le-unknown-linux-gnu
- fi
- fi
-fi
-
-echo $OUT
+. $DIR/../../../../config.guess
--- openjdk.orig/common/autoconf/build-aux/config.sub
+++ openjdk/common/autoconf/build-aux/config.sub
@@ -28,37 +28,4 @@
# wrap it and fix the broken property, if needed.
DIR=`dirname $0`
-
-# First, filter out everything that doesn't begin with "aarch64-"
-if ! echo $* | grep '^aarch64-' >/dev/null ; then
- . $DIR/autoconf-config.sub "$@"
- # autoconf-config.sub exits, so we never reach here, but just in
- # case we do:
- exit
-fi
-
-while test $# -gt 0 ; do
- case $1 in
- -- ) # Stop option processing
- shift; break ;;
- aarch64-* )
- config=`echo $1 | sed 's/^aarch64-/arm-/'`
- sub_args="$sub_args $config"
- shift; ;;
- - ) # Use stdin as input.
- sub_args="$sub_args $1"
- shift; break ;;
- * )
- sub_args="$sub_args $1"
- shift; ;;
- esac
-done
-
-result=`. $DIR/autoconf-config.sub $sub_args "$@"`
-exitcode=$?
-
-result=`echo $result | sed "s/^arm-/aarch64-/"`
-
-echo $result
-exit $exitcode
-
+. $DIR/../../../../config.sub "$@"
--- src/hotspot.orig/make/linux/makefiles/defs.make
+++ src/hotspot/make/linux/makefiles/defs.make
@@ -292,6 +292,9 @@
--- openjdk.orig/common/autoconf/configure
+++ openjdk/common/autoconf/configure
@@ -96,7 +96,7 @@
}
# Check for local changes
-check_hg_updates
+run_autogen_or_fail
if test -e $conf_custom_script_dir/generated-configure.sh; then
# Test if open configure is newer than custom configure, if so, custom needs to
--- openjdk.orig/common/autoconf/jdk-options.m4
+++ openjdk/common/autoconf/jdk-options.m4
@@ -151,7 +151,7 @@
AC_SUBST(JVM_VARIANT_ZEROSHARK)
AC_SUBST(JVM_VARIANT_CORE)
- INCLUDE_SA=true
+ AC_CHECK_HEADER(thread_db.h,INCLUDE_SA=true,INCLUDE_SA=false)
if test "x$JVM_VARIANT_ZERO" = xtrue ; then
INCLUDE_SA=false
fi
--- openjdk.orig/hotspot/make/linux/makefiles/defs.make
+++ openjdk/hotspot/make/linux/makefiles/defs.make
@@ -309,6 +309,9 @@
# Serviceability Binaries
# No SA Support for PPC, IA64, ARM or zero
......@@ -10,21 +32,25 @@
ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
$(EXPORT_LIB_DIR)/sa-jdi.jar
ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
@@ -304,6 +307,10 @@
ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo
ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo
@@ -326,6 +329,11 @@
endif
+endif
+else
+ADD_SA_BINARIES/x86 =
+ADD_SA_BINARIES/sparc =
endif
endif
+else
+ADD_SA_BINARIES/x86 =
+ADD_SA_BINARIES/sparc =
+ADD_SA_BINARIES/aarch64 =
+endif
ADD_SA_BINARIES/ppc =
ADD_SA_BINARIES/ia64 =
--- src/hotspot.orig/make/linux/makefiles/sa.make
+++ src/hotspot/make/linux/makefiles/sa.make
@@ -61,7 +61,8 @@
ADD_SA_BINARIES/arm =
--- openjdk.orig/hotspot/make/linux/makefiles/sa.make
+++ openjdk/hotspot/make/linux/makefiles/sa.make
@@ -59,9 +59,11 @@
# if $(AGENT_DIR) does not exist, we don't build SA
# also, we don't build SA on Itanium or zero.
+# check for thread_db.h too (musl does not have it).
all:
- if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" \
......@@ -33,9 +59,9 @@
-a "$(SRCARCH)" != "zero" ] ; then \