On Thu, 26 Oct 2023 13:29:04 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:
>> Please review an update to the way that `javadoc` handles the default legal >> notices when generating docs. >> >> Previously, the default notices were taken from the module's `legal` >> directory (`$JAVA_HOME/legal/jdk.javadoc`), but in some contexts, these >> files were either symbolic links, or "descriptive links" -- text files >> containing the words "Please see ..." -- on platforms that did not support >> symbolic links. This was set up when using `jlink` to create the image. >> These "descriptive links" were insufficient and inappropriate when used in a >> generated docs bundle. >> >> The solution is to put a copy of the necessary files into the `jdk.javadoc` >> module itself, at build time, as resource files, and to copy the files from >> there instead of the module's `legal` directory. >> >> The set of files may vary depending on the kind of build, so care is taken >> to not hardwire any specific list of names into the code. This means using >> direct access to the underlying `jrt:` file system in order to determine the >> set of legal notices that were set up at build time. >> >> The main test for legal notices is updated to verify that the words "Please >> see ..." do not appear in any of the legal notices in a generated docs >> bundle. There should be no other change to the set of legal notices. >> >> Two other tests were affected, because they provided their own minimal file >> manager for use with `javadoc`, which relied on default methods in the file >> manager API. These default methods are not sufficiently for handling paths >> in non-default file systems, such as the `jrt:` file system used to access >> the resources for the legal notices. The fix is just to override the >> necessary methods. > > make/modules/jdk.javadoc/Copy.gmk line 44: > >> 42: $(eval $(call SetupCopyFiles, COPY_JAVADOC_COMMON_LEGAL_RESOURCES, \ >> 43: DEST := $(JDK_JAVADOC_DOCLET_RESOURCE_DIR)/legal, \ >> 44: FILES := $(wildcard $(SUPPORT_OUTPUTDIR)/modules_legal/common/*), \ > > Suggestion: > > FILES := $(wildcard $(COMMON_LEGAL_DST_DIR)/*), \ > > > This is already defined in CopyCommon... Noted. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/16370#discussion_r1373375371