This looks good to me. Thanks for hanging in there!

/Erik

On 2020-03-17 15: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/

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



Reply via email to