diff options
Diffstat (limited to 'recipes-core/openjdk/openjdk-8-cross.inc')
| -rw-r--r-- | recipes-core/openjdk/openjdk-8-cross.inc | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/recipes-core/openjdk/openjdk-8-cross.inc b/recipes-core/openjdk/openjdk-8-cross.inc new file mode 100644 index 0000000..20ac194 --- /dev/null +++ b/recipes-core/openjdk/openjdk-8-cross.inc | |||
| @@ -0,0 +1,200 @@ | |||
| 1 | JDKPN = "openjdk-8" | ||
| 2 | JREPN = "openjre-8" | ||
| 3 | |||
| 4 | JDK_HOME = "${libdir_jvm}/${JDKPN}" | ||
| 5 | JRE_HOME = "${libdir_jvm}/${JREPN}" | ||
| 6 | |||
| 7 | DEPENDS = "\ | ||
| 8 | openjdk-8-native zip-native ant-native libxslt \ | ||
| 9 | jpeg libpng krb5 libffi fontconfig freetype \ | ||
| 10 | " | ||
| 11 | |||
| 12 | PACKAGECONFIG ??= "" | ||
| 13 | PACKAGECONFIG[x11] = "--with-x,,libx11 xproto libxt libxext libxrender" | ||
| 14 | PACKAGECONFIG[cups] = "--with-cups,,cups" | ||
| 15 | PACKAGECONFIG[alsa] = "--with-alsa,,alsa-lib-native" | ||
| 16 | |||
| 17 | PACKAGECONFIG[jce] = "--enable-unlimited-crypto,," | ||
| 18 | |||
| 19 | PACKAGECONFIG[zip] = "--with-zlib=system,--with-zlib=bundled,zlib," | ||
| 20 | PACKAGECONFIG[gif] = "--with-giflib=system,--with-giflib=bundled,giflib," | ||
| 21 | |||
| 22 | export WANT_LLVM_RELEASE = "3.5.2" | ||
| 23 | PACKAGECONFIG[zero] = "--with-jvm-variants=zero,,," | ||
| 24 | PACKAGECONFIG[shark] = "--with-jvm-variants=zeroshark,,llvm3.5," | ||
| 25 | |||
| 26 | require openjdk-8-common.inc | ||
| 27 | |||
| 28 | JAVA_HOME[unexport] = "1" | ||
| 29 | |||
| 30 | SRC_URI_append = "\ | ||
| 31 | file://jvm.cfg \ | ||
| 32 | " | ||
| 33 | |||
| 34 | # do not use --wth-extra-cflags, it breaks building demos for jdk | ||
| 35 | # maybe disabling demos is more reasonable than avoiding --wth-extra-cflags | ||
| 36 | # needs discussion | ||
| 37 | EXTRA_OECONF_append = "\ | ||
| 38 | --with-jobs=${@get_jdk8_native_jobs(d)} \ | ||
| 39 | \ | ||
| 40 | --with-sys-root=${STAGING_DIR} \ | ||
| 41 | --with-tools-dir=${STAGING_DIR_NATIVE} \ | ||
| 42 | --with-boot-jdk=${STAGING_LIBDIR_NATIVE}/jvm/openjdk-8-native \ | ||
| 43 | --with-cacerts-file=${STAGING_LIBDIR_NATIVE}/jvm/openjdk-8-native/jre/lib/security/cacerts \ | ||
| 44 | \ | ||
| 45 | --disable-precompiled-headers \ | ||
| 46 | --disable-zip-debug-info \ | ||
| 47 | \ | ||
| 48 | ${@jdk_configure_options(d)} \ | ||
| 49 | " | ||
| 50 | |||
| 51 | do_configure_append() { | ||
| 52 | sed -i -e 's,POST_STRIP_CMD:=.*,POST_STRIP_CMD:=,g' ${B}/spec.gmk | ||
| 53 | } | ||
| 54 | |||
| 55 | export MAKE_VERBOSE = "y" | ||
| 56 | export MFLAGS="${@jdk_make_options(d)} MAKE_VERBOSE=y QUIETLY= VERBOSE=-s LOG_LEVEL=trace STRIP_POLICY=no_strip" | ||
| 57 | |||
| 58 | BUILD_LD="${BUILD_CCLD}" | ||
| 59 | |||
| 60 | EXTRA_OEMAKE_append = '\ | ||
| 61 | OE_CFLAGS="${CFLAGS}" \ | ||
| 62 | OE_CPPFLAGS="${CPPFLAGS}" \ | ||
| 63 | OE_CXXFLAGS="${CXXFLAGS}" \ | ||
| 64 | OE_LDFLAGS="${LDFLAGS}" \ | ||
| 65 | ${@jdk_make_options(d)} \ | ||
| 66 | ALT_SDT_H="${STAGING_INCDIR}" \ | ||
| 67 | ALT_CUPS_HEADERS_PATH="${STAGING_INCDIR}" \ | ||
| 68 | ALT_FREETYPE_HEADERS_PATH="${STAGING_INCDIR}/freetype2" \ | ||
| 69 | ALT_FREETYPE_LIB_PATH="${STAGING_LIBDIR}" \ | ||
| 70 | STRIP_POLICY=no_strip \ | ||
| 71 | MAKE_VERBOSE=y VERBOSE=-s LOG_LEVEL=trace \ | ||
| 72 | QUIETLY= \ | ||
| 73 | images \ | ||
| 74 | ' | ||
| 75 | |||
| 76 | FILES_${JREPN}_append = "\ | ||
| 77 | ${JRE_HOME}/bin/[a-z]* \ | ||
| 78 | ${JRE_HOME}/lib/[a-z]* \ | ||
| 79 | ${JRE_HOME}/LICENSE \ | ||
| 80 | ${JRE_HOME}/release \ | ||
| 81 | " | ||
| 82 | |||
| 83 | FILES_${JDKPN}_append = "\ | ||
| 84 | ${JDK_HOME}/bin/[a-z]* \ | ||
| 85 | ${JDK_HOME}/lib/[a-z]* \ | ||
| 86 | ${JDK_HOME}/jre/bin/[a-z]* \ | ||
| 87 | ${JDK_HOME}/jre/lib/[a-z]* \ | ||
| 88 | ${JDK_HOME}/LICENSE \ | ||
| 89 | ${JDK_HOME}/jre/LICENSE \ | ||
| 90 | ${JDK_HOME}/release \ | ||
| 91 | " | ||
| 92 | |||
| 93 | FILES_${JDKPN}-dev_append = "\ | ||
| 94 | ${JDK_HOME}/include \ | ||
| 95 | " | ||
| 96 | |||
| 97 | FILES_${JDKPN}-dbg_append = "\ | ||
| 98 | ${JDK_HOME}/bin/.debug/ \ | ||
| 99 | ${JDK_HOME}/lib/.debug/ \ | ||
| 100 | ${JDK_HOME}/lib/${JDK_ARCH}/.debug/ \ | ||
| 101 | ${JDK_HOME}/lib/${JDK_ARCH}/jli/.debug/ \ | ||
| 102 | ${JDK_HOME}/jre/bin/.debug/ \ | ||
| 103 | ${JDK_HOME}/jre/lib/.debug/ \ | ||
| 104 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/.debug/ \ | ||
| 105 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/jli/.debug/ \ | ||
| 106 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/native_threads/.debug/ \ | ||
| 107 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/server/.debug/ \ | ||
| 108 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug/ \ | ||
| 109 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug/ \ | ||
| 110 | ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug/ \ | ||
| 111 | " | ||
| 112 | |||
| 113 | FILES_${JREPN}-dbg_append = "\ | ||
| 114 | ${JRE_HOME}/bin/.debug/ \ | ||
| 115 | ${JRE_HOME}/lib/.debug/ \ | ||
| 116 | ${JRE_HOME}/lib/${JDK_ARCH}/.debug/ \ | ||
| 117 | ${JRE_HOME}/lib/${JDK_ARCH}/jli/.debug/ \ | ||
| 118 | ${JRE_HOME}/lib/${JDK_ARCH}/server/.debug/ \ | ||
| 119 | " | ||
| 120 | |||
| 121 | FILES_${JDKPN}-demo = " ${JDK_HOME}/demo ${JDK_HOME}/sample " | ||
| 122 | RDEPENDS_${JDKPN}-demo = " ${JDKPN} " | ||
| 123 | |||
| 124 | FILES_${JDKPN}-demo-dbg = "\ | ||
| 125 | ${JDK_HOME}/demo/jvmti/gctest/lib/.debug/ \ | ||
| 126 | ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug/ \ | ||
| 127 | ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug/ \ | ||
| 128 | ${JDK_HOME}/demo/jvmti/hprof/lib/.debug/ \ | ||
| 129 | ${JDK_HOME}/demo/jvmti/minst/lib/.debug/ \ | ||
| 130 | ${JDK_HOME}/demo/jvmti/mtrace/lib/.debug/ \ | ||
| 131 | ${JDK_HOME}/demo/jvmti/versionCheck/lib/.debug/ \ | ||
| 132 | ${JDK_HOME}/demo/jvmti/waiters/lib/.debug/ \ | ||
| 133 | ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug/ \ | ||
| 134 | " | ||
| 135 | |||
| 136 | FILES_${JDKPN}-doc_append = "\ | ||
| 137 | ${JDK_HOME}/man \ | ||
| 138 | ${JDK_HOME}/ASSEMBLY_EXCEPTION \ | ||
| 139 | ${JDK_HOME}/THIRD_PARTY_README \ | ||
| 140 | ${JDK_HOME}/jre/ASSEMBLY_EXCEPTION \ | ||
| 141 | ${JDK_HOME}/jre/THIRD_PARTY_README \ | ||
| 142 | " | ||
| 143 | FILES_${JREPN}-doc_append = "\ | ||
| 144 | ${JRE_HOME}/man \ | ||
| 145 | ${JRE_HOME}/ASSEMBLY_EXCEPTION \ | ||
| 146 | ${JRE_HOME}/THIRD_PARTY_README \ | ||
| 147 | " | ||
| 148 | |||
| 149 | FILES_${JDKPN}-source = " ${JDK_HOME}/src.zip " | ||
| 150 | |||
| 151 | # Even though a vm is a hard dependency it is set as RRECOMMENDS so a single vm can get uninstalled: | ||
| 152 | # root@beaglebone:~/java# opkg remove openjdk-7-vm-shark | ||
| 153 | # No packages removed. | ||
| 154 | # Collected errors: | ||
| 155 | # * print_dependents_warning: Package openjdk-7-vm-shark is depended upon by packages: | ||
| 156 | # * print_dependents_warning: openjdk-7-java | ||
| 157 | # * print_dependents_warning: These might cease to work if package openjdk-7-vm-shark is removed. | ||
| 158 | #RRECOMMENDS_${JDKPN}-java = "java2-vm" | ||
| 159 | |||
| 160 | # There is a symlink to a .so but this one is valid. | ||
| 161 | INSANE_SKIP_${JDKPN}-common = "dev-so" | ||
| 162 | |||
| 163 | FILES_${JDKPN}-doc_append = "${JDK_HOME}/man" | ||
| 164 | |||
| 165 | do_compile_append() { | ||
| 166 | find ${B}/images/j2sdk-image -name "*.jar" -print0 | \ | ||
| 167 | xargs -0 -n1 ${STAGING_LIBDIR_NATIVE}/jvm/openjdk-8-native/bin/pack200 --repack --effort=9 --segment-limit=-1 --modification-time=latest | ||
| 168 | find ${B}/images/j2re-image -name "*.jar" -print0 | \ | ||
| 169 | xargs -0 -n1 ${STAGING_LIBDIR_NATIVE}/jvm/openjdk-8-native/bin/pack200 --repack --effort=9 --segment-limit=-1 --modification-time=latest --strip-debug | ||
| 170 | } | ||
| 171 | |||
| 172 | do_install_jdk() { | ||
| 173 | rm -rf ${D}${JDK_HOME} | ||
| 174 | mkdir -p ${D}${JDK_HOME} | ||
| 175 | cp -rp ${B}/images/j2sdk-image/* ${D}${JDK_HOME} | ||
| 176 | install -m644 ${WORKDIR}/jvm.cfg ${D}${JDK_HOME}/jre/lib/${JDK_ARCH}/ | ||
| 177 | find ${D}${JDK_HOME} -name "*.debuginfo" -print0 | xargs -0 rm | ||
| 178 | } | ||
| 179 | |||
| 180 | do_install_jre() { | ||
| 181 | rm -rf ${D}${JRE_HOME} | ||
| 182 | mkdir -p ${D}${JRE_HOME} | ||
| 183 | cp -rp ${B}/images/j2re-image/* ${D}${JRE_HOME} | ||
| 184 | install -m644 ${WORKDIR}/jvm.cfg ${D}${JRE_HOME}/lib/${JDK_ARCH}/ | ||
| 185 | find ${D}${JRE_HOME} -name "*.debuginfo" -print0 | xargs -0 rm | ||
| 186 | } | ||
| 187 | |||
| 188 | inherit update-alternatives | ||
| 189 | |||
| 190 | ALTERNATIVE_${JDKPN} = "java" | ||
| 191 | ALTERNATIVE_TARGET_${JDKPN} = "${JDK_HOME}/bin/java" | ||
| 192 | |||
| 193 | ALTERNATIVE_${JREPN} = "java" | ||
| 194 | ALTERNATIVE_TARGET_${JREPN} = "${JRE_HOME}/bin/java" | ||
| 195 | |||
| 196 | ALTERNATIVE_${JDKPN}-jdk = "javac" | ||
| 197 | ALTERNATIVE_TARGET_${JDKPN}-jdk = "${JDK_HOME}/bin/javac" | ||
| 198 | |||
| 199 | ALTERNATIVE_LINK_NAME[java] = "${bindir}/java" | ||
| 200 | ALTERNATIVE_LINK_NAME[javac] = "${bindir}/javac" | ||
