VirtualBox

Changeset 98860 in vbox


Ignore:
Timestamp:
Mar 7, 2023 2:26:25 PM (2 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
156184
Message:

Docs: bugref:10302. Now qhelp build uses dita stuff.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/doc/manual/Makefile.kmk

    r98684 r98860  
    9595
    9696VBOX_DITA_CONVERTER_PATH = $(PATH_ROOT)/src/libs/dbdita-1.0
    97 VBOX_DITA_PATH = $(PATH_ROOT)/src/libs/dita-ot-1.8.5
     97VBOX_DITA_ORIGINAL_PATH = $(PATH_ROOT)/src/libs/dita-ot-1.8.5
     98VBOX_DITA_PATH = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/dita-ot-1.8.5
    9899
    99100VBOX_QHELP_OUTPUT_FILES = \
     
    877878 #
    878879 ##########################################################################################
     880# Copy the dita library under out folder since at each use the library modifies some
     881# run-time configuation files.
     882$(VBOX_DITA_PATH):
     883        $(MKDIR) -p $(VBOX_DITA_PATH)
     884        cp -R $(VBOX_DITA_ORIGINAL_PATH)/* $(VBOX_DITA_PATH)/
     885
    879886 VBOX_DITA_PATH_LIB ?= $(VBOX_DITA_PATH)/lib
    880887 VBOX_DITA_ENV_SETUP ?= $(REDIRECT) \
     
    908915  $$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/UserManual_dita.pdf: \
    909916                $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/UserManual.ditamap \
     917                $(VBOX_DITA_PATH) \
    910918                $(VBOX_REFENTRY_DITA_FILES) \
    911919                $$(VBOX_PATH_MANUAL_SRC)/correct_references.py
     
    980988, $(evalcall2 def_vbox_refentry_to_manpage,$(lang),$(file))))
    981989
    982 # VBOX_WITH_DOCS_QHELP_WITH_DITA is just a temporary variable not to break the qhelp build
    983 # for others. When we switch to dita completely the code block inside ifdef VBOX_WITH_DOCS_QHELP
    984 # should be replaced by the one inside VBOX_WITH_DOCS_QHELP_WITH_DITA
    985 ifdef VBOX_WITH_DOCS_QHELP_WITH_DITA
    986  VBOX_WITH_DOCS_QHELP       =
    987 endif
    988 
    989990ifdef VBOX_WITH_DOCS_QHELP
    990  #
     991  #
    991992 # VirtualBox.qch/VirtualBox.qhc
    992993 #
     
    10171018  local out_dir := $(VBOX_PATH_MANUAL_OUTBASE)/$(lang)
    10181019  $$(out_dir)/qhelp/UserManual.qhp: \
    1019                 $$(out_dir)/qhelp/htmlhelp.hhp \
     1020                $$(out_dir)/qhelp/UserManual.hhp \
    10201021                $$(addprefix $$(out_dir)/qhelp/,$$(VBOX_MANUAL_PNG_FILES_$(lang))) \
    10211022                | $$$$(dir $$$$@)
    10221023        $$(call MSG_L1,htmlhelp-qthelp.py $$<,=> $$@)
    10231024        $$(QUIET)$$(RM) -f $$@
    1024         $$(QUIET)$$(VBOX_BLD_PYTHON) $$(VBOX_PATH_MANUAL_SRC)/htmlhelp-qthelp.py -d $$(<D) -o $$@ -f htmlhelp.hhp -t toc.hhc
     1025        $$(QUIET)$$(VBOX_BLD_PYTHON) $$(VBOX_PATH_MANUAL_SRC)/htmlhelp-qthelp.py -d $$(<D) -o $$@ -f UserManual.hhp -t UserManual.hhc
    10251026 endef
    10261027 $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(evalcall2 def_vbox_usermanual_hhp_qhelp_to_qhp))
    10271028
    1028  # Generate HHP for QHelp from XML
    1029  # Note: out_dir needs to be referenced with an escaped $ so it doesn't expand as eval expands it input.
    1030  define def_vbox_usermanual_xml_to_hhp_qhelp
    1031   local out_dir := $(VBOX_PATH_MANUAL_OUTBASE)/$(lang)
    1032   $$(out_dir)/qhelp/htmlhelp.hhp: \
    1033                 $$(addprefix $$(VBOX_PATH_MANUAL_SRC)/$(lang)/,$$(VBOX_MANUAL_XML_FILES)) \
    1034                 $$(VBOX_MANUAL_XML_FILES_COMMON) \
    1035                 $$(VBOX_MANUAL_XML_FILES_GENERATED_$(lang)) \
    1036                 $$(VBOX_DOCBOOK_HTMLHELP_FORMATCFG) \
    1037                 $$(VBOX_PATH_MANUAL_OUTBASE)/titlepage-htmlhelp.xsl \
    1038                 $$(if $$(VBOX_HAVE_XMLLINT),$$(out_dir)/validatemanual.run,) \
    1039                 $$(VBOX_XML_CATALOG) $$(VBOX_XML_CATALOG_DOCBOOK) $$(VBOX_XML_CATALOG_MANUAL) \
    1040                 $$(VBOX_XML_ENTITIES) | $$$$(dir $$$$@)
    1041         $$(call MSG_TOOL,xsltproc $$(notdir $$(firstword $$(filter %.xsl,$$^))),,$$(firstword $$(filter %.xml,$$^)),$$@)
    1042         $$(QUIET)$$(RM) -f $$@
    1043         $$(QUIET)$$(call VBOX_XSLTPROC_WITH_CAT) --output $$(@D)/ \
    1044                 --stringparam htmlhelp.chm \
    1045                 $$(subst /,\\,$$(VBOX_PATH_MANUAL_OUTBASE)/$(lang)/VirtualBox.chm) \
    1046                 $$(HTMLHELPOPTS) $$(VBOX_PATH_MANUAL_SRC)/docbook-htmlhelp-formatcfg.xsl \
    1047                 $$<
    1048  endef
    1049  $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(evalcall2 def_vbox_usermanual_xml_to_hhp_qhelp))
     1029
     1030 define def_ditamap_to_htmlhelp
     1031  ditamap-to-htmlhelp: $$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/qhelp/UserManual.hhp
     1032  $$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/qhelp/UserManual.hhp: \
     1033                $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/UserManual.ditamap \
     1034                $(VBOX_DITA_PATH) \
     1035                $(VBOX_REFENTRY_DITA_FILES) \
     1036                $$(VBOX_PATH_MANUAL_SRC)/correct_references.py
     1037                $$(call MSG_L1,correct_references.py -d $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/topics)
     1038                $$(QUIET)$$(VBOX_BLD_PYTHON) $$(VBOX_PATH_MANUAL_SRC)/correct_references.py -d $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/topics
     1039                $(QUIET)$(call VBOX_DITA_ENV_SETUP) \
     1040                $(VBOX_JAVA) -jar $(VBOX_DITA_PATH_LIB)/dost.jar /i:$$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/UserManual.ditamap \
     1041                        /transtype:htmlhelp /ditadir:$(VBOX_DITA_PATH) /outdir:$$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/qhelp /tempdir:$$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/temp
     1042
     1043 endef
     1044 $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(evalcall2 def_ditamap_to_htmlhelp,$(lang)))
    10501045
    10511046 # copy the qhcp file.
     
    10711066endif # VBOX_WITH_DOCS_QHELP
    10721067
    1073 ifdef VBOX_WITH_DOCS_QHELP_WITH_DITA
    1074  #
    1075  # VirtualBox.qch/VirtualBox.qhc
    1076  #
    1077  # We first generate a .hhp help source file from the preprocessed
    1078  # DocBook XML files, as defined above, then feed that into a converter
    1079  # creating the suitable input for creating a QHelp collection file.
    1080 
    1081  # Generate QCH from QHelp source
    1082  # Note: out_dir needs to be referenced with an escaped $ so it doesn't expand as eval expands it input.
    1083  define def_vbox_usermanual_qhp_to_qch
    1084   local out_dir := $(VBOX_PATH_MANUAL_OUTBASE)/$(lang)
    1085   $$(out_dir)/qhelp/UserManual.qch + \
    1086   $$(out_dir)/qhelp/UserManual.qhc: \
    1087                 $$(out_dir)/qhelp/UserManual.qhcp \
    1088                 $$(out_dir)/qhelp/UserManual.qhp \
    1089                 $$(addprefix $$(out_dir)/qhelp/,$$(VBOX_MANUAL_PNG_FILES_$(lang))) \
    1090                 | $$$$(dir $$$$@)
    1091         $$(call MSG_L1,$$(notdir $$(QHELPGENERATOR)) $$<,=> $$@)
    1092         $$(QUIET)$$(RM) -f $$@
    1093         $$(QUIET)$$(REDIRECT) -E QT_QPA_PLATFORM_PLUGIN_PATH=$$(PATH_SDK_QT5)/plugins -- $$(QHELPGENERATOR) $$<
    1094         $$(call MSG_L1,Fresh QCH is now at $$@)
    1095  endef
    1096  $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(evalcall2 def_vbox_usermanual_qhp_to_qch))
    1097 
    1098  # Generate QHP from HHP for QHelp
    1099  # Note: out_dir needs to be referenced with an escaped $ so it doesn't expand as eval expands it input.
    1100  define def_vbox_usermanual_hhp_qhelp_to_qhp
    1101   local out_dir := $(VBOX_PATH_MANUAL_OUTBASE)/$(lang)
    1102   $$(out_dir)/qhelp/UserManual.qhp: \
    1103                 $$(out_dir)/qhelp/UserManual.hhp \
    1104                 $$(addprefix $$(out_dir)/qhelp/,$$(VBOX_MANUAL_PNG_FILES_$(lang))) \
    1105                 | $$$$(dir $$$$@)
    1106         $$(call MSG_L1,htmlhelp-qthelp.py $$<,=> $$@)
    1107         $$(QUIET)$$(RM) -f $$@
    1108         $$(QUIET)$$(VBOX_BLD_PYTHON) $$(VBOX_PATH_MANUAL_SRC)/htmlhelp-qthelp.py -d $$(<D) -o $$@ -f UserManual.hhp -t UserManual.hhc
    1109  endef
    1110  $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(evalcall2 def_vbox_usermanual_hhp_qhelp_to_qhp))
    1111 
    1112 
    1113  define def_ditamap_to_htmlhelp
    1114   ditamap-to-htmlhelp: $$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/qhelp/UserManual.hhp
    1115   $$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/qhelp/UserManual.hhp: \
    1116                 $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/UserManual.ditamap \
    1117                 $(VBOX_REFENTRY_DITA_FILES) \
    1118                 $$(VBOX_PATH_MANUAL_SRC)/correct_references.py
    1119                 $$(call MSG_L1,correct_references.py -d $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/topics)
    1120                 $$(QUIET)$$(VBOX_BLD_PYTHON) $$(VBOX_PATH_MANUAL_SRC)/correct_references.py -d $(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/topics
    1121                 $(QUIET)$(call VBOX_DITA_ENV_SETUP) \
    1122                 $(VBOX_JAVA) -jar $(VBOX_DITA_PATH_LIB)/dost.jar /i:$$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/UserManual.ditamap \
    1123                         /transtype:htmlhelp /ditadir:$(VBOX_DITA_PATH) /outdir:$$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/qhelp /tempdir:$$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/dita/temp
    1124 
    1125  endef
    1126  $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(evalcall2 def_ditamap_to_htmlhelp,$(lang)))
    1127 
    1128  # copy the qhcp file.
    1129  define def_vbox_cp_qhcp
    1130   local out_dir := $(VBOX_PATH_MANUAL_OUTBASE)/$(lang)/qhelp
    1131   $$(out_dir)/UserManual.qhcp: \
    1132                 $$(out_dir)/% : $(VBOX_PATH_MANUAL_SRC)/% | $$$$(dir $$$$@)
    1133         $$(QUIET)$$(INSTALL_STAGING) -m0644 -- '$$<' '$$(@D)'
    1134  endef
    1135  $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(eval $(def_vbox_cp_qhcp)))
    1136 
    1137  # copy the PNG files.
    1138  # Note: out_dir needs to be referenced with an escaped $ so it doesn't expand as eval expands it input.
    1139  define def_vbox_cp_images_qhelp
    1140   local out_dir := $(VBOX_PATH_MANUAL_OUTBASE)/$(lang)/qhelp
    1141   $(addprefix $$(out_dir)/,$(VBOX_MANUAL_PNG_FILES_$(lang))): \
    1142                 $$(out_dir)/% : $(VBOX_PATH_MANUAL_SRC)/$(lang)/% | $$$$(dir $$$$@)
    1143         $$(call MSG_L1,Copying temporary $$< => $$@)
    1144         $$(QUIET)$$(INSTALL_STAGING) -m0644 -- '$$<' '$$(@D)'
    1145  endef
    1146  $(foreach lang,$(VBOX_MANUAL_LANGUAGES),$(eval $(def_vbox_cp_images_qhelp)))
    1147 
    1148 endif # VBOX_WITH_DOCS_QHELP_WITH_DITA
    1149 
    11501068# Handy aliases.
    11511069validate-manpages:: $(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/,$(VBOX_MANUAL_XML_REFENTRY_FILES))
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette