[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-net-dev
Subject:    RE: build issues after 8211029   on gcc4.8 and our porting Linux platforms (ppc64(le)/ s390x)
From:       "Baesken, Matthias" <matthias.baesken () sap ! com>
Date:       2018-09-25 14:50:30
Message-ID: VI1PR02MB4384C97DE745729AE999915D93160 () VI1PR02MB4384 ! eurprd02 ! prod ! outlook ! com
[Download RAW message or body]

Hello,  one additonal info , my colleague looking into   the compile issues after \
8211029  found this error , when compiling  on  linuxx86_64 :

=== Output from failing command(s) repeated here ===
* For target support_native_java.base_libnet_DatagramPacket.o:
In file included from \
                /OpenJDK/8210319/jdk/src/java.base/share/native/libnet/net_util.h:31:0,
                
                from \
/OpenJDK/8210319/jdk/src/java.base/share/native/libnet/DatagramPacket.c:27: \
/OpenJDK/8210319/jdk/src/java.base/unix/native/libnet/net_util_md.h:50:7: error: \
"__solaris__" is not defined [-Werror=undef] #elif __solaris__
       ^
cc1: all warnings being treated as errors
* For target support_native_java.base_libnet_Inet4Address.o:
In file included from \
                /OpenJDK/8210319/jdk/src/java.base/share/native/libnet/net_util.h:31:0,
                
                 from \
/OpenJDK/8210319/jdk/src/java.base/share/native/libnet/Inet4Address.c:29: \
/OpenJDK/8210319/jdk/src/java.base/unix/native/libnet/net_util_md.h:50:7: error: \
"__solaris__" is not defined [-Werror=undef] #elif __solaris__

Obviously  "__solaris__"    is  not defined  on Linux  so I wonder   how  you could \
compile  this ? ( the coding might  need  improvement  however  the test  should be \
like  #elif defined(__solaris__)   )


Best regards, Matthias


From: Baesken, Matthias
Sent: Dienstag, 25. September 2018 16:34
To: 'build-dev@openjdk.java.net' <build-dev@openjdk.java.net>
Cc: Schmidt, Lutz <lutz.schmidt@sap.com>; Doerr, Martin <martin.doerr@sap.com>
Subject: build issues after 8211029 on gcc4.8 and our porting Linux platforms \
(ppc64(le)/ s390x)


Hello, it looks like

8211029: Have a common set of enabled warnings for all native libraries

breaks a lot of our Linux based builds.
Our gcc 4.8   misses some of the introduced command line options :

cc1plus: error: unrecognized command line option "-Wno-misleading-indentation" \
                [-Werror]
cc1plus: error: unrecognized command line option "-Wno-implicit-fallthrough" \
                [-Werror]
cc1plus: error: unrecognized command line option "-Wno-int-in-bool-context" [-Werror]

Additionally ,  the added -Werror=switch  triggers a LOT of errors on our  porting \
platforms, e.g.  linux ppc64 le :

/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value '_Double_valueOf' not handled in switch [-Werror=switch] \
/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value '_forEachRemaining' not handled in switch [-Werror=switch] \
/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value 'ID_LIMIT' not handled in switch [-Werror=switch] \
/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value 'LAST_COMPILER_INLINE' not handled in switch \
[-Werror=switch] /build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value 'FIRST_MH_SIG_POLY' not handled in switch [-Werror=switch] \
/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value 'FIRST_MH_STATIC' not handled in switch [-Werror=switch] \
/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value 'LAST_MH_SIG_POLY' not handled in switch [-Werror=switch] \
/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value 'FIRST_ID' not handled in switch [-Werror=switch]

Could we get rid of  the  -Werror=switch   at least for now ?
Maybe it should be disabled for ppc64 / ppc64le  /  s390x  like it has been done for \
zero ?

4.13+
4.14 ifeq ($(call check-jvm-feature, zero), true)
4.15-  DISABLED_WARNINGS_gcc += return-type
4.16+  DISABLED_WARNINGS_gcc += return-type switch
4.17 endif


Regarding the unrecognized command line options ,  I suggest to still support older \
gcc versions; what would be the minimal gcc version that supports 8211029 ?

Best regards, Matthias


[Attachment #3 (text/html)]

<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hello,&nbsp; one additonal info , my \
colleague looking into&nbsp;&nbsp; the compile issues after 8211029&nbsp; found this \
error ,&nbsp; <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">when compiling&nbsp; on&nbsp; linuxx86_64 : \
<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal" \
style="margin-left:35.4pt"><span lang="EN-US">=== Output from failing command(s) \
repeated here ===<o:p></o:p></span></p> <p class="MsoNormal" \
style="margin-left:35.4pt"><span lang="EN-US">* For target \
support_native_java.base_libnet_DatagramPacket.o:<o:p></o:p></span></p> <p \
class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US">In file included from \
/OpenJDK/8210319/jdk/src/java.base/share/native/libnet/net_util.h:31:0,<o:p></o:p></span></p>
 <p class="MsoNormal" style="margin-left:35.4pt"><span \
lang="EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;from \
/OpenJDK/8210319/jdk/src/java.base/share/native/libnet/DatagramPacket.c:27:<o:p></o:p></span></p>
 <p class="MsoNormal" style="margin-left:35.4pt"><span \
lang="EN-US">/OpenJDK/8210319/jdk/src/java.base/unix/native/libnet/net_util_md.h:50:7: \
error: &quot;__solaris__&quot; is not defined [-Werror=undef]<o:p></o:p></span></p> \
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US">#elif \
__solaris__<o:p></o:p></span></p> <p class="MsoNormal" \
style="margin-left:35.4pt"><span lang="EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
^<o:p></o:p></span></p> <p class="MsoNormal" style="margin-left:35.4pt"><span \
lang="EN-US">cc1: all warnings being treated as errors<o:p></o:p></span></p> <p \
class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US">* For target \
support_native_java.base_libnet_Inet4Address.o:<o:p></o:p></span></p> <p \
class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US">In file included from \
/OpenJDK/8210319/jdk/src/java.base/share/native/libnet/net_util.h:31:0,<o:p></o:p></span></p>
 <p class="MsoNormal" style="margin-left:35.4pt"><span \
lang="EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
from /OpenJDK/8210319/jdk/src/java.base/share/native/libnet/Inet4Address.c:29:<o:p></o:p></span></p>
 <p class="MsoNormal" style="margin-left:35.4pt"><span \
lang="EN-US">/OpenJDK/8210319/jdk/src/java.base/unix/native/libnet/net_util_md.h:50:7: \
error: &quot;__solaris__&quot; is not defined [-Werror=undef]<o:p></o:p></span></p> \
<p class="MsoNormal" style="margin-left:35.4pt"><span lang="EN-US"></span>#elif \
__solaris__<o:p></o:p></p> <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><span lang="EN-US">Obviously \
&nbsp;&quot;__solaris__&quot;&nbsp;&nbsp;&nbsp; is&nbsp; not defined&nbsp; on \
Linux&nbsp; so I wonder&nbsp;&nbsp; how &nbsp;you could compile&nbsp; this \
?<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US">( the coding \
might&nbsp; need&nbsp; improvement&nbsp; however&nbsp; the test&nbsp; should be \
like&nbsp; #elif defined(__solaris__)&nbsp;&nbsp; )<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US">Best regards, Matthias<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <div \
style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt"> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" \
style="mso-fareast-language:DE">From:</span></b><span lang="EN-US" \
style="mso-fareast-language:DE"> Baesken, Matthias <br>
<b>Sent:</b> Dienstag, 25. September 2018 16:34<br>
<b>To:</b> 'build-dev@openjdk.java.net' &lt;build-dev@openjdk.java.net&gt;<br>
<b>Cc:</b> Schmidt, Lutz &lt;lutz.schmidt@sap.com&gt;; Doerr, Martin \
&lt;martin.doerr@sap.com&gt;<br> <b>Subject:</b> build issues after 8211029 on gcc4.8 \
and our porting Linux platforms (ppc64(le)/ s390x)<o:p></o:p></span></p> </div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><span lang="EN-US">Hello, it looks like<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">8211029: Have a common set of enabled \
warnings for all native libraries<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">breaks a lot of our Linux based builds.<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US">Our gcc 4.8&nbsp; &nbsp;misses some of the \
introduced command line options :<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">cc1plus: error: unrecognized command line option \
&quot;-Wno-misleading-indentation&quot; [-Werror]<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US">cc1plus: error: unrecognized command line option \
&quot;-Wno-implicit-fallthrough&quot; [-Werror]<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US">cc1plus: error: unrecognized command line option \
&quot;-Wno-int-in-bool-context&quot; [-Werror]<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US">Additionally ,&nbsp; the added \
-Werror=switch&nbsp; triggers a LOT of errors on our&nbsp; porting platforms, \
e.g.&nbsp; linux ppc64 le :<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;_Double_valueOf&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;_forEachRemaining&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;ID_LIMIT&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;LAST_COMPILER_INLINE&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;FIRST_MH_SIG_POLY&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;FIRST_MH_STATIC&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;LAST_MH_SIG_POLY&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">/build_ci_jdk_jdk_linuxppc64le/src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp:719:10: \
error: enumeration value &#8216;FIRST_ID&#8217; not handled in switch \
[-Werror=switch]<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">Could we get rid of&nbsp; the&nbsp; -Werror=switch&nbsp;&nbsp; at least \
for now ?<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US">Maybe it \
should be disabled for ppc64 / ppc64le&nbsp; /&nbsp; s390x&nbsp; like it has been \
done for zero ?<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">4.13&#43;<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">4.14 ifeq ($(call check-jvm-feature, zero), true)<o:p></o:p></span></p> \
<p class="MsoNormal"><span lang="EN-US">4.15-&nbsp; DISABLED_WARNINGS_gcc &#43;= \
return-type<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">4.16&#43;&nbsp; DISABLED_WARNINGS_gcc &#43;= return-type \
switch<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US">4.17 \
endif<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">Regarding the unrecognized command line options ,&nbsp; I suggest to \
still support older gcc versions;<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US">what would be the minimal gcc version that supports 8211029 \
?<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal">Best regards, \
Matthias<o:p></o:p></p> </div>
</div>
</body>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic