diff options
Diffstat (limited to 'classes/openjdk-build-helper.bbclass')
-rw-r--r-- | classes/openjdk-build-helper.bbclass | 16 |
1 files changed, 16 insertions, 0 deletions
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] |