# Contributor: Timo Teras # Maintainer: Timo Teras pkgname=openjdk7 _icedteaver=2.5.1 _openjdkupdate=60 pkgver=7.$_openjdkupdate.$_icedteaver pkgrel=0 pkgdesc="Sun OpenJDK 7 via IcedTea" url="http://icedtea.classpath.org/" arch="x86 x86_64 armhf" license="GPL-2 with Classpath" depends="$pkgname-jre" options="sover-namecheck" makedepends="findutils tar zip paxctl gawk pkgconfig util-linux autoconf automake nss-dev cups-dev jpeg-dev giflib-dev libpng-dev libxt-dev lcms2-dev libxp-dev libxtst-dev libxinerama-dev libiconv-dev zlib-dev libxrender-dev alsa-lib-dev freetype-dev xulrunner-dev fontconfig-dev gtk+2.0-dev krb5-dev attr-dev ca-certificates libxslt zip" install="" # upstream binary versions RHINO_VER=1_7R3 ANT_VER=1.9.2 case $CARCH in x86) _jarch=i386;; x86_64) _jarch=amd64;; arm*) _jarch=arm;; esac INSTALL_BASE=/usr/lib/jvm/java-1.7-openjdk _jrelib="$INSTALL_BASE/jre/lib/$_jarch" # exclude xawt from ldpath to avoid duplicate provides for libmawt.so # (also in headless). in future this should be a virtual provides. ldpath="$_jrelib:$_jrelib/native_threads:$_jrelib/headless:$_jrelib/server:$_jrelib/jli" somask="libjvm.so" subpackages="$pkgname-jre-lib:jrelib $pkgname-jre $pkgname-jre-base:jrebase $pkgname-doc:doc" if [ "$BOOTSTRAP" != "no" ]; then makedepends="$makedepends java-gcj-compat" BOOTSTRAP_JAVA_HOME=/usr/lib/jvm/java-1.5-gcj/ else makedepends="$makedepends $pkgname" BOOTSTRAP_JAVA_HOME="$INSTALL_BASE" fi _dropsver=$_icedteaver _dropsurl=http://icedtea.classpath.org/download/drops/icedtea7/$_dropsver source="http://icedtea.classpath.org/download/source/icedtea-$_icedteaver.tar.gz saveas-$_dropsurl/openjdk.tar.bz2/openjdk-$_dropsver.tar.bz2 saveas-$_dropsurl/corba.tar.bz2/corba-$_dropsver.tar.bz2 saveas-$_dropsurl/jaxp.tar.bz2/jaxp-$_dropsver.tar.bz2 saveas-$_dropsurl/jaxws.tar.bz2/jaxws-$_dropsver.tar.bz2 saveas-$_dropsurl/jdk.tar.bz2/jdk-$_dropsver.tar.bz2 saveas-$_dropsurl/langtools.tar.bz2/langtools-$_dropsver.tar.bz2 saveas-$_dropsurl/hotspot.tar.bz2/hotspot-$_dropsver.tar.bz2 http://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VER-bin.tar.gz ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino$RHINO_VER.zip fix-paxctl-args.patch icedtea-build-paxmark.patch icedtea-hotspot-musl.patch icedtea-hotspot-noagent-musl.patch icedtea-hotspot-uclibc-fixes.patch icedtea-jdk-fix-build.patch icedtea-jdk-execinfo.patch icedtea-jdk-fix-ipv6-init.patch icedtea-jdk-iconv-uclibc.patch icedtea-jdk-musl.patch icedtea-jdk-no-soname.patch icedtea-jdk-giflib51.patch " # icedtea6-1.9.7-generate_cacerts-1.patch # icedtea-jdk-no-lib-nsl-uclibc.patch _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 tar -C "$srcdir" -zxf apache-ant-$ANT_VER-bin.tar.gz || return 1 unzip -o -q "rhino$RHINO_VER.zip" -d "$srcdir" || return 1 } prepare() { cd "$_builddir" # Busybox sha256 does not support longopts sed -e "s/--check/-c/g" -i Makefile.am for patch in $source; do case $patch in icedtea-*.patch) cp ../$patch patches ;; *.patch) msg "Applying patch $patch" patch -p1 -i "$srcdir"/$patch || return 1 ;; esac done ./autogen.sh } build() { [ -z "$JOBS" ] && export JOBS=`echo $MAKEFLAGS | sed -n -e 's/.*-j\([0-9]\+\).*/\1/p'` export ALT_PARALLEL_COMPILE_JOBS="${JOBS:-2}" export HOTSPOT_BUILD_JOBS="${JOBS:-2}" export JAVA_HOME=$BOOTSTRAP_JAVA_HOME export PATH=$JAVA_HOME/bin:$srcdir/apache-ant-$ANT_VER/bin:$PATH export DISTRIBUTION_PATCHES="" local patch for patch in $source; do case $patch in icedtea-*.patch) export DISTRIBUTION_PATCHES="$DISTRIBUTION_PATCHES patches/$patch" ;; esac done echo "icedtea patches: $DISTRIBUTION_PATCHES" cd "$_builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=$INSTALL_BASE \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --with-parallel-jobs=${JOBS:-2} \ --disable-dependency-tracking \ --disable-downloading \ --with-rhino=$srcdir/rhino$RHINO_VER/js.jar \ --with-openjdk-src-zip=$srcdir/openjdk-$_dropsver.tar.bz2 \ --with-hotspot-src-zip=$srcdir/hotspot-$_dropsver.tar.bz2 \ --with-corba-src-zip=$srcdir/corba-$_dropsver.tar.bz2 \ --with-jaxp-src-zip=$srcdir/jaxp-$_dropsver.tar.bz2 \ --with-jaxws-src-zip=$srcdir/jaxws-$_dropsver.tar.bz2 \ --with-jdk-src-zip=$srcdir/jdk-$_dropsver.tar.bz2 \ --with-langtools-src-zip=$srcdir/langtools-$_dropsver.tar.bz2 \ --with-pax=paxctl \ --with-jdk-home=$BOOTSTRAP_JAVA_HOME \ --with-pkgversion="Alpine ${pkgver}-r${pkgrel}" \ || return 1 make || return 1 } package() { mkdir -p "$pkgdir"/$INSTALL_BASE cp -a "$_builddir"/openjdk.build/j2sdk-image/* "$pkgdir"/$INSTALL_BASE rm "$pkgdir"/$INSTALL_BASE/src.zip } jrelib() { pkgdesc="OpenJDK 7 Java Runtime (class libraries)" arch="noarch" depends="" for A in jre/lib/zi 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 dirname=${A%/*} mkdir -p "$subpkgdir"/$INSTALL_BASE/$dirname mv "$pkgdir"/$INSTALL_BASE/$A "$subpkgdir"/$INSTALL_BASE/$dirname done } jrebase() { pkgdesc="OpenJDK 7 Java Runtime (no GUI support)" depends="$pkgname-jre-lib java-common" # manually provide this to avoid clash with libgcj's libjvm.so provides="so:openjdk7:libjvm.so=0" mkdir -p "$subpkgdir"/$INSTALL_BASE/bin for A in java orbd rmid servertool unpack200 keytool \ pack200 rmiregistry tnameserv ; do mv "$pkgdir"/$INSTALL_BASE/bin/$A "$subpkgdir"/$INSTALL_BASE/bin done # rest of the jre subdir (which were not taken by -jre subpkg) mv "$pkgdir"/$INSTALL_BASE/jre "$subpkgdir"/$INSTALL_BASE } jre() { pkgdesc="OpenJDK 7 Java Runtime" # manually depend to avoid clash with libgcj's libjvm.so depends="so:openjdk7:libjvm.so=0" mkdir -p "$subpkgdir" for A in jre/bin/policytool \ bin/appletviewer \ bin/policytool \ jre/lib/$_jarch/xawt \ jre/lib/$_jarch/libsplashscreen.so ; do dirname=${A%/*} mkdir -p "$subpkgdir"/$INSTALL_BASE/$dirname mv "$pkgdir"/$INSTALL_BASE/$A "$subpkgdir"/$INSTALL_BASE/$dirname done } doc() { default_doc mkdir -p "$subpkgdir"/$INSTALL_BASE/ mv "$pkgdir"/$INSTALL_BASE/man "$subpkgdir"/$INSTALL_BASE/ } md5sums="30fa67392947b2e1b5a608a97fece3ee icedtea-2.5.1.tar.gz 9a599c97007df0f6156767e914063956 openjdk-2.5.1.tar.bz2 381f9c3694b302064520b603feb8aba3 corba-2.5.1.tar.bz2 0c11aeb494fb76143ccf0b58b0b6ac96 jaxp-2.5.1.tar.bz2 ab102f6a0e4bb56a5153d0a005451566 jaxws-2.5.1.tar.bz2 5183620f97e366267568f4e613b71f28 jdk-2.5.1.tar.bz2 04b5c20b2320f75c1f510e0b53f6480c langtools-2.5.1.tar.bz2 79442639a24fedefe0ca5c3a66f87fe1 hotspot-2.5.1.tar.bz2 9a2826a1819aa128629778217af36c55 apache-ant-1.9.2-bin.tar.gz 99d94103662a8d0b571e247a77432ac5 rhino1_7R3.zip 7ea70e69d307dfb801a198bce51405b0 fix-paxctl-args.patch 86829ac37f02f0d631ddde5f164a0015 icedtea-build-paxmark.patch f87dd2c4c3c97fc3ac33080a65ca9e14 icedtea-hotspot-musl.patch aefe00f7f9b91805f402efad9208dd53 icedtea-hotspot-noagent-musl.patch 43023861c5f6efc3139a834aa3ec0476 icedtea-hotspot-uclibc-fixes.patch 07c7ab583808e8c8ceb46aff9c265aa4 icedtea-jdk-fix-build.patch bd623081d5d2e63694c3649975b12412 icedtea-jdk-execinfo.patch 250b0807b59762670954b132e8f8dfba icedtea-jdk-fix-ipv6-init.patch 7c0814181e5adc0763c5c0a24b01d4cb icedtea-jdk-iconv-uclibc.patch 66f6e66eb135f0d88847910f6581d323 icedtea-jdk-musl.patch d014431e70cdabb82a75e4b9ae4c28a9 icedtea-jdk-no-soname.patch 529dd5e5372112470dacc08c95b0c22a icedtea-jdk-giflib51.patch" sha256sums="06483c252099d41e33eade8ceee9231a15ba1e9594f90e2d32943d17c8802acd icedtea-2.5.1.tar.gz 0496072760c521aa184f3c26c1f515a89ef6f9a88df14fa888c6ee6cdd9379b7 openjdk-2.5.1.tar.bz2 d476f22db32e028cc30dda47fec81e5ba0e113f029c3ed7a30edf8fc1404819b corba-2.5.1.tar.bz2 d13778e5bbf6cda22a40b9d5186d2a7d1a3f34d998b1ac4d65fe3abd12fffa25 jaxp-2.5.1.tar.bz2 29c39856af1153620023c3fa0313be2f23dc02208db1a8429ca80d1eebfce06f jaxws-2.5.1.tar.bz2 76194344fca5db4c79e4a2af28efd9fbb2e38e879b5afc59042874519bb5f7fc jdk-2.5.1.tar.bz2 374174ea3b7eb2bb81d9dfae4749d7b3c9037d07004aa59aaa5e8ed5fba922d3 langtools-2.5.1.tar.bz2 78d57f7c207d8f56bba2ee6aec232a836fd51830d352cfa4804d8077d9a7b32b hotspot-2.5.1.tar.bz2 cab1b8754e5f1f2aa869e2ba603903ae5e81a585de4eafd00f173531a11b5a45 apache-ant-1.9.2-bin.tar.gz 885b46e24fe5af23ad3712c5e08e8d97d6d92a4b89e1be860e8fe88e4a3dacd1 rhino1_7R3.zip 2c515d2664a3792561bd635b6df0dd24918feb3095ed938b1ec807b005928e69 fix-paxctl-args.patch b81a5e40ce9a93409e8226fe73a228d1c277343fc4f8a888277beb0d5bf0f551 icedtea-build-paxmark.patch a7922430cb767c8a4baae232c8b2e5f377aeb7cfde0c9901cd7774f078e7f92e icedtea-hotspot-musl.patch afed589db3dbd89513fc890d5b315ca2a5953e8915ff2f24d38448ec145266e9 icedtea-hotspot-noagent-musl.patch 0ef7592b8f2c954eda0a6cf4dc4a4010942f35ea426f44e34412be6c9a949745 icedtea-hotspot-uclibc-fixes.patch 33b18e827a13cc46be11a4491deefac171c8c2c4fbdd3e0cb4a5fdafa560f958 icedtea-jdk-fix-build.patch 6cebef19d8eec5a4623a96c37ae71b79d124a10478c1db33ad5fc71bc04b30e9 icedtea-jdk-execinfo.patch 632683ec88a6fb250ef043aae9cace605d0c669b7058f8c47b62b09b03ecc6c5 icedtea-jdk-fix-ipv6-init.patch a36ff13d81a1f1415bedd595b77f2c43574c546938cce7882cb33bbe63464865 icedtea-jdk-iconv-uclibc.patch b3f82269f69483d3fe137e369f9325003ce7872d886cdf67705b434ce949b5bc icedtea-jdk-musl.patch 6c0bbe710395c4ced1359ab279be6a7c36da5bfb9fd60dc47d920f06a0456d82 icedtea-jdk-no-soname.patch 77fba3032edf6cce549cd4e174d9296684b20f4589dc59179fcc8cba7426a4e9 icedtea-jdk-giflib51.patch" sha512sums="c7565babca6072d10f4210ca2a50e714115a1167a5d97baf915c318fb77b3603e11ea178517b0bc9d593ba40b91b41bccfa8965d2d4c57f31df35074cc0968ab icedtea-2.5.1.tar.gz 94fddea352e2e6bc6ce0099f0fc47cc33ed7b82acf11f96280b6a1b4e019602ebe9bc5f88d0164bdc9eb6aca43e5edf5eae417c6eade211172934e570c4ce6e1 openjdk-2.5.1.tar.bz2 525ebb207fcf85cb117513149a17f132a6c9f3ee1c2109c6e86377e08b45bb647df88363cb1a1a57248792e699468301232ecb1a92b7203b121f57feedf43806 corba-2.5.1.tar.bz2 91b8510519851859b72e6cfe3caf3fc27076de43ecc2fa874c37587ecae9d369ef8873d2a00a0d0ce246152bf9a11b226f7dac8789d81b180f12d8bccd274482 jaxp-2.5.1.tar.bz2 20e5e3fd5700c7000d4ccb5d4b851eccafaa7e4bbc90064884716dfddb32ef80491ef78a8d7ae04e3fac92f5b4fd52befbc58a0c6877cbea4fe7cddbd4458a4c jaxws-2.5.1.tar.bz2 1a46764a323216c32ddd4a56f9e3ec3e8c8979a9117ef64540e8b44c14d9c5f2ea335d92e5cdcfa2a988259ff95725cbf709279b3b293a8723004755a664fe36 jdk-2.5.1.tar.bz2 6592f575d3e2353c54d862f7c2f08bf97b71a72fd2dbcbfaf6ed1de47461f8a104e2fc021b0f3cd812b96cbfc19c8d5e8c748052b390a3941d2e129420139883 langtools-2.5.1.tar.bz2 d92044eaac48155026c48f25799547aac90dde66f51a70f8a00a39089511572ae61c776714f2cc7b7e6b9f093991c1fb588443e57f483c3bfe1d3bc94b5f6da7 hotspot-2.5.1.tar.bz2 618c0c3d80f7c44c2bb8cdfdc2b5278ccd926ab1aa0c8f7099bd0ad5cb4c090f023c0b86c8267052a0a6b1ac57076296fcc16042b9e7a72a1482af63c99e0e49 apache-ant-1.9.2-bin.tar.gz 77964485481e22d20459ea094c773e1930c5ef22d69bc449375a1ead31f340b3a652e2dd85c645e210be1abc8e623aeb560a5dc81629f388322af270ce868d36 rhino1_7R3.zip f4be5689f72e333bda03d9e89aacfd7cd9bd79601d34bdd03fd2935b46efdc277168d8195e27d35c6dff814712a80c832cab2ff02b186c6cb701de3d2a89c6c8 fix-paxctl-args.patch be5410260f05642d592ad16945041505277e3cda48e4693a74ab5d432e1c70976d873fa61510b03c6b5fa2b22178e234628a1c72bd568bb82b39c25fddc0ebec icedtea-build-paxmark.patch 994e8a79a0a23f26d633bf2ce9dad62198c699892f6e7729cc6e509481330399bb2ba736514b516fd2b3dd125fd6c74a127ae7f16d643c3f6a69776737cdb933 icedtea-hotspot-musl.patch 2b2cdf2c27f95ba5557748bcc49c27e498a1e2efb3526da8dea847f3b0a0776dfdd403e898c9bec9187135750183c89bde183c6fc6112109e39d984df77e9b44 icedtea-hotspot-noagent-musl.patch 822eee0dc4d3ba677a289dfeb3668b536d2d626708390a9d9702fb4144a481fd443a215a0d2041c6026113837aafa4ba0b5e9ead8589d2da6717a238bbc95a5a icedtea-hotspot-uclibc-fixes.patch 213a537de5f011cb39d608515c3413513ac75fb93593f9a9ef4205f71d72bdd8b097c80db185f7b26021d5bb85045b866f34f3478482dc4189972d8614a13458 icedtea-jdk-fix-build.patch 0391970e6a32946aa3cccf38fdef9c0fe2af26cd0df824b98aa2fcfa1bf661d4a68e339bffcfd16f386c565fc68bb28a29208a67d4bad8a0e847ad02bd8becbb icedtea-jdk-execinfo.patch 48533f87fc2cf29d26b259be0df51087d2fe5b252e72d00c6ea2f4add7b0fb113141718c116279c5905e03f64a1118082e719393786811367cf4d472b5d36774 icedtea-jdk-fix-ipv6-init.patch a6ee1c63a171859ab1350481bc3e5d464354f1105d80fc72c1d58620672ca5c1a550b954b35917f89537f0aeb28c49470b27522ce53588e42dedff41e074774c icedtea-jdk-iconv-uclibc.patch 44a35941c80f408d0607e32763b3b6ccee21e1d39886309327d3d74d2900117e4346ef59e77c663fd022fec10ee8f365eeb46c1260014d5765d226ce175ce3c5 icedtea-jdk-musl.patch bf4b184e170f7b0ff64ab30d2162784fe2bd5460d1fa31973259f7065fd4c511c46f97724fe2bd72bb94e9006cb568d0e0c87d1a9c90819e65880f8f44830bb1 icedtea-jdk-no-soname.patch b4a90ef63dbaec764569a671f850db42a2257b729858923a3831dafaa098c61a635462ee5c72e7fb3ddb2e54d6ee98ff69bf2b4b4f3ec9310f54caf7739e9e82 icedtea-jdk-giflib51.patch"