diff options
Diffstat (limited to 'abs/extra/openjdk6/PKGBUILD')
-rw-r--r-- | abs/extra/openjdk6/PKGBUILD | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/abs/extra/openjdk6/PKGBUILD b/abs/extra/openjdk6/PKGBUILD new file mode 100644 index 0000000..22ee813 --- /dev/null +++ b/abs/extra/openjdk6/PKGBUILD @@ -0,0 +1,155 @@ +# $Id: PKGBUILD 29222 2009-03-06 20:55:45Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> +# Contributor: Jan de Groot <jgc@archlinux.org> + +pkgname=openjdk6 +pkgver=1.5 +_icedteaver=1.5pre +pkgrel=0.1 +_date=20090305 +pkgdesc='Free Java environment based on OpenJDK 6.0 with IcedTea6 replacing binary plugs.' +url='http://icedtea.classpath.org' +arch=('i686' 'x86_64') +license=('GPL') +_openjdk_version=b14 +_openjdk_date=25_nov_2008 +_hotspotver=fc6a5ae3fef5 # what it downlopads itself / remove from configure to get it +depends=('gcc-libs' 'xdg-utils' 'hicolor-icon-theme') +makedepends=('alsa-lib' 'libxtst' 'giflib' 'libxp' 'gtk2' 'nspr' 'zlib' 'freetype2' 'libjpeg' 'libx11' 'libcups' 'patch' 'xalan-java' 'xulrunner>=1.9.0.3' 'apache-ant>=1.7.0' 'autoconf' 'unzip' 'rhino' 'mercurial') +conflicts=('java-environment' 'java-runtime') +provides=('java-environment=6' 'java-runtime=6') +options=(!emptydirs) +install=openjdk6.install +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 + ftp://ftp.archlinux.org/other/openjdk6/icedtea6-${_date}.tar.bz2 + http://hg.openjdk.java.net/jdk7/hotspot/hotspot/archive/${_hotspotver}.tar.gz + fix_jdk_cmds_path.diff + fix_corba_cmds_path.diff + gcjwebplugin_xulrunner.diff + aatext_by_default.diff + fontconfig-paths.diff + openjdk6.profile) +noextract=(openjdk-6-src-${_openjdk_version}-${_openjdk_date}.tar.gz ${_hotspotver}.tar.gz) +md5sums=('9f9773a822156dd3d576d83d794364ce' + 'd57bf545dc50d41588b43112393dac26' + '1c3510387dccdb4907d0fd2f1c58e372' + '5da3e39fa60985576c4f37d1491efbe2' + 'f7e7a212e50abb56a6ef1a2b1bd27405' + 'ed2e808df2d2fc2ea7dae5139d475192' + 'ef60d567c0d9bad111212851220deafd' + '104380f0b900c840141e572a7fb70c27' + 'd0703088e10aa957c037644ab88d716d') + +build() { + # for hg checkout install mercurial and +# mkdir ${srcdir}/icedtea6-${_date} +# cd ${srcdir}/icedtea6-${_date} +# hg clone http://icedtea.classpath.org/hg/icedtea6 || return 1 +# tar -cvjf ../../icedtea6-${_date}.tar.bz2 * +# return 1 + + unset JAVA_HOME + unset CLASSPATH + if [ "${CARCH}" = "x86_64" ]; then + _arch=amd64 + else + _arch=i586 + fi + _javaver=1.6.0 + _jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk + + cd ${srcdir}/icedtea6 +# cd ${srcdir}/icedtea6-${_icedteaver} + ln -s ${srcdir}/openjdk-6-src-${_openjdk_version}-${_openjdk_date}.tar.gz . + ln -s ${srcdir}/${_hotspotver}.tar.gz . + + # fix xulrunner linking + patch -Np0 -i ${srcdir}/gcjwebplugin_xulrunner.diff || return 1 + + cp ${srcdir}/*.diff ${srcdir}/icedtea6/patches/ +# cp ${srcdir}/*.diff ${srcdir}/icedtea6-${_icedteaver}/patches/ + export DISTRIBUTION_PATCHES="patches/fix_jdk_cmds_path.diff patches/fix_corba_cmds_path.diff patches/aatext_by_default.diff patches/fontconfig-paths.diff" + + ./autogen.sh + autoreconf # needed due to mercurial build + + export ALT_PARALLEL_COMPILE_JOBS="${MAKEFLAGS/-j}" + export HOTSPOT_BUILD_JOBS="${ALT_PARALLEL_COMPILE_JOBS}" + unset MAKEFLAGS + + if [ -x ${_jvmdir}/bin/javac ]; then + JCONF="--with-openjdk --with-openjdk-home=${_jvmdir}" + elif [ -x /opt/java/bin/javac ]; then + JCONF="--with-openjdk --with-openjdk-home=/opt/java" + elif [ -x /usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/bin/javac ]; then + JCONF="--with-gcj-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0 --with-javac" + elif [ -x /usr/lib/java-${_javaver}-openjdk/bin/javac ]; then + JCONF="--with-openjdk --with-openjdk-home=/usr/lib/java-${_javaver}-openjdk" + # ^ only fallback to build with broken 1.2-3, can be removed later + else + echo "No supported java installation found, install either openjdk6, jdk or java-gcj-compat" + return 1 + fi + + ./configure --with-parallel-jobs=${HOTSPOT_BUILD_JOBS} \ + --with-xalan2-jar=/usr/share/java/xalan.jar \ + --with-hotspot-src-zip=${_hotspotver}.tar.gz \ + --with-pkgversion=ArchLinux-${pkgver}-${pkgrel}-$CARCH $JCONF + LD_PRELOAD="" make || return 1 + + install -m755 -d ${pkgdir}/${_jvmdir}/jre + + pushd ${srcdir}/icedtea6/openjdk/control/build/linux-${_arch}/j2sdk-image +# pushd ${srcdir}/icedtea6-${_icedteaver}/openjdk/control/build/linux-${_arch}/j2sdk-image + # Install main files. + cp -a bin include lib src.zip ${pkgdir}/${_jvmdir}/ || return 1 + cp -a jre/bin jre/lib ${pkgdir}/${_jvmdir}/jre/ || return 1 + + mv ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.Ubuntu.properties.src \ + ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.properties.src || return 1 + mv ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.Ubuntu.bfc \ + ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.bfc || return 1 + rm -f ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.*.bfc + rm -f ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.*.properties.src + + # Install man pages. + install -m755 -d ${pkgdir}/usr/share/man/man1 + install -m644 man/man1/*.1 ${pkgdir}/usr/share/man/man1/ || return 1 + + # Install demos and samples. + cp -a demo ${pkgdir}/${_jvmdir}/ || return 1 + install -m755 -d sample/rmi + mv bin/java-rmi.cgi sample/rmi || return 1 + cp -a sample ${pkgdir}/${_jvmdir}/ || return 1 + popd + + # Install icons and menu entries. + for s in 16 24 32 48 ; do + install -m755 -d ${pkgdir}/usr/share/icons/hicolor/${s}x${s}/apps + install -m644 openjdk/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \ + ${pkgdir}/usr/share/icons/hicolor/${s}x${s}/apps/java.png || return 1 + done + + # Install desktop files. + install -m755 -d ${pkgdir}/usr/share/{applications,pixmaps} + install -m644 javaws.png ${pkgdir}/usr/share/pixmaps || return 1 + install -m644 {javaws,jconsole,policytool}.desktop ${pkgdir}/usr/share/applications || return 1 + + # link the mozilla-plugin + install -m755 -d ${pkgdir}/usr/lib/mozilla/plugins/ + ln -sf ${_jvmdir}/jre/lib/${_arch/i586/i386}/IcedTeaPlugin.so ${pkgdir}/usr/lib/mozilla/plugins/ || return 1 + + # link binaries into /usr/bin + install -m755 -d ${pkgdir}/usr/bin + pushd ${pkgdir}/${_jvmdir}/bin + for file in *; do + ln -sf ${_jvmdir}/bin/${file} \ + ${pkgdir}/usr/bin || return 1 + done + popd + + # set some variables + install -m755 -d ${pkgdir}/etc/profile.d + install -m755 ${srcdir}/openjdk6.profile ${pkgdir}/etc/profile.d/openjdk6.sh || return 1 +} |