aboutsummaryrefslogblamecommitdiffstats
path: root/community/openjdk7/APKBUILD
blob: 528b0fa201f2d4bb5b2460bcbd4bb26863957ec8 (plain) (tree)
1
2
3
4
5
6
7
8
9
10


                                             
                 

                                      
                        
        

                                   
          
                             

                         
                                                                        


                                                                      
                                                                     
                                                                    
                                                                          


                          
               
             



                      

                                                                    
                                                        
                                     







                                                                                        
                        











                                                                           
                      
                                                                         

                                                                                






                                                                  
                                                                                  
                                                                                                                                 
 





                                          




                                         


























































                                                                                              
                                        







                                                             






                                                                               
                                    
                                                      


                                                                 


                                         
                        
 





                                                                              


                                                             


















                                                                                 









                                                                                


                                                             
















                                                                                 


                                                             







                                                                  








                                                               
                                                
                                                            
                                                                    



                                                                    
                                                        
                                                              








                                                                                                  
                                                                                
                                                                                            
                                                                                                    



                                                                                                    
                                                                                        
                                                                                              








                                                                                                                                                                  
                                                                                                                                                
                                                                                                                                                            
                                                                                                                                                                    



                                                                                                                                                                    
                                                                                                                                                        
                                                                                                                                                              
# Contributor: Timo Teras <timo.teras@iki.fi>
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=openjdk7
_icedteaver=2.6.3
# pkgver is <JDK version>.<JDK update>
# check icedtea JDK when updating
pkgver=7.91.$_icedteaver
pkgrel=1
pkgdesc="Sun OpenJDK 7 via IcedTea"
url="http://icedtea.classpath.org/"
arch="all"
license="GPL2 with Classpath"
depends="$pkgname-jre"
options="sover-namecheck"
makedepends="bash findutils tar zip file paxmark gawk util-linux libxslt
	     autoconf automake linux-headers
	     ca-certificates
	     nss-dev cups-dev jpeg-dev giflib-dev libpng-dev libxt-dev
	     lcms2-dev libxp-dev libxtst-dev libxinerama-dev zlib-dev
	     libxrender-dev alsa-lib-dev freetype-dev fontconfig-dev
	     gtk+2.0-dev krb5-dev attr-dev pcsc-lite-dev lksctp-tools-dev"
install=""

# upstream binary versions
RHINO_VER=1.7.7
ANT_VER=1.9.6

case $CARCH in
x86)	_jarch=i386;;
x86_64)	_jarch=amd64;;
arm*)	_jarch=arm
	# openjdk has quite a bit of arm assembly producing textrels
	# and it's non trivial to fix. allow it for now.
	options="$options textrels";;
esac

INSTALL_BASE=/usr/lib/jvm/java-1.7-openjdk
_jrelib="$INSTALL_BASE/jre/lib/$_jarch"

# exclude xawt from ldpath to avoid duplicate provides for libmawt.so
# (also in headless). in future this should be a virtual provides.
ldpath="$_jrelib:$_jrelib/native_threads:$_jrelib/headless:$_jrelib/server:$_jrelib/jli"
sonameprefix="$pkgname:"

subpackages="$pkgname-jre-lib:jrelib $pkgname-jre $pkgname-jre-base:jrebase
	     $pkgname-doc:doc"

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

_dropsver=$_icedteaver
_dropsurl=http://icedtea.classpath.org/download/drops/icedtea7/$_dropsver

source="http://icedtea.classpath.org/download/source/icedtea-$_icedteaver.tar.gz
	openjdk-$_dropsver.tar.bz2::$_dropsurl/openjdk.tar.bz2
	corba-$_dropsver.tar.bz2::$_dropsurl/corba.tar.bz2
	jaxp-$_dropsver.tar.bz2::$_dropsurl/jaxp.tar.bz2
	jaxws-$_dropsver.tar.bz2::$_dropsurl/jaxws.tar.bz2
	jdk-$_dropsver.tar.bz2::$_dropsurl/jdk.tar.bz2
	langtools-$_dropsver.tar.bz2::$_dropsurl/langtools.tar.bz2
	hotspot-$_dropsver.tar.bz2::$_dropsurl/hotspot.tar.bz2
	http://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VER-bin.tar.gz
	https://github.com/mozilla/rhino/releases/download/Rhino$(echo ${RHINO_VER} | sed s'/\./_/g')_RELEASE/rhino$RHINO_VER.zip

	icedtea-hotspot-musl.patch
	icedtea-hotspot-noagent-musl.patch
	icedtea-hotspot-uclibc-fixes.patch
	icedtea-jdk-fix-build.patch
	icedtea-jdk-execinfo.patch
	icedtea-jdk-fix-ipv6-init.patch
	icedtea-jdk-musl.patch
	icedtea-jdk-no-soname.patch
	"

# icedtea6-1.9.7-generate_cacerts-1.patch

_builddir="$srcdir/icedtea-$_icedteaver"

unpack() {
	if [ -z "$force" ]; then
		verify || return 1
		initdcheck || return 1
	fi
	mkdir -p "$srcdir"
	msg "Unpacking sources..."
	tar -C "$srcdir" -zxf icedtea-$_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

	./autogen.sh
}

build() {
	[ -z "$JOBS" ] && export JOBS=`echo $MAKEFLAGS | sed -n -e 's/.*-j\([0-9]\+\).*/\1/p'`
	export ALT_PARALLEL_COMPILE_JOBS="${JOBS:-2}"
	export HOTSPOT_BUILD_JOBS="${JOBS:-2}"

	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"

	cd "$_builddir"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=$INSTALL_BASE \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--localstatedir=/var \
		--with-parallel-jobs=${JOBS:-2} \
		--disable-dependency-tracking \
		--disable-downloading \
		--with-rhino=$srcdir/rhino$RHINO_VER/js.jar \
		--with-openjdk-src-zip=$srcdir/openjdk-$_dropsver.tar.bz2 \
		--with-hotspot-src-zip=$srcdir/hotspot-$_dropsver.tar.bz2 \
		--with-corba-src-zip=$srcdir/corba-$_dropsver.tar.bz2 \
		--with-jaxp-src-zip=$srcdir/jaxp-$_dropsver.tar.bz2 \
		--with-jaxws-src-zip=$srcdir/jaxws-$_dropsver.tar.bz2 \
		--with-jdk-src-zip=$srcdir/jdk-$_dropsver.tar.bz2 \
		--with-langtools-src-zip=$srcdir/langtools-$_dropsver.tar.bz2 \
		--with-pax=paxmark \
		--with-jdk-home=$BOOTSTRAP_JAVA_HOME \
		--with-pkgversion="Alpine ${pkgver}-r${pkgrel}" \
		|| return 1

	msg "Icedtea boot"
	make -j1 icedtea-boot || return 1
	msg "Icedtea boot done"
	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

	# pax mark again (due to fakeroot xattr handling bug)
	$_builddir/pax-mark-vm "$pkgdir"/$INSTALL_BASE
}

jrelib() {
	pkgdesc="OpenJDK 7 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 7 Java Runtime (no GUI support)"
	depends="$pkgname-jre-lib java-common"

	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

	# pax mark again (due to fakeroot xattr handling bug)
	$_builddir/pax-mark-vm "$subpkgdir"/$INSTALL_BASE
}

jre() {
	pkgdesc="OpenJDK 7 Java Runtime"
	# manually depend to avoid clash with libgcj's libjvm.so
	depends="so:openjdk7: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

	# pax mark again (due to fakeroot xattr handling bug)
	$_builddir/pax-mark-vm "$subpkgdir"/$INSTALL_BASE
}

doc() {
	default_doc

	mkdir -p "$subpkgdir"/$INSTALL_BASE/
	mv "$pkgdir"/$INSTALL_BASE/man "$subpkgdir"/$INSTALL_BASE/
}
md5sums="7bbc8dc603bf5abc87fe8c7ffcafeabe  icedtea-2.6.3.tar.gz
be68af0132b4d6ff4faa089dbd92d840  openjdk-2.6.3.tar.bz2
a637ba113153688c3f1d04abd2062f3b  corba-2.6.3.tar.bz2
0ecc6d3156432e7a682f66d55c749d37  jaxp-2.6.3.tar.bz2
78b8a041cdc667598a2917ff951447a0  jaxws-2.6.3.tar.bz2
a4502a9220ae2f392fda6b95e138aec1  jdk-2.6.3.tar.bz2
ea84e3944cda222a213362ff06af6e58  langtools-2.6.3.tar.bz2
5303095889c786b679c13d2331461f86  hotspot-2.6.3.tar.bz2
f1d2e99df927a141c355210d55fe4d32  apache-ant-1.9.6-bin.tar.gz
3f68c59471170f7bd574828e01b33a09  rhino1.7.7.zip
f87dd2c4c3c97fc3ac33080a65ca9e14  icedtea-hotspot-musl.patch
bf8b50e157d80a8b884c1aa4f8124812  icedtea-hotspot-noagent-musl.patch
43023861c5f6efc3139a834aa3ec0476  icedtea-hotspot-uclibc-fixes.patch
07c7ab583808e8c8ceb46aff9c265aa4  icedtea-jdk-fix-build.patch
bd623081d5d2e63694c3649975b12412  icedtea-jdk-execinfo.patch
250b0807b59762670954b132e8f8dfba  icedtea-jdk-fix-ipv6-init.patch
66f6e66eb135f0d88847910f6581d323  icedtea-jdk-musl.patch
d014431e70cdabb82a75e4b9ae4c28a9  icedtea-jdk-no-soname.patch"
sha256sums="89183993d3dd794b4e2a428a8a0a35f1ce77c4ae64563e53f3a08c058ea134cc  icedtea-2.6.3.tar.gz
9e5d26bb1888a8a1378e078953aa04314d4fb4f263ebbaf7f459110c21f8d46d  openjdk-2.6.3.tar.bz2
1052ae3c70908aa3374818ada320685cb7abdc7bd7bbd3cfb4f26fbbe7435ec6  corba-2.6.3.tar.bz2
a0e978bc07371901560a746cae492edf0bcb22ddbb9e47b77319ffda1351806b  jaxp-2.6.3.tar.bz2
55897d92e368ac7df3e04d4f235e9dba12ea8264e20d4bd6b68e8c13e5addc1e  jaxws-2.6.3.tar.bz2
583898549b52e958521474db34f2ce535b6a0926c7df1fa99a3f0321b3a109f5  jdk-2.6.3.tar.bz2
f14716df84e047b19884ac5b0830e87b6cdf1925d0951195255c9124e89df27e  langtools-2.6.3.tar.bz2
dd8f3771439b4d51fa84e3f9b384b80e6656cf1a19ee3492b4f2fe09b37eef0e  hotspot-2.6.3.tar.bz2
90d28c0202871bd9875a5da6d982f362bb3114d346b9d8ae58860b8d3312c21c  apache-ant-1.9.6-bin.tar.gz
6ce56b4809d1e7723fd2918dcb093b594f30941194361d4aa2b699f68e897d47  rhino1.7.7.zip
a7922430cb767c8a4baae232c8b2e5f377aeb7cfde0c9901cd7774f078e7f92e  icedtea-hotspot-musl.patch
1d937de95323094294c33dd490fc460f78502259eee3bf4b352ac7c7c6cf626f  icedtea-hotspot-noagent-musl.patch
0ef7592b8f2c954eda0a6cf4dc4a4010942f35ea426f44e34412be6c9a949745  icedtea-hotspot-uclibc-fixes.patch
33b18e827a13cc46be11a4491deefac171c8c2c4fbdd3e0cb4a5fdafa560f958  icedtea-jdk-fix-build.patch
6cebef19d8eec5a4623a96c37ae71b79d124a10478c1db33ad5fc71bc04b30e9  icedtea-jdk-execinfo.patch
632683ec88a6fb250ef043aae9cace605d0c669b7058f8c47b62b09b03ecc6c5  icedtea-jdk-fix-ipv6-init.patch
b3f82269f69483d3fe137e369f9325003ce7872d886cdf67705b434ce949b5bc  icedtea-jdk-musl.patch
6c0bbe710395c4ced1359ab279be6a7c36da5bfb9fd60dc47d920f06a0456d82  icedtea-jdk-no-soname.patch"
sha512sums="a48c7209752ef9705637485bc1752e6311547a1a7235f40a8fad02f51badb23acf493e181a2a500dc41ff055621aae5ab951151d0140d0bd26c218918b4ad715  icedtea-2.6.3.tar.gz
ff6246a8615a2113197eb41839912fa1fdc22d95252846b08ff1539db13715131aac65dc06f9086ffb83daa4558caf1b707091ed5ef058bebb5fffc9b665e472  openjdk-2.6.3.tar.bz2
8d46557d564917514a14296b06cc35c1d84b1d7be7a3c6cd14770fe76481fcd02af9ff1cc528acde684cc1c5e2a065ce2e5254fae47fdaa3598c6e5ab8779697  corba-2.6.3.tar.bz2
4a0de68af85699b611e37af0749cccdb0483ac75af1fbd0f63cdc2f0c173605bca77c60bbb41aff916c768b5a29a933fbd8e34d8bd2dd67c22cbd629078061ab  jaxp-2.6.3.tar.bz2
a4cd98bc6c4b1b54dcee68f4a373322e550246ed88412e33d3700631bbd662d390df89047f9cc40f80c10f1ffce81142c301db06ef46bbc16e1245880242151d  jaxws-2.6.3.tar.bz2
9cfe22d2a112d35c8008069c61118f5e289e78a91d325da301949843d5c7b747cdf99fa7c97c09ea4c15a263f47d09b65ee26ca01282aa4d9abed6087a09f656  jdk-2.6.3.tar.bz2
2aa47e622194e0afd773c3f56df67afa35e69edc7af0c6385edc4d26383a3b1a29d87470c6fb2bc3d3e51b58c0283023ddb53bca4c4bf5504ed22fe457c39bb1  langtools-2.6.3.tar.bz2
3aadde373e01575cdd1fa3621ab132eb2273d70f08f8a3ad784cd238d8902626f9121c0f8abdddae7a810fb79cf70c0ea3fe7f2c2035fadd2803a2177a305ea9  hotspot-2.6.3.tar.bz2
8f6ef5e0710814844da53a67de6bbdcd72eca632888f8a5128609dc1af3341c3a74f4251ee191117c362adace73032c0a2900a028f95728a19603590c6255964  apache-ant-1.9.6-bin.tar.gz
fed7cad242eac105d0cc7dc668b4403c424080e17c8684ba02f11810afaa340c25e12526a00e3de5eaf9d93256824e3bb0bbf2051934d8d18d1ee88f44f30ee7  rhino1.7.7.zip
994e8a79a0a23f26d633bf2ce9dad62198c699892f6e7729cc6e509481330399bb2ba736514b516fd2b3dd125fd6c74a127ae7f16d643c3f6a69776737cdb933  icedtea-hotspot-musl.patch
e7a2c1771bb582d427041f8d22e48c0daf8f20d7c0926cbce3549d49c4e949359ee25a35682b486e82f3e390535c950c5beee3bd8d06fb5a717b50f2d9b2a6bc  icedtea-hotspot-noagent-musl.patch
822eee0dc4d3ba677a289dfeb3668b536d2d626708390a9d9702fb4144a481fd443a215a0d2041c6026113837aafa4ba0b5e9ead8589d2da6717a238bbc95a5a  icedtea-hotspot-uclibc-fixes.patch
213a537de5f011cb39d608515c3413513ac75fb93593f9a9ef4205f71d72bdd8b097c80db185f7b26021d5bb85045b866f34f3478482dc4189972d8614a13458  icedtea-jdk-fix-build.patch
0391970e6a32946aa3cccf38fdef9c0fe2af26cd0df824b98aa2fcfa1bf661d4a68e339bffcfd16f386c565fc68bb28a29208a67d4bad8a0e847ad02bd8becbb  icedtea-jdk-execinfo.patch
48533f87fc2cf29d26b259be0df51087d2fe5b252e72d00c6ea2f4add7b0fb113141718c116279c5905e03f64a1118082e719393786811367cf4d472b5d36774  icedtea-jdk-fix-ipv6-init.patch
44a35941c80f408d0607e32763b3b6ccee21e1d39886309327d3d74d2900117e4346ef59e77c663fd022fec10ee8f365eeb46c1260014d5765d226ce175ce3c5  icedtea-jdk-musl.patch
bf4b184e170f7b0ff64ab30d2162784fe2bd5460d1fa31973259f7065fd4c511c46f97724fe2bd72bb94e9006cb568d0e0c87d1a9c90819e65880f8f44830bb1  icedtea-jdk-no-soname.patch"