Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
0909384b
Kaydet (Commit)
0909384b
authored
Şub 26, 2013
tarafından
David Tardon
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
add support for building help packs into gbuild
Change-Id: I1cc5600ab0f6236c451d07bfb5ad9ee42ea4754a
üst
38c8b84c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
900 additions
and
0 deletions
+900
-0
AllLangHelp.mk
solenv/gbuild/AllLangHelp.mk
+166
-0
HelpTarget.mk
solenv/gbuild/HelpTarget.mk
+706
-0
TargetLocations.mk
solenv/gbuild/TargetLocations.mk
+26
-0
gbuild.mk
solenv/gbuild/gbuild.mk
+2
-0
No files found.
solenv/gbuild/AllLangHelp.mk
0 → 100644
Dosyayı görüntüle @
0909384b
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
gb_AllLangHelp_HELPDIRNAME := helpcontent2
gb_AllLangHelp_AUXDIRNAME := auxiliary
gb_AllLangHelp_HELPDIR := $(gb_AllLangHelp_HELPDIRNAME)/source
gb_AllLangHelp_AUXDIR := $(gb_AllLangHelp_HELPDIR)/$(gb_AllLangHelp_AUXDIRNAME)
gb_AllLangHelp_TRANLATIONSDIR := $(SRCDIR)/translations
# class AllLangHelp
# Creates and delivers all language versions of a module.
gb_AllLangHelp_LANGS := $(gb_WITH_LANG)
define gb_AllLangHelp__translation_exists
$(or \
$(filter en-US,$(1)),\
$(and \
$(wildcard $(SRCDIR)/$(gb_AllLangHelp_AUXDIR)/$(1)),\
$(wildcard $(gb_AllLangHelp_TRANLATIONSDIR)/source/$(1)/$(gb_AllLangHelp_HELPDIRNAME)) \
) \
)
endef
gb_AllLangHelp__get_helpname = $(1)/$(2)
gb_AllLangHelp__get_zipname = $(1)_$(2)
$(dir $(call gb_AllLangHelp_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_AllLangHelp_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_AllLangHelp_get_target,%) :
$(call gb_Output_announce,$*,$(true),ALH,5)
touch $@
$(call gb_AllLangHelp_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),ALH,5)
$(call gb_Helper_abbreviate_dirs,\
rm -f $(call gb_AllLangHelp_get_target,$*) $(HELP_DELIVERABLES) \
)
# gb_AllLangHelp_AllLangHelp__one_lang module lang helpname zipname
define gb_AllLangHelp_AllLangHelp__one_lang
$(call gb_HelpTarget_HelpTarget,$(3),$(1),$(2))
$(call gb_HelpTarget_set_configdir,$(3),$(gb_AllLangHelp_AUXDIR))
$(call gb_HelpTarget_set_helpdir,$(3),$(gb_AllLangHelp_HELPDIR))
$(call gb_HelpTarget_get_outdir_target,$(4)) : $(call gb_HelpTarget_get_zipfile,$(3))
$(call gb_AllLangHelp_get_target,$(1)) : $(call gb_HelpTarget_get_outdir_target,$(4))
$(call gb_AllLangHelp_get_target,$(1)) : $(call gb_HelpTarget_get_target,$(3))
$(call gb_AllLangHelp_get_clean_target,$(1)) : $(call gb_HelpTarget_get_clean_target,$(3))
$(call gb_AllLangHelp_get_clean_target,$(1)) : HELP_DELIVERABLES += $(call gb_HelpTarget_get_outdir_target,$(4))
$(call gb_Deliver_add_deliverable,$(call gb_HelpTarget_get_outdir_target,$(4)),$(call gb_HelpTarget_get_zipfile,$(3)),$(1))
endef
# Create and deliver help packs for a module for all languages.
#
# gb_AllLangHelp_AllLangHelp module
define gb_AllLangHelp_AllLangHelp
$(call gb_AllLangHelp_get_clean_target,$(1)) : HELP_DELIVERABLES :=
$(foreach lang,$(gb_AllLangHelp_LANGS),\
$(if $(call gb_AllLangHelp__translation_exists,$(lang)),\
$(call gb_AllLangHelp_AllLangHelp__one_lang,$(1),$(lang),$(call gb_AllLangHelp__get_helpname,$(1),$(lang)),$(call gb_AllLangHelp__get_zipname,$(1),$(lang)))))
$(call gb_AllLangHelp_get_target,$(1)) :| $(dir $(call gb_AllLangHelp_get_target,$(1))).dir
$$(eval $$(call gb_Module_register_target,$(call gb_AllLangHelp_get_target,$(1)),$(call gb_AllLangHelp_get_clean_target,$(1))))
$(call gb_Helper_make_userfriendly_targets,$(1),AllLangHelp)
endef
# gb_AllLangHelp_set_treefile module treefile
define gb_AllLangHelp_set_treefile
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_HelpTarget_set_treefile,$(call gb_AllLangHelp__get_helpname,$(1),$(lang)),$(2),$(gb_AllLangHelp_HELPDIR)/text))
endef
# Add a help file.
#
# gb_AllLangHelp_add_helpfile module file
define gb_AllLangHelp_add_helpfile
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_HelpTarget_add_helpfile,$(call gb_AllLangHelp__get_helpname,$(1),$(lang)),$(2)))
endef
# Add one or more help files.
#
# gb_AllLangHelp_add_helpfiles module file(s)
define gb_AllLangHelp_add_helpfiles
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_HelpTarget_add_helpfiles,$(call gb_AllLangHelp__get_helpname,$(1),$(lang)),$(2)))
endef
# Add additional localized file to the help pack.
#
# gb_AllLangHelp_add_localized_file module basedir file
define gb_AllLangHelp_add_localized_file
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_HelpTarget_add_file,$(call gb_AllLangHelp__get_helpname,$(1),$(lang)),$(2)/$(lang)/$(3)))
endef
# Add additional localized file(s) to the help pack.
#
# gb_AllLangHelp_add_localized_files module basedir file(s)
define gb_AllLangHelp_add_localized_files
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_HelpTarget_add_files,$(call gb_AllLangHelp__get_helpname,$(1),$(lang)),$(addprefix $(2)/$(lang)/,$(3))))
endef
# gb_AllLangHelp__use_module module other-module lang
define gb_AllLangHelp__use_module
$(call gb_HelpTarget_use_module,$(call gb_AllLangHelp__get_helpname,$(1),$(3)),$(call gb_AllLangHelp__get_helpname,$(2),$(3)))
endef
# Use references from another help module's files.
#
# gb_AllLangHelp_use_module module other-module
define gb_AllLangHelp_use_module
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_AllLangHelp__use_module,$(1),$(2),$(lang)))
endef
# Use references from other help modules' files.
#
# gb_AllLangHelp_use_module module other-module(s)
define gb_AllLangHelp_use_modules
$(foreach module,$(2),$(call gb_AllLangHelp_use_module,$(1),$(module)))
endef
# gb_AllLangHelp__use_linked_module module other-module lang
define gb_AllLangHelp__use_linked_module
$(call gb_HelpTarget_use_linked_module,$(call gb_AllLangHelp__get_helpname,$(1),$(3)),$(call gb_AllLangHelp__get_helpname,$(2),$(3)))
endef
# Link with another help module.
#
# gb_AllLangHelp_use_linked_module module other-module
define gb_AllLangHelp_use_linked_module
$(foreach lang,$(gb_AllLangHelp_LANGS),$(call gb_AllLangHelp__use_linked_module,$(1),$(2),$(lang)))
endef
# Link with other help module(s).
#
# gb_AllLangHelp_use_linked_module module other-module(s)
define gb_AllLangHelp_use_linked_modules
$(foreach module,$(2),$(call gb_AllLangHelp_use_linked_module,$(1),$(module)))
endef
# vim: set noet sw=4 ts=4:
solenv/gbuild/HelpTarget.mk
0 → 100644
Dosyayı görüntüle @
0909384b
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This gbuild module handles building of localized help packs. The main
# entry point is class HelpTarget; the other classes should be
# considered private implementation details and not used directly from
# outside of this file.
#
# All defined objects must be named <help-module>/<lang>. If this naming
# scheme is not followed, bad things will happen!
# Overview of classes and dependencies
# class task depends on
# HelpTranslatePartTarget l10n of xhp files in one dir xhp file(s)
# HelpTranslateTarget l10n of xhp files HelpTranslatePartTarget
# HelpTreeTarget l10n of tree file tree file
# HelpLinkTarget linking help module HelpTranslateTarget
# HelpTreeTarget
# HelpJarTarget creating jar of xhp files HelpLinkTarget
# HelpIndexTarget indexing help module HelpLinkTarget
# HelpTarget creating help pack HelpIndexTarget
# HelpJarTarget
# extra added files
# class HelpTranslatePartTarget
# Translates .xhp files in one directory.
gb_HelpTranslatePartTarget_DEPS := $(call gb_Executable_get_runtime_dependencies,helpex)
gb_HelpTranslatePartTarget_COMMAND := $(call gb_Executable_get_command,helpex)
define gb_HelpTranslatePartTarget__command
$(call gb_Output_announce,$(2),$(true),HPX,1)
HELPFILES=$(call var2file,$(shell $(gb_MKTEMP)),100,$(filter %.xhp,$(3))) && \
POFILES=$(call var2file,$(shell $(gb_MKTEMP)),100,$(sort $(POFILES))) && \
$(call gb_Helper_abbreviate_dirs,\
$(gb_HelpTranslatePartTarget_COMMAND) \
-l $(HELP_LANG) \
-mi $${HELPFILES} \
-m $${POFILES} \
-o $(call gb_HelpTranslatePartTarget_get_workdir,$(2)) \
) && \
touch $@ && \
rm -f $${HELPFILES} $${POFILES}
endef
$(dir $(call gb_HelpTranslatePartTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_HelpTranslatePartTarget_get_target,%) : $(gb_HelpTranslatePartTarget_DEPS)
$(call gb_HelpTranslatePartTarget__command,$@,$*,$^)
.PHONY : $(call gb_HelpTranslatePartTarget_get_clean_target,%)
$(call gb_HelpTranslatePartTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),HPX,1)
$(call gb_Helper_abbreviate_dirs,\
rm -rf \
$(call gb_HelpTranslatePartTarget_get_target,$*) \
$(call gb_HelpTranslatePartTarget_get_workdir,$*) \
)
# Translate a set of .xhp files from one directory.
#
# gb_HelpTranslatePartTarget_HelpTranslatePartTarget target lang dir
define gb_HelpTranslatePartTarget_HelpTranslatePartTarget
$(call gb_HelpTranslatePartTarget_get_target,$(1)) : HELP_LANG := $(2)
$(call gb_HelpTranslatePartTarget_get_target,$(1)) : POFILES := $(gb_POLOCATION)/$(2)/$(3).po
$(call gb_HelpTranslatePartTarget_get_target,$(1)) : $(gb_POLOCATION)/$(2)/$(3).po
$(call gb_HelpTranslatePartTarget_get_target,$(1)) :| $(dir $(call gb_HelpTranslatePartTarget_get_target,$(1))).dir
$(call gb_HelpTranslatePartTarget_get_target,$(1)) :| $(call gb_HelpTranslatePartTarget_get_workdir,$(1))/.dir
endef
define gb_HelpTranslatePartTarget_add_file
$(call gb_HelpTranslatePartTarget_get_target,$(1)) : $(2)
endef
# class HelpTranslateTarget
# Translates a set of .xhp files.
gb_HelpTranslateTarget__get_lang = $(lastword $(subst /, ,$(1)))
gb_HelpTranslateTarget__get_partname = $(call gb_HelpTranslateTarget__get_lang,$(1))/$(patsubst %/,%,$(2))
gb_HelpTranslateTarget__get_part_workdir = $(call gb_HelpTranslatePartTarget_get_workdir,$(call gb_HelpTranslateTarget__get_partname,$(1),$(2)))
gb_HelpTranslateTarget_get_translated_target = $(call gb_HelpTranslatePartTarget_get_translated_target,$(call gb_HelpTranslateTarget__get_partname,$(1),$(dir $(2))),$(notdir $(2)))
gb_HelpTranslateTarget__get_any_translated_target = $(abspath $(call gb_HelpTranslatePartTarget_get_translated_target,,$(1)))
gb_HelpTranslateTarget_get_workdir = $(call gb_HelpTranslateTarget__get_part_workdir,$(1),$(2))
$(dir $(call gb_HelpTranslateTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_HelpTranslateTarget_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_HelpTranslateTarget_get_target,%) :
$(call gb_Output_announce,$*,$(true),XHP,2)
touch $@
$(call gb_HelpTranslateTarget__get_any_translated_target,%) :
touch $@
.PHONY : $(call gb_HelpTranslateTarget_get_clean_target,%)
$(call gb_HelpTranslateTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),XHP,2)
$(call gb_Helper_abbreviate_dirs,\
rm -f $(call gb_HelpTranslateTarget_get_target,$*) \
)
# Localizes a set of .xhp files to one language.
#
# gb_HelpTranslateTarget_HelpTranslateTarget module
define gb_HelpTranslateTarget_HelpTranslateTarget
$(call gb_HelpTranslateTarget_get_target,$(1)) :| $(dir $(call gb_HelpTranslateTarget_get_target,$(1))).dir
endef
# gb_HelpTranslateTarget__make_part module part lang dir
define gb_HelpTranslateTarget__make_part
$(call gb_HelpTranslatePartTarget_HelpTranslatePartTarget,$(2),$(3),$(patsubst %/,%,$(4)))
$(call gb_HelpTranslateTarget_get_target,$(1)) : $(call gb_HelpTranslatePartTarget_get_target,$(2))
$(call gb_HelpTranslateTarget_get_clean_target,$(1)) : $(call gb_HelpTranslatePartTarget_get_clean_target,$(2))
endef
# gb_HelpTranslateTarget__add_file module dir file
define gb_HelpTranslateTarget__add_file
$(call gb_HelpTranslatePartTarget_add_file,$(call gb_HelpTranslateTarget__get_partname,$(1),$(2)),$(SRCDIR)/$(3).xhp)
$(call gb_HelpTranslateTarget_get_translated_target,$(1),$(3)) : $(call gb_HelpTranslateTarget_get_target,$(1))
endef
# gb_HelpTranslateTarget__add_files_impl module lang dir(s) file(s)
define gb_HelpTranslateTarget__add_files_impl
$(foreach part,$(3),$(call gb_HelpTranslateTarget__make_part,$(1),$(call gb_HelpTranslateTarget__get_partname,$(1),$(part)),$(2),$(part)))
$(foreach file,$(4),$(call gb_HelpTranslateTarget__add_file,$(1),$(dir $(file)),$(file)))
endef
# gb_HelpTranslateTarget__add_files module file(s)
define gb_HelpTranslateTarget__add_files
$(call gb_HelpTranslateTarget__add_files_impl,$(1),$(call gb_HelpTranslateTarget__get_lang,$(1)),$(sort $(dir $(2))),$(2))
endef
# gb_HelpTranslateTarget_add_file module file
define gb_HelpTranslateTarget_add_file
$(call gb_HelpTranslateTarget__add_files,$(1),$(2))
endef
# gb_HelpTranslateTarget_add_files module file(s)
define gb_HelpTranslateTarget_add_files
$(call gb_HelpTranslateTarget__add_files,$(1),$(2))
endef
# class HelpTree
# Translates a .tree file.
gb_HelpTreeTarget_DEPS := $(call gb_Executable_get_runtime_dependencies,treex)
gb_HelpTreeTarget_COMMAND := $(call gb_Executable_get_command,treex)
define gb_HelpTreeTarget__command
$(call gb_Output_announce,$(2),$(true),TRE,1)
POFILES=$(call var2file,$(shell $(gb_MKTEMP)),100,$(POFILES)) && \
$(call gb_Helper_abbreviate_dirs,\
$(gb_HelpTreeTarget_COMMAND) \
-i $(HELP_TREE) \
-l $(HELP_LANG) \
-m $${POFILES} \
-o $@ \
-r $(HELP_TEXTDIR) \
) && \
rm -f $${POFILES}
endef
$(dir $(call gb_HelpTreeTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_HelpTreeTarget_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_HelpTreeTarget_get_target,%) : $(gb_HelpTreeTarget_DEPS)
$(if $(HELP_TEXTDIR),,$(call gb_Output_error,HelpTreeTarget: no help text dir for .tree was set))
$(if $(HELP_TREE),,$(call gb_Output_error,HelpTreeTarget: no .tree file to translate was set))
$(call gb_HelpTreeTarget__command,$@,$*)
.PHONY : $(call gb_HelpTreeTarget_get_clean_target,%)
$(call gb_HelpTreeTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),TRE,1)
$(call gb_Helper_abbreviate_dirs,\
rm -f $(call gb_HelpTreeTarget_get_target,$*) \
)
# Translate a .tree file.
#
# gb_HelpTreeTarget_HelpTreeTarget target lang
define gb_HelpTreeTarget_HelpTreeTarget
$(call gb_HelpTreeTarget_get_target,$(1)) : HELP_LANG := $(2)
$(call gb_HelpTreeTarget_get_target,$(1)) : HELP_TEXTDIR :=
$(call gb_HelpTreeTarget_get_target,$(1)) : HELP_TREE :=
$(call gb_HelpTreeTarget_get_target,$(1)) : POFILES :=
$(call gb_HelpTreeTarget_get_target,$(1)) :| $(dir $(call gb_HelpTreeTarget_get_target,$(1))).dir
endef
# gb_HelpTreeTarget__set_pofiles target pofiles
define gb_HelpTreeTarget__set_pofiles
$(call gb_HelpTreeTarget_get_target,$(1)) : POFILES := $(2)
$(call gb_HelpTreeTarget_get_target,$(1)) : $(2)
endef
# gb_HelpTreeTarget_set_treefile target treefile
define gb_HelpTreeTarget_set_treefile
$(call gb_HelpTreeTarget__set_pofiles,$(1),$(gb_POLOCATION)/$(lastword $(subst /, ,$(1)))/$(patsubst %/,%,$(dir $(2))).po)
$(call gb_HelpTreeTarget_get_target,$(1)) : HELP_TREE := $(SRCDIR)/$(2).tree
$(call gb_HelpTreeTarget_get_target,$(1)) : $(SRCDIR)/$(2).tree
endef
# gb_HelpTreeTarget_set_helptextdir target dir
define gb_HelpTreeTarget_set_helptextdir
$(call gb_HelpTreeTarget_get_target,$(1)) : HELP_TEXTDIR := $(2)
endef
# class HelpLinkTarget
# Links a help module.
gb_HelpLinkTarget_HELPLINKERDEPS := $(call gb_Executable_get_runtime_dependencies,HelpLinker)
gb_HelpLinkTarget_HELPLINKERCOMMAND := $(call gb_Executable_get_command,HelpLinker)
gb_HelpLinkTarget_COMPACTTARGET := $(OUTDIR)/bin/compact.xsl
gb_HelpLinkTarget_EMBEDTARGET := $(OUTDIR)/bin/embed.xsl
gb_HelpLinkTarget_IDXCAPTIONTARGET := $(OUTDIR)/bin/idxcaption.xsl
gb_HelpLinkTarget_IDXCONTENTTARGET := $(OUTDIR)/bin/idxcontent.xsl
gb_HelpLinkTarget_DEPS := \
$(gb_HelpLinkTarget_HELPLINKERDEPS) \
$(gb_HelpLinkTarget_COMPACTTARGET) \
$(gb_HelpLinkTarget_EMBEDTARGET) \
$(gb_HelpLinkTarget_IDXCAPTIONTARGET) \
$(gb_HelpLinkTarget_IDXCONTENTTARGET)
define gb_HelpLinkTarget__command
$(call gb_Output_announce,$(2),$(true),HLK,3)
RESPONSEFILE=$(call var2file,$(shell $(gb_MKTEMP)),100,\
-lang $(HELP_LANG) \
-mod $(HELP_MODULE) \
-nolangroot \
-o $(WORKDIR)/dummy.zip \
-src $(HELP_SRCDIR) \
-zipdir $(HELP_WORKDIR) \
-compact $(gb_HelpLinkTarget_COMPACTTARGET)
-idxcaption $(gb_HelpLinkTarget_IDXCAPTIONTARGET) \
-idxcontent $(gb_HelpLinkTarget_IDXCONTENTTARGET) \
-sty $(gb_HelpLinkTarget_EMBEDTARGET) \
$(if $(HELP_CONFIGDIR),-add $(HELP_MODULE).cfg $(HELP_CONFIGDIR)/$(HELP_LANG)/$(HELP_MODULE).cfg) \
$(if $(HELP_TREE),-add $(HELP_MODULE).tree $(HELP_TREE)) \
$(foreach file,$(HELP_ADD_FILES),-add $(notdir $(file)) $(file)) \
$(HELP_FILES) \
$(if $(HELP_LINKED_MODULES),\
$(shell cat $(foreach module,$(HELP_LINKED_MODULES),$(call gb_HelpTarget_get_filelist,$(module)))) \
) \
) && \
$(gb_HelpLinkTarget_HELPLINKERCOMMAND) @$${RESPONSEFILE} && \
touch $@ && \
rm -f $${RESPONSEFILE}
endef
$(dir $(call gb_HelpLinkTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_HelpLinkTarget_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_HelpLinkTarget_get_target,%) : $(gb_HelpLinkTarget_DEPS)
$(call gb_HelpLinkTarget__command,$@,$*)
$(call gb_HelpLinkTarget_get_preparation_target,%) :
touch $@
.PHONY : $(call gb_HelpLinkTarget_get_clean_target,%)
$(call gb_HelpLinkTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),HLK,3)
$(call gb_Helper_abbreviate_dirs,\
rm -f \
$(call gb_HelpLinkTarget_get_target,$*) \
$(call gb_HelpLinkTarget_get_preparation_target,$*) \
)
# Create a help linking target.
#
# gb_HelpLinkTarget_HelpLinkTarget name module lang workdir
define gb_HelpLinkTarget_HelpLinkTarget
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_ADD_FILES :=
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_CONFIGDIR :=
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_FILES :=
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_MODULE := $(2)
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_LANG := $(3)
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_LINKED_MODULES :=
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_SRCDIR :=
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_TREE :=
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_WORKDIR := $(4)
$(call gb_HelpLinkTarget_get_target,$(1)) : $(call gb_HelpLinkTarget_get_preparation_target,$(1))
$(call gb_HelpLinkTarget_get_target,$(1)) :| $(dir $(call gb_HelpLinkTarget_get_target,$(1))).dir
$(call gb_HelpLinkTarget_get_preparation_target,$(1)) :| $(dir $(call gb_HelpLinkTarget_get_preparation_target,$(1))).dir
endef
# gb_HelpLinkTarget_set_configdir target configdir
define gb_HelpLinkTarget_set_configdir
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_CONFIGDIR := $(2)
endef
# gb_HelpLinkTarget_set_sourcedir target source
define gb_HelpLinkTarget_set_sourcedir
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_SRCDIR := $(2)
endef
# gb_HelpLinkTarget_set_treefile target treefile
define gb_HelpLinkTarget_set_treefile
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_TREE := $(2)
$(call gb_HelpLinkTarget_get_target,$(1)) : $(2)
endef
# gb_HelpLinkTarget_add_helpfile target helpfile
define gb_HelpLinkTarget_add_helpfile
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_FILES += $(2)
$(call gb_HelpLinkTarget_get_target,$(1)) : $(2)
endef
# Add an arbitrary file to the help pack.
#
# The file will be added to the root directory of the pack.
#
# gb_HelpLinkTarget_add_file target file
define gb_HelpLinkTarget_add_file
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_ADD_FILES += $(2)
$(call gb_HelpLinkTarget_get_target,$(1)) : $(2)
endef
# Use help files from another help module for references.
#
# gb_HelpLinkTarget_use_module target help
define gb_HelpLinkTarget_use_module
$(call gb_HelpLinkTarget_get_preparation_target,$(1)) : $(call gb_HelpTarget_get_translation_target,$(2))
endef
# Link with help files from another help module.
#
# gb_HelpLinkTarget_use_linked_module target help
define gb_HelpLinkTarget_use_linked_module
$(call gb_HelpLinkTarget_use_module,$(1),$(2))
$(call gb_HelpLinkTarget_get_target,$(1)) : HELP_LINKED_MODULES += $(2)
endef
# class HelpIndexTarget
# Creates a full-text search index for a help module.
gb_HelpIndexTarget_DEPS := $(call gb_Executable_get_runtime_dependencies,HelpIndexer)
gb_HelpIndexTarget_COMMAND := $(call gb_Executable_get_command,HelpIndexer)
define gb_HelpIndexTarget__command
$(call gb_Output_announce,$*,$(false),HIX,3)
$(call gb_Helper_abbreviate_dirs,\
(\
$(gb_HelpIndexTarget_COMMAND) \
-dir $(HELP_WORKDIR) \
-lang $(HELP_LANG) \
-mod $(HELP_MODULE) \
&& touch $@ \
) \
|| ( rm -rf $(HELP_MODULE).* ; false )
)
endef
$(dir $(call gb_HelpIndexTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_HelpIndexTarget_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_HelpIndexTarget_get_target,%) : $(gb_HelpIndexTarget_DEPS)
$(call gb_HelpIndexTarget__command,$@,$*)
.PHONY : $(call gb_HelpIndexTarget_get_clean_target,%)
$(call gb_HelpIndexTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),HIX,3)
rm -f $(call gb_HelpIndexTarget_get_target,$*)
# Create a help indexing target.
#
# gb_HelpIndexTarget_HelpIndexTarget target module lang workdir
define gb_HelpIndexTarget_HelpIndexTarget
$(call gb_HelpIndexTarget_get_target,$(1)) : HELP_LANG := $(3)
$(call gb_HelpIndexTarget_get_target,$(1)) : HELP_MODULE := $(2)
$(call gb_HelpIndexTarget_get_target,$(1)) : HELP_WORKDIR := $(4)
$(call gb_HelpIndexTarget_get_target,$(1)) :| $(dir $(call gb_HelpIndexTarget_get_target,$(1))).dir
endef
# class HelpJarTarget
# Packs help files processed by HelpLinker into a jar in the workdir.
gb_HelpJarTarget_COMMAND := zip
define gb_HelpJarTarget__get_command
$(call gb_Output_announce,$*,$(true),HEJ,3)
cd $(HELP_WORKDIR) && \
$(gb_HelpJarTarget_COMMAND) -q -0 -rX $(HELP_MODULE).jar text/$(HELP_MODULE) && \
touch $@
endef
$(dir $(call gb_HelpJarTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_HelpJarTarget_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(call gb_HelpJarTarget_get_target,%) :
$(call gb_HelpJarTarget__get_command,$@,$*)
$(call gb_HelpJarTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),HEJ,3)
rm -f $(call gb_HelpJarTarget_get_target,$*)
# gb_HelpJarTarget_HelpJarTarget target module workdir
define gb_HelpJarTarget_HelpJarTarget
$(call gb_HelpJarTarget_get_target,$(1)) : HELP_MODULE := $(2)
$(call gb_HelpJarTarget_get_target,$(1)) : HELP_WORKDIR := $(3)
$(call gb_HelpJarTarget_get_target,$(1)) :| $(dir $(call gb_HelpJarTarget_get_target,$(1))).dir
endef
# class HelpTarget
# Creates one language version of a help module.
gb_HelpTarget_DEFAULT_LANG := en-US
gb_HelpTarget__get_module = $(patsubst %/$(call gb_HelpTarget__get_lang,$(1)),%,$(1))
gb_HelpTarget__get_lang = $(lastword $(subst /, ,$(1)))
gb_HelpTarget__test_default_lang = $(filter $(gb_HelpTarget_DEFAULT_LANG),$(1))
gb_HelpTarget__is_default_lang = $(call gb_HelpTarget__test_default_lang,$(call gb_HelpTarget__get_lang,$(1)))
define gb_HelpTarget__get_helpdir
$(if $(call gb_HelpTarget__is_default_lang,$(1)) \
,$(SRCDIR)/$(2) \
,$(call gb_HelpTranslateTarget_get_workdir,$(1),$(2)) \
)
endef
define gb_HelpTarget__get_helpfile
$(if $(call gb_HelpTarget__is_default_lang,$(1)) \
,$(SRCDIR)/$(2).xhp \
,$(call gb_HelpTranslateTarget_get_translated_target,$(1),$(2)) \
)
endef
define gb_HelpTarget__get_treefile
$(if $(call gb_HelpTarget__is_default_lang,$(1)) \
,$(SRCDIR)/$(2).tree \
,$(call gb_HelpTreeTarget_get_target,$(1)) \
)
endef
define gb_HelpTarget__make_workdir_rule
$$(call gb_HelpTarget_get_workdir,%)$(2) :
touch $$@
endef
$(dir $(call gb_HelpTarget_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
$(dir $(call gb_HelpTarget_get_target,%))%/.dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
# Translation of the module's .xhp files is done. Also creates the list
# for gb_HelpTarget_get_filelist.
$(call gb_HelpTarget_get_translation_target,%) :
rm -f $@ && mv $(call var2file,$@.tmp,100,$(HELP_FILES)) $@
$(call gb_HelpTarget_get_target,%) :
$(call gb_Output_announce,$*,$(true),HLP,4)
touch $@
# All processing is done and the results can be packed into a zip.
$(call gb_HelpTarget_get_packing_target,%) :
touch $@
# make pattern rules for all file types possibly included in a help zip
$(eval $(foreach ext,.css .db .ht .html .idxl/segments.gen .idxl/segments_1 .jar .key,\
$(call gb_HelpTarget__make_workdir_rule,$(ext)) \
))
.PHONY : $(call gb_HelpTarget_get_clean_target,%)
$(call gb_HelpTarget_get_clean_target,%) :
$(call gb_Output_announce,$*,$(false),HLP,4)
$(call gb_Helper_abbreviate_dirs,\
rm -rf \
$(call gb_HelpTarget_get_packing_target,$*) \
$(call gb_HelpTarget_get_target,$*) \
$(call gb_HelpTarget_get_translation_target,$*) \
$(call gb_HelpTarget_get_workdir,$*) \
)
# Create a help target.
#
# gb_HelpTarget_HelpTarget target module lang
define gb_HelpTarget_HelpTarget
$(call gb_HelpTarget_get_target,$(1)) : HELP_MODULE := $(2)
$(call gb_HelpTarget_get_target,$(1)) : HELP_LANG := $(3)
$(call gb_HelpTarget_get_translation_target,$(1)) : HELP_FILES :=
$(call gb_HelpTarget__HelpTarget_impl,$(1),$(2),$(3),$(call gb_HelpTarget_get_workdir,$(1)))
endef
# gb_HelpTarget__HelpTarget_impl target module lang workdir
define gb_HelpTarget__HelpTarget_impl
$(if $(call gb_HelpTarget__test_default_lang,$(3)),,$(call gb_HelpTarget__HelpTarget_impl_lang,$(1),$(2),$(3),$(4)))
$(call gb_HelpLinkTarget_HelpLinkTarget,$(1),$(2),$(3),$(4))
$(call gb_HelpIndexTarget_HelpIndexTarget,$(1),$(2),$(3),$(4))
$(call gb_HelpJarTarget_HelpJarTarget,$(1),$(2),$(4))
$(call gb_Zip_Zip_internal_nodeliver,$(call gb_HelpTarget_get_zipname,$(1)),$(4))
$(call gb_HelpTarget__add_initial_files,$(1),$(2),$(4))
$(call gb_HelpLinkTarget_get_preparation_target,$(1)) : $(call gb_HelpTarget_get_translation_target,$(1))
$(call gb_HelpLinkTarget_get_target,$(1)) :| $(call gb_HelpTarget_get_workdir,$(1))/.dir
$(call gb_HelpIndexTarget_get_target,$(1)) : $(call gb_HelpLinkTarget_get_target,$(1))
$(call gb_HelpTarget_get_packing_target,$(1)) : $(call gb_HelpIndexTarget_get_target,$(1))
$(call gb_Zip_get_target,$(call gb_HelpTarget_get_zipname,$(1))) : $(call gb_HelpTarget_get_packing_target,$(1))
$(call gb_HelpTarget_get_target,$(1)) : $(call gb_Zip_get_target,$(call gb_HelpTarget_get_zipname,$(1)))
$(call gb_HelpTarget_get_packing_target,$(1)) :| $(dir $(call gb_HelpTarget_get_packing_target,$(1))).dir
$(call gb_HelpTarget_get_target,$(1)) :| $(dir $(call gb_HelpTarget_get_target,$(1))).dir
$(call gb_HelpTarget_get_translation_target,$(1)) :| $(dir $(call gb_HelpTarget_get_translation_target,$(1))).dir
$(call gb_HelpTarget_get_clean_target,$(1)) : $(call gb_HelpLinkTarget_get_clean_target,$(1))
$(call gb_HelpTarget_get_clean_target,$(1)) : $(call gb_HelpIndexTarget_get_clean_target,$(1))
$(call gb_HelpTarget_get_clean_target,$(1)) : $(call gb_Zip_get_clean_target,$(call gb_HelpTarget_get_zipname,$(1)))
endef
# gb_HelpTarget__HelpTarget_impl_lang target module lang workdir
define gb_HelpTarget__HelpTarget_impl_lang
$(call gb_HelpTranslateTarget_HelpTranslateTarget,$(1),$(3))
$(call gb_HelpTreeTarget_HelpTreeTarget,$(1),$(3))
$(call gb_HelpTarget_get_translation_target,$(1)) : $(call gb_HelpTranslateTarget_get_target,$(1))
$(call gb_HelpTreeTarget_get_target,$(1)) : $(call gb_HelpTranslateTarget_get_target,$(1))
$(call gb_HelpTarget_get_clean_target,$(1)) : $(call gb_HelpTranslateTarget_get_clean_target,$(1))
$(call gb_HelpTarget_get_clean_target,$(1)) : $(call gb_HelpTreeTarget_get_clean_target,$(1))
endef
# Add always-present files into the zip.
#
# gb_HelpTarget__add_initial_files target module workdir
define gb_HelpTarget__add_initial_files
$(call gb_HelpTarget__add_file,$(1),$(2).db)
$(call gb_HelpTarget__add_file,$(1),$(2).ht)
$(call gb_HelpTarget__add_file,$(1),$(2).idxl/segments.gen)
$(call gb_HelpTarget__add_file,$(1),$(2).idxl/segments_1)
$(call gb_HelpTarget__add_file,$(1),$(2).key)
endef
# gb_HelpTarget__add_file target file
define gb_HelpTarget__add_file
$(call gb_Zip_add_file,$(call gb_HelpTarget_get_zipname,$(1)),$(2))
$(call gb_HelpTarget_get_workdir,$(1))/$(2) : $(call gb_HelpTarget_get_packing_target,$(1))
endef
# gb_HelpTarget_set_configdir target configdir
define gb_HelpTarget_set_configdir
$(call gb_HelpLinkTarget_set_configdir,$(1),$(SRCDIR)/$(2))
endef
# gb_HelpTarget_set_helpdir target helpdir
define gb_HelpTarget_set_helpdir
$(call gb_HelpLinkTarget_set_sourcedir,$(1),$(call gb_HelpTarget__get_helpdir,$(1),$(2)))
endef
# gb_HelpTarget_set_treefile target treefile textdir
define gb_HelpTarget_set_treefile
$(if $(call gb_HelpTarget__is_default_lang,$(1)),,\
$(call gb_HelpTreeTarget_set_treefile,$(1),$(2)) \
$(call gb_HelpTreeTarget_set_helptextdir,$(1),$(call gb_HelpTarget__get_helpdir,$(1),$(3))) \
)
$(call gb_HelpLinkTarget_set_treefile,$(1),$(call gb_HelpTarget__get_treefile,$(1),$(2)))
endef
# gb_HelpTarget__add_jar target
define gb_HelpTarget__add_jar
$(call gb_HelpTarget__add_file,$(1),$(call gb_HelpTarget__get_module,$(2)).jar)
$(call gb_HelpJarTarget_get_target,$(1)) : $(call gb_HelpLinkTarget_get_target,$(1))
$(call gb_HelpTarget_get_packing_target,$(1)) : $(call gb_HelpJarTarget_get_target,$(1))
$(call gb_HelpTarget_get_clean_target,$(1)) : $(call gb_HelpJarTarget_get_clean_target,$(1))
endef
define gb_HelpTarget__add_helpfile_impl
$(call gb_HelpLinkTarget_add_helpfile,$(1),$(2))
$(call gb_HelpTarget_get_translation_target,$(1)) : HELP_FILES += $(2)
endef
# gb_HelpTarget__add_helpfile target helpfile
define gb_HelpTarget__add_helpfile
$(call gb_HelpTarget__add_helpfile_impl,$(1),$(call gb_HelpTarget__get_helpfile,$(1),$(2)))
endef
# gb_HelpTarget_add_helpfile target helpfile
define gb_HelpTarget_add_helpfile
$(call gb_HelpTranslateTarget_add_file,$(1),$(2))
$(call gb_HelpTarget__add_helpfile,$(1),$(2))
$(call gb_HelpTarget__add_jar,$(1))
endef
# gb_HelpTarget_add_helpfiles target helpfile(s)
define gb_HelpTarget_add_helpfiles
$(call gb_HelpTranslateTarget_add_files,$(1),$(2))
$(foreach helpfile,$(2),$(call gb_HelpTarget__add_helpfile,$(1),$(helpfile)))
$(call gb_HelpTarget__add_jar,$(1))
endef
# gb_HelpTarget_add_file target file
define gb_HelpTarget_add_file
$(call gb_HelpLinkTarget_add_file,$(1),$(SRCDIR)/$(2))
$(call gb_HelpTarget__add_file,$(1),$(notdir $(2)))
endef
# gb_HelpTarget_add_files target file(s)
define gb_HelpTarget_add_files
$(foreach file,$(2),$(call gb_HelpTarget_add_file,$(1),$(file)))
endef
# gb_HelpTarget_use_module target module
define gb_HelpTarget_use_module
$(call gb_HelpLinkTarget_use_module,$(1),$(2))
endef
# gb_HelpTarget_use_modules target module(s)
define gb_HelpTarget_use_modules
$(foreach module,$(2),$(call gb_HelpTarget_use_module,$(1),$(module)))
endef
# gb_HelpTarget_use_linked_module target module
define gb_HelpTarget_use_linked_module
$(call gb_HelpLinkTarget_use_linked_module,$(1),$(2))
endef
# gb_HelpTarget_use_linked_modules target module(s)
define gb_HelpTarget_use_linked_modules
$(foreach module,$(2),$(call gb_HelpTarget_use_linked_module,$(1),$(module)))
endef
# vim: set noet sw=4 ts=4:
solenv/gbuild/TargetLocations.mk
Dosyayı görüntüle @
0909384b
...
...
@@ -36,6 +36,7 @@ gb_Dictionary_get_target = $(OUTDIR)/pck/$(1).oxt
gb_Executable_get_target = $(OUTDIR)/bin/$(1)$(gb_Executable_EXT)
gb_Executable_get_target_for_build = $(OUTDIR_FOR_BUILD)/bin/$(1)$(gb_Executable_EXT_for_build)
gb_Extension_get_target = $(OUTDIR)/bin/$(1).oxt
gb_HelpTarget_get_outdir_target = $(OUTDIR)/pck/$(1).zip
gb_Pagein_get_outdir_target = $(OUTDIR)/bin/pagein-$(1)
gb_PackagePart_get_destinations = \
$(OUTDIR)/bin \
...
...
@@ -85,6 +86,7 @@ endef
# workdir target patterns
gb_AutoInstallLibs_get_target = $(WORKDIR)/AutoInstallLibs/$(1)
gb_AllLangHelp_get_target = $(WORKDIR)/AllLangHelp/$(1)
gb_AllLangResTarget_get_target = $(WORKDIR)/AllLangRes/$(1)
gb_AllLangZip_get_target = $(WORKDIR)/AllLangZip/$(1)
gb_AsmObject_get_target = $(WORKDIR)/AsmObject/$(1).o
...
...
@@ -119,6 +121,22 @@ gb_ExternalProject_get_statedir = $(WORKDIR)/ExternalProject/$(1)
gb_ExternalProject_get_preparation_target = $(WORKDIR)/ExternalProject/$(1).prepare
gb_ExternalProject_get_state_target = $(WORKDIR)/ExternalProject/$(1)/$(2)
gb_ExternalProject_get_target = $(WORKDIR)/ExternalProject/$(1).done
gb_HelpIndexTarget_get_target = $(WORKDIR)/HelpIndexTarget/$(1).done
gb_HelpJarTarget_get_target = $(WORKDIR)/HelpJarTarget/$(1).done
gb_HelpLinkTarget_get_preparation_target = $(WORKDIR)/HelpLinkTarget/$(1).prepare
gb_HelpLinkTarget_get_target = $(WORKDIR)/HelpLinkTarget/$(1).done
gb_HelpTarget_get_filelist = $(WORKDIR)/HelpTarget/$(1).filelist
gb_HelpTarget_get_packing_target = $(WORKDIR)/HelpTarget/$(1).packing
gb_HelpTarget_get_target = $(WORKDIR)/HelpTarget/$(1).done
gb_HelpTarget_get_zipfile = $(call gb_Zip_get_target,$(call gb_HelpTarget_get_zipname,$(1)))
gb_HelpTarget_get_zipname = HelpTarget/$(1)
gb_HelpTarget_get_translation_target = $(call gb_HelpTarget_get_filelist,$(1))
gb_HelpTarget_get_workdir = $(WORKDIR)/HelpTarget/$(1)
gb_HelpTranslatePartTarget_get_target = $(WORKDIR)/HelpTranslatePartTarget/$(1)/done
gb_HelpTranslatePartTarget_get_translated_target = $(WORKDIR)/HelpTranslatePartTarget/$(1)/$(2).xhp
gb_HelpTranslatePartTarget_get_workdir = $(WORKDIR)/HelpTranslatePartTarget/$(1)
gb_HelpTranslateTarget_get_target = $(WORKDIR)/HelpTranslateTarget/$(1).done
gb_HelpTreeTarget_get_target = $(WORKDIR)/HelpTreeTarget/$(1).tree
gb_InstallModule_get_filelist = $(call gb_InstallModuleTarget_get_filelist,$(1))
gb_InstallModule_get_target = $(WORKDIR)/InstallModule/$(1).done
gb_InstallModuleTarget_get_external_target = $(WORKDIR)/InstallModuleTarget/$(1).external
...
...
@@ -240,6 +258,7 @@ endef
$(eval $(call gb_Helper_make_clean_targets,\
AutoInstallLibs \
AllLangHelp \
AllLangResTarget \
AllLangZip \
CliAssembly \
...
...
@@ -251,6 +270,13 @@ $(eval $(call gb_Helper_make_clean_targets,\
ComponentTarget \
ExternalPackage \
ExtensionTarget \
HelpTarget \
HelpIndexTarget \
HelpJarTarget \
HelpLinkTarget \
HelpTranslatePartTarget \
HelpTranslateTarget \
HelpTreeTarget \
InstallModule \
InstallModuleTarget \
InstallScriptTarget \
...
...
solenv/gbuild/gbuild.mk
Dosyayı görüntüle @
0909384b
...
...
@@ -336,6 +336,8 @@ include $(foreach class, \
Zip \
AllLangZip \
Configuration \
HelpTarget \
AllLangHelp \
ExtensionTarget \
Dictionary \
Extension \
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment