Get internal liborcus to build.

Change-Id: Ie08f8b608c5b71e5375793e6cf9054ea75d7732d
This commit is contained in:
Kohei Yoshida
2012-08-30 23:26:59 -04:00
parent a663931200
commit 31f589b03a
11 changed files with 124 additions and 33 deletions

View File

@@ -210,6 +210,7 @@ libexttextcat\
libgsf\
liblangtag\
libmspub\
liborcus\
libpng\
librsvg\
libvisio\

View File

@@ -1856,31 +1856,28 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
endif # SYSTEM_PYTHON
ifeq ($(SYSTEM_ORCUS),YES)
ifeq ($(SYSTEM_LIBORCUS),YES)
define gb_LinkTarget__use_orcus
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(ORCUS_CFLAGS) \
$(LIBORCUS_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(ORCUS_LIBS))
$(call gb_LinkTarget_add_libs,$(1),$(LIBORCUS_LIBS))
endef
else # !SYSTEM_ORCUS
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
orcuslib \
))
else # !SYSTEM_LIBORCUS
define gb_LinkTarget__use_orcus
$(call gb_LinkTarget_use_static_libraries,$(1),\
orcuslib \
$(call gb_LinkTarget_add_libs,$(1),\
-lorcus-0.2 \
)
endef
endif # SYSTEM_ORCUS
endif # SYSTEM_LIBORCUS
# MacOSX-only frameworks ############################################
# (in alphabetical order)

View File

@@ -8599,18 +8599,18 @@ dnl ===================================================================
AC_MSG_CHECKING([which orcus library to use])
if test "$with_system_orcus" = "yes"; then
AC_MSG_RESULT([external])
SYSTEM_ORCUS=YES
ORCUS_CFLAGS="`$PKG_CONFIG --cflags liborcus-0.2`"
ORCUS_LIBS="`$PKG_CONFIG --libs liborcus-0.2`"
SYSTEM_LIBORCUS=YES
LIBORCUS_CFLAGS="`$PKG_CONFIG --cflags liborcus-0.2`"
LIBORCUS_LIBS="`$PKG_CONFIG --libs liborcus-0.2`"
PKG_CHECK_MODULES(ORCUS, orcus >= 0.1.0)
else
AC_MSG_RESULT([internal])
BUILD_TYPE="$BUILD_TYPE ORCUS"
SYSTEM_ORCUS=NO
BUILD_TYPE="$BUILD_TYPE LIBORCUS"
SYSTEM_LIBORCUS=NO
fi
AC_SUBST(SYSTEM_ORCUS)
AC_SUBST(ORCUS_CFLAGS)
AC_SUBST(ORCUS_LIBS)
AC_SUBST(SYSTEM_LIBORCUS)
AC_SUBST(LIBORCUS_CFLAGS)
AC_SUBST(LIBORCUS_LIBS)
dnl ===================================================================
dnl Check for system hunspell

54
liborcus/makefile.mk Normal file
View File

@@ -0,0 +1,54 @@
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This file incorporates work covered by the following license notice:
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to you under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
PRJ=.
PRJNAME=orcus
TARGET=orcus
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
# --- Files --------------------------------------------------------
.IF "$(SYSTEM_LIBORCUS)" == "YES"
@all:
@echo "Using system liborcus..."
.ENDIF
TARFILE_NAME=liborcus_0.1.0
TARFILE_MD5=17cfc0065e7d250af3e5754cee97e652
PATCH_FILES=
CONFIGURE_DIR=
CONFIGURE_ACTION=./autogen.sh \
--with-mdds-include-path=$(OUTDIR)/inc \
--disable-libzip \
--disable-spreadsheet-model
BUILD_ACTION=make
BUILD_DIR=
# --- Targets ------------------------------------------------------
.INCLUDE : set_ext.mk
.INCLUDE : target.mk
.INCLUDE : tg_ext.mk

3
liborcus/prj/build.lst Normal file
View File

@@ -0,0 +1,3 @@
orcus liborcus : BOOST:boost MDDS:mdds NULL
orcus liborcus usr1 - all orcus_mkout NULL
orcus liborcus nmake - all orcus_liborcus NULL

10
liborcus/prj/d.lst Normal file
View File

@@ -0,0 +1,10 @@
mkdir: %_DEST%\inc\orcus
mkdir: %_DEST%\inc\orcus\spreadsheet
..\%__SRC%\misc\build\liborcus*\include\orcus\*.hpp %_DEST%\inc\orcus\
..\%__SRC%\misc\build\liborcus*\include\orcus\spreadsheet\*.hpp %_DEST%\inc\orcus\spreadsheet\
..\%__SRC%\misc\build\liborcus*\src\liborcus\.libs\liborcus-0.2.so.0 %_DEST%\lib\
symlink: %_DEST%\lib\liborcus-0.2.so.0 %_DEST%\lib\liborcus-0.2.so
..\%__SRC%\slb\*.lib %_DEST%\lib\*.lib

0
liborcus/prj/dmake Normal file
View File

View File

@@ -1,2 +1,2 @@
sc sc : basic filter TRANSLATIONS:translations vbahelper oovbaapi svx uui stoc BOOST:boost formula mdds oox LIBXSLT:libxslt unoxml ure test xmloff desktop ucb package configmgr officecfg scripting chart2 eventattacher forms scaddins xmlsecurity tubes NULL
sc sc : basic filter TRANSLATIONS:translations vbahelper oovbaapi svx uui stoc BOOST:boost formula MDDS:mdds oox LIBXSLT:libxslt unoxml ure test xmloff desktop ucb package configmgr officecfg scripting chart2 eventattacher forms scaddins xmlsecurity tubes LIBORCUS:liborcus NULL
sc sc\prj nmake - all sc_prj NULL

View File

@@ -31,20 +31,20 @@
#include "tools/urlobj.hxx"
#include <orcus/model/interface.hpp>
#include <orcus/spreadsheet/import_interface.hpp>
#include <orcus/orcus_csv.hpp>
#include <boost/ptr_container/ptr_vector.hpp>
using orcus::model::row_t;
using orcus::model::col_t;
using orcus::model::formula_grammar_t;
using orcus::spreadsheet::row_t;
using orcus::spreadsheet::col_t;
using orcus::spreadsheet::formula_grammar_t;
namespace {
class ScOrcusSheet;
class ScOrcusFactory : public orcus::model::iface::factory
class ScOrcusFactory : public orcus::spreadsheet::iface::import_factory
{
ScDocument& mrDoc;
boost::ptr_vector<ScOrcusSheet> maSheets;
@@ -52,12 +52,13 @@ class ScOrcusFactory : public orcus::model::iface::factory
public:
ScOrcusFactory(ScDocument& rDoc);
virtual orcus::model::iface::sheet* append_sheet(const char *sheet_name, size_t sheet_name_length);
virtual orcus::model::iface::shared_strings* get_shared_strings();
virtual orcus::model::iface::styles* get_styles();
virtual orcus::spreadsheet::iface::import_sheet* append_sheet(const char *sheet_name, size_t sheet_name_length);
virtual orcus::spreadsheet::iface::import_sheet* get_sheet(const char *sheet_name, size_t sheet_name_length);
virtual orcus::spreadsheet::iface::import_shared_strings* get_shared_strings();
virtual orcus::spreadsheet::iface::import_styles* get_styles();
};
class ScOrcusSheet : public orcus::model::iface::sheet
class ScOrcusSheet : public orcus::spreadsheet::iface::import_sheet
{
ScDocument& mrDoc;
SCTAB mnTab;
@@ -78,7 +79,7 @@ public:
ScOrcusFactory::ScOrcusFactory(ScDocument& rDoc) : mrDoc(rDoc) {}
orcus::model::iface::sheet* ScOrcusFactory::append_sheet(const char* sheet_name, size_t sheet_name_length)
orcus::spreadsheet::iface::import_sheet* ScOrcusFactory::append_sheet(const char* sheet_name, size_t sheet_name_length)
{
OUString aTabName(sheet_name, sheet_name_length, RTL_TEXTENCODING_UTF8);
if (!mrDoc.InsertTab(SC_TAB_APPEND, aTabName))
@@ -89,13 +90,19 @@ orcus::model::iface::sheet* ScOrcusFactory::append_sheet(const char* sheet_name,
return &maSheets.back();
}
orcus::model::iface::shared_strings* ScOrcusFactory::get_shared_strings()
orcus::spreadsheet::iface::import_sheet* ScOrcusFactory::get_sheet(const char* /*sheet_name*/, size_t /*sheet_name_length*/)
{
// TODO: Implement this.
return NULL;
}
orcus::spreadsheet::iface::import_shared_strings* ScOrcusFactory::get_shared_strings()
{
// We don't support it yet.
return NULL;
}
orcus::model::iface::styles* ScOrcusFactory::get_styles()
orcus::spreadsheet::iface::import_styles* ScOrcusFactory::get_styles()
{
// We don't support it yet.
return NULL;

View File

@@ -1881,3 +1881,22 @@ SPECIAL_COMPONENT_LIB_FILE( gid_File_Lib_Lomenubar, lomenubar.uno )
#ifdef ENABLE_TELEPATHY
STD_LIB_FILE( gid_File_Lib_Tubes , tubes)
#endif
#ifndef SYSTEM_LIBORCUS
File gid_File_Lib_Liborcus
LIB_FILE_BODY;
Styles = (PACKED);
Dir = SCP2_OOO_BIN_DIR;
#ifdef UNX
#ifdef MACOSX
Name = STRING(CONCAT3(liborcus-0.2,0,UNXSUFFIX));
#else
Name = STRING(CONCAT3(liborcus-0.2,UNXSUFFIX,.0));
#endif
#elif defined(WNT)
Name = "liborcus-0.2.dll";
#endif
End
#endif

View File

@@ -1,2 +1,2 @@
tb tail_build : AFMS:afms APACHE_COMMONS:apache-commons BSH:beanshell BERKELEYDB:berkeleydb BOOST:boost CAIRO:cairo CPPUNIT:cppunit DESKTOP:codemaker CURL:curl EXPAT:expat FONTCONFIG:fontconfig FREETYPE:freetype GLIB:glib GRAPHITE:graphite HUNSPELL:hunspell HYPHEN:hyphen ICU:icu DESKTOP:l10ntools JFREEREPORT:jfreereport JPEG:jpeg LCMS2:lcms2 LIBCDR:libcdr LIBCMIS:libcmis LIBEXTTEXTCAT:libexttextcat LIBLANGTAG:liblangtag LIBMSPUB:libmspub LIBXML2:libxml2 libxmlsec LIBXSLT:libxslt LIBWPG:libwpg LIBWPS:libwps LIBWPD:libwpd LIBVISIO:libvisio LPSOLVE:lpsolve MOZ:moz MYTHES:mythes NEON:neon NSS:nss OPENLDAP:openldap OPENSSL:openssl POSTGRESQL:postgresql PYTHON:python REDLAND:redland SAXON:saxon TRANSLATIONS:translations XPDF:xpdf ZLIB:zlib bridges cli_ure comphelper cppu cppuhelper external jurt jvmaccess jvmfwk offapi officecfg DESKTOP:rdbmaker readlicense_oo RHINO:rhino ridljar sal salhelper solenv soltools stoc ucbhelper ucpp udkapi xmlreader xsltml NULL
tb tail_build : AFMS:afms APACHE_COMMONS:apache-commons BSH:beanshell BERKELEYDB:berkeleydb BOOST:boost CAIRO:cairo CPPUNIT:cppunit DESKTOP:codemaker CURL:curl EXPAT:expat FONTCONFIG:fontconfig FREETYPE:freetype GLIB:glib GRAPHITE:graphite HUNSPELL:hunspell HYPHEN:hyphen ICU:icu DESKTOP:l10ntools JFREEREPORT:jfreereport JPEG:jpeg LCMS2:lcms2 LIBCDR:libcdr LIBCMIS:libcmis LIBEXTTEXTCAT:libexttextcat LIBLANGTAG:liblangtag LIBMSPUB:libmspub LIBXML2:libxml2 libxmlsec LIBXSLT:libxslt LIBWPG:libwpg LIBWPS:libwps LIBWPD:libwpd LIBVISIO:libvisio LIBORCUS:liborcus LPSOLVE:lpsolve MDDS:mdds MOZ:moz MYTHES:mythes NEON:neon NSS:nss OPENLDAP:openldap OPENSSL:openssl POSTGRESQL:postgresql PYTHON:python REDLAND:redland SAXON:saxon TRANSLATIONS:translations XPDF:xpdf ZLIB:zlib bridges cli_ure comphelper cppu cppuhelper external jurt jvmaccess jvmfwk offapi officecfg DESKTOP:rdbmaker readlicense_oo RHINO:rhino ridljar sal salhelper solenv soltools stoc ucbhelper ucpp udkapi xmlreader xsltml NULL
tb tail_build\prj nmake - all tb_prj NULL