CustomTarget_html.mk | 40 ++++++++++++++-------------------------- 1 file changed, 14 insertions(+), 26 deletions(-)
New commits: commit 2b322af4b9473210ed6a332115dac381f07039d6 Author: Christian Lohmaier <[email protected]> AuthorDate: Tue Oct 21 13:31:07 2025 +0200 Commit: Olivier Hallot <[email protected]> CommitDate: Thu Nov 6 11:48:46 2025 +0100 simplify help makefile a bit by copying the en-US file a single pattern rule can be used without the need of using a generator/eval to add the targets/dependencies Change-Id: Ie63fce1e3687f1e1ba46583529e6f4997c0aba44 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/192835 Tested-by: Jenkins Reviewed-by: Olivier Hallot <[email protected]> diff --git a/CustomTarget_html.mk b/CustomTarget_html.mk index e07374d0db..0261af26ee 100644 --- a/CustomTarget_html.mk +++ b/CustomTarget_html.mk @@ -14,7 +14,7 @@ html_TREE_MODULES := swriter scalc simpress sdraw sdatabase smath schart sbasic html_TEXT_MODULES := $(html_TREE_MODULES) html_BMARK_MODULES := swriter:WRITER scalc:CALC simpress:IMPRESS sdraw:DRAW sdatabase:BASE smath:MATH schart:CHART sbasic:BASIC shared:SHARED -gb_html_allhelpfiles = $(foreach module,$(html_TEXT_MODULES),$(gb_AllLangHelp_$(module)_HELPFILES)) +gb_html_allhelpfiles = $(sort $(subst helpcontent2/source/text/,,$(foreach module,$(html_TEXT_MODULES),$(gb_AllLangHelp_$(module)_HELPFILES)))) # In case someone has a product name containing quotes, use Unicode # code points for ' (27) and " (22) in JS, CSS and entities for HTML. @@ -50,7 +50,7 @@ $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/hid2file.js : \ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),XSL,1) $(call gb_Trace_StartRange,$(@F),XSL) ( \ - RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),$(subst helpcontent2/source/text/,,$(gb_html_allhelpfiles)$(if $(filter WNT,$(OS)), ))) && \ + RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),$(gb_html_allhelpfiles)$(if $(filter WNT,$(OS)), )) && \ echo 'var hid2fileMap = {' \ && cd $(SRCDIR)/helpcontent2/source/text && $(call gb_ExternalExecutable_get_command,xsltproc,$(if $(filter WNT,$(OS)),env -i $(gb_Helper_set_ld_path)) xargs) $< <$$RESPONSEFILE || { rm $$RESPONSEFILE; exit 1 ; } \ && rm "$$RESPONSEFILE" \ @@ -58,19 +58,15 @@ $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/hid2file.js : \ ) > $@ $(call gb_Trace_EndRange,$(@F),XSL) +# copy en-US file so that pattern rules below don't need special treatment for en-US +$(gb_HelpTranslatePartTarget_workdir)/en-US/helpcontent2/source/text/shared/help/browserhelp.xhp: $(SRCDIR)/helpcontent2/source/text/shared/help/browserhelp.xhp + mkdir -p $(@D) && cp $< $@ # Xapian localized templates ifeq ($(HELP_OMINDEX_PAGE),TRUE) -define html_gen_xaptpl_dep -$(gb_CustomTarget_workdir)/helpcontent2/help3xsl/$(1)/xap_tpl : \ - $(if $(filter en-US,$(1)),$(SRCDIR),$(gb_HelpTranslatePartTarget_workdir)/$(1))/helpcontent2/source/text/shared/help/browserhelp.xhp - -endef - -$(eval $(foreach lang,$(gb_HELP_LANGS),$(call html_gen_xaptpl_dep,$(lang)))) - $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/%/xap_tpl : \ + $(gb_HelpTranslatePartTarget_workdir)/%/helpcontent2/source/text/shared/help/browserhelp.xhp \ $(SRCDIR)/helpcontent2/help3xsl/xap_templ_query.xsl \ $(SRCDIR)/helpcontent2/CustomTarget_html.mk \ | $(call gb_ExternalExecutable_get_dependencies,xsltproc) @@ -83,27 +79,19 @@ $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/%/xap_tpl : \ --stringparam productversion "$(PRODUCTVERSION)" \ -o $@ \ $(SRCDIR)/helpcontent2/help3xsl/xap_templ_query.xsl \ - $(if $(filter en-US,$*),$(SRCDIR),$(gb_HelpTranslatePartTarget_workdir)/$*)/helpcontent2/source/text/shared/help/browserhelp.xhp \ + $(gb_HelpTranslatePartTarget_workdir)/$*/helpcontent2/source/text/shared/help/browserhelp.xhp \ ) $(call gb_Trace_EndRange,$*/$(@F),XSL) endif # set of installed languages - has to be language independent -$(gb_CustomTarget_workdir)/helpcontent2/help3xsl/languages.js : \ - $(SRCDIR)/helpcontent2/CustomTarget_html.mk - printf 'var languagesSet = new Set([%s]); ' "$(subst $(WHITESPACE),$(COMMA) ,$(patsubst %,'%',$(gb_HELP_LANGS)))" > $@ - -define html_gen_langnames_js_dep -$(gb_CustomTarget_workdir)/helpcontent2/help3xsl/$(1)/langnames.js : \ - $(if $(filter en-US,$(1)),$(SRCDIR),$(gb_HelpTranslatePartTarget_workdir)/$(1))/helpcontent2/source/text/shared/help/browserhelp.xhp - -endef - -$(eval $(foreach lang,$(gb_HELP_LANGS),$(call html_gen_langnames_js_dep,$(lang)))) +$(gb_CustomTarget_workdir)/helpcontent2/help3xsl/languages.js : $(SRCDIR)/helpcontent2/CustomTarget_html.mk + $(file >$@,'var languagesSet = new Set([$(subst $(WHITESPACE),$(COMMA) ,$(patsubst %,'%',$(gb_HELP_LANGS)))]);') # names of the languages - has to be translated, ie. per language $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/%/langnames.js : \ + $(gb_HelpTranslatePartTarget_workdir)/%/helpcontent2/source/text/shared/help/browserhelp.xhp \ $(SRCDIR)/helpcontent2/CustomTarget_html.mk ( \ echo 'var languageNames = {' ; \ @@ -191,9 +179,9 @@ $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/%/html.text : \ | $(call gb_ExternalExecutable_get_dependencies,xsltproc) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),XSL,1) $(call gb_Trace_StartRange,$*/$(@F),XSL) - rm -rf $(dir $@)text && mkdir -p $(dir $@)text && cd $(dir $@)text && mkdir -p $(sort $(subst helpcontent2/source/text/,,$(dir $(gb_html_allhelpfiles)))) \ + rm -rf $(dir $@)text && mkdir -p $(dir $@)text && cd $(dir $@)text && mkdir -p $(sort $(dir $(gb_html_allhelpfiles))) \ && cd $(if $(filter en-US,$*),$(SRCDIR),$(gb_HelpTranslatePartTarget_workdir)/$*) \ - && RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),$(addsuffix $(WHITESPACE)dummyIgnoreCRinEOL$(NEWLINE),$(subst helpcontent2/source/,,$(gb_html_allhelpfiles)))) \ + && RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),$(addsuffix $(WHITESPACE)dummyIgnoreCRinEOL$(NEWLINE),$(gb_html_allhelpfiles))) \ && while read xhp dummy; do \ $(call gb_ExternalExecutable_get_command,xsltproc) \ --stringparam Language $* \ @@ -202,9 +190,9 @@ $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/%/html.text : \ --stringparam productname "$(gb_PRODUCTNAME_HTML)" \ --stringparam productversion "$(PRODUCTVERSION)" \ --stringparam xapian $(if $(filter TRUE, $(HELP_OMINDEX_PAGE)),'yes','no') \ - -o $(dir $@)$${xhp%.xhp}.html \ + -o $(dir $@)/text/$${xhp%.xhp}.html \ $(gb_CustomTarget_workdir)/helpcontent2/help3xsl/online_transform.xsl \ - helpcontent2/source/$$xhp \ + helpcontent2/source/text/$$xhp \ || exit \ ; done <"$$RESPONSEFILE" \ && rm "$$RESPONSEFILE" \
