[oe] [meta-java][PATCH 1/2] Openjdk-8: Fix openjdk build when CXX contains assembler arguments

Erkka Kääriä erkka.kaaria at intel.com
Mon Mar 21 11:39:11 UTC 2016


Builds currently fail, if CXX also contains assembler arguments. These
arguments are in form "-Wa,args,are,here". When this string is then used in
openjdk make process, it is inserted before the make evaluates its argument
lists. As these lists are comma separated, the commas in assembler argument list
are interpreted as list separators, which breaks the build.

This is fixed by adding the extra '$', which means the string is inserted after
make evaluates the list.

Signed-off-by: Erkka Kääriä <erkka.kaaria at intel.com>
---
 recipes-core/openjdk/openjdk-8_72b05.bb              |  1 +
 ...dk8-fix-assembler-flag-handling-in-makefile.patch | 20 ++++++++++++++++++++
 2 files changed, 21 insertions(+)
 create mode 100644 recipes-core/openjdk/patches-openjdk-8/openjdk8-fix-assembler-flag-handling-in-makefile.patch

diff --git a/recipes-core/openjdk/openjdk-8_72b05.bb b/recipes-core/openjdk/openjdk-8_72b05.bb
index e0a786a..1a01630 100644
--- a/recipes-core/openjdk/openjdk-8_72b05.bb
+++ b/recipes-core/openjdk/openjdk-8_72b05.bb
@@ -9,6 +9,7 @@ PATCHES_URI_append = "\
     file://openjdk8-fix-shark-build.patch;apply=no \
     file://openjdk8-fix-shark-stdc++11.patch;apply=no \
     file://openjdk8-use_builtin_frame_address_0_rather_than_returning_address_of_local_variable.patch;apply=no \
+    file://openjdk8-fix-assembler-flag-handling-in-makefile.patch;apply=no \
 "
 
 do_compile_append() {
diff --git a/recipes-core/openjdk/patches-openjdk-8/openjdk8-fix-assembler-flag-handling-in-makefile.patch b/recipes-core/openjdk/patches-openjdk-8/openjdk8-fix-assembler-flag-handling-in-makefile.patch
new file mode 100644
index 0000000..5e02f28
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/openjdk8-fix-assembler-flag-handling-in-makefile.patch
@@ -0,0 +1,20 @@
+Delay $CXX insertion until after make has evaluated the comma-separated list,
+as any comma separated parameters in CXX (such as assembler arguments) would
+break the build
+
+Signed-off-by: Erkka Kääriä <erkka.kaaria at intel.com>
+
+Upstream-Status: Pending
+
+---
+--- make/common/NativeCompilation.gmk
++++ make/common/NativeCompilation.gmk
+@@ -372,7 +372,7 @@ define SetupNativeCompilation
+   $$(foreach p,$$($1_SRCS), \
+       $$(eval $$(call add_native_source,$1,$$p,$$($1_OBJECT_DIR), \
+           $$($1_CFLAGS) $$($1_EXTRA_CFLAGS),$$($1_CC), \
+-          $$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX),$$($1_ASFLAGS))))
++          $$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$$(CXX),$$($1_ASFLAGS))))
+
+   # On windows we need to create a resource file
+   ifeq ($(OPENJDK_TARGET_OS), windows)
-- 
2.7.3

---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.


More information about the Openembedded-devel mailing list