Library_merged.mk | 2 +- configure.ac | 9 ++------- idl/inc/database.hxx | 2 ++ idl/source/objects/types.cxx | 25 +++++++++++++++++++++++-- idl/source/prj/database.cxx | 1 + 5 files changed, 29 insertions(+), 10 deletions(-)
New commits: commit fc27a685d466dc380a8b68cd48f47db632ed3693 Author: Matúš Kukan <matus.ku...@collabora.com> Date: Thu Mar 13 11:03:04 2014 +0100 Avoid duplicate symbols in libmerged for Windows too. Export these symbols from sfx library. For cases when we link together more libraries, there are more symbols, so I've kept __attribute__((__weak__)) hack there. Change-Id: I8b7f6fc9bea479dca5062344c04b74c1f3eb36b2 diff --git a/configure.ac b/configure.ac index 92ca7dd..7c5d277 100644 --- a/configure.ac +++ b/configure.ac @@ -12424,11 +12424,11 @@ if test -n "$enable_mergelibs" -a "$enable_mergelibs" != "no"; then if test "$enable_mergelibs" = "all"; then MERGELIBS="ALL" URELIBS="TRUE" + AC_DEFINE(STATIC_LINKING) else MERGELIBS="CORE" fi AC_MSG_RESULT([yes]) - AC_DEFINE(STATIC_LINKING) else AC_MSG_RESULT([no]) fi diff --git a/idl/inc/database.hxx b/idl/inc/database.hxx index 15e87f2..f9abfd2 100644 --- a/idl/inc/database.hxx +++ b/idl/inc/database.hxx @@ -81,6 +81,8 @@ protected: aIFaceName = OString(); } public: + OUString sSlotMapFile; + explicit SvIdlDataBase( const SvCommand& rCmd ); ~SvIdlDataBase(); static sal_Bool IsBinaryFormat( SvStream & rInStm ); diff --git a/idl/source/objects/types.cxx b/idl/source/objects/types.cxx index 1797fa2..6dc8216 100644 --- a/idl/source/objects/types.cxx +++ b/idl/source/objects/types.cxx @@ -1398,7 +1398,7 @@ sal_uLong SvMetaType::MakeSfx( OStringBuffer& rAttrArray ) } void SvMetaType::WriteSfxItem( - const OString& rItemName, SvIdlDataBase &, SvStream & rOutStm ) + const OString& rItemName, SvIdlDataBase& rBase, SvStream& rOutStm ) { WriteStars( rOutStm ); OStringBuffer aVarName(" a"); @@ -1411,14 +1411,35 @@ void SvMetaType::WriteSfxItem( OString::number(nAttrCount)); aTypeName.append(aAttrCount); - rOutStm.WriteCharPtr( "extern " ).WriteCharPtr( aTypeName.getStr() ) + bool bExport = false, bReturn = false; + // these are exported from sfx library + if (rItemName == "SfxBoolItem" || + rItemName == "SfxStringItem" || + rItemName == "SfxUInt16Item" || + rItemName == "SfxUInt32Item" || + rItemName == "SfxVoidItem") + { + if (rBase.sSlotMapFile.endsWith("sfxslots.hxx")) + bExport = true; + else + bReturn = true; + } + + rOutStm.WriteCharPtr( "extern " ); + if (bExport) + rOutStm.WriteCharPtr( "SFX2_DLLPUBLIC " ); + rOutStm.WriteCharPtr( aTypeName.getStr() ) .WriteCharPtr( aVarName.getStr() ).WriteChar( ';' ) << endl; + if (bReturn) + return; // write the implementation part rOutStm.WriteCharPtr( "#ifdef SFX_TYPEMAP" ) << endl; rOutStm.WriteCharPtr( "#if !defined(_WIN32) && ((defined(DISABLE_DYNLOADING) && (defined(ANDROID) || defined(IOS))) || STATIC_LINKING)" ) << endl; rOutStm.WriteCharPtr( "__attribute__((__weak__))" ) << endl; rOutStm.WriteCharPtr( "#endif" ) << endl; + if (bExport) + rOutStm.WriteCharPtr( "SFX2_DLLPUBLIC " ); rOutStm.WriteCharPtr( aTypeName.getStr() ).WriteCharPtr( aVarName.getStr() ) .WriteCharPtr( " = " ) << endl; rOutStm.WriteChar( '{' ) << endl; diff --git a/idl/source/prj/database.cxx b/idl/source/prj/database.cxx index 3ac165d..04f351c 100644 --- a/idl/source/prj/database.cxx +++ b/idl/source/prj/database.cxx @@ -34,6 +34,7 @@ SvIdlDataBase::SvIdlDataBase( const SvCommand& rCmd ) , aPersStream( *IDLAPP->pClassMgr, NULL ) , pIdTable( NULL ) { + sSlotMapFile = rCmd.aSlotMapFile; } SvIdlDataBase::~SvIdlDataBase() commit bee9ea584cb5c1e6bee802c45214010d072846db Author: Matúš Kukan <matus.ku...@collabora.com> Date: Fri Mar 14 09:23:47 2014 +0100 add shlwapi Change-Id: Icb7b7d9954a6954b2a34358a49988a10c3ab384a diff --git a/Library_merged.mk b/Library_merged.mk index cd45fd3..61075ab 100644 --- a/Library_merged.mk +++ b/Library_merged.mk @@ -106,6 +106,7 @@ $(eval $(call gb_Library_use_system_win32_libs,merged,\ ole32 \ oleaut32 \ shell32 \ + shlwapi \ user32 \ usp10 \ uuid \ commit 0737d4f6f9d5db5197ce4f35214a785250b8e848 Author: Matúš Kukan <matus.ku...@collabora.com> Date: Thu Mar 13 10:55:54 2014 +0100 Remove --disable-lpsolve configure option. Use --with-lpsolver="coinmp" or --with-lpsolver="no". Change-Id: Ibc806b85fb6c03e1cf6f23d860246a6fb2f273c1 diff --git a/configure.ac b/configure.ac index 6c453e2..92ca7dd 100644 --- a/configure.ac +++ b/configure.ac @@ -781,11 +781,6 @@ AC_ARG_ENABLE(ext-wiki-publisher, [Enable the Wiki Publisher extension.]) ) -AC_ARG_ENABLE(lpsolve, - AS_HELP_STRING([--disable-lpsolve], - [Disable compilation of the lp solve solver ]) -) - AC_ARG_ENABLE(pdfimport, AS_HELP_STRING([--disable-pdfimport], [Disable building the PDF import feature.]) @@ -9413,7 +9408,7 @@ AC_SUBST(MYTHES_LIBS) dnl =================================================================== dnl How should we build the linear programming solver ? dnl =================================================================== -if test "$enable_lpsolve" = "no" -o "$enable_mpl_subset" = "yes"; then +if test "$enable_mpl_subset" = "yes"; then WITH_LPSOLVER="coinmp" fi if test $_os = iOS -o $_os = Android; then commit 2b7a148379b41c7bb8a5fb336ea558e418c93eac Author: Matúš Kukan <matus.ku...@collabora.com> Date: Thu Mar 13 10:52:16 2014 +0100 lpsolve is not used here Change-Id: I8264104e58e0c6ddb3bea2983754b43908be28be diff --git a/Library_merged.mk b/Library_merged.mk index f2df397..cd45fd3 100644 --- a/Library_merged.mk +++ b/Library_merged.mk @@ -52,7 +52,6 @@ $(eval $(call gb_Library_use_externals,merged,\ liblangtag \ libxml2 \ libxslt \ - $(if $(filter-out IOS,$(OS)),lpsolve) \ mythes \ nss3 \ telepathy \
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits