wok annotate icedtea6-jdk/receipt @ rev 14337

Add EXTRA_SOURCE_FILES variable to track sources files for the mirrors
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sat Apr 13 19:32:46 2013 +0200 (2013-04-13)
parents 3cc862ed2129
children b34465f3089b
rev   line source
rcx@3803 1 # SliTaz package receipt.
rcx@3803 2
rcx@3803 3 PACKAGE="icedtea6-jdk"
rcx@3803 4 SOURCE="icedtea6"
slaxemulator@9235 5 VERSION="1.9.7"
rcx@3803 6 CATEGORY="development"
rcx@3803 7 SHORT_DESC="A Free Software harness for OpenJDK."
rcx@3803 8 MAINTAINER="rcx@zoominternet.net"
rcx@3803 9 TARBALL="$SOURCE-$VERSION.tar.gz"
rcx@3803 10 WEB_SITE="http://www.iced-tea.org/"
rcx@3803 11 WGET_URL="http://icedtea.classpath.org/download/source/$TARBALL"
rcx@3803 12
pankso@10639 13 DEPENDS="icedtea6-jre xorg xorg-libXtst xorg-libXp cups"
pankso@10639 14 BUILD_DEPENDS="gcc+gcj autoconf automake m4 diffutils gawk cups-dev wget cpio \
pankso@10639 15 coreutils-file-special coreutils-file-summarize alsa-lib-dev file patch perl \
pankso@10639 16 zip unzip findutils bzip2 tar glib-dev fastjar rhino ecj apache-ant jpeg-dev \
pankso@10639 17 xalan-xerces-j gtk+-dev giflib-dev libpng-dev xorg-dev xorg-libXtst-dev \
pankso@10639 18 xorg-libXp-dev xorg-dev-proto nss nss-dev jdk6-jaxws jdk6-jaxp jdk6-jaf \
pankso@10639 19 openjdk-6-src"
pankso@10639 20
gokhlayeh@9223 21 # Note to icedtea6 updaters,
gokhlayeh@9223 22 # You should check version into receipts:
gokhlayeh@9223 23 # * jdk6-jaxws (version: $openjdk_version)
gokhlayeh@9223 24 # * jdk6-jaxp (version: $openjdk_version)
gokhlayeh@9223 25 # * jdk6-jaf (version: $openjdk_version)
gokhlayeh@9223 26 # * openjdk-6-src (version: $openjdk_version-$openjdk_date)
pankso@10639 27 # Theses receipts allow to have source tarballs in SRC.
slaxemulator@6866 28 openjdk_version="b20"
slaxemulator@6866 29 openjdk_date="21_jun_2010"
pascal@14337 30 EXTRA_SOURCE_FILES="jdk6-jaxws-$openjdk_version.zip \
pascal@14337 31 jdk6-jaxp-$openjdk_version.zip jdk6-jaf-$openjdk_version.zip \
pascal@14337 32 openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz"
slaxemulator@6866 33
rcx@3803 34 # Rules to configure and make the package.
rcx@3803 35 compile_rules()
rcx@3803 36 {
pascal@6031 37 # Limit memory usage
pascal@6031 38 ulimit -v $(awk '/MemTotal/ { print int(($2*80)/100) }' < /proc/meminfo)
pascal@6031 39
rcx@3803 40 local JVM_PREFIX
rcx@6017 41 JVM_PREFIX="/usr/lib/jvm/java-icedtea"
rcx@3910 42
rcx@3803 43 # NOTE: This build does not seem to work with ECJ 3.5
rcx@6017 44 local ECJ_VERSION
rcx@6017 45 ECJ_VERSION="3.6"
rcx@3803 46
rcx@3803 47 cd $src
pascal@6034 48 mkdir drops
rcx@6059 49 sed -i -e 's/mkdir -p drops/true/' -e 's/ jar xf/ fastjar xf/' Makefile*
gokhlayeh@9223 50
gokhlayeh@9223 51 # Check than all sources files are available, or exit.
pascal@12980 52 REPO=http://icedtea.classpath.org/download/drops
gokhlayeh@12083 53 if [ -x /usr/bin/cook ]; then
gokhlayeh@12083 54 for i in jdk6-jaxws jdk6-jaxp jdk6-jaf; do
pascal@12980 55 [ -s $SOURCES_REPOSITORY/$i-$openjdk_version.zip ] ||
pascal@12980 56 wget -P $SOURCES_REPOSITORY $REPO/$i-$openjdk_version.zip
gokhlayeh@12083 57 cp $SOURCES_REPOSITORY/$i-$openjdk_version.zip drops || return 1
gokhlayeh@12083 58 done
gokhlayeh@12083 59 # openjdk-6-src is in BUILD_DEPENDS and must be build like jdk6-* pkgs.
pascal@12980 60 [ -s $SOURCES_REPOSITORY/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz ] ||
pascal@12980 61 wget -P $SOURCES_REPOSITORY $REPO/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz
gokhlayeh@12083 62 cp $SOURCES_REPOSITORY/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz .
gokhlayeh@12083 63 else
gokhlayeh@12083 64 report open-bloc
gokhlayeh@12083 65 for i in jdk6-jaxws jdk6-jaxp jdk6-jaf openjdk-6-src; do
gokhlayeh@12083 66 tazwok get-src $i
gokhlayeh@12083 67 cp $SOURCES_REPOSITORY/$i-$openjdk_version.zip drops
gokhlayeh@12083 68 done
gokhlayeh@12083 69 cp $SOURCES_REPOSITORY/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz .
gokhlayeh@12083 70 report step "Running compilation"
gokhlayeh@12083 71 fi
slaxemulator@6894 72
pascal@5915 73 mem=$(free | awk '/Mem:/ { printf "%d\n",$2/1024 }')
pascal@4304 74 cat > slitaz.sh <<EOT
pascal@4304 75 # Busybox compatibility
slaxemulator@6892 76 #find -name Sanity.gmk | xargs sed -i 's/--sync -kP/-k/' Makefile
pascal@6034 77 find -name Platform.gmk | xargs sed -i "s@MB_OF_MEMORY *:=.*free.*@MB_OF_MEMORY := $mem@" Makefile
pascal@4304 78 EOT
pascal@6034 79 sed -i -e 's|touch .*|&\n\tsh slitaz.sh|' \
pascal@5152 80 -e 's/--check/-c/' \
pascal@4304 81 -e 's/ln -sfv/ln -sf/' Makefile*
rcx@3803 82 autoreconf &&
rcx@3803 83 ./configure \
rcx@3803 84 --prefix=/usr \
rcx@3803 85 --disable-plugin \
rcx@3803 86 --disable-docs \
rcx@3803 87 --with-ecj \
rcx@6017 88 --with-ecj-jar=/usr/share/java/ecj-$ECJ_VERSION.jar \
rcx@3803 89 --with-gcj \
rcx@3803 90 --with-gcj-home=/usr/lib/jvm/java-gcj \
rcx@3803 91 --with-xalan2-jar=/usr/share/java/xalan.jar \
rcx@3803 92 --with-xalan2-serializer-jar=/usr/share/java/serializer.jar \
rcx@3803 93 --with-xerces2-jar=/usr/share/java/xercesImpl.jar \
rcx@3803 94 --with-rhino=/usr/share/java/js.jar \
rcx@3803 95 --with-abs-install-dir=$JVM_PREFIX \
gokhlayeh@12083 96 $CONFIGURE_ARGS || return 1
pankso@10650 97 make -j 1 ARCH_PREFIX= 2>&1 | sed s/ERROR/error/
rcx@3803 98
pankso@10641 99 echo "Copying needed files to install dir..."
gokhlayeh@9223 100 rm -rf $DESTDIR
rcx@3803 101
rcx@3803 102 local JVM_BUILDDIR
slaxemulator@6927 103 JVM_BUILDDIR=$src/openjdk.build/j2sdk-image
rcx@3803 104 local JVM_DESTDIR
pankso@10639 105 JVM_DESTDIR=${DESTDIR}$JVM_PREFIX
pankso@10654 106 echo "OpenJDK build : source/openjdk.build/j2sdk-image"
pankso@10654 107 echo "OpenJDK install : install/$JVM_PREFIX"
rcx@3803 108
pankso@10654 109 echo "Copying JDK files : bin/ lib/"
rcx@3803 110 mkdir -p $JVM_DESTDIR
rcx@3803 111 cp -a $JVM_BUILDDIR/bin $JVM_DESTDIR
rcx@3803 112 cp -a $JVM_BUILDDIR/lib $JVM_DESTDIR
pankso@10641 113
pankso@10654 114 echo "Copying JRE files : bin/ lib/"
rcx@3803 115 mkdir -p $JVM_DESTDIR/jre
rcx@3803 116 cp -a $JVM_BUILDDIR/jre/bin $JVM_DESTDIR/jre
rcx@3803 117 cp -a $JVM_BUILDDIR/jre/lib $JVM_DESTDIR/jre
rcx@3803 118
rcx@3803 119 # Delete duplicated executables from the JDK bin
pankso@10641 120 echo "Deleting duplicated files..."
rcx@3803 121 for jbin in $(ls -1 $JVM_DESTDIR/jre/bin) ; do
rcx@3803 122 rm -f $JVM_DESTDIR/bin/$jbin
rcx@3803 123 done
rcx@3803 124
rcx@3803 125 # Create symlinks for JDK binaries
pankso@10641 126 echo "Creating symlinks for JDK binaries..."
gokhlayeh@9223 127 mkdir -p $DESTDIR/usr/jdk-bin
rcx@3803 128 for jbin in $(ls -1 $JVM_DESTDIR/bin) ; do
gokhlayeh@9223 129 ln -s $JVM_PREFIX/bin/$jbin $DESTDIR/usr/jdk-bin/$jbin
rcx@3803 130 done
rcx@3803 131
rcx@3803 132 # Create symlinks for JRE binaries
pankso@10641 133 echo "Creating symlinks for JRE binaries..."
gokhlayeh@9223 134 mkdir -p $DESTDIR/usr/jre-bin
rcx@3803 135 for jbin in $(ls -1 $JVM_DESTDIR/jre/bin) ; do
rcx@3803 136 ln -s $JVM_PREFIX/jre/bin/$jbin $JVM_DESTDIR/bin/$jbin
gokhlayeh@9223 137 ln -s $JVM_PREFIX/jre/bin/$jbin $DESTDIR/usr/jre-bin
rcx@3803 138 done
gokhlayeh@12083 139 if [ ! -x /usr/bin/cook ]; then
gokhlayeh@12083 140 report close-bloc
gokhlayeh@12083 141 fi
rcx@3803 142 }
rcx@3803 143
rcx@3803 144 # Rules to gen a SliTaz package suitable for Tazpkg.
rcx@3803 145 genpkg_rules()
rcx@3803 146 {
rcx@3803 147 mkdir -p $fs/usr/lib/jvm/java-icedtea
pascal@14337 148 cp -a $install/usr/lib/jvm/java-icedtea/bin $fs/usr/lib/jvm/java-icedtea
pascal@14337 149 cp -a $install/usr/lib/jvm/java-icedtea/lib $fs/usr/lib/jvm/java-icedtea
rcx@3803 150 }