RFR [XXS] : JDK-8081616: build fixes for --disable-warnings-as-errors
Magnus Ihse Bursie
magnus.ihse.bursie at oracle.com
Tue Jun 2 10:45:06 UTC 2015
On 2015-06-02 12:35, Magnus Ihse Bursie wrote:
> On 2015-06-02 12:27, David Holmes wrote:
>> These should be removed instead.
>>
>> Okay but I don't think it reasonable to expect Bertrand to make such
>> changes. In the interest of moving forward can we use his current
>> patch and file a follow up bug to get this done properly by the build
>> team?
> It's not worth the trouble to put in bad code just to rip it out. I'll
> have the patch done in five minutes, brb. :)
Here's the webrev:
http://cr.openjdk.java.net/~ihse/JDK-8081616-respect-disable-warnings-as-errors/webrev.01
No top level changes are needed. I kept the disabling of
unused-parameter in libsctp for pragmatic reasons. On my computer it
compiled fine without it, but it requires more work to determine if it
can be removed.
/Magnus
>
> /Magnus
>
>>
>> Thanks,
>> David
>> -----
>>
>>> I also checked for -Werror in the code, but could only find the already
>>> discovered location in Lib-jdk.sctp.gmk. For that, I believe the proper
>>> solution is:
>>> diff --git a/make/lib/Lib-jdk.sctp.gmk b/make/lib/Lib-jdk.sctp.gmk
>>> --- a/make/lib/Lib-jdk.sctp.gmk
>>> +++ b/make/lib/Lib-jdk.sctp.gmk
>>> @@ -30,12 +30,8 @@
>>> ifeq ($(OPENJDK_TARGET_OS_TYPE), unix)
>>>
>>> ifeq (, $(filter $(OPENJDK_TARGET_OS), macosx aix))
>>> -
>>> - # Suppress unused parameters required by exported JNI functions.
>>> - SCTP_WERROR := -Werror -Wno-error=unused-parameter
>>> - ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc)
>>> - SCTP_WERROR :=
>>> - endif
>>> + # DISABLED_WARNINGS_gcc := unusused-parameter needed to
>>> + # suppress unused parameters required by exported JNI functions.
>>>
>>> $(eval $(call SetupNativeCompilation,BUILD_LIBSCTP, \
>>> LIBRARY := sctp, \
>>> @@ -49,7 +45,7 @@
>>> $(LIBJAVA_HEADER_FLAGS) \
>>> -I$(SUPPORT_OUTPUTDIR)/headers/jdk.sctp \
>>> -I$(SUPPORT_OUTPUTDIR)/headers/java.base, \
>>> - CFLAGS_linux := $(SCTP_WERROR), \
>>> + DISABLED_WARNINGS_gcc := unusused-parameter, \
>>> MAPFILE :=
>>> $(JDK_TOPDIR)/make/mapfiles/libsctp/mapfile-vers, \
>>> LDFLAGS := $(LDFLAGS_JDKLIB) \
>>> $(call SET_SHARED_LIBRARY_ORIGIN), \
>>>
>>>
>>> However, as I said, it should probably be verified that it is correct
>>> that the unused-parameter warning is still triggered.
>>>
>>> /Magnus
>>>
>>>
>>>
>>>>
>>>> David
>>>> -----
>>>>
>>>>
>>>>
>>>>> I can see that libsctp is a special case that hard-codes -Werror.
>>>>> But in
>>>>> this case we should remove the hard-coding and relying on the system
>>>>> setting. This is probably a remnant from before the overall -Werror
>>>>> usage, where the authors of a specific lib wanted to enforce a higher
>>>>> standard. Also, it might be worth revisiting if
>>>>> -Wno-error=unused-parameter is really needed. These things tend to
>>>>> bit-rot.
>>>>>
>>>>> /Magnus
>>>>>
>>>>>>
>>>>>> Best regards,
>>>>>>
>>>>>> Bertrand.
>>>>>>
>>>>>
>>>
>
More information about the build-dev
mailing list