summaryrefslogtreecommitdiff
path: root/solenv/gbuild/Library.mk
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@gmail.com>2013-06-18 23:34:59 +0200
committerMichael Stahl <mstahl@redhat.com>2013-09-09 22:09:15 +0200
commit64405aa69f3c4e305f11f2d3ddbddd2bbedbb264 (patch)
treef33b5146aa933e8f4f9de3befede54d65c21fd6d /solenv/gbuild/Library.mk
parentd33b6ccda7e52e7111c0299db9a6e60400abb13b (diff)
gbuild: avoid packages when copying files into instdir
There should be only two ways how to add file into instdir: - gb_Helper_install used in gbuild - gb_Package_set_outdir used also elsewhere, preferably with scp2 containing its .filelist. Change-Id: I75ec0ba63f32acf4b56b17dc972f4488edf6a777
Diffstat (limited to 'solenv/gbuild/Library.mk')
-rw-r--r--solenv/gbuild/Library.mk35
1 files changed, 13 insertions, 22 deletions
diff --git a/solenv/gbuild/Library.mk b/solenv/gbuild/Library.mk
index 95d9d2eb0675..fb0ff64296b9 100644
--- a/solenv/gbuild/Library.mk
+++ b/solenv/gbuild/Library.mk
@@ -30,7 +30,7 @@
# gb_Library_Library_platform
gb_Library_LAYER_DIRS := \
- OOO:program \
+ OOO:$(gb_PROGRAMDIRNAME) \
URELIB:ure/$(notdir $(gb_Helper_OUTDIRLIBDIR))
# doesn't do anything, just used for hooking up component target
@@ -43,10 +43,9 @@ $(WORKDIR)/Clean/OutDir/lib/%$(gb_Library_PLAINEXT) :
rm -f $(OUTDIR)/lib/$*$(gb_Library_PLAINEXT) \
$(AUXTARGETS))
-gb_Library_get_packagename = Library/$(1)
-
gb_Library__get_dir_for_layer = $(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_LAYER_DIRS)))
gb_Library_get_instdir = $(call gb_Library__get_dir_for_layer,$(call gb_Library_get_layer,$(1)))
+gb_Library_get_install_target = $(INSTDIR)/$(call gb_Library_get_instdir,$(1))/$(call gb_Library_get_runtime_filename,$(1))
define gb_Library_Library
$(call gb_Postprocess_register_target,AllLibraries,Library,$(1))
@@ -88,8 +87,10 @@ $(call gb_Library_get_clean_target,$(1)) : AUXTARGETS :=
$(call gb_Library_Library_platform,$(1),$(2),$(gb_Library_DLLDIR)/$(call gb_Library_get_dllname,$(1)))
ifneq ($(gb_RUNNABLE_INSTDIR),)
-$(if $(filter $(call gb_Library_get_layer,$(1)):%,$(gb_Library_LAYER_DIRS)),\
- $(call gb_Library__Library_package,$(1),$(call gb_Library_get_packagename,$(1)),$(call gb_Library_get_runtime_filename,$(1))) \
+$(if $(call gb_Library_get_instdir,$(1)),\
+$(call gb_Helper_install,$(call gb_Library__get_final_target,$(1)), \
+ $(call gb_Library_get_install_target,$(1)), \
+ $(call gb_LinkTarget_get_target,$(2))) \
)
endif
@@ -100,18 +101,6 @@ $(call gb_Deliver_add_deliverable,$(call gb_Library_get_target,$(1)),$(call gb_L
endef
-# gb_Library__Library_package library package filename
-define gb_Library__Library_package
-$(call gb_Package_Package_internal,$(2),$(gb_Helper_OUTDIRLIBDIR))
-$(call gb_Package_set_outdir,$(2),$(INSTDIR))
-$(call gb_Package_add_file,$(2),$(call gb_Library_get_instdir,$(1))/$(3),$(3))
-
-$(call gb_Library__get_final_target,$(1)) : $(call gb_Package_get_target,$(2))
-$(call gb_Package_get_target,$(2)) : $(call gb_Library_get_target,$(1))
-$(call gb_Library_get_clean_target,$(1)) : $(call gb_Package_get_clean_target,$(2))
-
-endef
-
# Custom definition that does not simply forward to LinkTarget,
# because there are cases where the auxtargets are not delivered to solver...
# The auxtarget is delivered via the rule in Package.mk.
@@ -132,17 +121,19 @@ endef
# gb_Library__add_soversion_link library package linkname
define gb_Library__add_soversion_link
-$(call gb_Library_add_auxtarget,$(1),$(3))
-ifneq ($(gb_RUNNABLE_INSTDIR),)
-$(call gb_Package_add_file,$(2),$(call gb_Library_get_instdir,$(1))/$(notdir $(3)),$(notdir $(3)))
-endif
+$(call gb_Library_add_auxtarget,$(1),$(2))
endef
define gb_Library__set_soversion_script
$(call gb_LinkTarget_set_soversion_script,$(call gb_Library_get_linktargetname,$(1)),$(2),$(3))
$(call gb_Library_get_target,$(1)) : SOVERSION := $(2)
-$(call gb_Library__add_soversion_link,$(1),$(call gb_Library_get_packagename,$(1)),$(call gb_Library_get_target,$(1)).$(2))
+$(call gb_Library__add_soversion_link,$(1),$(call gb_Library_get_target,$(1)).$(2))
+ifneq ($(gb_RUNNABLE_INSTDIR),)
+$(call gb_Helper_install,$(call gb_Library__get_final_target,$(1)), \
+ $(call gb_Library_get_install_target,$(1)).$(2), \
+ $(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,$(1))).$(2))
+endif
endef