aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndré Draszik <andre.draszik@jci.com>2018-08-13 16:09:17 +0100
committerRichard Leitner <dev@g0hl1n.net>2018-08-13 22:52:44 +0200
commit3c710bf3a90fde0cf6d590ffefc349bfb9a1c677 (patch)
tree19ae03f9fe7ff972135093b859e0be909e40f4e9
parentd359ad5ad46c77c183573ce601f03d868eb983bf (diff)
downloadmeta-java-3c710bf3a90fde0cf6d590ffefc349bfb9a1c677.tar.gz
meta-java-3c710bf3a90fde0cf6d590ffefc349bfb9a1c677.tar.bz2
meta-java-3c710bf3a90fde0cf6d590ffefc349bfb9a1c677.zip
java.bbclass: move openjdk/icedtea specific code into new class
The code moved is not relevant to anything using java, just for compiling java itself. It doesn't make sense to have here. Move it into openjdk-build-helper Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
-rw-r--r--classes/java.bbclass17
-rw-r--r--classes/openjdk-build-helper.bbclass16
-rw-r--r--recipes-core/icedtea/icedtea7-native.inc3
-rw-r--r--recipes-core/openjdk/openjdk-7-common.inc2
-rw-r--r--recipes-core/openjdk/openjdk-8-common.inc1
-rw-r--r--recipes-core/openjdk/openjdk-8-cross.inc2
-rw-r--r--recipes-core/openjdk/openjdk-8-native.inc2
-rw-r--r--recipes-core/openjdk/openjdk-common.inc1
8 files changed, 23 insertions, 21 deletions
diff --git a/classes/java.bbclass b/classes/java.bbclass
index aa012ab..fc97295 100644
--- a/classes/java.bbclass
+++ b/classes/java.bbclass
@@ -21,23 +21,6 @@ STAGING_DATADIR_JAVA_NATIVE ?= "${STAGING_DATADIR_NATIVE}/java"
STAGING_LIBDIR_JNI_NATIVE ?= "${STAGING_LIBDIR_NATIVE}/jni"
STAGING_LIBDIR_JVM_NATIVE ?= "${STAGING_LIBDIR_NATIVE}/jvm"
-# Icedtea's makefile is not compatible to parallelization so we cannot allow
-# passing a valid ${PARALLEL_MAKE} to it. OTOH OpenJDK's makefiles are
-# parallelizable and we need ${PARALLEL_MAKE} to derive the proper value.
-# The base for this quirk is that GNU Make only considers the last "-j" option.
-EXTRA_OEMAKE_remove_task-compile = "${PARALLEL_MAKE}"
-EXTRA_OEMAKE_remove_task-install = "${PARALLEL_MAKEINST}"
-
-# OpenJDK supports parallel compilation but uses a plain number for this.
-# In OE we have PARALLEL_MAKE which is the actual option passed to make,
-# e.g. "-j 4".
-def java_get_parallel_make(d):
- pm = d.getVar('PARALLEL_MAKE', True);
- if not pm or '-j' not in pm:
- return 1
-
- return pm.partition('-j')[2].strip().split(' ')[0]
-
oe_jarinstall() {
# Purpose: Install a jar file and create all the given symlinks to it.
# Example:
diff --git a/classes/openjdk-build-helper.bbclass b/classes/openjdk-build-helper.bbclass
new file mode 100644
index 0000000..785ddf0
--- /dev/null
+++ b/classes/openjdk-build-helper.bbclass
@@ -0,0 +1,16 @@
+# Icedtea's makefile is not compatible to parallelization so we cannot allow
+# passing a valid ${PARALLEL_MAKE} to it. OTOH OpenJDK's makefiles are
+# parallelizable and we need ${PARALLEL_MAKE} to derive the proper value.
+# The base for this quirk is that GNU Make only considers the last "-j" option.
+EXTRA_OEMAKE_remove_task-compile = "${PARALLEL_MAKE}"
+EXTRA_OEMAKE_remove_task-install = "${PARALLEL_MAKEINST}"
+
+# OpenJDK supports parallel compilation but uses a plain number for this.
+# In OE we have PARALLEL_MAKE which is the actual option passed to make,
+# e.g. "-j 4".
+def openjdk_build_helper_get_parallel_make(d):
+ pm = d.getVar('PARALLEL_MAKE', True);
+ if not pm or '-j' not in pm:
+ return 1
+
+ return pm.partition('-j')[2].strip().split(' ')[0]
diff --git a/recipes-core/icedtea/icedtea7-native.inc b/recipes-core/icedtea/icedtea7-native.inc
index 93463be..30fb24a 100644
--- a/recipes-core/icedtea/icedtea7-native.inc
+++ b/recipes-core/icedtea/icedtea7-native.inc
@@ -25,6 +25,7 @@ CXXFLAGS_append = " -fno-tree-dse"
CXX_append = " -std=gnu++98"
inherit native java autotools pkgconfig
+inherit openjdk-build-helper
JAVA_HOME[unexport] = "1"
@@ -58,7 +59,7 @@ export ALT_FREETYPE_LIB_PATH = "${STAGING_LIBDIR}"
INSANE_SKIP_${PN} = "already-stripped"
EXTRA_OECONF = "\
- --with-parallel-jobs=${@java_get_parallel_make(d)} \
+ --with-parallel-jobs=${@openjdk_build_helper_get_parallel_make(d)} \
\
--disable-tests \
--disable-hotspot-tests \
diff --git a/recipes-core/openjdk/openjdk-7-common.inc b/recipes-core/openjdk/openjdk-7-common.inc
index 1ac3154..0ef6758 100644
--- a/recipes-core/openjdk/openjdk-7-common.inc
+++ b/recipes-core/openjdk/openjdk-7-common.inc
@@ -84,7 +84,7 @@ EXTRA_OECONF = " \
--with-jdk-src-zip=${WORKDIR}/${JDK_FILE} \
--with-langtools-src-zip=${WORKDIR}/${LANGTOOLS_FILE} \
\
- --with-parallel-jobs=${@java_get_parallel_make(d)} \
+ --with-parallel-jobs=${@openjdk_build_helper_get_parallel_make(d)} \
\
--with-pkgversion=${PV} \
--with-cc-for-build=${BUILD_CC} \
diff --git a/recipes-core/openjdk/openjdk-8-common.inc b/recipes-core/openjdk/openjdk-8-common.inc
index 6b2f5e7..0c77d7c 100644
--- a/recipes-core/openjdk/openjdk-8-common.inc
+++ b/recipes-core/openjdk/openjdk-8-common.inc
@@ -5,6 +5,7 @@ LICENSE = "GPL-2.0-with-classpath-exception"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3e0b59f8fac05c3c03d4a26bbda13f8f"
inherit java autotools gettext qemu pkgconfig
+inherit openjdk-build-helper
AUTOTOOLS_SCRIPT_PATH = "${S}/common/autoconf/"
export AUTOCONF_DIR="${AUTOTOOLS_SCRIPT_PATH}"
diff --git a/recipes-core/openjdk/openjdk-8-cross.inc b/recipes-core/openjdk/openjdk-8-cross.inc
index d0b2ec8..939155b 100644
--- a/recipes-core/openjdk/openjdk-8-cross.inc
+++ b/recipes-core/openjdk/openjdk-8-cross.inc
@@ -52,7 +52,7 @@ SRC_URI_append = "\
"
EXTRA_OECONF_append = "\
- --with-jobs=${@java_get_parallel_make(d)} \
+ --with-jobs=${@openjdk_build_helper_get_parallel_make(d)} \
\
--with-sys-root=${STAGING_DIR_HOST} \
--with-tools-dir=${STAGING_DIR_NATIVE} \
diff --git a/recipes-core/openjdk/openjdk-8-native.inc b/recipes-core/openjdk/openjdk-8-native.inc
index b782c32..e6f7933 100644
--- a/recipes-core/openjdk/openjdk-8-native.inc
+++ b/recipes-core/openjdk/openjdk-8-native.inc
@@ -20,7 +20,7 @@ PACKAGECONFIG[png] = "--with-libpng=system,--with-libpng=bundled,libpng-native"
PACKAGECONFIG[zlib] = "--with-zlib=system,--with-zlib=bundled,zlib-native"
EXTRA_OECONF_append = "\
- --with-jobs=${@java_get_parallel_make(d)} \
+ --with-jobs=${@openjdk_build_helper_get_parallel_make(d)} \
\
--with-sys-root=${STAGING_DIR_NATIVE} \
--with-tools-dir=${STAGING_DIR_NATIVE} \
diff --git a/recipes-core/openjdk/openjdk-common.inc b/recipes-core/openjdk/openjdk-common.inc
index c92af40..4e2eb94 100644
--- a/recipes-core/openjdk/openjdk-common.inc
+++ b/recipes-core/openjdk/openjdk-common.inc
@@ -17,6 +17,7 @@ DEPENDS_append_libc-uclibc = " virtual/libiconv "
DEPENDS_append = " qemu-native "
inherit java autotools gettext qemu pkgconfig
+inherit openjdk-build-helper
B = "${S}/build"