diff options
author | André Draszik <andre.draszik@jci.com> | 2018-03-06 10:54:20 +0200 |
---|---|---|
committer | Maxin B. John <maxin.john@intel.com> | 2018-03-06 10:56:44 +0200 |
commit | ad72b21676a99417605c5b7e6d068ad81142f7b2 (patch) | |
tree | 94e8665f5dce93e84b2e6e4bb22e5c1d640d3e69 /recipes-core/openjdk | |
parent | 55eab1f99a485089966a29771c43486299095a48 (diff) | |
download | meta-java-ad72b21676a99417605c5b7e6d068ad81142f7b2.tar.gz |
openjdk-8: add patch for compiling with enabled security flags
Rather than carrying an OE specific patch that just silences the
warning on some platform only, backport the upstream patch
to actually fix the issue.
Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Maxin B. John <maxin.john@intel.com>
Diffstat (limited to 'recipes-core/openjdk')
3 files changed, 42 insertions, 57 deletions
diff --git a/recipes-core/openjdk/openjdk-8-release-162b12.inc b/recipes-core/openjdk/openjdk-8-release-162b12.inc index 5a577b9..a36bc6a 100644 --- a/recipes-core/openjdk/openjdk-8-release-162b12.inc +++ b/recipes-core/openjdk/openjdk-8-release-162b12.inc | |||
@@ -7,6 +7,7 @@ PATCHES_URI = "\ | |||
7 | file://openjdk8-find-compiler-fix-env-respect.patch;striplevel=0 \ | 7 | file://openjdk8-find-compiler-fix-env-respect.patch;striplevel=0 \ |
8 | file://openjdk8-prevent-debuginfo-in-favour-of-openembedded-package-split.patch;striplevel=0 \ | 8 | file://openjdk8-prevent-debuginfo-in-favour-of-openembedded-package-split.patch;striplevel=0 \ |
9 | file://0001-jdk-comparison-between-pointer-and-integer.patch \ | 9 | file://0001-jdk-comparison-between-pointer-and-integer.patch \ |
10 | file://0002-hotspot-fix-compilation-with-security-flags-enabled.patch \ | ||
10 | " | 11 | " |
11 | # some patches extracted from http://cr.openjdk.java.net/~rkennke/shark-build-hotspot/webrev.01/hotspot.patch | 12 | # some patches extracted from http://cr.openjdk.java.net/~rkennke/shark-build-hotspot/webrev.01/hotspot.patch |
12 | # reported via http://mail.openjdk.java.net/pipermail/build-dev/2015-January/013972.html | 13 | # reported via http://mail.openjdk.java.net/pipermail/build-dev/2015-January/013972.html |
@@ -17,7 +18,6 @@ PATCHES_URI_append_class-target = "\ | |||
17 | file://openjdk8-fix-shark-stdc++11.patch;striplevel=0 \ | 18 | file://openjdk8-fix-shark-stdc++11.patch;striplevel=0 \ |
18 | file://openjdk8-fix-assembler-flag-handling-in-makefile.patch;striplevel=0 \ | 19 | file://openjdk8-fix-assembler-flag-handling-in-makefile.patch;striplevel=0 \ |
19 | file://openjdk8-fix-adlc-flags.patch;striplevel=0 \ | 20 | file://openjdk8-fix-adlc-flags.patch;striplevel=0 \ |
20 | file://openjdk8-silence-d_fortify_source-warning.patch;striplevel=0 \ | ||
21 | file://openjdk8-add-missing-linker-flags.patch;striplevel=0 \ | 21 | file://openjdk8-add-missing-linker-flags.patch;striplevel=0 \ |
22 | file://openjdk8-fix-libpng-neon-build.patch;striplevel=0 \ | 22 | file://openjdk8-fix-libpng-neon-build.patch;striplevel=0 \ |
23 | " | 23 | " |
diff --git a/recipes-core/openjdk/patches-openjdk-8/0002-hotspot-fix-compilation-with-security-flags-enabled.patch b/recipes-core/openjdk/patches-openjdk-8/0002-hotspot-fix-compilation-with-security-flags-enabled.patch new file mode 100644 index 0000000..075a638 --- /dev/null +++ b/recipes-core/openjdk/patches-openjdk-8/0002-hotspot-fix-compilation-with-security-flags-enabled.patch | |||
@@ -0,0 +1,41 @@ | |||
1 | From bdea8cf299313388ec41ea20281deca6dc4f764d Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik at jci.com <https://lists.yoctoproject.org/listinfo/yocto>> | ||
3 | Date: Tue, 27 Feb 2018 14:41:06 +0000 | ||
4 | Subject: [PATCH 2/8] hotspot: fix compilation with security flags enabled | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | | hotspot/src/share/vm/code/dependencies.cpp: In function 'static void Dependencies::write_dependency_to(xmlStream*, Dependencies::DepType, GrowableArray<Dependencies::DepArgument>*, Klass*)': | ||
10 | | hotspot/src/share/vm/code/dependencies.cpp:498:6: error: '%d' directive writing between 1 and 10 bytes into a region of size 9 [-Werror=format-overflow=] | ||
11 | | void Dependencies::write_dependency_to(xmlStream* xtty, | ||
12 | | ^~~~~~~~~~~~ | ||
13 | | hotspot/src/share/vm/code/dependencies.cpp:498:6: note: directive argument in the range [0, 2147483647] | ||
14 | | hotspot/src/share/vm/code/dependencies.cpp:528:27: note: 'sprintf' output between 3 and 12 bytes into a destination of size 10 | ||
15 | | char xn[10]; sprintf(xn, "x%d", j); | ||
16 | | ~~~~~~~^~~~~~~~~~~~~~ | ||
17 | |||
18 | Backport a patch to fix this. | ||
19 | |||
20 | Upstream-Status: Backport [http://hg.openjdk.java.net/jdk10/jdk10/hotspot/rev/eb11b3f0ae65] | ||
21 | Signed-off-by: André Draszik <andre.draszik at jci.com <https://lists.yoctoproject.org/listinfo/yocto>> | ||
22 | --- | ||
23 | hotspot/src/share/vm/code/dependencies.cpp | 2 +- | ||
24 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
25 | |||
26 | diff --git a/hotspot/src/share/vm/code/dependencies.cpp b/hotspot/src/share/vm/code/dependencies.cpp | ||
27 | index 7317036d..c71d921d 100644 | ||
28 | --- a/hotspot/src/share/vm/code/dependencies.cpp | ||
29 | +++ b/hotspot/src/share/vm/code/dependencies.cpp | ||
30 | @@ -525,7 +525,7 @@ void Dependencies::write_dependency_to(xmlStream* xtty, | ||
31 | xtty->object("x", arg.metadata_value()); | ||
32 | } | ||
33 | } else { | ||
34 | - char xn[10]; sprintf(xn, "x%d", j); | ||
35 | + char xn[12]; sprintf(xn, "x%d", j); | ||
36 | if (arg.is_oop()) { | ||
37 | xtty->object(xn, arg.oop_value()); | ||
38 | } else { | ||
39 | -- | ||
40 | 2.16.2 | ||
41 | |||
diff --git a/recipes-core/openjdk/patches-openjdk-8/openjdk8-silence-d_fortify_source-warning.patch b/recipes-core/openjdk/patches-openjdk-8/openjdk8-silence-d_fortify_source-warning.patch deleted file mode 100644 index 2c2e333..0000000 --- a/recipes-core/openjdk/patches-openjdk-8/openjdk8-silence-d_fortify_source-warning.patch +++ /dev/null | |||
@@ -1,56 +0,0 @@ | |||
1 | makefiles: Add -Wno-cpp to CFLAGS | ||
2 | |||
3 | The security flag '-D_FORTIFY_SOURCE' requires at least -O to work, | ||
4 | otherwise a warning is given. If CFLAGS additionally contains -Werror, | ||
5 | this warning turns into an error. As Openjdk build system intentionally | ||
6 | deoptimizes certains files due to potential bad codegen during optimization, | ||
7 | build will fail when both '-D_FORTIFY_SOURCE' and '-Werror' are used. | ||
8 | As turning the optimizations back on will likely break things, the | ||
9 | warning is silenced instead. | ||
10 | |||
11 | Upstream-Status: Inappropriate [Yocto-specific fixes] | ||
12 | |||
13 | Signed-off-by: Erkka Kääriä <erkka.kaaria@intel.com> | ||
14 | --- | ||
15 | hotspot/make/linux/makefiles/amd64.make | 2 ++ | ||
16 | hotspot/make/linux/makefiles/i486.make | 2 ++ | ||
17 | hotspot/make/linux/makefiles/zero.make | 2 ++ | ||
18 | 3 files changed, 6 insertions(+) | ||
19 | |||
20 | diff --git hotspot/make/linux/makefiles/amd64.make hotspot/make/linux/makefiles/amd64.make | ||
21 | index 2b77dba..db3965b 100644 | ||
22 | --- hotspot/make/linux/makefiles/amd64.make | ||
23 | +++ hotspot/make/linux/makefiles/amd64.make | ||
24 | @@ -31,4 +31,6 @@ CFLAGS += -DVM_LITTLE_ENDIAN | ||
25 | |||
26 | CFLAGS += -D_LP64=1 | ||
27 | |||
28 | +CFLAGS += -Wno-cpp | ||
29 | + | ||
30 | OPT_CFLAGS/compactingPermGenGen.o = -O1 | ||
31 | diff --git hotspot/make/linux/makefiles/i486.make hotspot/make/linux/makefiles/i486.make | ||
32 | index 86e825d..6a92f09 100644 | ||
33 | --- hotspot/make/linux/makefiles/i486.make | ||
34 | +++ hotspot/make/linux/makefiles/i486.make | ||
35 | @@ -31,4 +31,6 @@ OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT) | ||
36 | # Must also specify if CPU is little endian | ||
37 | CFLAGS += -DVM_LITTLE_ENDIAN | ||
38 | |||
39 | +CFLAGS += -Wno-cpp | ||
40 | + | ||
41 | OPT_CFLAGS/compactingPermGenGen.o = -O1 | ||
42 | diff --git hotspot/make/linux/makefiles/zero.make hotspot/make/linux/makefiles/zero.make | ||
43 | index 0270711..2b05f33 100644 | ||
44 | --- hotspot/make/linux/makefiles/zero.make | ||
45 | +++ hotspot/make/linux/makefiles/zero.make | ||
46 | @@ -28,5 +28,7 @@ | ||
47 | # Select which files to use (in top.make) | ||
48 | TYPE = ZERO | ||
49 | |||
50 | +CFLAGS += -Wno-cpp | ||
51 | + | ||
52 | # Install libjvm.so, etc in in server directory. | ||
53 | VM_SUBDIR = server | ||
54 | -- | ||
55 | 2.7.4 | ||
56 | |||