xref: /OK3568_Linux_fs/buildroot/package/openjdk/Config.in (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyunconfig BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS
2*4882a593Smuzhiyun	bool
3*4882a593Smuzhiyun	default y if BR2_HOSTARCH = "x86_64"
4*4882a593Smuzhiyun
5*4882a593Smuzhiyun# Taken from make/autoconf/platform.m4
6*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
7*4882a593Smuzhiyun	bool
8*4882a593Smuzhiyun	default y if BR2_aarch64
9*4882a593Smuzhiyun	default y if BR2_arm
10*4882a593Smuzhiyun	default y if BR2_i386 || BR2_x86_64
11*4882a593Smuzhiyun	default y if BR2_m68k
12*4882a593Smuzhiyun	default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
13*4882a593Smuzhiyun	default y if BR2_sh
14*4882a593Smuzhiyun
15*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK
16*4882a593Smuzhiyun	bool "openjdk"
17*4882a593Smuzhiyun	depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS
18*4882a593Smuzhiyun	depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
19*4882a593Smuzhiyun	depends on !BR2_SOFT_FLOAT
20*4882a593Smuzhiyun	depends on !BR2_STATIC_LIBS # glibc
21*4882a593Smuzhiyun	depends on BR2_INSTALL_LIBSTDCPP # cups
22*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib, cups, libusb
23*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb, C++14 for OpenJDK17
24*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_USES_GLIBC
25*4882a593Smuzhiyun	depends on BR2_USE_MMU # cups
26*4882a593Smuzhiyun	depends on BR2_PACKAGE_XORG7
27*4882a593Smuzhiyun	select BR2_PACKAGE_ALSA_LIB
28*4882a593Smuzhiyun	select BR2_PACKAGE_ALSA_LIB_MIXER
29*4882a593Smuzhiyun	select BR2_PACKAGE_ALSA_LIB_PCM
30*4882a593Smuzhiyun	select BR2_PACKAGE_ALSA_LIB_RAWMIDI
31*4882a593Smuzhiyun	select BR2_PACKAGE_ALSA_LIB_SEQ
32*4882a593Smuzhiyun	select BR2_PACKAGE_CUPS
33*4882a593Smuzhiyun	select BR2_PACKAGE_FONTCONFIG
34*4882a593Smuzhiyun	select BR2_PACKAGE_GIFLIB
35*4882a593Smuzhiyun	select BR2_PACKAGE_JPEG
36*4882a593Smuzhiyun	select BR2_PACKAGE_LCMS2
37*4882a593Smuzhiyun	select BR2_PACKAGE_LIBPNG
38*4882a593Smuzhiyun	select BR2_PACKAGE_LIBUSB
39*4882a593Smuzhiyun	select BR2_PACKAGE_XLIB_LIBXRANDR
40*4882a593Smuzhiyun	select BR2_PACKAGE_XLIB_LIBXRENDER
41*4882a593Smuzhiyun	select BR2_PACKAGE_XLIB_LIBXT
42*4882a593Smuzhiyun	select BR2_PACKAGE_XLIB_LIBXTST
43*4882a593Smuzhiyun	select BR2_PACKAGE_ZLIB
44*4882a593Smuzhiyun	help
45*4882a593Smuzhiyun	  OpenJDK is a free and open-source implementation of the
46*4882a593Smuzhiyun	  Java Platform.
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun	  http://openjdk.java.net/
49*4882a593Smuzhiyun
50*4882a593Smuzhiyunif BR2_PACKAGE_OPENJDK
51*4882a593Smuzhiyun
52*4882a593Smuzhiyunchoice
53*4882a593Smuzhiyun	prompt "openjdk version"
54*4882a593Smuzhiyun	default BR2_PACKAGE_OPENJDK_VERSION_17
55*4882a593Smuzhiyun	help
56*4882a593Smuzhiyun	  Select the version of OpenJDK you wish to use.
57*4882a593Smuzhiyun
58*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_VERSION_11
59*4882a593Smuzhiyun	bool "OpenJDK 11"
60*4882a593Smuzhiyun
61*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_VERSION_17
62*4882a593Smuzhiyun	bool "OpenJDK 17"
63*4882a593Smuzhiyun	depends on BR2_HOST_GCC_AT_LEAST_4_9 # C++14
64*4882a593Smuzhiyun
65*4882a593Smuzhiyuncomment "OpenJDK 17 needs a host gcc >= 4.9"
66*4882a593Smuzhiyun	depends on !BR2_HOST_GCC_AT_LEAST_4_9 # C++14
67*4882a593Smuzhiyun
68*4882a593Smuzhiyunendchoice
69*4882a593Smuzhiyun
70*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_FULL_JDK
71*4882a593Smuzhiyun	bool "Build the full JDK"
72*4882a593Smuzhiyun	help
73*4882a593Smuzhiyun	  Install the full JDK instead of just the run time.
74*4882a593Smuzhiyun	  The full JDK includes several packages used for debugging and
75*4882a593Smuzhiyun	  development. Some useful tools included with the JDK are:
76*4882a593Smuzhiyun	    - javaws
77*4882a593Smuzhiyun	      Command line tool for launching Java Web Start and setting
78*4882a593Smuzhiyun	      various options.
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun	    - jcmd:
81*4882a593Smuzhiyun	      JVM Diagnostic Commands tool: Sends diagnostic command
82*4882a593Smuzhiyun	      requests to a running Java Virtual Machine.
83*4882a593Smuzhiyun
84*4882a593Smuzhiyun	    - jinfo
85*4882a593Smuzhiyun	      Configuration Info for Java: Prints configuration
86*4882a593Smuzhiyun	      information for a given process or core file or a remote
87*4882a593Smuzhiyun	      debug server.
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun	    - jmap
90*4882a593Smuzhiyun	      Memory Map for Java: Prints shared object memory maps or
91*4882a593Smuzhiyun	      heap memory details of a given process or core file or a
92*4882a593Smuzhiyun	      remote debug server.
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun	    - jsadebugd
95*4882a593Smuzhiyun	      Serviceability Agent Debug Daemon for Java: Attaches to a
96*4882a593Smuzhiyun	      process or core file and acts as a debug server.
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun	    - jstack
99*4882a593Smuzhiyun	      Stack Trace for Java - Prints a stack trace of threads for
100*4882a593Smuzhiyun	      a given process or core file or remote debug server.
101*4882a593Smuzhiyun
102*4882a593Smuzhiyun	    - jstat
103*4882a593Smuzhiyun	      JVM Statistics Monitoring Tool: Attaches to an
104*4882a593Smuzhiyun	      instrumented HotSpot Java virtual machine and collects and
105*4882a593Smuzhiyun	      logs performance statistics as specified by the command
106*4882a593Smuzhiyun	      line options.
107*4882a593Smuzhiyun
108*4882a593Smuzhiyun	    - jstatd
109*4882a593Smuzhiyun	      JVM jstat Daemon - Launches an RMI server application that
110*4882a593Smuzhiyun	      monitors for the creation and termination of instrumented
111*4882a593Smuzhiyun	      HotSpot Java virtual machines and provides an interface to
112*4882a593Smuzhiyun	      allow remote monitoring tools to attach to Java virtual
113*4882a593Smuzhiyun	      machines running on the local system.
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun	  Note:
116*4882a593Smuzhiyun	  While the JDK also comes with several tools which can be used
117*4882a593Smuzhiyun	  for developing java applications on a target, Buildroot does
118*4882a593Smuzhiyun	  not support development on a target. Building the full JDK is
119*4882a593Smuzhiyun	  supported for debugging purposes only.
120*4882a593Smuzhiyun
121*4882a593Smuzhiyun	  Selecting this option increases the file system by
122*4882a593Smuzhiyun	  approximately 110M.
123*4882a593Smuzhiyun
124*4882a593Smuzhiyunchoice
125*4882a593Smuzhiyun	prompt "openjdk variant"
126*4882a593Smuzhiyun	default BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER if !BR2_powerpc
127*4882a593Smuzhiyun	default BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO if BR2_powerpc
128*4882a593Smuzhiyun
129*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_JVM_VARIANT_CLIENT
130*4882a593Smuzhiyun	bool "client"
131*4882a593Smuzhiyun	depends on !BR2_powerpc
132*4882a593Smuzhiyun	help
133*4882a593Smuzhiyun	  Quick loading, but slower run-time performance.
134*4882a593Smuzhiyun
135*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_JVM_VARIANT_SERVER
136*4882a593Smuzhiyun	bool "server"
137*4882a593Smuzhiyun	depends on !BR2_powerpc
138*4882a593Smuzhiyun	help
139*4882a593Smuzhiyun	  Slower loading, but faster run-time performance.
140*4882a593Smuzhiyun
141*4882a593Smuzhiyunconfig BR2_PACKAGE_OPENJDK_JVM_VARIANT_ZERO
142*4882a593Smuzhiyun	bool "zero"
143*4882a593Smuzhiyun	select BR2_PACKAGE_LIBFFI
144*4882a593Smuzhiyun	help
145*4882a593Smuzhiyun	  A non-assembler variant with wide arch support, however
146*4882a593Smuzhiyun	  performance is less then client/server.
147*4882a593Smuzhiyun
148*4882a593Smuzhiyun	  http://openjdk.java.net/projects/zero
149*4882a593Smuzhiyun
150*4882a593Smuzhiyunendchoice
151*4882a593Smuzhiyunendif
152*4882a593Smuzhiyun
153*4882a593Smuzhiyuncomment "openjdk needs X.Org"
154*4882a593Smuzhiyun	depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
155*4882a593Smuzhiyun	depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS
156*4882a593Smuzhiyun	depends on BR2_USE_MMU
157*4882a593Smuzhiyun	depends on !BR2_PACKAGE_XORG7
158*4882a593Smuzhiyun
159*4882a593Smuzhiyuncomment "openjdk needs glibc, and a toolchain w/ wchar, dynamic library, threads, C++, gcc >= 4.9"
160*4882a593Smuzhiyun	depends on BR2_USE_MMU
161*4882a593Smuzhiyun	depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
162*4882a593Smuzhiyun	depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS
163*4882a593Smuzhiyun	depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP || \
164*4882a593Smuzhiyun		!BR2_TOOLCHAIN_HAS_THREADS || \
165*4882a593Smuzhiyun		!BR2_TOOLCHAIN_USES_GLIBC || \
166*4882a593Smuzhiyun		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
167*4882a593Smuzhiyun
168*4882a593Smuzhiyuncomment "openjdk does not support soft float configurations"
169*4882a593Smuzhiyun	depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
170*4882a593Smuzhiyun	depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS
171*4882a593Smuzhiyun	depends on BR2_USE_MMU
172*4882a593Smuzhiyun	depends on BR2_SOFT_FLOAT
173