aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-core/openjdk/openjdk-8-common.inc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/openjdk/openjdk-8-common.inc')
-rw-r--r--recipes-core/openjdk/openjdk-8-common.inc62
1 files changed, 38 insertions, 24 deletions
diff --git a/recipes-core/openjdk/openjdk-8-common.inc b/recipes-core/openjdk/openjdk-8-common.inc
index 4d8f935..82bf31e 100644
--- a/recipes-core/openjdk/openjdk-8-common.inc
+++ b/recipes-core/openjdk/openjdk-8-common.inc
@@ -8,13 +8,12 @@ require openjdk-common.inc
AUTOTOOLS_SCRIPT_PATH = "${S}/common/autoconf/"
export AUTOCONF_DIR="${AUTOTOOLS_SCRIPT_PATH}"
-
FILESPATH =. "${FILE_DIRNAME}/patches-openjdk-8:"
# for weird openjdk-common.inc
S = "${WORKDIR}/${OPENJDK_HG_U}-${OPENJDK_CHANGESET}"
-SRC_URI = " \
+SRC_URI = "\
${OPENJDK_URI} \
${HOTSPOT_URI} \
${CORBA_URI} \
@@ -27,6 +26,11 @@ SRC_URI = " \
${PATCHES_URI} \
"
+do_configure:prepend () {
+ export TOPDIR=${S}
+ sed -i 's#\$TOPDIR#${S}#g' ${S}/common/autoconf/configure.ac
+}
+
do_unpack_extract_submodules () {
cd "${S}"
# tar --transform
@@ -39,6 +43,21 @@ do_unpack_extract_submodules () {
tar xjf ${WORKDIR}/${NASHORN_FILE_LOCAL} --transform "s,-${NASHORN_CHANGESET},,g"
}
+do_patch:prepend() {
+ # use do_patch:prepend syntax and not pre/postfuncs to
+ # call do_unpack_extract_submodules
+ # *) the archiver.bbclass modifies WORKDIR, S, B,...
+ # and those modifications are lost otherwise,
+ # which leads to build failures in do_unpack_and_patch -> do_patch
+ func = 'do_unpack_extract_submodules'
+ bb.build.exec_func(func, d)
+
+ # delete X11 wrappers if x11 is not part of PACKAGECONFIG
+ if bb.utils.contains('PACKAGECONFIG', 'x11', False, True, d):
+ func_delete = 'do_unpack_delete_X11_wrappers'
+ bb.build.exec_func(func_delete, d)
+}
+
do_unpack_delete_X11_wrappers() {
find ${S}/jdk/src/solaris/classes/sun/awt/X11 -maxdepth 1 -name '*.java' -delete
}
@@ -93,10 +112,7 @@ def package_config_option_cleanup(d):
if not option_headless and not with_cups:
option_headless = True
- if not option_soundless and not with_alsa:
- option_soundless = True
-
- if not option_soundless and not with_pulseaudio:
+ if not option_soundless and not with_pulseaudio and not with_alsa:
option_soundless = True
options = {'make': [], 'cpp': [], 'env': [], 'configure': ["--disable-ccache"] }
@@ -152,34 +168,32 @@ def jdk_configure_options(d):
options = package_config_option_cleanup(d)
return options[3]
-do_unpack[postfuncs] += "do_unpack_extract_submodules"
-do_unpack[postfuncs] += "${@bb.utils.contains('PACKAGECONFIG', 'x11', '', 'do_unpack_delete_X11_wrappers', d)}"
-
-do_configure_prepend() {
- export ${@jdk_environment_options(d)}
-}
+#do_unpack[postfuncs] += "do_unpack_extract_submodules"
+#do_unpack[postfuncs] += "${@bb.utils.contains('PACKAGECONFIG', 'x11', '', 'do_unpack_delete_X11_wrappers', d)}"
export DEBUG_BINARIES = "true"
ALTERNATIVE_PRIORITY = "50"
-OPENJDK_UPDATE_VERSION = "${@d.getVar('PV', True).split('b')[0]}"
-OPENJDK_BUILD_NUMBER = "b${@d.getVar('PV', True).split('b')[1]}"
-EXTRA_OECONF_append = "\
+OPENJDK_UPDATE_VERSION = "${PV}"
+OPENJDK_BUILD_NUMBER = "ga"
+EXTRA_OECONF:append = "\
--with-build-number=${OPENJDK_BUILD_NUMBER} \
--with-update-version=${OPENJDK_UPDATE_VERSION} \
"
# Since v6, GCC sets the default C++ standard to C++14 and introduces
-# dead store elimination by default. OpenJDK 8 is not ready for either
-# of these changes.
-FLAGS_GCC6 = "-fno-lifetime-dse -fno-delete-null-pointer-checks"
-FLAGS_GCC7 = "-fno-lifetime-dse -fno-delete-null-pointer-checks"
-FLAGS_GCC8 = "-fno-lifetime-dse -fno-delete-null-pointer-checks"
+# dead store elimination by default.
+# Since v10, GCC defaults to -fno-common.
+# OpenJDK 8 is not ready for either of these changes.
+GLOBAL_FLAGS = "-fno-lifetime-dse -fno-delete-null-pointer-checks -fcommon"
# flags for -native, and for bits that need a host-tool during -cross
-BUILD_CFLAGS_append = " ${@openjdk_build_helper_get_build_cflags(d)}"
-BUILD_CXXFLAGS_append = " ${@openjdk_build_helper_get_build_cflags(d)}"
+BUILD_CFLAGS:append = " ${GLOBAL_FLAGS}"
+BUILD_CXXFLAGS:append = " ${GLOBAL_FLAGS}"
# flags for -cross
-TARGET_CFLAGS_append = " ${@openjdk_build_helper_get_target_cflags(d)}"
-TARGET_CXXFLAGS_append = " ${@openjdk_build_helper_get_target_cflags(d)}"
+TARGET_CFLAGS:append = " ${GLOBAL_FLAGS}"
+TARGET_CXXFLAGS:append = " ${GLOBAL_FLAGS}"
+
+# canon-prefix-map doesn't exist in gcc 12.x
+DEBUG_PREFIX_MAP:remove = "-fcanon-prefix-map"