summaryrefslogtreecommitdiffstats
path: root/solenv
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2012-03-18 19:42:10 +0100
committerDavid Tardon <dtardon@redhat.com>2012-03-18 19:42:10 +0100
commite5b618969990c00c3fca4b06dafa7cd065444148 (patch)
tree9c00e5b491eb75b24448720bf86c30b2c5217e40 /solenv
parentfix number of arguments (diff)
downloadcore-e5b618969990c00c3fca4b06dafa7cd065444148.tar.gz
core-e5b618969990c00c3fca4b06dafa7cd065444148.zip
allow to express transitive dep for rdbs
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/InternalUnoApi.mk20
1 files changed, 20 insertions, 0 deletions
diff --git a/solenv/gbuild/InternalUnoApi.mk b/solenv/gbuild/InternalUnoApi.mk
index f0c8fc37d7fb..efffa9ff87a3 100644
--- a/solenv/gbuild/InternalUnoApi.mk
+++ b/solenv/gbuild/InternalUnoApi.mk
@@ -70,6 +70,26 @@ $(foreach rdb,$(2),$(call gb_InternalUnoApi__add_api,$(1),$(rdb)))
endef
+# Express that the rdb $(2) depends on rdb $(3).
+#
+# This information is already available in the UnoApiTarget definition
+# for $(2), but this may not be loaded if we are building from a
+# different module. Thus, this is a necessary hack to make generation of
+# headers on demand work.
+#
+# I suppose it would be possible to store the list of required rdbs for
+# a rdb to a file and then load it when headers' generation is requested,
+# but it feels like overkill...
+define gb_InternalUnoApi_add_api_dependency
+$(call gb_UnoApiHeadersTarget_add_rdbfile,$(2),$(3))
+
+endef
+
+define gb_InternalUnoApi_add_api_dependencies
+$(foreach dep,$(3),$(call gb_InternalUnoApi_add_api_dependency,$(1),$(2),$(dep)))
+
+endef
+
define gb_InternalUnoApi_set_xmlfile
$(call gb_UnoApiTarget_set_xmlfile,$(1),$(2))