make/Docs.gmk
branchihse-manpages-branch
changeset 57008 cbd4d5fe2015
parent 57006 44fe6d5e9c73
child 57041 a9e3ec0394d3
equal deleted inserted replaced
57007:19b7d582121d 57008:cbd4d5fe2015
    58 
    58 
    59 # On top of the sources that was used to compile the JDK, we need some
    59 # On top of the sources that was used to compile the JDK, we need some
    60 # extra java.rmi sources that are used just for javadoc.
    60 # extra java.rmi sources that are used just for javadoc.
    61 MODULES_SOURCE_PATH := $(call PathList, $(call GetModuleSrcPath) \
    61 MODULES_SOURCE_PATH := $(call PathList, $(call GetModuleSrcPath) \
    62     $(SUPPORT_OUTPUTDIR)/rmic/* $(TOPDIR)/src/*/share/doc/stub)
    62     $(SUPPORT_OUTPUTDIR)/rmic/* $(TOPDIR)/src/*/share/doc/stub)
    63 
       
    64 # Should we enable man pages? Allow custom to overwrite.
       
    65 ENABLE_MAN_PAGES ?= true
       
    66 
    63 
    67 # URLs
    64 # URLs
    68 JAVADOC_BASE_URL := https://docs.oracle.com/pls/topic/lookup?ctx=javase$(VERSION_NUMBER)&id=homepage
    65 JAVADOC_BASE_URL := https://docs.oracle.com/pls/topic/lookup?ctx=javase$(VERSION_NUMBER)&id=homepage
    69 BUG_SUBMIT_URL := https://bugreport.java.com/bugreport/
    66 BUG_SUBMIT_URL := https://bugreport.java.com/bugreport/
    70 COPYRIGHT_URL := {@docroot}/../legal/copyright.html
    67 COPYRIGHT_URL := {@docroot}/../legal/copyright.html
   556         $(eval JDK_SPECS_TARGETS += $($($m_$d_NAME))) \
   553         $(eval JDK_SPECS_TARGETS += $($($m_$d_NAME))) \
   557       ) \
   554       ) \
   558     ) \
   555     ) \
   559   )
   556   )
   560 
   557 
   561   ifeq ($(ENABLE_MAN_PAGES), true)
   558   # BUILD_MANPAGES is a misnomer. Right now it means "copy static man pages".
       
   559   ifeq ($(BUILD_MANPAGES), true)
       
   560     # Copy static man pages already in troff format
       
   561 
       
   562     $(foreach m, $(ALL_MODULES), \
       
   563       $(eval MAN_$m := $(call FindModuleManDirs, $m)) \
       
   564       $(foreach d, $(MAN_$m), \
       
   565         $(if $(filter %.1, $(call CacheFind, $d)), \
       
   566           $(eval $m_$d_NAME := COPY_MAN_$m_$(strip $(call RelativePath, $d, $(TOPDIR)))) \
       
   567           $(eval $(call SetupCopyFiles, $($m_$d_NAME), \
       
   568               SRC := $d, \
       
   569               FILES := $(filter %.1, $(call CacheFind, $d)), \
       
   570               DEST := $(DOCS_OUTPUTDIR)/man/man1, \
       
   571           )) \
       
   572           $(eval MAN_PAGE_TARGETS += $($($m_$d_NAME))) \
       
   573         ) \
       
   574       ) \
       
   575     )
       
   576 
       
   577   else
       
   578     # Create dynamic man pages from markdown
       
   579 
   562     PANDOC_FILTER := $(SUPPORT_OUTPUTDIR)/docs/pandoc-manpage-filter
   580     PANDOC_FILTER := $(SUPPORT_OUTPUTDIR)/docs/pandoc-manpage-filter
   563     PANDOC_FILTER_SETUP := $(SUPPORT_OUTPUTDIR)/docs/_pandoc_filter_setup.marker
   581     PANDOC_FILTER_SETUP := $(SUPPORT_OUTPUTDIR)/docs/_pandoc_filter_setup.marker
   564     PANDOC_FILTER_JAVASCRIPT := $(TOPDIR)/make/scripts/pandoc-manpage-filter.js
   582     PANDOC_FILTER_JAVASCRIPT := $(TOPDIR)/make/scripts/pandoc-manpage-filter.js
   565 
   583 
   566     # Create a usable instance of the wrapper script that calls the pandoc filter
   584     # Create a usable instance of the wrapper script that calls the pandoc filter
   600     # Generate man pages from markdown
   618     # Generate man pages from markdown
   601     $(foreach m, $(ALL_MODULES), \
   619     $(foreach m, $(ALL_MODULES), \
   602       $(eval MAN_$m := $(call FindModuleManDirs, $m)) \
   620       $(eval MAN_$m := $(call FindModuleManDirs, $m)) \
   603       $(foreach d, $(MAN_$m), \
   621       $(foreach d, $(MAN_$m), \
   604         $(if $(filter %.md, $(call CacheFind, $d)), \
   622         $(if $(filter %.md, $(call CacheFind, $d)), \
   605         $(eval $m_$d_NAME := MAN_TO_TROFF_$m_$(strip $(call RelativePath, $d, $(TOPDIR)))) \
   623           $(eval $m_$d_NAME := MAN_TO_TROFF_$m_$(strip $(call RelativePath, $d, $(TOPDIR)))) \
   606           $(eval $(call SetupProcessMarkdown, $($m_$d_NAME), \
   624           $(eval $(call SetupProcessMarkdown, $($m_$d_NAME), \
   607               SRC := $d, \
   625               SRC := $d, \
   608               FILES := $(filter %.md, $(call CacheFind, $d)), \
   626               FILES := $(filter %.md, $(call CacheFind, $d)), \
   609               DEST := $(DOCS_OUTPUTDIR)/man/man1, \
   627               DEST := $(DOCS_OUTPUTDIR)/man/man1, \
   610               FORMAT := man, \
   628               FORMAT := man, \
   612                   $(PANDOC_FILTER_JAVASCRIPT), \
   630                   $(PANDOC_FILTER_JAVASCRIPT), \
   613               FILTER := $(PANDOC_FILTER), \
   631               FILTER := $(PANDOC_FILTER), \
   614               POST_PROCESS := $(MAN_POST_PROCESS), \
   632               POST_PROCESS := $(MAN_POST_PROCESS), \
   615               REPLACEMENTS := @@VERSION_SHORT@@ => $(VERSION_SHORT), \
   633               REPLACEMENTS := @@VERSION_SHORT@@ => $(VERSION_SHORT), \
   616           )) \
   634           )) \
       
   635           $(eval MAN_PAGE_TARGETS += $($($m_$d_NAME))) \
   617         ) \
   636         ) \
   618         $(eval MAN_PAGE_TARGETS += $($($m_$d_NAME))) \
       
   619       ) \
   637       ) \
   620     )
   638     )
   621 
   639 
   622     # Generate html pages ("man spec") from markdown
   640     # Generate html pages ("man spec") from markdown
   623     $(foreach m, $(ALL_MODULES), \
   641     $(foreach m, $(ALL_MODULES), \
   624       $(eval MAN_$m := $(call FindModuleManDirs, $m)) \
   642       $(eval MAN_$m := $(call FindModuleManDirs, $m)) \
   625       $(foreach d, $(MAN_$m), \
   643       $(foreach d, $(MAN_$m), \
   626         $(if $(filter %.md, $(call CacheFind, $d)), \
   644         $(if $(filter %.md, $(call CacheFind, $d)), \
   627         $(eval $m_$d_NAME := MAN_TO_HTML_$m_$(strip $(call RelativePath, $d, $(TOPDIR)))) \
   645           $(eval $m_$d_NAME := MAN_TO_HTML_$m_$(strip $(call RelativePath, $d, $(TOPDIR)))) \
   628           $(eval $(call SetupProcessMarkdown, $($m_$d_NAME), \
   646           $(eval $(call SetupProcessMarkdown, $($m_$d_NAME), \
   629               SRC := $d, \
   647               SRC := $d, \
   630               FILES := $(filter %.md, $(call CacheFind, $d)), \
   648               FILES := $(filter %.md, $(call CacheFind, $d)), \
   631               DEST := $(DOCS_OUTPUTDIR)/specs/man, \
   649               DEST := $(DOCS_OUTPUTDIR)/specs/man, \
   632               CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
   650               CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
   633               REPLACEMENTS := @@VERSION_SHORT@@ => $(VERSION_SHORT), \
   651               REPLACEMENTS := @@VERSION_SHORT@@ => $(VERSION_SHORT), \
   634           )) \
   652           )) \
       
   653           $(eval MAN_PAGE_TARGETS += $($($m_$d_NAME))) \
   635         ) \
   654         ) \
   636         $(eval MAN_PAGE_TARGETS += $($($m_$d_NAME))) \
       
   637       ) \
   655       ) \
   638     )
   656     )
   639 
   657 
   640     # The html version also needs the css file
   658     # The html version also needs the css file
   641     MAN_PAGE_TARGETS += $(COPY_GLOBAL_RESOURCES)
   659     MAN_PAGE_TARGETS += $(COPY_GLOBAL_RESOURCES)
   642 
   660   endif
   643     JDK_SPECS_TARGETS += $(MAN_PAGE_TARGETS)
   661 
   644 
   662   JDK_SPECS_TARGETS += $(MAN_PAGE_TARGETS)
   645   endif
   663 
   646 endif
   664 endif
   647 
   665 
   648 # Special treatment for generated documentation
   666 # Special treatment for generated documentation
   649 
   667 
   650 JDWP_PROTOCOL := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.jdi/jdwp-protocol.html
   668 JDWP_PROTOCOL := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.jdi/jdwp-protocol.html