diff options
author | David Ostrovsky <david@ostrovsky.org> | 2012-10-12 12:28:11 -0700 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2012-10-25 17:37:34 +0200 |
commit | 2ffde7b17192f76f815ab451f08164519f69887e (patch) | |
tree | 9ea5145c64e94170e1baf7b1a1e4adb92e772cf7 /solenv/gbuild/LinkTarget.mk | |
parent | 7f96cec269edabaf26f5e518d632cbfde95320ca (diff) |
gbuildification of expat
Two different xmlparse libraries are created: ascii_expat_xmlparse and
expat_xmlparse. One without -DXML_UNICODE and one with. Source file are
duplicated and renamed with gb_UnpackedTarball_set_post_action function
to be able to add artifacts twice to gbuild machinery.
On windows 64 bit additional two librares are created: expat_xmlparse_x64 and
expat_xmltok_x64. That is due the problem with shell/shlxthandler (comment):
------------------------------------------------------
use UNICODE only because shell/shlxthandler
doesn't link against ascii_expat_xmlparse
------------------------------------------------------
Include files are delivered to $(OUTDIR)/inc/external/expat
now and not to $(OUTDIR)/inc/external any more.
set_include call is added in RepositoryExternal.mk.
To define dependency between StaticLibrary and ExternalProject
new function was introduced: gb_StaticLibrary_use_external_project.
Change-Id: I3b3aa40f39ef82c70f6f28790b582c83e48bdf76
Diffstat (limited to 'solenv/gbuild/LinkTarget.mk')
-rw-r--r-- | solenv/gbuild/LinkTarget.mk | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk index 57b3a70d1e25..ba91d4ae4ff6 100644 --- a/solenv/gbuild/LinkTarget.mk +++ b/solenv/gbuild/LinkTarget.mk @@ -1047,6 +1047,12 @@ define gb_LinkTarget_add_generated_cobjects $(foreach obj,$(2),$(call gb_LinkTarget_add_generated_c_object,$(1),$(obj),$(3),$(4))) endef +#only useful for building x64 libraries on windows +define gb_LinkTarget_add_x64_generated_cobjects +$(foreach obj,$(2),$(call gb_LinkTarget_add_generated_c_object,$(1),$(obj),$(3),$(4))) +$(foreach obj,$(2),$(eval $(call gb_GenCObject_get_target,$(obj)) : COBJECT_X64 := YES)) +endef + define gb_LinkTarget_add_generated_cxxobjects $(foreach obj,$(2),$(call gb_LinkTarget_add_generated_cxx_object,$(1),$(obj),$(3))) endef @@ -1155,6 +1161,14 @@ $(call gb_LinkTarget_get_external_headers_target,$(1)) :| $(call gb_UnpackedTarb endef +# Use artifacts from ExternalProject (i. e. configure) of an external project +# example in expat: StaticLibrary depends on ExternalProject outcome +define gb_LinkTarget_use_external_project +$(call gb_LinkTarget_get_external_headers_target,$(1)) :| $(call gb_ExternalProject_get_target,$(2)) + +endef + + # this forwards to functions that must be defined in RepositoryExternal.mk. # $(eval $(call gb_LinkTarget_use_external,library,external)) define gb_LinkTarget_use_external |