From 2ffde7b17192f76f815ab451f08164519f69887e Mon Sep 17 00:00:00 2001 From: David Ostrovsky Date: Fri, 12 Oct 2012 12:28:11 -0700 Subject: 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 --- RepositoryExternal.mk | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'RepositoryExternal.mk') diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index 11440feabc7d..5847c4672ee1 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -237,11 +237,18 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ ascii_expat_xmlparse \ expat_xmlparse \ expat_xmltok \ + expat_xmlparse_x64 \ + expat_xmltok_x64 \ )) define gb_LinkTarget__use_expat $(if $(2),,$(error gb_LinkTarget__use_expat needs additional parameter)) +$(call gb_LinkTarget_set_include,$(1),\ + -I$(OUTDIR)/inc/external/expat \ + $$(INCLUDE) \ +) + $(if $(filter-out ascii_expat_xmlparse,$(2)),\ $(call gb_LinkTarget_add_defs,$(1),\ -DXML_UNICODE \ @@ -249,7 +256,7 @@ $(if $(filter-out ascii_expat_xmlparse,$(2)),\ $(call gb_LinkTarget_use_static_libraries,$(1),\ $(2) \ - expat_xmltok \ + $(3)\ ) endef @@ -258,12 +265,17 @@ endif # SYSTEM_EXPAT # now define 2 wrappers that select which internal static library to use... define gb_LinkTarget__use_expat_utf8 -$(call gb_LinkTarget__use_expat,$(1),ascii_expat_xmlparse) +$(call gb_LinkTarget__use_expat,$(1),ascii_expat_xmlparse,expat_xmltok) endef define gb_LinkTarget__use_expat_utf16 -$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse) +$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse,expat_xmltok) + +endef + +define gb_LinkTarget__use_expat_utf16_x64 +$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse_x64,expat_xmltok_x64) endef -- cgit