RFR 8241073: Pre-generated Stubs for javax.management, Activation, Naming

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Wed Mar 18 13:01:05 UTC 2020



On 2020-03-17 23:07, Roger Riggs wrote:
> Hi Magnus, Erik,
>
> Thanks for the pointers, I'm not familiar with those early build 
> intricacies.
>
> Updated:
>
> http://cr.openjdk.java.net/~rriggs/webrev-stubs-classes-8241073-2/
Looking much better!

Please remove the reference to "rmic" in Global.gmk as well.

In Docs.gmk, the comment "# On top of the sources that was used to 
compile the JDK, we need some extra sources" is no longer relevant. Just 
remove it.

In ZipSource.gmk, there crept in an extra space between the argument and 
the comma. Please remove it.

In spec.gmk.in:
- # Interim langtools and rmic modules and arguments
+ # Interim langtools and arguments

Should be "Interim langtools modules and arguments"

Apart from this, it looks good. You do not need to re-spin the webrev if 
you fix these minor nits.

/Magnus



>
> More cleanup:
>
> - cleanup of ZipSource.gmk and autoconf/spec.gmk.in and Docs.gmk
>
> - The mystery of ActivationGroup_Stub is resolved.  The class needed 
> to be in the spec/javadoc
>    but it also needed to be generated by RMIC, the version in 
> src/java.rmi/share/doc
>    contained the javadoc comments.  I merged the javadoc into the 
> generated stub .java class
>    and added it to the repo.
>
> - The NetBeans Jmx build script had targets to build the stubs, they 
> have been removed.
>
> Thanks, Roger
>
>
> On 3/17/20 10:06 AM, Magnus Ihse Bursie wrote:
>> On 2020-03-17 14:17, Erik Joelsson wrote:
>>> Hello,
>>>
>>> That looks better, but there are still some more things to remove. 
>>> This whole block:
>>>
>>> ################################################################################ 
>>>
>>> # Targets for running rmic.
>>> $(eval $(call DeclareRecipesForPhase, RMIC, \
>>>     TARGET_SUFFIX := rmic, \
>>>     FILE_PREFIX := Rmic, \
>>>     MAKE_SUBDIR := rmic, \
>>>     CHECK_MODULES := $(ALL_MODULES)))
>>>
>>> ALL_TARGETS += $(RMIC_TARGETS)
>>>
>>> And all references to $(RMIC_TARGETS) and $(RMIC_MODULES). In most 
>>> cases the whole lines (like the $(foreach) calls that iterate over 
>>> them) can just be removed.
>>
>> This also means killing the entire "rmic" phase of the build. So 
>> please also remove the rmic target from Main.gmk line 1015, and 
>> ALL_TARGETs line 1133. And the reference to "rmic" from the phases in 
>> the help in Global.gmk.
>>
>> In ZipSource.gmk, there's special handling to include rmic source 
>> code, which is no longer needed.
>>
>> In Docs.gmk, you can remove $(SUPPORT_OUTPUTDIR)/rmic/* from 
>> MODULES_SOURCE_PATH.
>>
>> (That actually made me notice another weird rmi thingy. How does 
>> these new stubs relate to 
>> src/java.rmi/share/doc/stub/java/rmi/activation/ActivationGroup_Stub.java? 
>> That file has been present for a long time. It is included when 
>> generating Javadoc, but not when compiling the class files for the JDK.)
>>
>>  It is probably a good idea to make a case-insensitive search for 
>> "rmic" in the make directory afterwards, to confirm that all 
>> remaining cases of rmic should be there (i.e. it relates to compiling 
>> jdk.rmi, not running rmic during the build.)
>>
>> And btw, I'm eternally grateful to you for removing this. :-) Now the 
>> prospect of a fully warning-free build seems closer than ever!
>>
>> /Magnus
>>
>>
>>
>>
>>
>>
>>>
>>> /Erik
>>>
>>> On 2020-03-16 15:19, Roger Riggs wrote:
>>>> Hi Erik,
>>>>
>>>> Please review a new webrev that adds the change to remove the 
>>>> interim build parts.
>>>> (Passes Tier 1-3 of CI testing)
>>>>
>>>> http://cr.openjdk.java.net/~rriggs/webrev-stubs-classes-8241073-1/
>>>>
>>>> Thanks, Roger
>>>>
>>>>
>>>> On 3/16/20 12:22 PM, Erik Joelsson wrote:
>>>>> Hello Roger,
>>>>>
>>>>> There is more to be removed in the makefiles.
>>>>>
>>>>> This file should also be removed:
>>>>>
>>>>> make/CompileInterimRmic.gmk
>>>>>
>>>>> In make/Main.gmk, all the targets concerning rmic needs to be 
>>>>> removed as well as any dependencies declared that involves them. 
>>>>> Searching for "rmic" should find all relevant lines.
>>>>>
>>>>> /Erik
>>>>>
>>>>> On 2020-03-16 09:02, Roger Riggs wrote:
>>>>>> Please review adding pre-generated RMI stub classes to the jdk repo
>>>>>> and the removal of make files supporting the specific APIs.
>>>>>>
>>>>>> It removes a dependency on build time generation invoking RMIC.
>>>>>> RMIC was  deprecated in JDK 13 [1].
>>>>>>
>>>>>> The source files have been edited to remove or suppress 
>>>>>> compilation warnings.
>>>>>>
>>>>>> Webrev:
>>>>>> http://cr.openjdk.java.net/~rriggs/webrev-stubs-classes-8241073/
>>>>>>
>>>>>> Issue:
>>>>>>  https://bugs.openjdk.java.net/browse/JDK-8241073
>>>>>>
>>>>>>
>>>>>> Thanks, Roger
>>>>>>
>>>>>> p.s. A future change will remove the interim build steps
>>>>>>
>>>>>>
>>>>>> [1] https://bugs.openjdk.java.net/browse/JDK-8217412
>>>>
>>
>




More information about the build-dev mailing list