Commit | Line | Data |
---|---|---|
ffcb22f1 | 1 | TERMUX_PKG_HOMEPAGE=http://openjdk.java.net |
efb97f17 | 2 | TERMUX_PKG_DESCRIPTION="OpenJDK 9 Java Runtime Environment (prerelease)" |
d4b5d52c | 3 | _jbuild=162 |
ffcb22f1 | 4 | _hg_tag="jdk-9+${_jbuild}" |
d4b5d52c VB |
5 | _jvm_dir="lib/jvm/openjdk-9" |
6 | TERMUX_PKG_VERSION="9.2017.4.3" | |
efb97f17 VB |
7 | TERMUX_PKG_MAINTAINER="Vishal Biswas @vishalbiswas" |
8 | TERMUX_PKG_HOMEPAGE=http://openjdk.java.net/projects/jdk9 | |
d4b5d52c VB |
9 | TERMUX_PKG_DEPENDS="freetype, libpng, ca-certificates-java" |
10 | TERMUX_PKG_CONFFILES="$_jvm_dir/lib/jvm.cfg" | |
77b0e696 VB |
11 | # currently upstream has no support building for these arches on android |
12 | # this will change in the future | |
13 | TERMUX_PKG_BLACKLISTED_ARCHES="aarch64 x86_64" | |
b8589503 FF |
14 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" |
15 | --disable-hotspot-gtest | |
16 | --disable-option-checking | |
17 | --disable-warnings-as-errors | |
18 | --enable-headless-only | |
77b0e696 | 19 | --with-freetype=$TERMUX_PREFIX |
b8589503 FF |
20 | --with-libpng=system |
21 | --with-zlib=system | |
d4b5d52c VB |
22 | --with-jdk-variant=normal |
23 | --with-jvm-variants=client | |
b8589503 | 24 | " |
ffcb22f1 | 25 | TERMUX_PKG_CLANG=no |
d4b5d52c VB |
26 | TERMUX_PKG_RM_AFTER_INSTALL="$_jvm_dir/demo $_jvm_dir/sample" |
27 | ||
28 | _cups_ver=2.2.3 | |
29 | ||
30 | changesets=('d9c3e4f30936' | |
31 | '493011dee80e' | |
32 | 'dc3346496843' | |
33 | '0d44d05a4c96' | |
34 | '3890f96e8995' | |
35 | '92a38c75cd27' | |
36 | '24582dd2649a' | |
37 | '5e5e436543da') | |
38 | ||
39 | sha256sums=('36ca35e4fe90ae1b1966d9f909c108f39fe411b2e783faa49102d2088909be8e' | |
40 | '9d24cab2e16c17f51d591b9786005062bee3e60e394d1b78dddbdfb01b9a5ea6' | |
41 | '312204f76d4f23be09aa7121273ac791588de5c6a3c25d49b3087a6eb547bb7a' | |
42 | '9ef21b7013ef2a0b0870d4741fc961d1fce0fcb91f44a1f8cdad865455583246' | |
43 | '8d925111270630a171b0165b740bdd5d8d07c4aa1f9ea3caa86076b9f896d3ed' | |
44 | '1fec470e1480472ec7e4ff402bc4b6de5e095cfd5f787bdc250814eb9479a3c0' | |
45 | 'db95a143078cdf3cefff5479c5350b678b1a779fcdcf7e066049559a537d81e1' | |
46 | '115601bbce2f5d9df66ce49d4ca6f6db327f1e17865537911160f0cde919e7bf' | |
47 | '66701fe15838f2c892052c913bde1ba106bbee2e0a953c955a62ecacce76885f') | |
77b0e696 VB |
48 | |
49 | reponames=(dev corba hotspot jdk jaxws jaxp langtools nashorn cups) | |
50 | ||
51 | _url_src=http://hg.openjdk.java.net/mobile/dev | |
52 | ||
53 | TERMUX_PKG_SRCURL=$_url_src/archive/${changesets[0]}.tar.bz2 | |
54 | TERMUX_PKG_SHA256=${sha256sums[0]} | |
55 | TERMUX_PKG_FOLDERNAME=dev-${changesets[0]} | |
ffcb22f1 VB |
56 | |
57 | termux_step_post_extract_package () { | |
77b0e696 VB |
58 | cd "$TERMUX_PKG_TMPDIR" |
59 | # download and extract repo archives | |
60 | for index in {1..7}; do | |
61 | local sum=${sha256sums[index]} | |
62 | local repo=${reponames[index]} | |
63 | local change=${changesets[index]} | |
64 | local file=$TERMUX_PKG_CACHEDIR/$repo-$change.tar.bz2 | |
65 | local url=${_url_src}/$repo/archive/$change.tar.bz2 | |
66 | ||
67 | termux_download $url $file $sum | |
68 | $TERMUX_TAR xf $file -C $TERMUX_PKG_SRCDIR | |
69 | mv $TERMUX_PKG_SRCDIR/$repo-$change $TERMUX_PKG_SRCDIR/$repo | |
ffcb22f1 VB |
70 | done |
71 | ||
77b0e696 VB |
72 | # setup cups source dir |
73 | file=$TERMUX_PKG_CACHEDIR/cups-$_cups_ver-source.tar.gz | |
74 | url="https://github.com/apple/cups/releases/download/v$_cups_ver/`basename $file`" | |
75 | termux_download $url $file ${sha256sums[8]} | |
76 | $TERMUX_TAR xf $file -C $TERMUX_PKG_SRCDIR | |
77 | } | |
78 | ||
d4b5d52c | 79 | # override this step to since openjdk provides its own customized guess scripts |
77b0e696 VB |
80 | termux_step_replace_guess_scripts () { |
81 | return | |
ffcb22f1 VB |
82 | } |
83 | ||
84 | termux_step_pre_configure () { | |
77b0e696 VB |
85 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --with-cups-include=$TERMUX_PKG_SRCDIR/cups-$_cups_ver" |
86 | ||
ffcb22f1 VB |
87 | cat > "$TERMUX_STANDALONE_TOOLCHAIN/devkit.info" <<HERE |
88 | DEVKIT_NAME="Android ${TERMUX_ARCH^^}" | |
89 | DEVKIT_TOOLCHAIN_PATH="\$DEVKIT_ROOT/$TERMUX_HOST_PLATFORM/bin" | |
77b0e696 | 90 | DEVKIT_SYSROOT="\$DEVKIT_ROOT/sysroot" |
ffcb22f1 VB |
91 | HERE |
92 | ||
93 | export ANDROID_DEVKIT=$TERMUX_STANDALONE_TOOLCHAIN | |
94 | ||
77b0e696 | 95 | if [ -n "$TERMUX_DEBUG" ]; then TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --with-debug-level=slowdebug"; fi |
ffcb22f1 VB |
96 | } |
97 | ||
98 | termux_step_configure () { | |
77b0e696 | 99 | bash $TERMUX_PKG_SRCDIR/configure \ |
ffcb22f1 | 100 | --prefix=$TERMUX_PREFIX \ |
77b0e696 | 101 | --openjdk-target=$TERMUX_HOST_PLATFORM \ |
ffcb22f1 VB |
102 | --libexecdir=$TERMUX_PREFIX/libexec \ |
103 | --with-devkit=$ANDROID_DEVKIT \ | |
77b0e696 VB |
104 | --with-extra-cflags="$CPPFLAGS $CFLAGS" \ |
105 | --with-extra-cxxflags="$CPPFLAGS $CXXFLAGS" \ | |
ffcb22f1 VB |
106 | --with-extra-ldflags="$LDFLAGS" \ |
107 | $TERMUX_PKG_EXTRA_CONFIGURE_ARGS | |
108 | } | |
109 | ||
110 | termux_step_make () { | |
111 | make JOBS=$TERMUX_MAKE_PROCESSES images | |
112 | } | |
113 | ||
d4b5d52c VB |
114 | termux_step_post_make_install () { |
115 | # move jvm install dir | |
116 | mkdir -p $TERMUX_PREFIX/lib/jvm | |
117 | rm -rf "$TERMUX_PREFIX/lib/jvm/openjdk-9" | |
118 | mv $TERMUX_PREFIX/jvm/openjdk-9-internal $TERMUX_PREFIX/$_jvm_dir | |
119 | ||
120 | # place src.zip in standard location mimicking ubuntu | |
121 | mv $TERMUX_PREFIX/$_jvm_dir/lib/src.zip $TERMUX_PREFIX/$_jvm_dir/src.zip | |
122 | ||
123 | # create shell wrappers for binaries | |
124 | for binary in $TERMUX_PREFIX/$_jvm_dir/bin/*; do | |
125 | binary=`basename $binary` | |
126 | rm -f $TERMUX_PREFIX/bin/$binary | |
127 | echo "export JAVA_HOME=\$PREFIX/$_jvm_dir" > $TERMUX_PREFIX/bin/$binary | |
128 | echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:\$JAVA_HOME/lib:\$JAVA_HOME/lib/jli" >> $TERMUX_PREFIX/bin/$binary | |
129 | echo "\$JAVA_HOME/bin/$binary \"\$@\"" >> $TERMUX_PREFIX/bin/$binary | |
130 | chmod u+x $TERMUX_PREFIX/bin/$binary | |
131 | done | |
132 | ||
133 | # use cacerts provided by ca-certificates-java | |
134 | ln -sf "$TERMUX_PREFIX/$_jvm_dir/lib/security/jssecacerts" "$TERMUX_PREFIX/$_jvm_dir/lib/security/cacerts" | |
135 | } |