Migrated from GitHub
  • BitBake 91.1%
  • PHP 3.8%
  • Python 3%
  • Shell 2%
Find a file
Wang Mingyu 0601401b68 layer.conf: Mark as compatible with styhead
LAYERSERIES_COMPAT: replace scarthgap with styhead for Yocto 5.1

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Tim Orling <tim.orling@konsulko.com>
2025-01-20 11:09:54 -08:00
classes openjdk-build-helper: Use python raw string for regex pattern 2021-11-17 17:44:26 +01:00
conf layer.conf: Mark as compatible with styhead 2025-01-20 11:09:54 -08:00
docs openjdk-8: update to latest ga version 272 2020-10-22 13:14:03 +02:00
lib/oeqa oeqa/runtime/javac: Add package check for javac 2024-03-23 14:10:04 -07:00
licenses jlex: fix the license and add JLEX license file 2016-02-05 18:17:32 +02:00
recipes-core Drop the use of SRC_URI[md5sum] where SRC_URI[sha256sum] is already in use. 2025-01-19 17:06:50 -08:00
recipes-extended Drop the use of SRC_URI[md5sum] where SRC_URI[sha256sum] is already in use. 2025-01-19 17:06:50 -08:00
recipes-images/images all: run convert-overrides (0.9.3) script to convert to new override format 2021-08-11 07:19:27 +02:00
.gitignore gitignore: ignore new python byte-code files 2018-08-13 14:09:37 +02:00
CONTRIBUTING.md CONTRIBUTING: move to yocto-patches mailing list 2025-01-18 22:45:30 -08:00
COPYING.MIT add global license file 2013-04-05 09:49:54 +02:00
README README: move to yocto-patches mailing list 2024-04-06 17:12:15 -07:00

OpenEmbedded/Yocto Project layer for Java support
=================================================

This layer provides support for Java for use with OpenEmbedded and/or
Yocto Project build systems.

This layer depends on:

URI: git://git.openembedded.org/openembedded-core
branch: master
revision: HEAD

URI: git://git.openembedded.org/meta-openembedded
sub-layer: meta-oe
branch: master
revision: HEAD

Furthermoe for oeqa runtime testing this layer depends on:

URI: git://git.yoctoproject.org/poky
sub-layer: meta-poky
branch: master
revision: HEAD

For use with a specific Yocto Project release please refer to the corresponding
git branches.

Guides on how to contribute to meta-java are described in CONTRIBUTING.md.

Testing
-------

The meta-java layer may be tested using oeqa's runtime image tests. The easiest
way is to add the following configuration to your local.conf:

SANITY_TESTED_DISTROS = ""
INHERIT += "testimage"
TESTIMAGE_AUTO = "1"

Then you should be able to use the open{jre,jdk}-{7,8}-test-image recipes.
Furthermore you could also include the tests provided in lib/oeqa/runtime/cases
into your test image. More information on image testing is available at:

	https://wiki.yoctoproject.org/wiki/Image_tests

Known Limitations/Bugs
----------------------

 + OpenJDK-7 doesn't support musl based images
 + Both, OpenJDK-7 and 8 doesn't support mips and mips64 machines
 + Further limitations are shown in the OpenJDK version/libc/target architecture
   support matrix below:
   +--------+-----------------+-----------------+-----------------+
   |        | OpenJDK-7/glibc | OpenJDK-8/glibc | OpenJDK-8/musl  |
   +--------+-----------------+-----------------+-----------------+
   | arm    |       O K       |    int. mode    |    int. mode    |
   +--------+-----------------+-----------------+-----------------+
   | armv7  |       O K       |       O K       |       O K       |
   +--------+-----------------+-----------------+-----------------+
   | arm64  |    int. mode    |       O K       |       O K       |
   +--------+-----------------+-----------------+-----------------+
   | x86    |    int. mode    |       O K       |  build failure  |
   +--------+-----------------+-----------------+-----------------+
   | x86-64 |    int. mode    |       O K       |       O K       |
   +--------+-----------------+-----------------+-----------------+
   | ppc    |    int. mode    |  build failure  |  build failure  |
   +--------+-----------------+-----------------+-----------------+

If you encounter any other problems or bugs please report them to our mailing
list at yocto-patches@lists.yoctoproject.org.

Usage instructions
------------------

You should define at least the following variables in a distro include file or local.conf

# Possible provider: cacao-initial-native and jamvm-initial-native
PREFERRED_PROVIDER_virtual/java-initial-native = "cacao-initial-native"

# Possible provider: cacao-native and jamvm-native
PREFERRED_PROVIDER_virtual/java-native = "jamvm-native"

# Optional since there is only one provider for now
PREFERRED_PROVIDER_virtual/javac-native = "ecj-bootstrap-native"

Simply rely on openjdk-7-jre, openjdk-7, openjdk-8 or openjre-8.

For conf/bblayers.conf you have to add

BBLAYERS ?= " \
   ...
  path_to_source/meta-openembedded/meta-oe \
  path_to_source/sources/meta-java \
  "

Build host dependencies
-----------------------
 - gcc >= v6
 - libstdc++ static