# Contributor: Timo Teras # Maintainer: Timo Teras pkgname=openjdk6 _icedteaver=1.12.8 _openjdkbuild=27 pkgver=6.$_openjdkbuild.$_icedteaver pkgrel=1 pkgdesc="Sun OpenJDK 6 via IcedTea" url="http://icedtea.classpath.org/" arch="x86 x86_64" 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 libxp-dev libxtst-dev libxinerama-dev libiconv-dev libxrender-dev alsa-lib-dev freetype-dev xulrunner-dev gtk+2.0-dev ca-certificates libxslt zip" install="" INSTALL_BASE=/usr/lib/jvm/java-1.6-openjdk 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 OPENJDK_VERSION=b$_openjdkbuild OPENJDK_DATE=26_oct_2012 RHINO_VER=1_7R3 ANT_VER=1.9.2 case $CARCH in x86) _jarch=i386;; x86_64) _jarch=amd64;; arm) _jarch=arm;; esac # exclude xawt from ldpath to avoid duplicate provides for libmawt.so (also in # headless). # infuture this should be a virtual provides _jrelib="$INSTALL_BASE/jre/lib/$_jarch" 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" source="http://download.java.net/openjdk/jdk6/promoted/$OPENJDK_VERSION/openjdk-6-src-$OPENJDK_VERSION-$OPENJDK_DATE.tar.gz http://icedtea.classpath.org/download/source/icedtea6-$_icedteaver.tar.gz 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 icedtea-hotspot-uclibc-fixes.patch icedtea-hotspot-musl.patch icedtea-hotspot-noagent-musl.patch icedtea-jdk-fix-ipv6-init.patch icedtea-jdk-iconv-uclibc.patch icedtea-jdk-execinfo.patch icedtea-jdk-musl.patch icedtea-jdk-no-lib-nsl-uclibc.patch icedtea6-1.9.7-generate_cacerts-1.patch icedtea-jdk-no-soname.patch fix-with-pax.patch " _builddir="$srcdir/icedtea6-$_icedteaver" unpack() { if [ -z "$force" ]; then verify || return 1 initdcheck || return 1 fi mkdir -p "$srcdir" msg "Unpacking sources..." tar -C "$srcdir" -zxf icedtea6-$_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 } build() { [ -z "$JOBS" ] && export JOBS=`echo $MAKEFLAGS | sed -n -e 's/.*-j\([0-9]\+\).*/\1/p'` 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" local _bootstrap="" [ "$BOOTSTRAP" = "no" ] && _bootstrap="--disable-bootstrap" cd "$_builddir" sh autogen.sh ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --disable-dependency-tracking \ --disable-downloading \ --with-parallel-jobs=${JOBS:-2} \ --enable-cacerts \ --with-ca-dir=/etc/ssl/certs \ --with-jdk-home=$BOOTSTRAP_JAVA_HOME \ --with-pax=paxctl \ $_bootstrap \ --with-openjdk-src-zip=$srcdir/openjdk-6-src-$OPENJDK_VERSION-$OPENJDK_DATE.tar.gz \ --with-ant-home=$srcdir/apache-ant-$ANT_VER \ --with-rhino=$srcdir/rhino$RHINO_VER/js.jar \ --with-pkgversion="Alpine ${pkgver}-r${pkgrel}" \ --with-abs-install-dir="$INSTALL_BASE" \ || 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 scanelf --nobanner "$pkgdir"/$INSTALL_BASE/bin/* | awk '{print $2}' \ | xargs paxctl -c -mr } jrelib() { pkgdesc="OpenJDK 6 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 6 Java Runtime (no GUI support)" depends="$pkgname-jre-lib java-common" # manually provide this to avoid clash with libgcj's libjvm.so provides="so:openjdk6: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 # all java stuff seems to need mprotect and randomization off # or otherwise the vm fails to allocate enough memory paxctl -c -mr \ "$subpkgdir"/$INSTALL_BASE/bin/* \ "$subpkgdir"/$INSTALL_BASE/jre/bin/* } jre() { pkgdesc="OpenJDK 6 Java Runtime" # manually depend to avoid clash with libgcj's libjvm.so depends="so:openjdk6: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="3a0963158e07c8829c8bd31a698bd23d openjdk-6-src-b27-26_oct_2012.tar.gz 7712c4b3b9f8092aa8c7b5cad0b46d06 icedtea6-1.12.8.tar.gz 9a2826a1819aa128629778217af36c55 apache-ant-1.9.2-bin.tar.gz 99d94103662a8d0b571e247a77432ac5 rhino1_7R3.zip 58c107b4c03cd365b4ddf0bfd8179cc4 icedtea-hotspot-uclibc-fixes.patch e9beae91433317ccf785bccafaf53b1b icedtea-hotspot-musl.patch 50ccd48072537d6e9bc562cb65431871 icedtea-hotspot-noagent-musl.patch 250b0807b59762670954b132e8f8dfba icedtea-jdk-fix-ipv6-init.patch 7c0814181e5adc0763c5c0a24b01d4cb icedtea-jdk-iconv-uclibc.patch bd623081d5d2e63694c3649975b12412 icedtea-jdk-execinfo.patch 9c7810cb0ff1e89935690e4810199c1f icedtea-jdk-musl.patch c4bb40d5b1ff690b27900c5cd06bc1e5 icedtea-jdk-no-lib-nsl-uclibc.patch 0bc0131c87fcc0d1046e3ba20d205c73 icedtea6-1.9.7-generate_cacerts-1.patch d014431e70cdabb82a75e4b9ae4c28a9 icedtea-jdk-no-soname.patch d2999b5b67afe485554d14ecd1aa6046 fix-with-pax.patch" sha256sums="044c3877b15940ff04f8aa817337f2878a00cc89674854557f1a02f15b1802a0 openjdk-6-src-b27-26_oct_2012.tar.gz c2ad74af29af774f778675d3fde952f4defebb2be44f565253d788e2e7af39d4 icedtea6-1.12.8.tar.gz cab1b8754e5f1f2aa869e2ba603903ae5e81a585de4eafd00f173531a11b5a45 apache-ant-1.9.2-bin.tar.gz 885b46e24fe5af23ad3712c5e08e8d97d6d92a4b89e1be860e8fe88e4a3dacd1 rhino1_7R3.zip 6f3642c6c29b8be6c5fe0f204183bc05e57459546ea64de0491713963b8a8ebd icedtea-hotspot-uclibc-fixes.patch d3ad6890f6732f0a87a44de0914fe4146078c204808573118ff7716142f67823 icedtea-hotspot-musl.patch 3332640b95773532c197d7d8818bfb2ee3217093e4a6bc57914bda355423c842 icedtea-hotspot-noagent-musl.patch 632683ec88a6fb250ef043aae9cace605d0c669b7058f8c47b62b09b03ecc6c5 icedtea-jdk-fix-ipv6-init.patch a36ff13d81a1f1415bedd595b77f2c43574c546938cce7882cb33bbe63464865 icedtea-jdk-iconv-uclibc.patch 6cebef19d8eec5a4623a96c37ae71b79d124a10478c1db33ad5fc71bc04b30e9 icedtea-jdk-execinfo.patch 7c5dc3744be7394c106ced3418ce8eb5a0860660d11dce8eb95c6b4faf630958 icedtea-jdk-musl.patch 6bba2870af0c5eac7b6edb7351e8e1833db401b1bf6b4861a14dcb1fd45cbea6 icedtea-jdk-no-lib-nsl-uclibc.patch f83dea0ee1d11deceb45d643cf0cce84099775de88b972e3ea979a8529bf4c85 icedtea6-1.9.7-generate_cacerts-1.patch 6c0bbe710395c4ced1359ab279be6a7c36da5bfb9fd60dc47d920f06a0456d82 icedtea-jdk-no-soname.patch b6aab36220a1318f344573041c28885cfa5ab6e21f393995f47c19db9f09917c fix-with-pax.patch" sha512sums="4198f11b2f49c9bc5ffbeadf2d0d87dfa413a918d49faff3a043266bf4a2fa99579fba3c6d75164d87e88b8fc5c97c3c1527560eb25c55cdd42ad813c8e175e8 openjdk-6-src-b27-26_oct_2012.tar.gz 8e1cdf4124ee7b7c67f1832043546aea530de98ace3bb2177a5015c24aa81f8fd5f5b2a84f3dee7fb83cfb1680eef1fa17af0464c73a6b8947926a2d2c91d202 icedtea6-1.12.8.tar.gz 618c0c3d80f7c44c2bb8cdfdc2b5278ccd926ab1aa0c8f7099bd0ad5cb4c090f023c0b86c8267052a0a6b1ac57076296fcc16042b9e7a72a1482af63c99e0e49 apache-ant-1.9.2-bin.tar.gz 77964485481e22d20459ea094c773e1930c5ef22d69bc449375a1ead31f340b3a652e2dd85c645e210be1abc8e623aeb560a5dc81629f388322af270ce868d36 rhino1_7R3.zip 1fcc9d22bdc0a991e1739f2d15db73c7ada7640223eb79a9db3bfe106c39b0228e9196af10eba754a2f3f6f26b9b2c4b814be23b3149f72103a369bbc5c0fae8 icedtea-hotspot-uclibc-fixes.patch 8039e155511e066e4c7031b0ad4fe721a86f3be859e949f2e30fda5cefb04d4e1cf64059f6603325f5f13434855346931659c07b1e8527959767f3ff7f83df7b icedtea-hotspot-musl.patch f079b4f353a54b8927609c3ce2836ccce0495830557de0c66402e3a0e3f30f08dec4832e4b2fab6fc57d1dbedd1ef93fb15d994ebcec823663cd5a6e90c14c8a icedtea-hotspot-noagent-musl.patch 48533f87fc2cf29d26b259be0df51087d2fe5b252e72d00c6ea2f4add7b0fb113141718c116279c5905e03f64a1118082e719393786811367cf4d472b5d36774 icedtea-jdk-fix-ipv6-init.patch a6ee1c63a171859ab1350481bc3e5d464354f1105d80fc72c1d58620672ca5c1a550b954b35917f89537f0aeb28c49470b27522ce53588e42dedff41e074774c icedtea-jdk-iconv-uclibc.patch 0391970e6a32946aa3cccf38fdef9c0fe2af26cd0df824b98aa2fcfa1bf661d4a68e339bffcfd16f386c565fc68bb28a29208a67d4bad8a0e847ad02bd8becbb icedtea-jdk-execinfo.patch fb9b324763e75a24b7174a5b25a064947d31f25b51e45b3b5225adf02a6eae98467aa1d0edfe606e93621b560900ab4c5acab09be411edff86cd82f6ba830cd3 icedtea-jdk-musl.patch 833ec90fa9d3d26191303201012e4b8ca220d634497277f7e8c703ca03753720343e22c97dd2f10cd3e3be79c84f95b8c7d0db21545b8a35761c0de7cb834e7a icedtea-jdk-no-lib-nsl-uclibc.patch 5fbf3571abd6e0eece8fecd45365996ff83368d674782da3435681afdd6cbb51c6da7e8e4d9ca3ba767a1d373a01d0a4109d1c9bf9b93109a34accaee134a8ab icedtea6-1.9.7-generate_cacerts-1.patch bf4b184e170f7b0ff64ab30d2162784fe2bd5460d1fa31973259f7065fd4c511c46f97724fe2bd72bb94e9006cb568d0e0c87d1a9c90819e65880f8f44830bb1 icedtea-jdk-no-soname.patch 7f8ce4b35856ec8c023bdca682773bebeebe9c11652259b968efad370be24885c22bf7bdd687c6665385ca89f75a7df38429e5a7ea4828cdd8be49fce3f8878c fix-with-pax.patch"