OpenJDK configure help

本文最后更新于:2023-05-10 09:45 星期三

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578

`configure' configures OpenJDK openjdk to adapt to many kinds of systems.

Usage: /Users/wdk/Code/openSourceCode/2_openJdk/openjdk/configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
-h, --help display this help and exit
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
-q, --quiet, --silent do not print `checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for `--cache-file=config.cache'
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or `..']

Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc. You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
--bindir=DIR user executables [EPREFIX/bin]
--sbindir=DIR system admin executables [EPREFIX/sbin]
--libexecdir=DIR program executables [EPREFIX/libexec]
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
--datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
--datadir=DIR read-only architecture-independent data [DATAROOTDIR]
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
--docdir=DIR documentation root [DATAROOTDIR/doc/openjdk]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
--psdir=DIR ps documentation [DOCDIR]

X features:
--x-includes=DIR X include files are in DIR
--x-libraries=DIR X library files are in DIR

System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
--target=TARGET configure for building compilers for TARGET [HOST]

Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-openjdk-only suppress building custom source even if present [disabled]
--enable-debug enable debugging (shorthand for --with-debug-level=fastdebug) [disabled]
--disable-absolute-paths-in-output
Set to disable to prevent any absolute paths from
the build to end up in any of the build output.
[disabled in release builds, otherwise enabled]

--enable-keep-packaged-modules
enable keeping of packaged modules in jdk image [enabled]
--enable-reproducible-build
Deprecated. Option is kept for backwards
compatibility and is ignored
--enable-headless-only only build headless (no GUI) support [disabled]
--enable-linktime-gc use link time gc on unused code sections in the JDK build [auto]
--enable-full-docs build complete documentation [enabled if all tools found]
--enable-unlimited-crypto
enable unlimited crypto policy [enabled]
--enable-static-build enable static library build [disabled]
--enable-warnings-as-errors
consider native warnings to be an error [auto]
--enable-branch-protection
enable branch protection when compiling C/C++ [disabled]
--enable-native-coverage
enable native compilation with code coverage data [disabled]
--enable-asan enable AddressSanitizer [disabled]
--enable-ubsan enable UndefinedBehaviorSanitizer [disabled]
--enable-lsan enable LeakSanitizer [disabled]
--enable-fallback-linker
enable libffi-based fallback implementation of java.lang.foreign.Linker [$FALLBACK_LINKER_DEFAULT]
--enable-hsdis-bundling enable bundling of hsdis to allow HotSpot disassembly out-of-the-box [disabled]
--enable-libffi-bundling
enable bundling of libffi.so to make the built JDK runnable on more systems [disabled]
--enable-cds alias for --enable-jvm-feature-cds
--enable-dtrace alias for --enable-jvm-feature-dtrace
--enable-jvm-feature-cds
enable jvm feature 'cds' (enable class data sharing (CDS))
--enable-jvm-feature-compiler1
enable jvm feature 'compiler1' (enable hotspot compiler C1)
--enable-jvm-feature-compiler2
enable jvm feature 'compiler2' (enable hotspot compiler C2)
--enable-jvm-feature-dtrace
enable jvm feature 'dtrace' (enable dtrace support)
--enable-jvm-feature-epsilongc
enable jvm feature 'epsilongc' (include the epsilon (no-op) garbage collector)
--enable-jvm-feature-g1gc
enable jvm feature 'g1gc' (include the G1 garbage collector)
--enable-jvm-feature-jfr
enable jvm feature 'jfr' (enable JDK Flight Recorder (JFR))
--enable-jvm-feature-jni-check
enable jvm feature 'jni-check' (enable -Xcheck:jni support)
--enable-jvm-feature-jvmci
enable jvm feature 'jvmci' (enable JVM Compiler Interface (JVMCI))
--enable-jvm-feature-jvmti
enable jvm feature 'jvmti' (enable Java Virtual Machine Tool Interface (JVM TI))
--enable-jvm-feature-link-time-opt
enable jvm feature 'link-time-opt' (enable link time optimization)
--enable-jvm-feature-management
enable jvm feature 'management' (enable java.lang.management API support)
--enable-jvm-feature-minimal
enable jvm feature 'minimal' (support building variant 'minimal')
--enable-jvm-feature-opt-size
enable jvm feature 'opt-size' (optimize the JVM library for size)
--enable-jvm-feature-parallelgc
enable jvm feature 'parallelgc' (include the parallel garbage collector)
--enable-jvm-feature-serialgc
enable jvm feature 'serialgc' (include the serial garbage collector)
--enable-jvm-feature-services
enable jvm feature 'services' (enable diagnostic services and client attaching)
--enable-jvm-feature-shenandoahgc
enable jvm feature 'shenandoahgc' (include the Shenandoah garbage collector)
--enable-jvm-feature-static-build
enable jvm feature 'static-build' (build static library instead of dynamic)
--enable-jvm-feature-vm-structs
enable jvm feature 'vm-structs' (export JVM structures to the Serviceablility Agent)
--enable-jvm-feature-zero
enable jvm feature 'zero' (support building variant 'zero')
--enable-jvm-feature-zgc
enable jvm feature 'zgc' (include the Z garbage collector)
--enable-jvm-feature-cmsgc
Deprecated. Option is kept for backwards
compatibility and is ignored
--enable-jvm-feature-trace
Deprecated. Option is kept for backwards
compatibility and is ignored
--enable-jtreg-failure-handler
enable building of the jtreg failure handler [enabled if jtreg is present and build env is CI]
--enable-jtreg-test-thread-factory
enable building of the jtreg test thread factory [enabled if jtreg is present]
--enable-generate-classlist
enable generation of a CDS classlist at build time [enabled if the JVM feature 'cds' is enabled for all JVM variants]
--enable-manpages enable copying of static man pages [enabled]
--enable-cds-archive enable generation of a default CDS archive in the product image [enabled if possible]
--enable-compatible-cds-alignment
enable use alternative compatible cds core region alignment [disabled]
--enable-javac-server enable javac server [enabled]
--enable-icecc enable distributed compilation of native code using icecc/icecream [disabled]
--enable-precompiled-headers
enable using precompiled headers when compiling C++ [auto]
--enable-ccache enable using ccache to speed up recompilations [disabled]

Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-target-bits build 32-bit or 64-bit binaries (for platforms that
support it), e.g. --with-target-bits=32 [guessed]
--with-build-env select build environment type (affects certain default values) [auto]
--with-debug-level set the debug level (release, fastdebug, slowdebug,
optimized) [release]
--with-jvm-variants JVM variants to build, separated by commas (server
client minimal core zero custom) [server]
--with-devkit use this devkit for compilers, tools and resources
--with-sys-root alias for --with-sysroot for backwards compatibility
--with-sysroot use this directory as sysroot
--with-tools-dir alias for --with-toolchain-path for backwards
compatibility
--with-toolchain-path prepend these directories when searching for
toolchain binaries (compilers etc)
--with-xcode-path set up toolchain on Mac OS using a path to an Xcode
installation
--with-extra-path prepend these directories to the default path
--with-sdk-name use the Xcode platform SDK of the given name.
[macosx]
--with-conf-name use this as the name of the configuration [generated
from important configuration options]
--with-output-sync set make --output-sync type if supported by make [none]
--with-default-make-target
set the default make target [exploded-image]
--with-log [default value for make LOG argument [warn]]
--with-jmod-compress specify JMOD compression type (zip-0-9) [$DEFAULT_JMOD_COMPRESS]
--with-build-user build username to use in version strings []
--with-jdk-rc-name Set JDK RC name. This is used for FileDescription and ProductName properties of MS Windows binaries. [from branding.conf]
--with-vendor-name Set vendor name. Among others [from branding.conf]
--with-vendor-url Set the 'java.vendor.url' system property [from branding.conf]
--with-vendor-bug-url Set the 'java.vendor.url.bug' system property [from branding.conf]
--with-vendor-vm-bug-url
Sets the bug URL which will be displayed when the VM crashes [from branding.conf]
--with-version-string Set version string [calculated]
--with-version-pre Set the base part of the version 'PRE' field
(pre-release identifier) ['internal']
--with-version-opt Set version 'OPT' field (build metadata)
[<timestamp>.<user>.<dirname>]
--with-version-build Set version 'BUILD' field (build number) [not
specified]
--with-version-feature Set version 'FEATURE' field (first number) [current source value]
--with-version-interim Set version 'INTERIM' field (second number) [current
source value]
--with-version-update Set version 'UPDATE' field (third number) [current
source value]
--with-version-patch Set version 'PATCH' field (fourth number) [not
specified]
--with-version-extra1 Set 1st version extra number [not specified]
--with-version-extra2 Set 2nd version extra number [not specified]
--with-version-extra3 Set 3rd version extra number [not specified]
--with-version-date Set version date [current source value]
--with-vendor-version-string
Set vendor version string [not specified]
--with-macosx-bundle-name-base
Set the MacOSX Bundle Name base. This is the base name for calculating MacOSX Bundle Names. [from branding.conf]
--with-macosx-bundle-id-base
Set the MacOSX Bundle ID base. This is the base ID for calculating MacOSX Bundle IDs. [based on branding.conf and VERSION_PRE]
--with-macosx-bundle-build-version
Set the MacOSX Bundle CFBundleVersion field. This key is a machine-readable string composed of one to three period-separated integers and should represent the build version. [the build number]
--with-boot-jdk path to Boot JDK (used to bootstrap build) [probed]
--with-boot-jdk-jvmargs specify additional arguments to be passed to Boot
JDK tools [none]
--with-classpath Optional classpath to set as CLASSPATH to all Java
invocations [none]
--with-build-jdk path to JDK of same version as is being built[the
newly built JDK]
--with-docs-reference-jdk
path to JDK to use for building the reference
documentation
--with-source-date how to set SOURCE_DATE_EPOCH ('update', 'current',
'version' a timestamp or an ISO-8601 date)
[current/value of SOURCE_DATE_EPOCH]
--with-cacerts-file specify alternative cacerts file
--with-cacerts-src specify alternative cacerts source folder containing
certificates
--with-copyright-year Set copyright year value for build [current
year/source-date]
--with-jni-libpath override default JNI library search path
--with-import-modules import a set of prebuilt modules either as a zip
file or an exploded directory
--with-toolchain-type the toolchain type (or family) to use, use '--help'
to show possible values [platform dependent]
--with-extra-cflags extra flags to be used when compiling jdk c-files
--with-extra-cxxflags extra flags to be used when compiling jdk c++-files
--with-extra-ldflags extra flags to be used when linking jdk
--with-extra-asflags extra flags to be passed to the assembler
--with-toolchain-version
the version of the toolchain to look for, use
'--help' to show possible values [platform
dependent]
--with-msvc-toolset-version
specific MSVC toolset version to use, passed as
-vcvars_ver argument to pass to vcvarsall.bat
(Windows only)
--with-build-devkit Devkit to use for the build platform toolchain
--with-jtreg Regression Test Harness [probed]
--with-jmh Java Microbenchmark Harness for building the OpenJDK
Microbenchmark Suite
--with-jib Jib dependency management tool [not used]
--with-macosx-version-max
error on use of newer functionality. [macosx]
--with-abi-profile specify ABI profile for ARM builds
(arm-vfp-sflt,arm-vfp-hflt,arm-sflt,
armv5-vfp-sflt,armv6-vfp-hflt,aarch64) [toolchain
dependent]
--with-native-debug-symbols
set the native debug symbol configuration (none,
internal, external, zipped) [varying]
--with-external-symbols-in-bundles
which type of external native debug symbol
information shall be shipped in product bundles
(none, public, full) (e.g. ship full/stripped pdbs
on Windows) [none]
--with-jcov jcov library location
--with-jcov-input-jdk jdk image to instrument
--with-jcov-filters filters to limit code for jcov instrumentation and
report generation
--with-stdc++lib=<static>,<dynamic>,<default>
force linking of the C++ runtime on Linux to either
static or dynamic, default is static with dynamic as
fallback
--with-msvcr-dll path to microsoft C runtime dll (msvcr*.dll)
(Windows only) [probed]
--with-msvcp-dll path to microsoft C++ runtime dll (msvcp*.dll)
(Windows only) [probed]
--with-vcruntime-1-dll path to microsoft C++ runtime dll (vcruntime*_1.dll)
(Windows x64 only) [probed]
--with-ucrt-dll-dir path to Microsoft Windows Kit UCRT DLL dir (Windows
only) [probed]
--with-alsa specify prefix directory for the alsa package
(expecting the libraries under PATH/lib and the
headers under PATH/include)
--with-alsa-include specify directory for the alsa include files
--with-alsa-lib specify directory for the alsa library
--with-libjpeg use libjpeg from build system or OpenJDK source
(system, bundled) [bundled]
--with-giflib use giflib from build system or OpenJDK source
(system, bundled) [bundled]
--with-libpng use libpng from build system or OpenJDK source
(system, bundled) [bundled]
--with-zlib use zlib from build system or OpenJDK source
(system, bundled) [bundled]
--with-lcms use lcms2 from build system or OpenJDK source
(system, bundled) [bundled]
--with-harfbuzz use harfbuzz from build system or OpenJDK source
(system, bundled) [bundled]
--with-cups specify prefix directory for the cups package
(expecting the headers under PATH/include)
--with-cups-include specify directory for the cups include files
--with-fontconfig specify prefix directory for the fontconfig package
(expecting the headers under PATH/include)
--with-fontconfig-include
specify directory for the fontconfig include files
--with-freetype specify whether to use 'system' or 'bundled'
freetype. The selected option applies to both build
time and run time. The default behaviour can be
platform dependent. If using 'system' and either the
include files or libraries cannot be located
automatically, then additionally specify both using
--with-freetype-include and --with-freetype-lib.
--with-freetype-include specify directory for the freetype include files
--with-freetype-lib specify directory for the freetype library
--with-hsdis what hsdis backend to use ('none', 'capstone',
'llvm', 'binutils') [none]
--with-capstone where to find the Capstone files needed for
hsdis/capstone
--with-llvm where to find the LLVM files needed for hsdis/llvm
--with-binutils where to find the binutils files needed for
hsdis/binutils
--with-binutils-src where to find the binutils source for building
--with-libffi specify prefix directory for the libffi package
(expecting the libraries under PATH/lib and the
headers under PATH/include)
--with-libffi-include specify directory for the libffi include files
--with-libffi-lib specify directory for the libffi library
--with-x use the X Window System
--with-gtest specify prefix directory for the gtest framework
--with-jvm-features JVM features to enable (foo) or disable (-foo),
separated by comma. Use '--help' to show possible
values [none]
--with-hotspot-build-time
timestamp to use in hotspot version string, empty
means determined at build time [source-date/empty]
--with-exclude-translations
a comma separated list of locales to exclude
translations for. Default is to include all
translations present in the source.
--with-macosx-codesign set the macosx code signing mode (hardened, debug, auto) [auto]
--with-macosx-codesign-identity
specify the macosx code signing identity [openjdk_codesign]
--with-num-cores number of cores in the build system, e.g.
--with-num-cores=8 [probed]
--with-memory-size memory (in MB) available in the build system, e.g.
--with-memory-size=1024 [probed]
--with-jobs number of parallel jobs to let make run [calculated
based on cores and memory]
--with-test-jobs number of parallel tests jobs to run [based on build
jobs]
--with-ccache-dir where to store ccache files [~/.ccache]

Some influential environment variables:
ECHO Override default value for ECHO
TR Override default value for TR
UNAME Override default value for UNAME
WC Override default value for WC
GREP Override default value for GREP
EGREP Override default value for EGREP
SED Override default value for SED
PATHTOOL Override default value for PATHTOOL
CMD Override default value for CMD
BASH Override default value for BASH
CAT Override default value for CAT
CHMOD Override default value for CHMOD
CP Override default value for CP
CUT Override default value for CUT
DATE Override default value for DATE
DIFF Override default value for DIFF
EXPR Override default value for EXPR
FIND Override default value for FIND
GUNZIP Override default value for GUNZIP
GZIP Override default value for GZIP
HEAD Override default value for HEAD
LN Override default value for LN
LS Override default value for LS
MKDIR Override default value for MKDIR
MKTEMP Override default value for MKTEMP
MV Override default value for MV
AWK Override default value for AWK
PRINTF Override default value for PRINTF
RM Override default value for RM
RMDIR Override default value for RMDIR
SH Override default value for SH
SORT Override default value for SORT
TAIL Override default value for TAIL
TAR Override default value for TAR
TEE Override default value for TEE
TOUCH Override default value for TOUCH
XARGS Override default value for XARGS
FGREP Override default value for FGREP
DF Override default value for DF
GIT Override default value for GIT
NICE Override default value for NICE
READLINK Override default value for READLINK
WHOAMI Override default value for WHOAMI
LSB_RELEASE Override default value for LSB_RELEASE
CMP Override default value for CMP
UNIQ Override default value for UNIQ
XCODEBUILD Override default value for XCODEBUILD
XCRUN Override default value for XCRUN
PKGHANDLER Override default value for PKGHANDLER
MAKE Override default value for MAKE
CHECK_GMAKE Override default value for CHECK_GMAKE
CHECK_MAKE Override default value for CHECK_MAKE
CHECK_TOOLSDIR_GMAKE
Override default value for CHECK_TOOLSDIR_GMAKE
CHECK_TOOLSDIR_MAKE
Override default value for CHECK_TOOLSDIR_MAKE
PANDOC Override default value for PANDOC
UNZIP Override default value for UNZIP
ZIPEXE Override default value for ZIPEXE
READELF Override default value for READELF
DOT Override default value for DOT
STAT Override default value for STAT
TIME Override default value for TIME
FLOCK Override default value for FLOCK
DTRACE Override default value for DTRACE
PATCH Override default value for PATCH
DSYMUTIL Override default value for DSYMUTIL
MIG Override default value for MIG
XATTR Override default value for XATTR
CODESIGN Override default value for CODESIGN
SETFILE Override default value for SETFILE
ULIMIT Override default value for ULIMIT
PKG_CONFIG path to pkg-config utility
JAVAC_CHECK Override default value for JAVAC_CHECK
JAVA_CHECK Override default value for JAVA_CHECK
JAVA Override default value for JAVA
JAVAC Override default value for JAVAC
JAVADOC Override default value for JAVADOC
JAR Override default value for JAR
POTENTIAL_CC
Override default value for POTENTIAL_CC
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS libraries to pass to the linker, e.g. -l<library>
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
POTENTIAL_CXX
Override default value for POTENTIAL_CXX
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CPP C preprocessor
CXXCPP C++ preprocessor
LD Override default value for LD
AS Override default value for AS
AR Override default value for AR
LIPO Override default value for LIPO
OTOOL Override default value for OTOOL
INSTALL_NAME_TOOL
Override default value for INSTALL_NAME_TOOL
METAL Override default value for METAL
METALLIB Override default value for METALLIB
MT Override default value for MT
RC Override default value for RC
DUMPBIN Override default value for DUMPBIN
STRIP Override default value for STRIP
NM Override default value for NM
OBJCOPY Override default value for OBJCOPY
OBJDUMP Override default value for OBJDUMP
CXXFILT Override default value for CXXFILT
BUILD_CC Override default value for BUILD_CC
BUILD_CXX Override default value for BUILD_CXX
BUILD_AS Override default value for BUILD_AS
BUILD_AR Override default value for BUILD_AR
BUILD_LD Override default value for BUILD_LD
BUILD_NM Override default value for BUILD_NM
BUILD_OBJCOPY
Override default value for BUILD_OBJCOPY
BUILD_STRIP Override default value for BUILD_STRIP
JTREGEXE Override default value for JTREGEXE
ALSA_CFLAGS C compiler flags for ALSA, overriding pkg-config
ALSA_LIBS linker flags for ALSA, overriding pkg-config
PNG_CFLAGS C compiler flags for PNG, overriding pkg-config
PNG_LIBS linker flags for PNG, overriding pkg-config
LCMS_CFLAGS C compiler flags for LCMS, overriding pkg-config
LCMS_LIBS linker flags for LCMS, overriding pkg-config
HARFBUZZ_CFLAGS
C compiler flags for HARFBUZZ, overriding pkg-config
HARFBUZZ_LIBS
linker flags for HARFBUZZ, overriding pkg-config
FREETYPE_CFLAGS
C compiler flags for FREETYPE, overriding pkg-config
FREETYPE_LIBS
linker flags for FREETYPE, overriding pkg-config
CAPSTONE_CFLAGS
C compiler flags for CAPSTONE, overriding pkg-config
CAPSTONE_LIBS
linker flags for CAPSTONE, overriding pkg-config
LLVM_CONFIG Override default value for LLVM_CONFIG
LIBFFI_CFLAGS
C compiler flags for LIBFFI, overriding pkg-config
LIBFFI_LIBS linker flags for LIBFFI, overriding pkg-config
XMKMF Path to xmkmf, Makefile generator for X Window System
ICECC_CMD Override default value for ICECC_CMD
ICECC_CREATE_ENV
Override default value for ICECC_CREATE_ENV
ICECC_WRAPPER
Override default value for ICECC_WRAPPER
CCACHE Override default value for CCACHE

Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.

Report bugs to <build-dev@openjdk.org>.
OpenJDK home page: <https://openjdk.org>.

Additional (non-autoconf) OpenJDK Options:
--openjdk-target=TARGET cross-compile with TARGET as target platform
(i.e. the one you will run the resulting binary on).
Equivalent to --host=TARGET --target=TARGET
--build=<current platform>, or the platform you
have provided if you have explicitly passed
--build to configure
--debug-configure Run the configure script with additional debug
logging enabled.

The following toolchains are valid as arguments to --with-toolchain-type.
Which are available to use depends on the build platform.
gcc GNU Compiler Collection
clang clang/LLVM
xlc IBM XL C/C++
microsoft Microsoft Visual Studio

The following JVM features are valid as arguments to --with-jvm-features.
Which are available to use depends on the environment and JVM variant.
cds enable class data sharing (CDS)
compiler1 enable hotspot compiler C1
compiler2 enable hotspot compiler C2
dtrace enable dtrace support
epsilongc include the epsilon (no-op) garbage collector
g1gc include the G1 garbage collector
jfr enable JDK Flight Recorder (JFR)
jni-check enable -Xcheck:jni support
jvmci enable JVM Compiler Interface (JVMCI)
jvmti enable Java Virtual Machine Tool Interface (JVM TI)
link-time-opt enable link time optimization
management enable java.lang.management API support
minimal support building variant 'minimal'
opt-size optimize the JVM library for size
parallelgc include the parallel garbage collector
serialgc include the serial garbage collector
services enable diagnostic services and client attaching
shenandoahgc include the Shenandoah garbage collector
static-build build static library instead of dynamic
vm-structs export JVM structures to the Serviceablility Agent
zero support building variant 'zero'
zgc include the Z garbage collector

Please be aware that, when cross-compiling, the OpenJDK configure script will
generally use 'target' where autoconf traditionally uses 'host'.

Also note that variables must be passed on the command line. Variables in the
environment will generally be ignored, unlike traditional autoconf scripts.


OpenJDK configure help
https://blog.dekun.wang/blog/8dd8a18f.html
作者
Wang Dekun
发布于
2023-05-10 09:45 星期三
更新于
2023-06-01 22:42 星期四
许可协议