core/openjdk6/PKGBUILD

185 lines
6.4 KiB
Bash

#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
pkgname=('openjdk6' 'openjdk6-src')
pkgbase="openjdk6"
_javaver=6
_icedteaver=1.11.1
_openjdk_version=b24
_openjdk_date=14_nov_2011
pkgver=${_javaver}.${_openjdk_version}_${_icedteaver}
pkgrel=1
url='http://icedtea.classpath.org'
arch=('i686' 'x86_64')
license=('GPL')
# cat src/icedtea6/hotspot.map or what it downlopads itself / remove from configure to get it
#_hotspotver=62926c7f67a3
makedepends=('gcc-libs' 'xdg-utils' 'hicolor-icon-theme' 'ca-certificates-java' 'libxtst' 'alsa-lib' 'giflib' 'libxp' 'gtk2'
'nspr' 'zlib' 'freetype2' 'libjpeg>=8' 'libx11' 'libcups' 'patch' 'libxt' 'nss' 'libxslt'
'apache-ant' 'autoconf' 'unzip' 'rhino' 'mercurial' 'zip' 'cpio' 'fastjar' 'openjdk6')
options=('!emptydirs') # 'force') # force needed for hg shots
source=(http://icedtea.classpath.org/download/source/icedtea6-${_icedteaver}.tar.gz{,.sig}
http://download.java.net/openjdk/jdk6/promoted/${_openjdk_version}/openjdk-6-src-${_openjdk_version}-${_openjdk_date}.tar.gz
http://icedtea.classpath.org/download/drops/jaxp144_03.zip
http://icedtea.classpath.org/download/drops/jdk6-jaxws2_1_6-2011_06_13.zip
http://icedtea.classpath.org/download/drops/jdk6-jaf-b20.zip
fix_jdk_cmds_path.diff
fix_corba_cmds_path.diff
fontconfig-paths.diff
nonreparenting-wm.diff
openjdk6.profile
openjdk6.profile.csh)
noextract=(openjdk-6-src-${_openjdk_version}-${_openjdk_date}.tar.gz
jaxp144_03.zip
jdk6-jaxws2_1_6-2011_06_13.zip
jdk6-jaf-b20.zip)
md5sums=('e51d9d2f0328cc5aa7a00943abd96ed6'
'4c3f0144c62599ce19a08d3b42f33d29'
'0eabdd360169144336e50081b8d01001'
'9eea471ad474040265c688858fcf09aa'
'8fd91b09b643a19a912b8a75e7a7a9d5'
'bc95c133620bd68c161cac9891592901'
'5da3e39fa60985576c4f37d1491efbe2'
'f7e7a212e50abb56a6ef1a2b1bd27405'
'ee1afda124d5927345014ab382ef581e'
'9b4d368f5ee08de248eaf029303a446c'
'74c4a7adc782edd087802bf92ae3d6d0'
'fdf295e2f186dfa4d308691a3d7ac8c5')
build() {
unset JAVA_HOME
unset CLASSPATH
[ -z "${ANT_HOME}" ] && . /etc/profile.d/apache-ant.sh
_javaver=6
_jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk
cd ${srcdir}/icedtea6-${_icedteaver}
ln -s ${srcdir}/openjdk-6-src-${_openjdk_version}-${_openjdk_date}.tar.gz .
cp ${srcdir}/*.diff ${srcdir}/icedtea6-${_icedteaver}/patches/
autoreconf -i
export DISTRIBUTION_PATCHES="patches/fix_jdk_cmds_path.diff patches/fontconfig-paths.diff patches/fix_corba_cmds_path.diff patches/nonreparenting-wm.diff"
export ALT_PARALLEL_COMPILE_JOBS="${MAKEFLAGS/-j}"
export HOTSPOT_BUILD_JOBS="${ALT_PARALLEL_COMPILE_JOBS}"
unset MAKEFLAGS
./configure --with-parallel-jobs=${HOTSPOT_BUILD_JOBS} \
--with-ant-home=/usr/share/java/apache-ant \
--with-pkgversion=Chakra-Linux-${pkgver}-${pkgrel}-$CARCH \
--with-jaxp-drop-zip=${srcdir}/jaxp144_03.zip \
--with-jaxws-drop-zip=${srcdir}/jdk6-jaxws2_1_6-2011_06_13.zip \
--with-jaf-drop-zip=${srcdir}/jdk6-jaf-b20.zip \
--disable-bootstrap
LD_PRELOAD="" make
}
package_openjdk6() {
pkgdesc='Free Java environment based on OpenJDK 6.0 with IcedTea6 replacing binary plugs.'
backup=(etc/profile.d/openjdk6.sh)
depends=('gcc-libs' 'xdg-utils' 'hicolor-icon-theme' 'ca-certificates-java' 'libxtst' 'libxt' 'nss' 'libjpeg' 'freetype2' 'libxrender' 'libpng')
optdepends=('icedtea-web: web browser plugin + Java Web Start'
'alsa-lib: for sound'
'giflib: for gif format support')
conflicts=('java-environment' 'java-runtime')
provides=('java-environment=6' 'java-runtime=6')
install=openjdk6.install
if [ "${CARCH}" = "x86_64" ]; then
_arch=amd64
else
_arch=i586
fi
_javaver=6
_jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk
cd ${srcdir}/icedtea6-${_icedteaver}
install -m755 -d ${pkgdir}/${_jvmdir}/jre
pushd ${srcdir}/icedtea6-${_icedteaver}/openjdk.build/j2sdk-image
# Install main files.
cp -a bin include lib ${pkgdir}/${_jvmdir}/
cp -a jre/bin jre/lib ${pkgdir}/${_jvmdir}/jre/
mv ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.Ubuntu.properties.src \
${pkgdir}/${_jvmdir}/jre/lib/fontconfig.properties.src
mv ${pkgdir}/${_jvmdir}/jre/lib/fontconfig.Ubuntu.bfc \
${pkgdir}/${_jvmdir}/jre/lib/fontconfig.bfc
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/
# Install demos and samples.
cp -a demo ${pkgdir}/${_jvmdir}/
install -m755 -d sample/rmi
mv bin/java-rmi.cgi sample/rmi
cp -a sample ${pkgdir}/${_jvmdir}/
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
done
# Install desktop files.
install -m755 -d ${pkgdir}/usr/share/applications
install -m644 {jconsole,policytool}.desktop ${pkgdir}/usr/share/applications
# 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
done
popd
# link JKS keystore from ca-certificates-java
rm -f ${pkgdir}/${_jvmdir}/jre/lib/security/cacerts
ln -sf /etc/ssl/certs/java/cacerts "${pkgdir}/${_jvmdir}/jre/lib/security/cacerts"
# set some variables
install -m755 -d ${pkgdir}/etc/profile.d
install -m755 ${srcdir}/openjdk6.profile ${pkgdir}/etc/profile.d/openjdk6.sh
install -m755 ${srcdir}/openjdk6.profile.csh ${pkgdir}/etc/profile.d/openjdk6.csh
# install license
install -Dm644 ${srcdir}//icedtea6-${_icedteaver}/openjdk/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
}
package_openjdk6-src() {
pkgdesc='Free Java environment based on OpenJDK 6.0 Source Bundle'
depends=('openjdk6')
if [ "${CARCH}" = "x86_64" ]; then
_arch=amd64
else
_arch=i586
fi
_javaver=6
_jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk
cd ${srcdir}/icedtea6-${_icedteaver}
install -m755 -d ${pkgdir}/${_jvmdir}/jre
pushd ${srcdir}/icedtea6-${_icedteaver}/openjdk.build/j2sdk-image
# Install src.zip file
cp -a src.zip ${pkgdir}/${_jvmdir}/
}