Skip to content

Commit ae77a68

Browse files
authored
Merge branch 'openjdk:master' into backport-sendaoYan-8ba0db0d-master
2 parents 2a1da76 + 89c5659 commit ae77a68

File tree

413 files changed

+11231
-8198
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

413 files changed

+11231
-8198
lines changed

.github/workflows/build-cross-compile.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,33 +64,33 @@ jobs:
6464
gnu-arch: aarch64
6565
debian-arch: arm64
6666
debian-repository: https://httpredir.debian.org/debian/
67-
debian-version: bookworm
67+
debian-version: trixie
6868
tolerate-sysroot-errors: false
6969
- target-cpu: arm
7070
gnu-arch: arm
7171
debian-arch: armhf
7272
debian-repository: https://httpredir.debian.org/debian/
73-
debian-version: bookworm
73+
debian-version: trixie
7474
tolerate-sysroot-errors: false
7575
gnu-abi: eabihf
7676
- target-cpu: s390x
7777
gnu-arch: s390x
7878
debian-arch: s390x
7979
debian-repository: https://httpredir.debian.org/debian/
80-
debian-version: bookworm
80+
debian-version: trixie
8181
tolerate-sysroot-errors: false
8282
- target-cpu: ppc64le
8383
gnu-arch: powerpc64le
8484
debian-arch: ppc64el
8585
debian-repository: https://httpredir.debian.org/debian/
86-
debian-version: bookworm
86+
debian-version: trixie
8787
tolerate-sysroot-errors: false
8888
- target-cpu: riscv64
8989
gnu-arch: riscv64
9090
debian-arch: riscv64
9191
debian-repository: https://httpredir.debian.org/debian/
92-
debian-version: sid
93-
tolerate-sysroot-errors: true
92+
debian-version: trixie
93+
tolerate-sysroot-errors: false
9494

9595
steps:
9696
- name: 'Checkout the JDK source'

.github/workflows/main.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -327,8 +327,8 @@ jobs:
327327
uses: ./.github/workflows/build-macos.yml
328328
with:
329329
platform: macos-x64
330-
runs-on: 'macos-13'
331-
xcode-toolset-version: '14.3.1'
330+
runs-on: 'macos-15-intel'
331+
xcode-toolset-version: '16.4'
332332
configure-arguments: ${{ github.event.inputs.configure-arguments }}
333333
make-arguments: ${{ github.event.inputs.make-arguments }}
334334
dry-run: ${{ needs.prepare.outputs.dry-run == 'true' }}
@@ -340,8 +340,8 @@ jobs:
340340
uses: ./.github/workflows/build-macos.yml
341341
with:
342342
platform: macos-aarch64
343-
runs-on: 'macos-14'
344-
xcode-toolset-version: '15.4'
343+
runs-on: 'macos-15'
344+
xcode-toolset-version: '16.4'
345345
configure-arguments: ${{ github.event.inputs.configure-arguments }}
346346
make-arguments: ${{ github.event.inputs.make-arguments }}
347347
dry-run: ${{ needs.prepare.outputs.dry-run == 'true' }}
@@ -432,9 +432,9 @@ jobs:
432432
with:
433433
platform: macos-aarch64
434434
bootjdk-platform: macos-aarch64
435-
runs-on: macos-14
435+
runs-on: macos-15
436436
dry-run: ${{ needs.prepare.outputs.dry-run == 'true' }}
437-
xcode-toolset-version: '15.4'
437+
xcode-toolset-version: '16.4'
438438
debug-suffix: -debug
439439

440440
test-windows-x64:

make/StaticLibs.gmk

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,9 @@ else ifeq ($(call isTargetOs, aix), true)
116116
$(eval STATIC_LIB_EXPORT_FILES += $(lib).exp) \
117117
)
118118
STATIC_LIBS := -Wl,-bexpfull $(STATIC_LIB_FILES) $(addprefix -Wl$(COMMA)-bE:, $(STATIC_LIB_EXPORT_FILES))
119+
ifeq ($(DEBUG_LEVEL), slowdebug)
120+
STATIC_LIBS += -Wl,-bbigtoc
121+
endif
119122
else
120123
$(error Unsupported platform)
121124
endif

make/autoconf/basic_tools.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
378378
379379
# Check if it's a GNU date compatible version
380380
AC_MSG_CHECKING([if date is a GNU compatible version])
381-
check_date=`$DATE --version 2>&1 | $GREP "GNU\|BusyBox"`
381+
check_date=`$DATE --version 2>&1 | $GREP "GNU\|BusyBox\|uutils"`
382382
if test "x$check_date" != x; then
383383
AC_MSG_RESULT([yes])
384384
IS_GNU_DATE=yes

make/autoconf/boot-jdk.m4

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -446,6 +446,9 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK_ARGUMENTS],
446446
# Force en-US environment
447447
UTIL_ADD_JVM_ARG_IF_OK([-Duser.language=en -Duser.country=US],boot_jdk_jvmargs,[$JAVA])
448448
449+
UTIL_ADD_JVM_ARG_IF_OK([-Xlog:all=off:stdout],boot_jdk_jvmargs,[$JAVA])
450+
UTIL_ADD_JVM_ARG_IF_OK([-Xlog:all=warning:stderr],boot_jdk_jvmargs,[$JAVA])
451+
449452
if test "x$BOOTJDK_USE_LOCAL_CDS" = xtrue; then
450453
# Use our own CDS archive
451454
UTIL_ADD_JVM_ARG_IF_OK([$boot_jdk_cds_args -Xshare:auto],boot_jdk_jvmargs,[$JAVA])

make/autoconf/configure.ac

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,9 @@ JDKOPT_SETUP_UNDEFINED_BEHAVIOR_SANITIZER
221221
# LeakSanitizer
222222
JDKOPT_SETUP_LEAK_SANITIZER
223223

224+
# Setup static analyzer
225+
JDKOPT_SETUP_STATIC_ANALYZER
226+
224227
# Fallback linker
225228
# This needs to go before 'LIB_DETERMINE_DEPENDENCIES'
226229
JDKOPT_SETUP_FALLBACK_LINKER

make/autoconf/flags-cflags.m4

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -940,7 +940,7 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
940940
# ACLE and this flag are required to build the aarch64 SVE related functions in
941941
# libvectormath. Apple Silicon does not support SVE; use macOS as a proxy for
942942
# that check.
943-
if test "x$OPENJDK_TARGET_CPU" = "xaarch64" && test "x$OPENJDK_TARGET_CPU" = "xlinux"; then
943+
if test "x$OPENJDK_TARGET_CPU" = "xaarch64" && test "x$OPENJDK_TARGET_OS" = "xlinux"; then
944944
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
945945
AC_LANG_PUSH(C)
946946
OLD_CFLAGS="$CFLAGS"
@@ -954,6 +954,17 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
954954
[
955955
AC_MSG_RESULT([yes])
956956
$2SVE_CFLAGS="-march=armv8-a+sve"
957+
# Switching the initialization mode with gcc from 'pattern' to 'zero'
958+
# avoids the use of unsupported `__builtin_clear_padding` for variable
959+
# length aggregates
960+
if test "x$DEBUG_LEVEL" != xrelease && test "x$TOOLCHAIN_TYPE" = xgcc ; then
961+
INIT_ZERO_FLAG="-ftrivial-auto-var-init=zero"
962+
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$INIT_ZERO_FLAG],
963+
IF_TRUE: [
964+
$2SVE_CFLAGS="${$2SVE_CFLAGS} $INIT_ZERO_FLAG"
965+
]
966+
)
967+
fi
957968
],
958969
[
959970
AC_MSG_RESULT([no])

make/autoconf/jdk-options.m4

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -479,6 +479,31 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_ADDRESS_SANITIZER],
479479
AC_SUBST(ASAN_ENABLED)
480480
])
481481

482+
################################################################################
483+
#
484+
# Static analyzer
485+
#
486+
AC_DEFUN_ONCE([JDKOPT_SETUP_STATIC_ANALYZER],
487+
[
488+
UTIL_ARG_ENABLE(NAME: static-analyzer, DEFAULT: false, RESULT: STATIC_ANALYZER_ENABLED,
489+
DESC: [enable the GCC static analyzer],
490+
CHECK_AVAILABLE: [
491+
AC_MSG_CHECKING([if static analyzer is available])
492+
if test "x$TOOLCHAIN_TYPE" = "xgcc"; then
493+
AC_MSG_RESULT([yes])
494+
else
495+
AC_MSG_RESULT([no])
496+
AVAILABLE=false
497+
fi
498+
],
499+
IF_ENABLED: [
500+
STATIC_ANALYZER_CFLAGS="-fanalyzer -Wno-analyzer-fd-leak"
501+
CFLAGS_JDKLIB="$CFLAGS_JDKLIB $STATIC_ANALYZER_CFLAGS"
502+
CFLAGS_JDKEXE="$CFLAGS_JDKEXE $STATIC_ANALYZER_CFLAGS"
503+
])
504+
AC_SUBST(STATIC_ANALYZER_ENABLED)
505+
])
506+
482507
################################################################################
483508
#
484509
# LeakSanitizer

make/autoconf/lib-tests.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
################################################################################
2929

3030
# Minimum supported versions
31-
JTREG_MINIMUM_VERSION=7.5.1
31+
JTREG_MINIMUM_VERSION=8
3232
GTEST_MINIMUM_VERSION=1.14.0
3333

3434
################################################################################

make/autoconf/libraries.m4

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -136,12 +136,8 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
136136
BASIC_JVM_LIBS="$BASIC_JVM_LIBS $LIBPTHREAD"
137137
fi
138138
139-
# librt for legacy clock_gettime
139+
# librt - for timers (timer_* functions)
140140
if test "x$OPENJDK_TARGET_OS" = xlinux; then
141-
# Hotspot needs to link librt to get the clock_* functions.
142-
# But once our supported minimum build and runtime platform
143-
# has glibc 2.17, this can be removed as the functions are
144-
# in libc.
145141
BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lrt"
146142
fi
147143

0 commit comments

Comments
 (0)