config BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS bool default y if BR2_HOSTARCH = "x86_64" default y if BR2_HOSTARCH = "aarch64" # Taken from make/autoconf/platform.m4 config BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS bool default y if BR2_aarch64 default y if BR2_arc && !(BR2_arc750d || BR2_arc770d) default y if BR2_arm default y if BR2_i386 || BR2_x86_64 default y if BR2_m68k default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le default y if BR2_sh config BR2_PACKAGE_OPENJDK bool "openjdk" depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS depends on !BR2_SOFT_FLOAT depends on !BR2_STATIC_LIBS # glibc depends on BR2_INSTALL_LIBSTDCPP # cups depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib, cups, libusb depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb, C++14 for OpenJDK17 # Strictly needed only for OpenJDK17, but to keep dependencies # simple with ARC supported only with OpenJDK17, we make this # dependency apply to OpenJDK as a whole. depends on BR2_HOST_GCC_AT_LEAST_4_9 # C++14 depends on BR2_TOOLCHAIN_USES_GLIBC depends on BR2_USE_MMU # cups depends on BR2_PACKAGE_XORG7 select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB_MIXER select BR2_PACKAGE_ALSA_LIB_PCM select BR2_PACKAGE_ALSA_LIB_RAWMIDI select BR2_PACKAGE_ALSA_LIB_SEQ select BR2_PACKAGE_CUPS select BR2_PACKAGE_FONTCONFIG select BR2_PACKAGE_GIFLIB select BR2_PACKAGE_JPEG select BR2_PACKAGE_LCMS2 select BR2_PACKAGE_LIBPNG select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_XLIB_LIBXRANDR select BR2_PACKAGE_XLIB_LIBXRENDER select BR2_PACKAGE_XLIB_LIBXT select BR2_PACKAGE_XLIB_LIBXTST select BR2_PACKAGE_ZLIB help OpenJDK is a free and open-source implementation of the Java Platform. http://openjdk.java.net/ if BR2_PACKAGE_OPENJDK choice prompt "openjdk version" default BR2_PACKAGE_OPENJDK_VERSION_17 help Select the version of OpenJDK you wish to use. config BR2_PACKAGE_OPENJDK_VERSION_11 bool "OpenJDK 11" # The ARC-specific OpenJDK patch only applies to OpenJDK 17. depends on !BR2_arc config BR2_PACKAGE_OPENJDK_VERSION_17 bool "OpenJDK 17" endchoice config BR2_PACKAGE_OPENJDK_FULL_JDK bool "Build the full JDK" help Install the full JDK instead of just the run time. The full JDK includes several packages used for debugging and development. Some useful tools included with the JDK are: - javaws Command line tool for launching Java Web Start and setting various options. - jcmd: JVM Diagnostic Commands tool: Sends diagnostic command requests to a running Java Virtual Machine. - jinfo Configuration Info for Java: Prints configuration information for a given process or core file or a remote debug server. - jmap Memory Map for Java: Prints shared object memory maps or heap memory details of a given process or core file or a remote debug server. - jsadebugd Serviceability Agent Debug Daemon for Java: Attaches to a process or core file and acts as a debug server. - jstack Stack Trace for Java - Prints a stack trace of threads for a given process or core file or remote debug server. - jstat JVM Statistics Monitoring Tool: Attaches to an instrumented HotSpot Java virtual machine and collects and logs performance statistics as specified by the command line options. - jstatd JVM jstat Daemon - Launches an RMI server application that monitors for the creation and termination of instrumented HotSpot Java virtual machines and provides an interface to allow remote monitoring tools to attach to Java virtual machines running on the local system. Note: While the JDK also comes with several tools which can be used for developing java applications on a target, Buildroot does not support development on a target. Building the full JDK is supported for debugging purposes only. Selecting this option increases the file system by approximately 110M. choice prompt "openjdk variant" default BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER if !(BR2_powerpc || BR2_arc) default BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO if BR2_powerpc default BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO if BR2_arc config BR2_PACKAGE_OPENJDK_JVM_VARIANT_CLIENT bool "client" depends on !(BR2_powerpc || BR2_arc) help Quick loading, but slower run-time performance. config BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER bool "server" depends on !(BR2_powerpc || BR2_arc) help Slower loading, but faster run-time performance. config BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO bool "zero" select BR2_PACKAGE_LIBFFI help A non-assembler variant with wide arch support, however performance is less then client/server. http://openjdk.java.net/projects/zero endchoice endif comment "openjdk needs X.Org" depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS depends on BR2_USE_MMU depends on !BR2_PACKAGE_XORG7 comment "openjdk needs glibc, and a toolchain w/ wchar, dynamic library, threads, C++, gcc >= 4.9, host gcc >= 4.9" depends on BR2_USE_MMU depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_USES_GLIBC || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ !BR2_HOST_GCC_AT_LEAST_4_9 comment "openjdk does not support soft float configurations" depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_SOFT_FLOAT