1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
3 # This file is part of the LibreOffice project.
5 # This Source Code Form is subject to the terms of the Mozilla Public
6 # License, v. 2.0. If a copy of the MPL was not distributed with this
7 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 define gb_Rdb__command
11 $(call gb_Helper_abbreviate_dirs
,\
12 mkdir
-p
$(dir $@
) && \
15 $(foreach component
,$(COMPONENTS
),echo
"<filename>$(call gb_ComponentTarget_get_outdir_target,$(component))</filename>" &&) \
18 $(call gb_ExternalExecutable_get_command
,xsltproc
) --nonet
-o
$(1) $(SOLARENV
)/bin
/packcomponents.xslt
$(1).input
&& \
22 $(call gb_Rdb_get_target
,%) :|
$(call gb_ExternalExecutable_get_dependencies
,xsltproc
)
23 $(call gb_Output_announce
,$*,$(true
),RDB
,1)
24 $(call gb_Rdb__command
,$@
,$*,$?
,$^
)
26 .PHONY
: $(call gb_Rdb_get_clean_target
,%)
27 $(call gb_Rdb_get_clean_target
,%) :
28 $(call gb_Output_announce
,$*,$(false
),RDB
,1)
29 $(call gb_Helper_abbreviate_dirs
,\
30 rm -f
$(call gb_Rdb_get_outdir_target
,$*) $(call gb_Rdb_get_target
,$*))
33 $(call gb_Rdb_get_target
,$(1)) : COMPONENTS
:=
34 $(call gb_Rdb_get_outdir_target
,$(1)) : $(call gb_Rdb_get_target
,$(1)) \
35 |
$(dir $(call gb_Rdb_get_outdir_target
,$(1))).
dir
36 $(call gb_Deliver_add_deliverable
,$(call gb_Rdb_get_outdir_target
,$(1)),$(call gb_Rdb_get_target
,$(1)),$(1))
38 $$(eval
$$(call gb_Module_register_target
,$(call gb_Rdb_get_outdir_target
,$(1)),$(call gb_Rdb_get_clean_target
,$(1))))
39 $(call gb_Helper_make_userfriendly_targets
,$(1),Rdb
,$(call gb_Rdb_get_outdir_target
,$(1)))
42 define gb_Rdb_add_component
43 $(call gb_Rdb_get_target
,$(1)) : $(call gb_ComponentTarget_get_outdir_target
,$(2))
44 $(call gb_Rdb_get_target
,$(1)) : COMPONENTS
+= $(2)
48 define gb_Rdb_add_components
49 $(foreach component
,$(2),$(call gb_Rdb_add_component
,$(1),$(component
)))
53 # vim: set noet sw=4 ts=4: