[oe] [meta-java][PATCH] icedtea7-native: make GCC 6 happy

Dan McGregor danismostlikely at gmail.com
Mon Jun 20 17:04:32 UTC 2016


On 20 June 2016 at 10:19, Khem Raj <raj.khem at gmail.com> wrote:
> On Mon, Jun 20, 2016 at 7:02 AM, Dan McGregor <danismostlikely at gmail.com> wrote:
>> From: Daniel McGregor <daniel.mcgregor at vecima.com>
>>
>> GCC 6 sets the default C++ standard to C++14 and introduces dead store
>> elimination by default. icedtea7 is not ready for either of these
>> changes, so just set the C++ standard back to gnu++98 and disable dead
>> store elimination.
>>
>> Signed-off-by: Daniel McGregor <daniel.mcgregor at vecima.com>
>> Signed-off-by: Dan McGregor <dan.mcgregor at usask.ca>
>> ---
>>  recipes-core/icedtea/icedtea7-native.inc | 8 ++++++++
>>  1 file changed, 8 insertions(+)
>>
>> diff --git a/recipes-core/icedtea/icedtea7-native.inc b/recipes-core/icedtea/icedtea7-native.inc
>> index d624b7a..fa78991 100644
>> --- a/recipes-core/icedtea/icedtea7-native.inc
>> +++ b/recipes-core/icedtea/icedtea7-native.inc
>> @@ -17,6 +17,14 @@ PACKAGECONFIG[x11] = ",--disable-headful,libx11-native xproto-native libxt-nativ
>>  OEMAKE_BUILD_HEADLESS_ONLY = "${@bb.utils.contains('PACKAGECONFIG', 'x11', '', 'BUILD_HEADLESS_ONLY=1', d)}"
>>  CFLAGS_append = "${@bb.utils.contains('PACKAGECONFIG', 'x11', '', ' -DHEADLESS=true', d)}"
>>
>> +# CXXFLAGS doesn't make it to all calls.
>> +# Set the C++ standard version for C too.
>> +CFLAGS_append = " -std=gnu++98 -fno-tree-dse -Wno-error"
>
> this is interesting. what happens to C files ? I see that C++ files
> may get the right options if they are using CFLAGS in makery
> which should be fixed to use CXXFLAGS IMO
>

C files throw a warning about the C++ standard not being appropriate
for C files.

That being said, I found a better way to do this, and a V2 is coming,
complete with fixes for openjdk-8 and openjdk-8-native.

>> +# Disable dead store elimination and set C++ standard to C++98.
>> +# There are dead stores in the JVM that would be pretty hard to
>> +# remove, so disable the optimisation in the compiler.
>> +CXXFLAGS_append = " -std=gnu++98 -fno-tree-dse -Wno-error"
>> +
>>  inherit native java autotools pkgconfig
>>
>>  JAVA_HOME[unexport] = "1"
>> --
>> 2.9.0
>>
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



More information about the Openembedded-devel mailing list