wok-next view icedtea6-jdk/receipt @ rev 20930

pyaudio -> python-pyaudio
author Aleksej Bobylev <al.bobylev@gmail.com>
date Thu Aug 23 07:07:52 2018 +0300 (2018-08-23)
parents d43bf7aae921
children f48456621a9d
line source
1 # SliTaz package receipt v2.
3 PACKAGE="icedtea6-jdk"
4 SOURCE="icedtea6"
5 VERSION="1.9.9"
6 CATEGORY="development"
7 SHORT_DESC="A Free Software harness for OpenJDK."
8 MAINTAINER="rcx@zoominternet.net"
9 LICENSE="GPL2"
10 WEB_SITE="http://www.iced-tea.org/"
11 REPOLOGY="icedtea6"
13 TARBALL="$SOURCE-$VERSION.tar.gz"
14 WGET_URL="http://icedtea.wildebeest.org/download/source/$TARBALL"
16 BUILD_DEPENDS="gcc+gcj autoconf automake m4 diffutils gawk cups-dev cpio \
17 coreutils-file-special coreutils-file-summarize alsa-lib-dev file patch perl \
18 zip unzip findutils bzip2 tar glib-dev fastjar rhino ecj apache-ant jpeg-dev \
19 xalan-xerces-j gtk+-dev giflib-dev libpng16-dev xorg-dev xorg-libXtst-dev \
20 xorg-libXp-dev xorg-dev-proto nss nss-dev jdk6-jaxws jdk6-jaxp jdk6-jaf \
21 openjdk-6-src"
22 SPLIT="icedtea6-jdk icedtea6-jre java-jdk java-jre"
24 # Note to icedtea6 updaters,
25 # You should check version into receipts:
26 # * jdk6-jaxws (version: $openjdk_version)
27 # * jdk6-jaxp (version: $openjdk_version)
28 # * jdk6-jaf (version: $openjdk_version)
29 # * openjdk-6-src (version: $openjdk_version-$openjdk_date)
30 # Theses receipts allow to have source tarballs in SRC.
31 openjdk_version="b20"
32 openjdk_date="21_jun_2010"
33 EXTRA_SOURCE_FILES="jdk6-jaxws-$openjdk_version.zip \
34 jdk6-jaxp-$openjdk_version.zip jdk6-jaf-$openjdk_version.zip \
35 openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz"
37 # Rules to configure and make the package.
38 compile_rules()
39 {
40 # Limit memory usage
41 ulimit -v $(awk '/MemTotal/ { print int(($2*80)/100) }' < /proc/meminfo)
43 local JVM_PREFIX
44 JVM_PREFIX="/usr/lib/jvm/java-icedtea"
46 # NOTE: This build does not seem to work with ECJ 3.5
47 local ECJ_VERSION
48 ECJ_VERSION="3.6"
50 cd $src
51 mkdir drops
52 sed -i -e 's/mkdir -p drops/true/' -e 's/ jar xf/ fastjar xf/' Makefile*
54 # Check than all sources files are available, or exit.
55 REPO=http://icedtea.classpath.org/download/drops
56 if [ -x /usr/bin/cook ]; then
57 for i in jdk6-jaxws jdk6-jaxp jdk6-jaf; do
58 [ -s $SRC/$i-$openjdk_version.zip ] ||
59 wget -P $SRC $REPO/$i-$openjdk_version.zip
60 cp $SRC/$i-$openjdk_version.zip drops || return 1
61 done
62 # openjdk-6-src is in BUILD_DEPENDS and must be build like jdk6-* pkgs.
63 [ -s $SRC/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz ] ||
64 wget -P $SRC $REPO/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz
65 cp $SRC/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz .
66 else
67 report open-bloc
68 for i in jdk6-jaxws jdk6-jaxp jdk6-jaf openjdk-6-src; do
69 tazwok get-src $i
70 cp $SRC/$i-$openjdk_version.zip drops
71 done
72 cp $SRC/openjdk-6-src-$openjdk_version-$openjdk_date.tar.gz .
73 report step "Running compilation"
74 fi
76 mem=$(free | awk '/Mem:/ { printf "%d\n",$2/1024 }')
77 cat > slitaz.sh <<EOT
78 # disable currency timebomb
79 find -name GenerateCurrencyData.java | xargs sed -i 's|throw new RuntimeException("time is|System.err.println("time is|' 2> /dev/null
80 find -name CurrencyData.properties | xargs sed -i 's/TR=TRL.*/TR=TRY/' 2> /dev/null
81 # Busybox compatibility
82 #find -name Sanity.gmk | xargs sed -i 's/--sync -kP/-k/' Makefile
83 find -name Platform.gmk | xargs sed -i "s@MB_OF_MEMORY *:=.*free.*@MB_OF_MEMORY := $mem@" Makefile
84 EOT
85 sed -i -e 's|touch .*|&\n\tsh slitaz.sh|' \
86 -e 's/--check/-c/' \
87 -e 's/Bsymbolic/& -lgcj/' \
88 -e 's/ln -sfv/ln -sf/' Makefile*
89 aclocal
90 autoconf &&
91 automake --add-missing &&
92 {
93 ./configure \
94 --prefix=/usr \
95 --disable-plugin \
96 --disable-docs \
97 --with-ecj \
98 --with-ecj-jar=/usr/share/java/ecj-$ECJ_VERSION.jar \
99 --with-gcj \
100 --with-gcj-home=/usr/lib/jvm/java-gcj \
101 --with-xalan2-jar=/usr/share/java/xalan.jar \
102 --with-xalan2-serializer-jar=/usr/share/java/serializer.jar \
103 --with-xerces2-jar=/usr/share/java/xercesImpl.jar \
104 --with-rhino=/usr/share/java/js.jar \
105 --with-abs-install-dir=$JVM_PREFIX \
106 $CONFIGURE_ARGS || return 1
107 make -j 1 ARCH_PREFIX= 2>&1 | sed '/java_lang_ClassLoaderr.NativeLibrary/d'
108 } 2>&1 | sed 's/No such file/no such file/'
110 echo "Copying needed files to install dir..."
111 rm -rf $DESTDIR
113 local JVM_BUILDDIR
114 JVM_BUILDDIR=$src/openjdk.build/j2sdk-image
115 local JVM_DESTDIR
116 JVM_DESTDIR=${DESTDIR}$JVM_PREFIX
117 echo "OpenJDK build : source/openjdk.build/j2sdk-image"
118 echo "OpenJDK install : install/$JVM_PREFIX"
120 echo "Copying JDK files : bin/ lib/"
121 mkdir -p $JVM_DESTDIR
122 cp -a $JVM_BUILDDIR/bin $JVM_DESTDIR
123 cp -a $JVM_BUILDDIR/lib $JVM_DESTDIR
125 echo "Copying JRE files : bin/ lib/"
126 mkdir -p $JVM_DESTDIR/jre
127 cp -a $JVM_BUILDDIR/jre/bin $JVM_DESTDIR/jre
128 cp -a $JVM_BUILDDIR/jre/lib $JVM_DESTDIR/jre
130 # Delete duplicated executables from the JDK bin
131 echo "Deleting duplicated files..."
132 for jbin in $(ls -1 $JVM_DESTDIR/jre/bin) ; do
133 rm -f $JVM_DESTDIR/bin/$jbin
134 done
136 # Create symlinks for JDK binaries
137 echo "Creating symlinks for JDK binaries..."
138 mkdir -p $DESTDIR/usr/jdk-bin
139 for jbin in $(ls -1 $JVM_DESTDIR/bin) ; do
140 ln -s $JVM_PREFIX/bin/$jbin $DESTDIR/usr/jdk-bin/$jbin
141 done
143 # Create symlinks for JRE binaries
144 echo "Creating symlinks for JRE binaries..."
145 mkdir -p $DESTDIR/usr/jre-bin
146 for jbin in $(ls -1 $JVM_DESTDIR/jre/bin) ; do
147 ln -s $JVM_PREFIX/jre/bin/$jbin $JVM_DESTDIR/bin/$jbin
148 ln -s $JVM_PREFIX/jre/bin/$jbin $DESTDIR/usr/jre-bin
149 done
150 if [ ! -x /usr/bin/cook ]; then
151 report close-bloc
152 fi
153 }
155 # Rules to gen a SliTaz package suitable for Tazpkg.
156 genpkg_rules()
157 {
158 case $PACKAGE in
159 icedtea6-jdk)
160 DEPENDS="icedtea6-jre xorg xorg-libXtst xorg-libXp cups"
161 mkdir -p $fs/usr/lib/jvm/java-icedtea
162 cp -a $install/usr/lib/jvm/java-icedtea/bin $fs/usr/lib/jvm/java-icedtea
163 cp -a $install/usr/lib/jvm/java-icedtea/lib $fs/usr/lib/jvm/java-icedtea
164 ;;
165 icedtea6-jre)
166 CAT="development|A Free Software harness for OpenJDK JRE."
167 DEPENDS="glibc-base gcc-lib-base util-linux-uuid alsa-lib \
168 freetype giflib libjpeg libpng16 zlib xorg-libICE \
169 xorg-libSM xorg-libX11 xorg-libXau xorg-libXdmcp \
170 xorg-libXext xorg-libXi xorg-libXrender xorg-libXtst"
171 mkdir -p $fs/usr/lib/jvm/java-icedtea
172 cp -a $install/usr/lib/jvm/java-icedtea/jre $fs/usr/lib/jvm/java-icedtea
173 ;;
174 java-jdk)
175 CAT="development|Symlinks for the default Java Development Kit (icedtea6)."
176 TAGS="java"
177 DEPENDS="icedtea6-jdk"
178 mkdir -p $fs/usr
179 cp -a $install/usr/jdk-bin $fs/usr/bin
180 ;;
181 java-jre)
182 CAT="development|Symlinks for the default Java Runtime Environment (icedtea6)."
183 DEPENDS="icedtea6-jre"
184 mkdir -p $fs/usr
185 cp -a $install/usr/jre-bin $fs/usr/bin
186 ;;
187 esac
188 }
190 # Post install/remove commands for Tazpkg.
191 post_install_icedtea6_jre()
192 {
193 ln -sf /usr/lib/jvm/java-icedtea/bin/java "$1/usr/bin/java"
194 }
196 post_remove_icedtea6_jre()
197 {
198 rm -f "$1/usr/bin/java"
199 }