Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Hi,

I'd really like to have this done.
We need few libraries with version number.. like libuno_sal.so.3
Probably this is not problem for Windows?
Until now, it's not possible to do so in gbuild.

I have just come up with patch below.
(But probably we want to do this in completely different way)
I'd appreciate any help or direction which way to go.

Use with $(eval $(call gb_Library_Library,salhelper,3))
The first part with Clean probably does nothing.

But then.. there could be another problems with versions. I'll write
another mail about this.

diff --git a/solenv/gbuild/Library.mk b/solenv/gbuild/Library.mk
index db6d961..31319d2 100644
--- a/solenv/gbuild/Library.mk
+++ b/solenv/gbuild/Library.mk
@@ -46,13 +46,15 @@
 $(WORKDIR)/Clean/OutDir/lib/%$(gb_Library_PLAINEXT) :
        $(call gb_Helper_abbreviate_dirs,\
                rm -f $(OUTDIR)/lib/$*$(gb_Library_PLAINEXT) \
-                       $(AUXTARGETS))
+                       $(if $(VERSION),rm -f
$(OUTDIR)/lib/$*$(gb_Library_PLAINEXT).$(VERSION)) \
+                               $(AUXTARGETS))

 # EVIL: gb_StaticLibrary and gb_Library need the same deliver rule
because they are indistinguishable on windows
 $(gb_Library_OUTDIRLOCATION)/%$(gb_Library_PLAINEXT) :
        $(call gb_Helper_abbreviate_dirs,\
                $(call gb_Deliver_deliver,$<,$@) \
-                       $(foreach target,$(AUXTARGETS), && $(call
gb_Deliver_deliver,$(dir $<)/$(notdir $(target)),$(target))))
+                       $(if $(VERSION),&& mv $@ $@.$(VERSION) && cd
$(dir $@) && ln -sf $(notdir $@).$(VERSION) $(notdir $@)) \
+                               $(foreach target,$(AUXTARGETS), &&
$(call gb_Deliver_deliver,$(dir $<)/$(notdir $(target)),$(target))))

 define gb_Library_Library
 ifeq (,$$(findstring $(1),$$(gb_Library_KNOWNLIBS)))
@@ -60,6 +62,7 @@ $$(eval $$(call gb_Output_info,Currently known
libraries are: $(sort $(gb_Librar
 $$(eval $$(call gb_Output_error,Library $(1) must be registered in
Repository.mk))
 endif
 $(call gb_Library_get_target,$(1)) : AUXTARGETS :=
+$(call gb_Library_get_target,$(1)) : VERSION := $(2)
 $(call gb_Library__Library_impl,$(1),$(call
gb_Library_get_linktargetname,$(1)))
 $(call gb_Library_add_default_nativeres,$(1),default)

Thanks,

Matúš

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.