Gitlab has successfully been upgraded to 14.0.10 🎉. Enjoy!

APKBUILD 12.7 KB
Newer Older
Timo Teräs's avatar
Timo Teräs committed
1
# Contributor: Timo Teras <timo.teras@iki.fi>
2
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
Timo Teräs's avatar
Timo Teräs committed
3 4
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=openjdk8
5
_icedteaver=3.3.0
6 7
# pkgver is <JDK version>.<JDK update>.<JDK build>
# Check http://icedtea.classpath.org/wiki/Main_Page when updating!
8
pkgver=8.121.13
9
pkgrel=2
10 11 12
pkgdesc="OpenJDK 8 provided by IcedTea"
url="http://icedtea.classpath.org/"
arch="all"
Timo Teräs's avatar
Timo Teräs committed
13
license="custom"
14
depends="$pkgname-jre java-cacerts"
Timo Teräs's avatar
Timo Teräs committed
15 16
options="sover-namecheck"
makedepends="bash findutils tar zip file paxmark gawk util-linux libxslt
17
	autoconf automake linux-headers sed xz coreutils
18 19 20 21
	openjdk7 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
22 23
	gtk+2.0-dev krb5-dev attr-dev pcsc-lite-dev lksctp-tools-dev
	libxcomposite-dev"
Timo Teräs's avatar
Timo Teräs committed
24 25 26 27 28

case $CARCH in
x86)	_jarch=i386;;
x86_64)	_jarch=amd64;;
arm*)	_jarch=arm;;
29
*)	_jarch="$CARCH";;
Timo Teräs's avatar
Timo Teräs committed
30 31
esac

32 33 34
_bootstrap_java_home="/usr/lib/jvm/java-1.7-openjdk"
_java_home="/usr/lib/jvm/java-1.8-openjdk"
_jrelib="$_java_home/jre/lib/$_jarch"
Timo Teräs's avatar
Timo Teräs committed
35

36
# Exclude xawt from ldpath to avoid duplicate provides for libmawt.so
Timo Teräs's avatar
Timo Teräs committed
37 38
# (also in headless). in future this should be a virtual provides.
ldpath="$_jrelib:$_jrelib/native_threads:$_jrelib/headless:$_jrelib/server:$_jrelib/jli"
39
sonameprefix="$pkgname:"
Timo Teräs's avatar
Timo Teräs committed
40

41
subpackages="$pkgname-dbg $pkgname-jre-lib:jrelib:noarch $pkgname-jre $pkgname-jre-base:jrebase
42
	$pkgname-doc $pkgname-demos"
Timo Teräs's avatar
Timo Teräs committed
43

44 45
_dropsver=$_icedteaver
_dropsurl="http://icedtea.classpath.org/download/drops/icedtea8/$_dropsver"
Timo Teräs's avatar
Timo Teräs committed
46

47 48 49 50 51 52 53 54 55
source="http://icedtea.classpath.org/download/source/icedtea-$_icedteaver.tar.gz
	openjdk-$_dropsver.tar.xz::$_dropsurl/openjdk.tar.xz
	corba-$_dropsver.tar.xz::$_dropsurl/corba.tar.xz
	jaxp-$_dropsver.tar.xz::$_dropsurl/jaxp.tar.xz
	jaxws-$_dropsver.tar.xz::$_dropsurl/jaxws.tar.xz
	jdk-$_dropsver.tar.xz::$_dropsurl/jdk.tar.xz
	langtools-$_dropsver.tar.xz::$_dropsurl/langtools.tar.xz
	hotspot-$_dropsver.tar.xz::$_dropsurl/hotspot.tar.xz
	nashorn-$_dropsver.tar.xz::$_dropsurl/nashorn.tar.xz
56
	fix-paxmark.patch
Timo Teräs's avatar
Timo Teräs committed
57 58 59 60 61 62

	icedtea-hotspot-musl.patch
	icedtea-hotspot-noagent-musl.patch
	icedtea-hotspot-uclibc-fixes.patch
	icedtea-jdk-execinfo.patch
	icedtea-jdk-fix-ipv6-init.patch
63
	icedtea-jdk-fix-libjvm-load.patch
Timo Teräs's avatar
Timo Teräs committed
64 65
	icedtea-jdk-musl.patch
	icedtea-jdk-includes.patch
66
	icedtea-autoconf-config.patch
Timo Teräs's avatar
Timo Teräs committed
67
	"
68 69 70 71 72 73 74 75 76 77 78
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
}
Timo Teräs's avatar
Timo Teräs committed
79 80

prepare() {
81
	cd "$builddir"
Timo Teräs's avatar
Timo Teräs committed
82

83 84
	# Busybox sha256 does not support longopts.
	sed -e "s/--check/-c/g" -i Makefile.am
Timo Teräs's avatar
Timo Teräs committed
85

86
	local patch; for patch in $source; do
87
		case $patch in
88 89 90
		icedtea-*.patch)
			cp ../$patch patches
			;;
91 92
		*.patch)
			msg "Applying patch $patch"
93
			patch -p1 -i "$srcdir"/$patch || return 1
94 95 96
			;;
		esac
	done
97 98

	./autogen.sh
Timo Teräs's avatar
Timo Teräs committed
99 100 101
}

build() {
102
	export JAVA_HOME="$_bootstrap_java_home"
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
	export PATH="$JAVA_HOME/bin:$PATH"

	if [ -z "$JOBS" ]; then
		export JOBS=$(printf '%s\n' "$MAKEFLAGS" | sed -n -e 's/.*-j\([0-9]\+\).*/\1/p')
	fi

	DISTRIBUTION_PATCHES=""
	local patch; for patch in $source; do
		case $patch in
		icedtea-*.patch)
			DISTRIBUTION_PATCHES="$DISTRIBUTION_PATCHES patches/$patch"
			;;
		esac
	done
	export DISTRIBUTION_PATCHES
	echo "icedtea patches: $DISTRIBUTION_PATCHES"

120
	cd "$builddir"
121
	./configure \
Timo Teräs's avatar
Timo Teräs committed
122 123
		--build=$CBUILD \
		--host=$CHOST \
124
		--prefix="$_java_home" \
Timo Teräs's avatar
Timo Teräs committed
125 126 127 128
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--localstatedir=/var \
129 130 131 132 133 134 135 136 137 138 139 140
		--disable-dependency-tracking \
		--disable-downloading \
		--with-parallel-jobs=${JOBS:-2} \
		--with-openjdk-src-zip="$srcdir/openjdk-$_dropsver.tar.xz" \
		--with-hotspot-src-zip="$srcdir/hotspot-$_dropsver.tar.xz" \
		--with-corba-src-zip="$srcdir/corba-$_dropsver.tar.xz" \
		--with-jaxp-src-zip="$srcdir/jaxp-$_dropsver.tar.xz" \
		--with-jaxws-src-zip="$srcdir/jaxws-$_dropsver.tar.xz" \
		--with-jdk-src-zip="$srcdir/jdk-$_dropsver.tar.xz" \
		--with-langtools-src-zip="$srcdir/langtools-$_dropsver.tar.xz" \
		--with-nashorn-src-zip="$srcdir/nashorn-$_dropsver.tar.xz" \
		--with-pax=paxmark \
141
		--with-jdk-home="$_bootstrap_java_home" \
142
		--with-pkgversion="Alpine ${pkgver}-r${pkgrel}" \
143 144 145
		--enable-nss \
		--enable-sunec \
		--enable-non-nss-curves \
Timo Teräs's avatar
Timo Teräs committed
146
		|| return 1
147
	make || return 1
Timo Teräs's avatar
Timo Teräs committed
148 149 150
}

package() {
151 152
	cd "$builddir"

153
	mkdir -p "$pkgdir"/$_java_home
154

155 156
	cp -a openjdk.build/images/j2sdk-image/* "$pkgdir"/$_java_home/ || return 1
	rm "$pkgdir"/$_java_home/src.zip
Timo Teräs's avatar
Timo Teräs committed
157

158 159 160 161
	# This archive contains absolute paths from the build environment,
	# so it does not work on the target system. User can generate it
	# running `java -Xshare:dump`.
	rm "$pkgdir"/$_jrelib/server/classes.jsa
Timo Teräs's avatar
Timo Teräs committed
162

163
	# pax mark again (due to fakeroot xattr handling bug)
164
	./pax-mark-vm "$pkgdir"/$_java_home true || return 1
165

166 167
	# symlink to shared java cacerts store
	rm -f "$pkgdir"/$_java_home/jre/lib/security/cacerts
168
	ln -sf /etc/ssl/certs/java/cacerts \
169
		"$pkgdir"/$_java_home/jre/lib/security/cacerts
Timo Teräs's avatar
Timo Teräs committed
170 171 172 173 174 175
}

jrelib() {
	pkgdesc="OpenJDK 8 Java Runtime (class libraries)"
	depends=""

176 177 178 179 180 181 182 183 184 185 186
	local file dir
	for file in 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

		dir=${file%/*}
187 188
		mkdir -p "$subpkgdir"/$_java_home/$dir
		mv "$pkgdir"/$_java_home/$file "$subpkgdir"/$_java_home/$dir || return 1
Timo Teräs's avatar
Timo Teräs committed
189 190 191 192 193
	done
}

jre() {
	pkgdesc="OpenJDK 8 Java Runtime"
194
	local file dir
Timo Teräs's avatar
Timo Teräs committed
195 196

	mkdir -p "$subpkgdir"
197
	for file in jre/bin/policytool \
198 199 200 201 202
			bin/appletviewer \
			bin/policytool \
			jre/lib/$_jarch/libawt_xawt.so \
			jre/lib/$_jarch/libfontmanager.so \
			jre/lib/$_jarch/libjawt.so \
203
			jre/lib/$_jarch/libjsoundalsa.so \
204 205
			jre/lib/$_jarch/libsplashscreen.so; do

206
		dir=${file%/*}
207 208 209 210 211
		mkdir -p "$subpkgdir"/$_java_home/$dir
		mv "$pkgdir"/$_java_home/$file "$subpkgdir"/$_java_home/$dir || return 1
	done

	# Pax mark again (due to fakeroot xattr handling bug).
212
	"$builddir"/pax-mark-vm "$subpkgdir"/$_java_home true || return 1
213 214 215 216 217 218 219 220 221 222 223 224 225 226 227
}

jrebase() {
	pkgdesc="OpenJDK 8 Java Runtime (no GUI support)"
	depends="$pkgname-jre-lib java-common java-cacerts"

	mkdir -p "$subpkgdir"/$_java_home/bin \
		"$subpkgdir"/$_java_home/lib/$_jarch

	mv "$pkgdir"/$_java_home/lib/$_jarch/jli \
		"$subpkgdir"/$_java_home/lib/$_jarch/ || return 1

	local file; for file in java orbd rmid servertool unpack200 keytool \
			pack200 rmiregistry tnameserv; do
		mv "$pkgdir"/$_java_home/bin/$file "$subpkgdir"/$_java_home/bin/ || return 1
Timo Teräs's avatar
Timo Teräs committed
228 229
	done

230 231 232
	# Rest of the jre subdir (which were not taken by -jre subpkg).
	mv "$pkgdir"/$_java_home/jre "$subpkgdir"/$_java_home/ || return 1

233
	# Pax mark again (due to fakeroot xattr handling bug).
234
	"$builddir"/pax-mark-vm "$subpkgdir"/$_java_home true || return 1
Timo Teräs's avatar
Timo Teräs committed
235 236 237
}

doc() {
238
	default_doc || return 1
Timo Teräs's avatar
Timo Teräs committed
239

240 241
	mkdir -p "$subpkgdir"/$_java_home/
	mv "$pkgdir"/$_java_home/man "$subpkgdir"/$_java_home/
Timo Teräs's avatar
Timo Teräs committed
242 243
}

244 245 246 247
demos() {
	pkgdesc="OpenJDK 8 Java Demos and Samples"
	depends="$pkgname"

248 249 250
	mkdir -p "$subpkgdir"/$_java_home/
	mv "$pkgdir"/$_java_home/demo "$pkgdir"/$_java_home/sample \
		"$subpkgdir"/$_java_home/
251 252
}

253 254 255 256 257 258 259 260 261
md5sums="eb6fc764df734e284cb485de909d7a31  icedtea-3.3.0.tar.gz
2d1c5467d3c7818ee7ec81d37c1bbbd4  openjdk-3.3.0.tar.xz
1bc8c5b63eca3918f1c4c934bf66b233  corba-3.3.0.tar.xz
2b3559177fead9ccb56db07191102870  jaxp-3.3.0.tar.xz
92612fa7cfecf27357743c932a091b9b  jaxws-3.3.0.tar.xz
2a732b3f46453fb45b1a37b7c1ab3db8  jdk-3.3.0.tar.xz
b10431e5823ac859de631e183b1d0b67  langtools-3.3.0.tar.xz
e600f285d00ee367b4129450c35f113a  hotspot-3.3.0.tar.xz
9cc3887801b7ad6c290c4adf4a742130  nashorn-3.3.0.tar.xz
262
5ac9306bf404251111cee6b9eff26bd4  fix-paxmark.patch
263
2f4a5b0ec7a2bf7ab609da10b86dca4c  icedtea-hotspot-musl.patch
264
bd148291e75d536972cb2b1b68e5cb05  icedtea-hotspot-noagent-musl.patch
Timo Teräs's avatar
Timo Teräs committed
265 266 267
43023861c5f6efc3139a834aa3ec0476  icedtea-hotspot-uclibc-fixes.patch
bdea7060a067faf1c2de5f4eb6e8525d  icedtea-jdk-execinfo.patch
250b0807b59762670954b132e8f8dfba  icedtea-jdk-fix-ipv6-init.patch
268
4dcba8ae18346298c0d0b817f6922415  icedtea-jdk-fix-libjvm-load.patch
269
ae8b8d44db2ef9a1ee112823957d0ebd  icedtea-jdk-musl.patch
270 271
da4b0b67d9b5c7f742bcea70722acd94  icedtea-jdk-includes.patch
d13bf1213635a702611af295d3977fe1  icedtea-autoconf-config.patch"
272 273 274 275 276 277 278 279 280
sha256sums="ce74a343759bfe6a7332301835e7c6e77d01db588a1dab672816c9ce338474b1  icedtea-3.3.0.tar.gz
887c5bc24b068efced7d5209367149ca27d8fea330cd5a5fff7767c353b00921  openjdk-3.3.0.tar.xz
19492bdd85166ce55d0f85f96e1d3d0b21e61f4604349ea0b94f6a0aa1388b61  corba-3.3.0.tar.xz
ba5933a2bbf04b0786fd5f046d43314f1b1b2bf2888c586521b37410783bccef  jaxp-3.3.0.tar.xz
a443f3243978a87a055ab103468878e5e072706ab0c82d1949ba869fc63571b6  jaxws-3.3.0.tar.xz
688e962ab13055eb6b8668bb48b50eecc7f02f5120b541cfa58f516f875f9f9d  jdk-3.3.0.tar.xz
1b0b0fb49c81955573ce509e1801530faa6477e606192fec4b0f951904fb8ac0  langtools-3.3.0.tar.xz
280f706bb0aaada0903e9e907811ea12bc1c216fdaeb2694910f3a99217f6e89  hotspot-3.3.0.tar.xz
0ec045c9c4506f63602d86e72b0c3fdccd75fa95c47ee6a1238639274dc8e92d  nashorn-3.3.0.tar.xz
281
79bff0b02da899cdc14040443f254a742bdd599ca21357e6c28a4ec35da0e2ac  fix-paxmark.patch
282
ed114e8d00d6ed1295f5995df02ad13d3d0cd242f7a904600d93b6564856f8df  icedtea-hotspot-musl.patch
283
c14529a29bfdfb51bf5b4a41c977039073f470758e31235d043d373b48d46a11  icedtea-hotspot-noagent-musl.patch
Timo Teräs's avatar
Timo Teräs committed
284 285 286
0ef7592b8f2c954eda0a6cf4dc4a4010942f35ea426f44e34412be6c9a949745  icedtea-hotspot-uclibc-fixes.patch
a35d40f24098747cdb73d9c3742cfb4aecafa0f72c9dfdfe2cb460f9706ff665  icedtea-jdk-execinfo.patch
632683ec88a6fb250ef043aae9cace605d0c669b7058f8c47b62b09b03ecc6c5  icedtea-jdk-fix-ipv6-init.patch
287
c0f7e07293883142d7d7776c9e43a3bba7d45e4abbce6dc0fb531d25ed836ed4  icedtea-jdk-fix-libjvm-load.patch
288
f6965fb31ec44389acec74c98b438a43ee2349c18586b66c71baf6a0b5ccdc50  icedtea-jdk-musl.patch
289 290
8f4edc784fd70b27f91a0acf05a1de19fc300a35852b74668332ed747ec52073  icedtea-jdk-includes.patch
51ced4c77b97744fd0ecfbeca3f94e2da1fc5072dac7830c141f70887c503c33  icedtea-autoconf-config.patch"
291 292 293 294 295 296 297 298 299
sha512sums="a419e71ff68d89dafc8ab4f98f81f01f199aa835a64ff9c34777fc3dcb9c0ba72bc3ab55ca39995e06c20d1e63df885f6bfc3dc7e6dff6f6efc24c6834fb51ab  icedtea-3.3.0.tar.gz
d98790823408e09f3fa9946ceeeda48187dddd3302625fc546d64a4ecc89967235c550af23c05368a90d8dd2ceb38c092cd3130958132d18d30692342bd1151e  openjdk-3.3.0.tar.xz
b1f44e1e41b3565bd45176f726e4d1c2999c5ff25a5f2e973f0e5836b7fd2cf6540eae83d3944b303677797e052abd950bb9748fb3e218e4c71b1ea059bf1209  corba-3.3.0.tar.xz
3addabc7478c8a443de5db5606b9eb71778484ed68943d3aa2b61c02bff993d3cb446333be7a5bfc90f8757d0125eb1f53f2483c60c79bb0f19e642e1696ddcd  jaxp-3.3.0.tar.xz
1b83b0a90cf0c11220cae034d2f86ad51ff8f6d153dc22e8e9f65b8ec4de8f7148fd37356aa19098e6545967da3c53e87edac747adfa76e254c1fc9d31e4ec1b  jaxws-3.3.0.tar.xz
60c932a057dc1869bec52ea73af2a21af9e622a196510d074c5d17c01bf7d98babd651f5577bafe96a832e6a54ded8704c4f7d964f0874edaf2222bdbe3c0c46  jdk-3.3.0.tar.xz
13065b54ca036ad11b8879d9ebaa725a823c25cda5b28f0092902bda2b8879cfd000d132916302f2661b63b03c0bec90d1adfe4863d38c201cfbdf74f1f942c6  langtools-3.3.0.tar.xz
8a593b1c9f022e7a3efa834c5547c59f1a2143f946edae2647a3368f9d4d39b9d473f36575d395e627e5bfac1f9cdef0efe607e0a81b40c46dca44ad6d59a65b  hotspot-3.3.0.tar.xz
c0aec36e921288b6ad11e71daa32111a4ee45302a2bbe407229cc143f05869372993f7b0dd366c07ecb31fac47e1d3cdb0c59cc1a48375d3719656c2159fee95  nashorn-3.3.0.tar.xz
300
1f470432275d5beaa8b4e4352a2f24a4a00593546dc4f3bd857794c89e521e8e6d6abc540762bbd769be3e1e3da058e134dc5dc066d12b9b8a1f0656040a795c  fix-paxmark.patch
301
ada3bc4024682bfb86ebf3850d3a36cf4c0f0677a6d56eac2e0959b92bfe759010d5b9c801b043cae3ca8418d7819546ae245ac163df83e48c5d4b34478daeb0  icedtea-hotspot-musl.patch
302
3c592a14f1806a431290a96a8c1413ca1cc621e73a87ed778fa98878c82809bd924072210d4e4127a6c0c32ff557d749f6c9b3ce31cbca083b013240b618b224  icedtea-hotspot-noagent-musl.patch
Timo Teräs's avatar
Timo Teräs committed
303 304 305
822eee0dc4d3ba677a289dfeb3668b536d2d626708390a9d9702fb4144a481fd443a215a0d2041c6026113837aafa4ba0b5e9ead8589d2da6717a238bbc95a5a  icedtea-hotspot-uclibc-fixes.patch
f6365cfafafa008bd6c1bf0ccec01a63f8a39bd1a8bc87baa492a27234d47793ba02d455e5667a873ef50148df3baaf6a8421e2da0b15faac675867da714dd5f  icedtea-jdk-execinfo.patch
48533f87fc2cf29d26b259be0df51087d2fe5b252e72d00c6ea2f4add7b0fb113141718c116279c5905e03f64a1118082e719393786811367cf4d472b5d36774  icedtea-jdk-fix-ipv6-init.patch
306
b135991c76b0db8fa7c363e0903624668e11eda7b54a943035c214aa4d7fc8c3e8110ed200edcec82792f3c9393150a9bd628625ddf7f3e55720ff163fbbb471  icedtea-jdk-fix-libjvm-load.patch
307
cdebe2c59657e7fd317a4841b2fbe95d9e8d7ee9d1593edf352ed7f49a92a42cbce82cbaa404d3f02c6d273eae03222a79559c09bf6cf439396c5ec5434f5458  icedtea-jdk-musl.patch
308 309
c6caaa69a75dfcf922f7a700a4c780568ead18e8774b9df2c1d86d1ab9f5a21c239952c4053f0f839b4255c0da69d2f42cdd87637db7cf5333076872f63580e0  icedtea-jdk-includes.patch
662d662d0a7a84be2978e921317589f212f3ba3b7629527ba0f1140b5ac4c1024893e0ed176211688ed1a4505968c4befc841ed57ffcdbb9d355c2cb0571b167  icedtea-autoconf-config.patch"