]> git.pld-linux.org Git - packages/libreoffice.git/commitdiff
- pull update to liborcus 0.9 from upstream
authorJan Rękorajski <baggins@pld-linux.org>
Sun, 14 Jun 2015 23:12:36 +0000 (01:12 +0200)
committerJan Rękorajski <baggins@pld-linux.org>
Sun, 14 Jun 2015 23:12:36 +0000 (01:12 +0200)
liborcus-0.9.patch [new file with mode: 0644]
libreoffice.spec

diff --git a/liborcus-0.9.patch b/liborcus-0.9.patch
new file mode 100644 (file)
index 0000000..e36b69c
--- /dev/null
@@ -0,0 +1,2757 @@
+From edb38d702dd5a058ae0702b73a43328318b94649 Mon Sep 17 00:00:00 2001
+From: David Tardon <dtardon@redhat.com>
+Date: Thu, 4 Jun 2015 16:09:48 +0200
+Subject: [PATCH] update to liborcus 0.9.1
+
+Includes switching to dynamic libs.
+
+Change-Id: I959c4e9430f8cf95f50d48e1b01d8323dba4af81
+---
+ RepositoryExternal.mk                              |   55 +-
+ configure.ac                                       |    2 +-
+ download.lst                                       |    2 +-
+ external/liborcus/0001-fix-dllexport-decls.patch   |  101 ++
+ .../0001-mark-more-symbols-as-public.patch         |   52 +
+ ...ese-functions-are-implemented-in-liborcus.patch |   36 +
+ ...1-workaround-a-linking-problem-on-windows.patch |   45 +
+ external/liborcus/ExternalPackage_liborcus.mk      |   22 +
+ external/liborcus/ExternalProject_liborcus.mk      |    4 +-
+ external/liborcus/Library_orcus-parser.mk          |   55 +
+ external/liborcus/Library_orcus.mk                 |  104 ++
+ external/liborcus/Module_liborcus.mk               |   17 +-
+ external/liborcus/UnpackedTarball_liborcus.mk      |   25 +-
+ external/liborcus/liborcus_0.1.0-configure.patch   |   20 -
+ external/liborcus/liborcus_0.1.0-dllimport.patch   |   24 -
+ .../liborcus/liborcus_0.7.0-configure.gcc5.patch.0 | 1800 --------------------
+ external/liborcus/visibility.patch                 |   11 -
+ sc/source/filter/html/htmlpars.cxx                 |   30 +-
+ sc/source/filter/inc/orcusinterface.hxx            |   10 +
+ sc/source/filter/orcus/interface.cxx               |   48 +-
+ 20 files changed, 572 insertions(+), 1891 deletions(-)
+ create mode 100644 external/liborcus/0001-fix-dllexport-decls.patch
+ create mode 100644 external/liborcus/0001-mark-more-symbols-as-public.patch
+ create mode 100644 external/liborcus/0001-these-functions-are-implemented-in-liborcus.patch
+ create mode 100644 external/liborcus/0001-workaround-a-linking-problem-on-windows.patch
+ create mode 100644 external/liborcus/ExternalPackage_liborcus.mk
+ create mode 100644 external/liborcus/Library_orcus-parser.mk
+ create mode 100644 external/liborcus/Library_orcus.mk
+ delete mode 100644 external/liborcus/liborcus_0.1.0-configure.patch
+ delete mode 100644 external/liborcus/liborcus_0.1.0-dllimport.patch
+ delete mode 100644 external/liborcus/liborcus_0.7.0-configure.gcc5.patch.0
+ delete mode 100644 external/liborcus/visibility.patch
+
+diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
+index 47e4d17..726ef75 100644
+--- a/RepositoryExternal.mk
++++ b/RepositoryExternal.mk
+@@ -3209,35 +3209,78 @@ endef
+ else # !SYSTEM_LIBORCUS
++ifeq ($(COM),MSC)
++
++$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo,\
++      orcus \
++      orcus-parser \
++))
++
++define gb_LinkTarget__use_orcus
++$(call gb_LinkTarget_set_include,$(1),\
++      -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
++      $$(INCLUDE) \
++)
++
++$(call gb_LinkTarget_use_libraries,$(1),\
++      orcus \
++)
++
++endef
++
++define gb_LinkTarget__use_orcus-parser
++$(call gb_LinkTarget_set_include,$(1),\
++      -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
++      $$(INCLUDE) \
++)
++
++$(call gb_LinkTarget_use_libraries,$(1),\
++      orcus-parser \
++)
++
++endef
++
++else # !MSC
++
++$(eval $(call gb_Helper_register_packages_for_install,ooo,\
++      liborcus \
++))
++
+ define gb_LinkTarget__use_orcus
+-$(call gb_LinkTarget_use_external_project,$(1),liborcus)
++$(call gb_LinkTarget_use_package,$(1),liborcus)
++
+ $(call gb_LinkTarget_set_include,$(1),\
+       -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
+       $$(INCLUDE) \
+ )
++
+ $(call gb_LinkTarget_add_libs,$(1),\
+-      $(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs/liborcus-0.8$(gb_StaticLibrary_PLAINEXT) \
++      -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs -lorcus-0.10 \
+ )
+ $(if $(SYSTEM_BOOST), \
+-    $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
+-    $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
++      $(call gb_LinkTarget_add_ldflags,$(1),$(BOOST_LDFLAGS)) \
++      $(call gb_LinkTarget_add_libs,$(1),$(BOOST_SYSTEM_LIB)) \
+ )
+ endef
+ define gb_LinkTarget__use_orcus-parser
+-$(call gb_LinkTarget_use_external_project,$(1),liborcus)
++$(call gb_LinkTarget_use_package,$(1),liborcus)
++
+ $(call gb_LinkTarget_set_include,$(1),\
+       -I$(call gb_UnpackedTarball_get_dir,liborcus/include) \
+       $$(INCLUDE) \
+ )
++
+ $(call gb_LinkTarget_add_libs,$(1),\
+-      $(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs/liborcus-parser-0.8$(gb_StaticLibrary_PLAINEXT) \
++      -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs -lorcus-parser-0.10 \
+ )
+ endef
++endif # MSC
++
+ endif # SYSTEM_LIBORCUS
+ else # ENABLE_ORCUS != TRUE
+diff --git a/configure.ac b/configure.ac
+index c7483a0..ac00539 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -9012,7 +9012,7 @@ if test -z "$enable_orcus" -o "$enable_orcus" != no; then
+     ENABLE_ORCUS="TRUE"
+     AC_DEFINE(ENABLE_ORCUS)
+-    libo_CHECK_SYSTEM_MODULE([orcus],[ORCUS],[liborcus-0.8 >= 0.7.0])
++    libo_CHECK_SYSTEM_MODULE([orcus],[ORCUS],[liborcus-0.10 >= 0.9.0])
+     if test "$with_system_orcus" != "yes"; then
+         if test "$SYSTEM_BOOST" = "TRUE"; then
+             # ===========================================================
+diff --git a/download.lst b/download.lst
+index 86ce10c..7b4bfe4 100644
+--- a/download.lst
++++ b/download.lst
+@@ -118,7 +118,7 @@ export OPENCOLLADA_TARBALL := OpenCOLLADA-master-6509aa13af.tar.bz2
+ export OPENLDAP_TARBALL := 804c6cb5698db30b75ad0ff1c25baefd-openldap-2.4.31.tgz
+ export OPENSSL_MD5SUM := a06c547dac9044161a477211049f60ef
+ export OPENSSL_TARBALL := openssl-1.0.2a.tar.gz
+-export ORCUS_TARBALL := 7681383be6ce489d84c1c74f4e7f9643-liborcus-0.7.0.tar.bz2
++export ORCUS_TARBALL := 18814358772ed7bb476e04b0384af082-liborcus-0.9.1.tar.gz
+ export PAGEMAKER_MD5SUM := 795cc7a59ace4db2b12586971d668671
+ export PAGEMAKER_TARBALL := libpagemaker-0.0.2.tar.bz2
+ export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2
+diff --git a/external/liborcus/0001-fix-dllexport-decls.patch b/external/liborcus/0001-fix-dllexport-decls.patch
+new file mode 100644
+index 0000000..75a4423
+--- /dev/null
++++ b/external/liborcus/0001-fix-dllexport-decls.patch
+@@ -0,0 +1,101 @@
++From 3e08d2264984b8d5227e22c7089f00f8f2e36513 Mon Sep 17 00:00:00 2001
++From: David Tardon <dtardon@redhat.com>
++Date: Tue, 2 Jun 2015 23:26:39 +0200
++Subject: [PATCH] fix dllexport decls
++
++---
++ include/orcus/base64.hpp      | 4 ++--
++ include/orcus/exception.hpp   | 2 +-
++ include/orcus/pstring.hpp     | 6 +++---
++ include/orcus/stream.hpp      | 2 +-
++ include/orcus/string_pool.hpp | 2 +-
++ 5 files changed, 8 insertions(+), 8 deletions(-)
++
++diff --git a/include/orcus/base64.hpp b/include/orcus/base64.hpp
++index a4cf020..0f81289 100644
++--- a/include/orcus/base64.hpp
+++++ b/include/orcus/base64.hpp
++@@ -22,7 +22,7 @@ namespace orcus {
++  * @param len_base64 length of encoded character sequence.
++  * @param decoded decoded byte sequence will be put into this parameter.
++  */
++-ORCUS_DLLPUBLIC void decode_from_base64(const char* p_base64, size_t len_base64, std::vector<char>& decoded);
+++ORCUS_PSR_DLLPUBLIC void decode_from_base64(const char* p_base64, size_t len_base64, std::vector<char>& decoded);
++ 
++ /**
++  * Encode a sequence of bytes into base64-encoded characters.
++@@ -31,7 +31,7 @@ ORCUS_DLLPUBLIC void decode_from_base64(const char* p_base64, size_t len_base64,
++  * @param encoded base64-encoded character sequence representing the input
++  *                bytes.
++  */
++-ORCUS_DLLPUBLIC void encode_to_base64(const std::vector<char>& input, std::string& encoded);
+++ORCUS_PSR_DLLPUBLIC void encode_to_base64(const std::vector<char>& input, std::string& encoded);
++ 
++ }
++ 
++diff --git a/include/orcus/exception.hpp b/include/orcus/exception.hpp
++index 63729ae..ba6132c 100644
++--- a/include/orcus/exception.hpp
+++++ b/include/orcus/exception.hpp
++@@ -25,7 +25,7 @@ private:
++     ::std::string m_msg;
++ };
++ 
++-class ORCUS_DLLPUBLIC xml_structure_error : public general_error
+++class ORCUS_PSR_DLLPUBLIC xml_structure_error : public general_error
++ {
++ public:
++     explicit xml_structure_error(const ::std::string& msg);
++diff --git a/include/orcus/pstring.hpp b/include/orcus/pstring.hpp
++index e38d4be..c72b78b 100644
++--- a/include/orcus/pstring.hpp
+++++ b/include/orcus/pstring.hpp
++@@ -71,7 +71,7 @@ public:
++         m_size = 0;
++     }
++ 
++-    struct ORCUS_DLLPUBLIC hash
+++    struct ORCUS_PSR_DLLPUBLIC hash
++     {
++         size_t operator() (const pstring& val) const;
++     };
++@@ -86,8 +86,8 @@ inline ::std::ostream& operator<< (::std::ostream& os, const pstring& str)
++     return os << str.str();
++ }
++ 
++-ORCUS_DLLPUBLIC std::string operator+ (const std::string& left, const pstring& right);
++-ORCUS_DLLPUBLIC std::string& operator+= (std::string& left, const pstring& right);
+++ORCUS_PSR_DLLPUBLIC std::string operator+ (const std::string& left, const pstring& right);
+++ORCUS_PSR_DLLPUBLIC std::string& operator+= (std::string& left, const pstring& right);
++ 
++ }
++ 
++diff --git a/include/orcus/stream.hpp b/include/orcus/stream.hpp
++index a32f6a4..064d386 100644
++--- a/include/orcus/stream.hpp
+++++ b/include/orcus/stream.hpp
++@@ -20,7 +20,7 @@ namespace orcus {
++  * @param filepath file to open
++  * @param strm content of the file
++  */
++-ORCUS_DLLPUBLIC void load_file_content(const char* filepath, std::string& strm);
+++ORCUS_PSR_DLLPUBLIC void load_file_content(const char* filepath, std::string& strm);
++ 
++ }
++ 
++diff --git a/include/orcus/string_pool.hpp b/include/orcus/string_pool.hpp
++index e4afa4f..b895ee4 100644
++--- a/include/orcus/string_pool.hpp
+++++ b/include/orcus/string_pool.hpp
++@@ -21,7 +21,7 @@ namespace orcus {
++ /**
++  * Implements string hash map.
++  */
++-class ORCUS_DLLPUBLIC string_pool
+++class ORCUS_PSR_DLLPUBLIC string_pool
++ {
++     struct string_hash
++     {
++-- 
++2.4.1
++
+diff --git a/external/liborcus/0001-mark-more-symbols-as-public.patch b/external/liborcus/0001-mark-more-symbols-as-public.patch
+new file mode 100644
+index 0000000..ee9658e
+--- /dev/null
++++ b/external/liborcus/0001-mark-more-symbols-as-public.patch
+@@ -0,0 +1,52 @@
++From 718b1adfe9c327e06b1ab796c5cd9805db63c9b3 Mon Sep 17 00:00:00 2001
++From: David Tardon <dtardon@redhat.com>
++Date: Wed, 3 Jun 2015 07:46:50 +0200
++Subject: [PATCH] mark more symbols as public
++
++---
++ include/orcus/xml_structure_tree.hpp | 8 ++++----
++ 1 file changed, 4 insertions(+), 4 deletions(-)
++
++diff --git a/include/orcus/xml_structure_tree.hpp b/include/orcus/xml_structure_tree.hpp
++index 097e56c..58cabfd 100644
++--- a/include/orcus/xml_structure_tree.hpp
+++++ b/include/orcus/xml_structure_tree.hpp
++@@ -31,7 +31,7 @@ class ORCUS_DLLPUBLIC xml_structure_tree
++ 
++ public:
++ 
++-    struct entity_name
+++    struct ORCUS_DLLPUBLIC entity_name
++     {
++         xmlns_id_t ns;
++         pstring name;
++@@ -42,7 +42,7 @@ public:
++         bool operator< (const entity_name& r) const;
++         bool operator== (const entity_name& r) const;
++ 
++-        struct hash
+++        struct ORCUS_DLLPUBLIC hash
++         {
++             size_t operator ()(const entity_name& val) const;
++         };
++@@ -50,7 +50,7 @@ public:
++ 
++     typedef std::vector<entity_name> entity_names_type;
++ 
++-    struct element
+++    struct ORCUS_DLLPUBLIC element
++     {
++         entity_name name;
++         bool repeat;
++@@ -64,7 +64,7 @@ public:
++     /**
++      * This class allows client to traverse the tree.
++      */
++-    class walker
+++    class ORCUS_DLLPUBLIC walker
++     {
++         friend class xml_structure_tree;
++         walker_impl* mp_impl;
++-- 
++2.4.1
++
+diff --git a/external/liborcus/0001-these-functions-are-implemented-in-liborcus.patch b/external/liborcus/0001-these-functions-are-implemented-in-liborcus.patch
+new file mode 100644
+index 0000000..c027da6
+--- /dev/null
++++ b/external/liborcus/0001-these-functions-are-implemented-in-liborcus.patch
+@@ -0,0 +1,36 @@
++From 26d33d7cfd93b22e2fa13e6a3e28d133619948cf Mon Sep 17 00:00:00 2001
++From: David Tardon <dtardon@redhat.com>
++Date: Thu, 4 Jun 2015 12:33:26 +0200
++Subject: [PATCH] these functions are implemented in liborcus
++
++---
++ include/orcus/spreadsheet/types.hpp | 6 +++---
++ 1 file changed, 3 insertions(+), 3 deletions(-)
++
++diff --git a/include/orcus/spreadsheet/types.hpp b/include/orcus/spreadsheet/types.hpp
++index a78340e..bec14c8 100644
++--- a/include/orcus/spreadsheet/types.hpp
+++++ b/include/orcus/spreadsheet/types.hpp
++@@ -22,8 +22,8 @@ typedef unsigned char color_elem_t;
++ typedef unsigned short col_width_t;
++ typedef unsigned short row_height_t;
++ 
++-ORCUS_SPM_DLLPUBLIC col_width_t get_default_column_width();
++-ORCUS_SPM_DLLPUBLIC row_height_t get_default_row_height();
+++ORCUS_DLLPUBLIC col_width_t get_default_column_width();
+++ORCUS_DLLPUBLIC row_height_t get_default_row_height();
++ 
++ enum border_direction_t
++ {
++@@ -192,7 +192,7 @@ enum databar_axis_t
++  * Convert a string representation of a totals row function name to its
++  * equivalent enum value.
++  */
++-ORCUS_SPM_DLLPUBLIC totals_row_function_t to_totals_row_function_enum(const char* p, size_t n);
+++ORCUS_DLLPUBLIC totals_row_function_t to_totals_row_function_enum(const char* p, size_t n);
++ 
++ }}
++ 
++-- 
++2.4.1
++
+diff --git a/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch b/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch
+new file mode 100644
+index 0000000..5710877
+--- /dev/null
++++ b/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch
+@@ -0,0 +1,45 @@
++From 71841b7aa7c5e75a793cfaafb31865524a74d9fc Mon Sep 17 00:00:00 2001
++From: David Tardon <dtardon@redhat.com>
++Date: Thu, 4 Jun 2015 16:13:18 +0200
++Subject: [PATCH] workaround a linking problem on windows
++
++Linking scfiltlo.dll gives the following error:
++
++xmlcontext.o : error LNK2019: unresolved external symbol "char const * const orcus::XMLNS_UNKNOWN_ID" (?XMLNS_UNKNOWN_ID@orcus@@3QBDB) referenced in function "void __cdecl std::_For_each<unsigned int const *,class `anonymous namespace'::SetNamespaceAlias>(unsigned int const *,unsigned int const *,class `anonymous namespace'::SetNamespaceAlias &)" (??$_For_each@PBIVSetNamespaceAlias@?A0xafb5dd33@@@std@@YAXPBI0AAVSetNamespaceAlias@?A0xafb5dd33@@@Z)
++C:/cygwin/home/tdf/lode/jenkins/workspace/lo_gerrit_master/Gerrit/Gerrit/Platform/Windows/instdir/program/scfiltlo.dll : fatal error LNK1120: 1 unresolved externals
++
++I have got no idea what is the cause of this: the constant--exported in
++liborcus-parser.dll--is used in liborus.dll without any problem.
++---
++ include/orcus/types.hpp | 2 +-
++ src/parser/types.cpp    | 1 -
++ 2 files changed, 1 insertion(+), 2 deletions(-)
++
++diff --git a/include/orcus/types.hpp b/include/orcus/types.hpp
++index b6e3f83..8027f25 100644
++--- a/include/orcus/types.hpp
+++++ b/include/orcus/types.hpp
++@@ -21,7 +21,7 @@ namespace orcus {
++ typedef size_t xml_token_t;
++ typedef const char* xmlns_id_t;
++ 
++-ORCUS_PSR_DLLPUBLIC extern const xmlns_id_t XMLNS_UNKNOWN_ID;
+++const xmlns_id_t XMLNS_UNKNOWN_ID = NULL;
++ ORCUS_PSR_DLLPUBLIC extern const xml_token_t XML_UNKNOWN_TOKEN;
++ ORCUS_PSR_DLLPUBLIC extern const size_t index_not_found;
++ ORCUS_PSR_DLLPUBLIC extern const size_t unspecified;
++diff --git a/src/parser/types.cpp b/src/parser/types.cpp
++index be4e304..0a1b4a7 100644
++--- a/src/parser/types.cpp
+++++ b/src/parser/types.cpp
++@@ -12,7 +12,6 @@
++ 
++ namespace orcus {
++ 
++-const xmlns_id_t XMLNS_UNKNOWN_ID = NULL;
++ const xml_token_t XML_UNKNOWN_TOKEN = 0;
++ 
++ const size_t index_not_found = std::numeric_limits<size_t>::max();
++-- 
++2.4.1
++
+diff --git a/external/liborcus/ExternalPackage_liborcus.mk b/external/liborcus/ExternalPackage_liborcus.mk
+new file mode 100644
+index 0000000..96899e7
+--- /dev/null
++++ b/external/liborcus/ExternalPackage_liborcus.mk
+@@ -0,0 +1,22 @@
++# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
++#
++# 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/.
++#
++
++$(eval $(call gb_ExternalPackage_ExternalPackage,liborcus,liborcus))
++
++$(eval $(call gb_ExternalPackage_use_external_project,liborcus,liborcus))
++
++ifeq ($(OS),MACOSX)
++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-0.10.0.dylib,src/liborcus/.libs/liborcus-0.10.0.dylib))
++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-parser-0.10.0.dylib,src/parser/.libs/liborcus-parser-0.10.0.dylib))
++else ifeq ($(filter IOS ANDROID,$(OS)),)
++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-0.10.so.0,src/liborcus/.libs/liborcus-0.10.so.0.0.0))
++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-parser-0.10.so.0,src/parser/.libs/liborcus-parser-0.10.so.0.0.0))
++endif
++
++# vim: set noet sw=4 ts=4:
+diff --git a/external/liborcus/ExternalProject_liborcus.mk b/external/liborcus/ExternalProject_liborcus.mk
+index 90d453c..ff488bf 100644
+--- a/external/liborcus/ExternalProject_liborcus.mk
++++ b/external/liborcus/ExternalProject_liborcus.mk
+@@ -87,8 +87,8 @@ $(call gb_ExternalProject_get_state_target,liborcus,build) :
+               MDDS_LIBS=' ' \
+               MAKE=$(MAKE) ./configure \
+                       --with-pic \
+-                      --enable-static \
+-                      --disable-shared \
++                      --enable-shared \
++                      --disable-static \
+                       $(if $(ENABLE_DEBUG),--enable-debug,--disable-debug) \
+                       --disable-spreadsheet-model \
+                       --without-tools \
+diff --git a/external/liborcus/Library_orcus-parser.mk b/external/liborcus/Library_orcus-parser.mk
+new file mode 100644
+index 0000000..c3b4eec
+--- /dev/null
++++ b/external/liborcus/Library_orcus-parser.mk
+@@ -0,0 +1,55 @@
++# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
++#
++# 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/.
++#
++
++$(eval $(call gb_Library_Library,orcus-parser))
++
++$(eval $(call gb_Library_use_unpacked,orcus-parser,liborcus))
++
++$(eval $(call gb_Library_use_externals,orcus-parser,\
++      boost_headers \
++      boost_system \
++      mdds_headers \
++      zlib \
++))
++
++$(eval $(call gb_Library_set_warnings_not_errors,orcus-parser))
++
++$(eval $(call gb_Library_set_include,orcus-parser,\
++      -I$(call gb_UnpackedTarball_get_dir,liborcus)/include \
++      $$(INCLUDE) \
++))
++
++$(eval $(call gb_Library_add_defs,orcus-parser,\
++      -DBOOST_ALL_NO_LIB \
++      -D__ORCUS_PSR_BUILDING_DLL \
++))
++
++$(eval $(call gb_Library_set_generated_cxx_suffix,orcus-parser,cpp))
++
++$(eval $(call gb_Library_add_generated_exception_objects,orcus-parser,\
++      UnpackedTarball/liborcus/src/parser/base64 \
++      UnpackedTarball/liborcus/src/parser/cell_buffer \
++      UnpackedTarball/liborcus/src/parser/css_parser_base \
++      UnpackedTarball/liborcus/src/parser/css_types \
++      UnpackedTarball/liborcus/src/parser/csv_parser_base \
++      UnpackedTarball/liborcus/src/parser/exception \
++      UnpackedTarball/liborcus/src/parser/parser_global \
++      UnpackedTarball/liborcus/src/parser/pstring \
++      UnpackedTarball/liborcus/src/parser/sax_parser_base \
++      UnpackedTarball/liborcus/src/parser/sax_token_parser \
++      UnpackedTarball/liborcus/src/parser/stream \
++      UnpackedTarball/liborcus/src/parser/string_pool \
++      UnpackedTarball/liborcus/src/parser/tokens \
++      UnpackedTarball/liborcus/src/parser/types \
++      UnpackedTarball/liborcus/src/parser/xml_namespace \
++      UnpackedTarball/liborcus/src/parser/zip_archive \
++      UnpackedTarball/liborcus/src/parser/zip_archive_stream \
++))
++
++# vim: set noet sw=4 ts=4:
+diff --git a/external/liborcus/Library_orcus.mk b/external/liborcus/Library_orcus.mk
+new file mode 100644
+index 0000000..ae98d5e
+--- /dev/null
++++ b/external/liborcus/Library_orcus.mk
+@@ -0,0 +1,104 @@
++# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
++#
++# 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/.
++#
++
++$(eval $(call gb_Library_Library,orcus))
++
++$(eval $(call gb_Library_use_unpacked,orcus,liborcus))
++
++$(eval $(call gb_Library_use_externals,orcus,\
++      boost_headers \
++      boost_iostreams \
++      boost_system \
++      mdds_headers \
++      zlib \
++))
++
++$(eval $(call gb_Library_set_warnings_not_errors,orcus))
++
++$(eval $(call gb_Library_set_include,orcus,\
++      -I$(call gb_UnpackedTarball_get_dir,liborcus)/include \
++      $$(INCLUDE) \
++))
++
++$(eval $(call gb_Library_add_defs,orcus,\
++      -DBOOST_ALL_NO_LIB \
++      -D__ORCUS_BUILDING_DLL \
++))
++
++$(eval $(call gb_Library_use_libraries,orcus,\
++      orcus-parser \
++))
++
++$(eval $(call gb_Library_set_generated_cxx_suffix,orcus,cpp))
++
++$(eval $(call gb_Library_add_generated_exception_objects,orcus,\
++      UnpackedTarball/liborcus/src/liborcus/config \
++      UnpackedTarball/liborcus/src/liborcus/css_document_tree \
++      UnpackedTarball/liborcus/src/liborcus/css_selector \
++      UnpackedTarball/liborcus/src/liborcus/detection_result \
++      UnpackedTarball/liborcus/src/liborcus/dom_tree \
++      UnpackedTarball/liborcus/src/liborcus/format_detection \
++      UnpackedTarball/liborcus/src/liborcus/global \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_cell_context \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_context \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_detection_handler \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_handler \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_helper \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_namespace_types \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_sheet_context \
++      UnpackedTarball/liborcus/src/liborcus/gnumeric_tokens \
++      UnpackedTarball/liborcus/src/liborcus/interface \
++      UnpackedTarball/liborcus/src/liborcus/measurement \
++      UnpackedTarball/liborcus/src/liborcus/odf_namespace_types \
++      UnpackedTarball/liborcus/src/liborcus/odf_para_context \
++      UnpackedTarball/liborcus/src/liborcus/odf_styles \
++      UnpackedTarball/liborcus/src/liborcus/odf_styles_context \
++      UnpackedTarball/liborcus/src/liborcus/odf_tokens \
++      UnpackedTarball/liborcus/src/liborcus/ods_content_xml_context \
++      UnpackedTarball/liborcus/src/liborcus/ods_content_xml_handler \
++      UnpackedTarball/liborcus/src/liborcus/ods_session_data \
++      UnpackedTarball/liborcus/src/liborcus/ooxml_content_types \
++      UnpackedTarball/liborcus/src/liborcus/ooxml_global \
++      UnpackedTarball/liborcus/src/liborcus/ooxml_namespace_types \
++      UnpackedTarball/liborcus/src/liborcus/ooxml_schemas \
++      UnpackedTarball/liborcus/src/liborcus/ooxml_tokens \
++      UnpackedTarball/liborcus/src/liborcus/ooxml_types \
++      UnpackedTarball/liborcus/src/liborcus/opc_context \
++      UnpackedTarball/liborcus/src/liborcus/opc_reader \
++      UnpackedTarball/liborcus/src/liborcus/orcus_csv \
++      UnpackedTarball/liborcus/src/liborcus/orcus_gnumeric \
++      UnpackedTarball/liborcus/src/liborcus/orcus_ods \
++      UnpackedTarball/liborcus/src/liborcus/orcus_xlsx \
++      UnpackedTarball/liborcus/src/liborcus/orcus_xml \
++      UnpackedTarball/liborcus/src/liborcus/session_context \
++      UnpackedTarball/liborcus/src/liborcus/spreadsheet_interface \
++      UnpackedTarball/liborcus/src/liborcus/spreadsheet_types \
++      UnpackedTarball/liborcus/src/liborcus/xls_xml_namespace_types \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_autofilter_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_conditional_format_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_handler \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_helper \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_pivot_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_revision_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_session_data \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_sheet_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_table_context \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_types \
++      UnpackedTarball/liborcus/src/liborcus/xlsx_workbook_context \
++      UnpackedTarball/liborcus/src/liborcus/xml_context_base \
++      UnpackedTarball/liborcus/src/liborcus/xml_context_global \
++      UnpackedTarball/liborcus/src/liborcus/xml_map_tree \
++      UnpackedTarball/liborcus/src/liborcus/xml_simple_stream_handler \
++      UnpackedTarball/liborcus/src/liborcus/xml_stream_handler \
++      UnpackedTarball/liborcus/src/liborcus/xml_stream_parser \
++      UnpackedTarball/liborcus/src/liborcus/xml_structure_tree \
++))
++
++# vim: set noet sw=4 ts=4:
+diff --git a/external/liborcus/Module_liborcus.mk b/external/liborcus/Module_liborcus.mk
+index 42f1715..e75b983 100644
+--- a/external/liborcus/Module_liborcus.mk
++++ b/external/liborcus/Module_liborcus.mk
+@@ -10,8 +10,23 @@
+ $(eval $(call gb_Module_Module,liborcus))
+ $(eval $(call gb_Module_add_targets,liborcus,\
+-      ExternalProject_liborcus \
+       UnpackedTarball_liborcus \
+ ))
++ifeq ($(COM),MSC)
++
++$(eval $(call gb_Module_add_targets,liborcus,\
++      Library_orcus \
++      Library_orcus-parser \
++))
++
++else # !MSC
++
++$(eval $(call gb_Module_add_targets,liborcus,\
++      ExternalPackage_liborcus \
++      ExternalProject_liborcus \
++))
++
++endif
++
+ # vim: set noet sw=4 ts=4:
+diff --git a/external/liborcus/UnpackedTarball_liborcus.mk b/external/liborcus/UnpackedTarball_liborcus.mk
+index 126f250..ae569ed 100644
+--- a/external/liborcus/UnpackedTarball_liborcus.mk
++++ b/external/liborcus/UnpackedTarball_liborcus.mk
+@@ -11,28 +11,13 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,liborcus))
+ $(eval $(call gb_UnpackedTarball_set_tarball,liborcus,$(ORCUS_TARBALL)))
+-$(eval $(call gb_UnpackedTarball_set_patchlevel,liborcus,0))
+-
+-liborcus_patches :=
+-
+-# make config.sub recognize arm-linux-androideabi
+-# liborcus_patches += liborcus_0.1.0-configure.patch
+-
+-# don't use dllimport
+-liborcus_patches += liborcus_0.1.0-dllimport.patch
+-
+-ifneq ($(HAVE_GCC_VISIBILITY_FEATURE),TRUE)
+-liborcus_patches += visibility.patch
+-endif
+-
+-# <https://gitorious.org/orcus/orcus/merge_requests/2#
+-# f60d6eecee72349993a392a9a63ddf3383d3b8c8-
+-# f60d6eecee72349993a392a9a63ddf3383d3b8c8@2>:
+-
+-liborcus_patches += liborcus_0.7.0-configure.gcc5.patch.0
++$(eval $(call gb_UnpackedTarball_set_patchlevel,liborcus,1))
+ $(eval $(call gb_UnpackedTarball_add_patches,liborcus,\
+-      $(foreach patch,$(liborcus_patches),external/liborcus/$(patch)) \
++      external/liborcus/0001-fix-dllexport-decls.patch \
++      external/liborcus/0001-mark-more-symbols-as-public.patch \
++      external/liborcus/0001-these-functions-are-implemented-in-liborcus.patch \
++      external/liborcus/0001-workaround-a-linking-problem-on-windows.patch \
+ ))
+ # vim: set noet sw=4 ts=4:
+diff --git a/external/liborcus/liborcus_0.1.0-configure.patch b/external/liborcus/liborcus_0.1.0-configure.patch
+deleted file mode 100644
+index ae8502e..0000000
+--- a/external/liborcus/liborcus_0.1.0-configure.patch
++++ /dev/null
+@@ -1,20 +0,0 @@
+---- config.sub
+-+++ config.sub
+-@@ -120,7 +120,7 @@
+- # Here we must recognize all the valid KERNEL-OS combinations.
+- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+- case $maybe_os in
+--  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+-+  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+-   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+-   kopensolaris*-gnu* | \
+-   storm-chaos* | os2-emx* | rtmk-nova*)
+-@@ -1275,7 +1275,7 @@
+-            | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+-            | -chorusos* | -chorusrdb* | -cegcc* \
+-            | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+--           | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+-+           | -mingw32* | -linux-gnu* | -linux-androideabi* | -linux-newlib* | -linux-uclibc* \
+-            | -uxpv* | -beos* | -mpeix* | -udk* \
+-            | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+-            | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+diff --git a/external/liborcus/liborcus_0.1.0-dllimport.patch b/external/liborcus/liborcus_0.1.0-dllimport.patch
+deleted file mode 100644
+index 8940155..0000000
+--- a/external/liborcus/liborcus_0.1.0-dllimport.patch
++++ /dev/null
+@@ -1,24 +0,0 @@
+---- include/orcus/env.hpp
+-+++ include/orcus/env.hpp
+-@@ -35,19 +35,13 @@
+-     #else
+-       #define ORCUS_DLLPUBLIC __declspec(dllexport)
+-     #endif
+--  #elif defined __ORCUS_STATIC_LIB
+-+  #else
+-       #define ORCUS_DLLPUBLIC
+--  #else
+--    #ifdef __GNUC__
+--      #define ORCUS_DLLPUBLIC __attribute__ ((dllimport))
+--    #else
+--      #define ORCUS_DLLPUBLIC __declspec(dllimport)
+--    #endif
+-   #endif
+-   #define ORCUS_DLLLOCAL
+- #else
+-   #if __GNUC__ >= 4
+--    #define ORCUS_DLLPUBLIC __attribute__ ((visibility ("default")))
+-+    #define ORCUS_DLLPUBLIC
+-     #define ORCUS_DLLLOCAL  __attribute__ ((visibility ("hidden")))
+-   #else
+-     #define ORCUS_DLLPUBLIC
+diff --git a/external/liborcus/liborcus_0.7.0-configure.gcc5.patch.0 b/external/liborcus/liborcus_0.7.0-configure.gcc5.patch.0
+deleted file mode 100644
+index 79d372c..0000000
+--- a/external/liborcus/liborcus_0.7.0-configure.gcc5.patch.0
++++ /dev/null
+@@ -1,1800 +0,0 @@
+---- configure.old     2013-10-15 04:17:59.000000000 +0200
+-+++ configure 2015-02-09 23:41:48.525767041 +0100
+-@@ -1471,7 +1471,7 @@ Optional Features:
+-   --disable-libtool-lock  avoid locking (might break parallel builds)
+-   --enable-static-boost   Prefer the static boost libraries over the shared
+-                           ones [no]
+--  --disable-werror        Treat all warnings as errors, useful for development
+-+  --enable-werror         Treat all warnings as errors, useful for development
+-   --enable-debug          Build with debug features in mind.]
+-   --disable-spreadsheet-model
+-                           Disable the spreadsheet model implementation in
+-@@ -2592,7 +2592,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+- 
+- ac_config_headers="$ac_config_headers config.h"
+- 
+--am__api_version='1.12'
+-+am__api_version='1.14'
+- 
+- ac_aux_dir=
+- for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
+-@@ -2805,8 +2805,8 @@ if test x"${MISSING+set}" != xset; then
+-   esac
+- fi
+- # Use eval to expand $SHELL
+--if eval "$MISSING --run true"; then
+--  am_missing_run="$MISSING --run "
+-+if eval "$MISSING --is-lightweight"; then
+-+  am_missing_run="$MISSING "
+- else
+-   am_missing_run=
+-   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+-@@ -3046,6 +3046,45 @@ else
+- fi
+- rmdir .tst 2>/dev/null
+- 
+-+# Check whether --enable-silent-rules was given.
+-+if test "${enable_silent_rules+set}" = set; then :
+-+  enableval=$enable_silent_rules;
+-+fi
+-+
+-+case $enable_silent_rules in # (((
+-+  yes) AM_DEFAULT_VERBOSITY=0;;
+-+   no) AM_DEFAULT_VERBOSITY=1;;
+-+    *) AM_DEFAULT_VERBOSITY=1;;
+-+esac
+-+am_make=${MAKE-make}
+-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+-+$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
+-+if ${am_cv_make_support_nested_variables+:} false; then :
+-+  $as_echo_n "(cached) " >&6
+-+else
+-+  if $as_echo 'TRUE=$(BAR$(V))
+-+BAR0=false
+-+BAR1=true
+-+V=1
+-+am__doit:
+-+     @$(TRUE)
+-+.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
+-+  am_cv_make_support_nested_variables=yes
+-+else
+-+  am_cv_make_support_nested_variables=no
+-+fi
+-+fi
+-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+-+$as_echo "$am_cv_make_support_nested_variables" >&6; }
+-+if test $am_cv_make_support_nested_variables = yes; then
+-+    AM_V='$(V)'
+-+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+-+else
+-+  AM_V=$AM_DEFAULT_VERBOSITY
+-+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+-+fi
+-+AM_BACKSLASH='\'
+-+
+- if test "`cd $srcdir && pwd`" != "`pwd`"; then
+-   # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
+-   # is not polluted with repeated "-I."
+-@@ -3096,19 +3135,70 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_ru
+- 
+- MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+- 
+--mkdir_p="$MKDIR_P"
+-+# For better backward compatibility.  To be removed once Automake 1.9.x
+-+# dies out for good.  For more background, see:
+-+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+-+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+-+mkdir_p='$(MKDIR_P)'
+-+
+- # We need awk for the "check" target.  The system "awk" is bad on
+- # some platforms.
+- # Always define AMTAR for backward compatibility.  Yes, it's still used
+- # in the wild :-(  We should find a proper way to deprecate it ...
+- AMTAR='$${TAR-tar}'
+- 
+-+
+-+# We'll loop over all known methods to create a tar archive until one works.
+-+_am_tools='gnutar  pax cpio none'
+-+
+- am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
+- 
+- 
+- 
+- 
+- 
+-+
+-+# POSIX will say in a future version that running "rm -f" with no argument
+-+# is OK; and we want to be able to make that assumption in our Makefile
+-+# recipes.  So use an aggressive probe to check that the usage we want is
+-+# actually supported "in the wild" to an acceptable degree.
+-+# See automake bug#10828.
+-+# To make any issue more visible, cause the running configure to be aborted
+-+# by default if the 'rm' program in use doesn't match our expectations; the
+-+# user can still override this though.
+-+if rm -f && rm -fr && rm -rf; then : OK; else
+-+  cat >&2 <<'END'
+-+Oops!
+-+
+-+Your 'rm' program seems unable to run without file operands specified
+-+on the command line, even when the '-f' option is present.  This is contrary
+-+to the behaviour of most rm programs out there, and not conforming with
+-+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+-+
+-+Please tell bug-automake@gnu.org about your system, including the value
+-+of your $PATH and any error possibly output before this message.  This
+-+can help us improve future automake versions.
+-+
+-+END
+-+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+-+    echo 'Configuration will proceed anyway, since you have set the' >&2
+-+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+-+    echo >&2
+-+  else
+-+    cat >&2 <<'END'
+-+Aborting the configuration process, to ensure you take notice of the issue.
+-+
+-+You can download and install GNU coreutils to get an 'rm' implementation
+-+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+-+
+-+If you want to complete the configuration process using your problematic
+-+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+-+to "yes", and re-run configure.
+-+
+-+END
+-+    as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
+-+  fi
+-+fi
+- # Check whether --enable-silent-rules was given.
+- if test "${enable_silent_rules+set}" = set; then :
+-   enableval=$enable_silent_rules;
+-@@ -4011,6 +4101,65 @@ ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS
+- ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+- ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+- 
+-+ac_ext=c
+-+ac_cpp='$CPP $CPPFLAGS'
+-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+-+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
+-+if ${am_cv_prog_cc_c_o+:} false; then :
+-+  $as_echo_n "(cached) " >&6
+-+else
+-+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-+/* end confdefs.h.  */
+-+
+-+int
+-+main ()
+-+{
+-+
+-+  ;
+-+  return 0;
+-+}
+-+_ACEOF
+-+  # Make sure it works both with $CC and with simple cc.
+-+  # Following AC_PROG_CC_C_O, we do the test twice because some
+-+  # compilers refuse to overwrite an existing .o file with -o,
+-+  # though they will create one.
+-+  am_cv_prog_cc_c_o=yes
+-+  for am_i in 1 2; do
+-+    if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
+-+   ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
+-+   ac_status=$?
+-+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+-+   (exit $ac_status); } \
+-+         && test -f conftest2.$ac_objext; then
+-+      : OK
+-+    else
+-+      am_cv_prog_cc_c_o=no
+-+      break
+-+    fi
+-+  done
+-+  rm -f core conftest*
+-+  unset am_i
+-+fi
+-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+-+$as_echo "$am_cv_prog_cc_c_o" >&6; }
+-+if test "$am_cv_prog_cc_c_o" != yes; then
+-+   # Losing compiler, so override with the script.
+-+   # FIXME: It is wrong to rewrite CC.
+-+   # But if we don't then we get into trouble of one sort or another.
+-+   # A longer-term fix would be to have automake use am__CC in this case,
+-+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+-+   CC="$am_aux_dir/compile $CC"
+-+fi
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-+
+-+
+- depcc="$CC"   am_compiler_list=
+- 
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+-@@ -7073,7 +7222,7 @@ ia64-*-hpux*)
+-   rm -rf conftest*
+-   ;;
+- 
+--x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+-+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
+- s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+-   # Find out which ABI we are using.
+-   echo 'int i;' > conftest.$ac_ext
+-@@ -7091,7 +7240,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*
+-        x86_64-*linux*)
+-          LD="${LD-ld} -m elf_i386"
+-          ;;
+--       ppc64-*linux*|powerpc64-*linux*)
+-+       powerpc64le-*linux*)
+-+         LD="${LD-ld} -m elf32lppclinux"
+-+         ;;
+-+       powerpc64-*linux*)
+-          LD="${LD-ld} -m elf32ppclinux"
+-          ;;
+-        s390x-*linux*)
+-@@ -7110,7 +7262,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*
+-        x86_64-*linux*)
+-          LD="${LD-ld} -m elf_x86_64"
+-          ;;
+--       ppc*-*linux*|powerpc*-*linux*)
+-+       powerpcle-*linux*)
+-+         LD="${LD-ld} -m elf64lppc"
+-+         ;;
+-+       powerpc-*linux*)
+-          LD="${LD-ld} -m elf64ppc"
+-          ;;
+-        s390*-*linux*|s390*-*tpf*)
+-@@ -11133,10 +11288,14 @@ fi
+-   # before this can be enabled.
+-   hardcode_into_libs=yes
+- 
+-+  # Add ABI-specific directories to the system library path.
+-+  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+-+
+-   # Append ld.so.conf contents to the search path
+-   if test -f /etc/ld.so.conf; then
+-     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[    ]*hwcap[        ]/d;s/[:,      ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
+--    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+-+    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+-+
+-   fi
+- 
+-   # We used to test for /lib/ld.so.1 and disable shared libraries on
+-@@ -14964,10 +15123,14 @@ fi
+-   # before this can be enabled.
+-   hardcode_into_libs=yes
+- 
+-+  # Add ABI-specific directories to the system library path.
+-+  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+-+
+-   # Append ld.so.conf contents to the search path
+-   if test -f /etc/ld.so.conf; then
+-     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[    ]*hwcap[        ]/d;s/[:,      ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
+--    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+-+    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+-+
+-   fi
+- 
+-   # We used to test for /lib/ld.so.1 and disable shared libraries on
+-@@ -16040,7 +16203,7 @@ $as_echo "#define BOOST_ALL_NO_LIB /**/"
+- # ======================
+- # Set required ixion api
+- # ======================
+--IXION_REQUIRED_API_VERSION=0.8
+-+IXION_REQUIRED_API_VERSION=0.10
+- 
+- 
+- # =============
+-@@ -16049,7 +16212,7 @@ IXION_REQUIRED_API_VERSION=0.8
+- ORCUS_API_VERSION=0.8
+- 
+- 
+--echo "$as_me: this is boost.m4 serial 18" >&5
+-+echo "$as_me: this is boost.m4 serial 24" >&5
+- boost_save_IFS=$IFS
+- boost_version_req=1.36
+- IFS=.
+-@@ -16193,17 +16356,30 @@ $as_echo_n "checking for Boost's header
+- if ${boost_cv_lib_version+:} false; then :
+-   $as_echo_n "(cached) " >&6
+- else
+--       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-+       ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+- /* end confdefs.h.  */
+- #include <boost/version.hpp>
+- boost-lib-version = BOOST_LIB_VERSION
+- _ACEOF
+- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-+  grep -v '#' |
+-+  grep -Ev '^(conftest.cpp| *command-line arguments :)' |
+-   tr -d '\r' |
+--  $SED -n -e "/^boost-lib-version = /{s///;s/\"//g;p;q;}" >conftest.i 2>&1; then :
+-+  tr -s '\n' ' ' |
+-+  $SED -n -e "/^ *boost-lib-version = /{s///;s/[\" ]//g;p;q;}" >conftest.i 2>&1; then :
+-   boost_cv_lib_version=`cat conftest.i`
+- fi
+- rm -rf conftest*
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+- 
+- fi
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_version" >&5
+-@@ -16212,7 +16387,7 @@ $as_echo "$boost_cv_lib_version" >&6; }
+-     boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'`
+-     case $boost_major_version in #(
+-       '' | *[!0-9]*)
+--        as_fn_error $? "invalid value: boost_major_version=$boost_major_version" "$LINENO" 5
+-+        as_fn_error $? "invalid value: boost_major_version='$boost_major_version'" "$LINENO" 5
+-         ;;
+-     esac
+- fi
+-@@ -16244,14 +16419,53 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-   # I'm not sure about my test for `il' (be careful: Intel's ICC pre-defines
+-   # the same defines as GCC's).
+-   for i in \
+-+    "defined __GNUC__ && __GNUC__ == 5 && __GNUC_MINOR__ == 0 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw50" \
+-+    "defined __GNUC__ && __GNUC__ == 5 && __GNUC_MINOR__ == 0 && !defined __ICC @ gcc50" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 10 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw410" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 10 && !defined __ICC @ gcc410" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 9 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw49" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 9 && !defined __ICC @ gcc49" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 8 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw48" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 8 && !defined __ICC @ gcc48" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 7 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw47" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 7 && !defined __ICC @ gcc47" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 6 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw46" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 6 && !defined __ICC @ gcc46" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 5 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw45" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 5 && !defined __ICC @ gcc45" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 4 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw44" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 4 && !defined __ICC @ gcc44" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 3 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw43" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 3 && !defined __ICC @ gcc43" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw42" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && !defined __ICC @ gcc42" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 1 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw41" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 1 && !defined __ICC @ gcc41" \
+-+    "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 0 && !defined __ICC && \
+-+  (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-+         || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw40" \
+-     "defined __GNUC__ && __GNUC__ == 4 && __GNUC_MINOR__ == 0 && !defined __ICC @ gcc40" \
+-     "defined __GNUC__ && __GNUC__ == 3 && !defined __ICC \
+-      && (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \
+-@@ -16338,6 +16552,11 @@ else
+- fi
+- 
+- # Check whether we do better use `mt' even though we weren't ask to.
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+- /* end confdefs.h.  */
+- 
+-@@ -16361,6 +16580,11 @@ else
+-   boost_guess_use_mt=false
+- fi
+- rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+- 
+- if test x"$boost_cv_inc_path" = xno; then
+-   { $as_echo "$as_me:${as_lineno-$LINENO}: Boost not available, not searching for the Boost system library" >&5
+-@@ -16402,13 +16626,6 @@ fi
+- 
+- boost_save_CPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+--# Now let's try to find the library.  The algorithm is as follows: first look
+--# for a given library name according to the user's PREFERRED-RT-OPT.  For each
+--# library name, we prefer to use the ones that carry the tag (toolset name).
+--# Each library is searched through the various standard paths were Boost is
+--# usually installed.  If we can't find the standard variants, we try to
+--# enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist
+--# but there's -obviously- libboost_threads-mt.dylib).
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the Boost system library" >&5
+- $as_echo_n "checking for the Boost system library... " >&6; }
+- if ${boost_cv_lib_system+:} false; then :
+-@@ -16416,19 +16633,19 @@ if ${boost_cv_lib_system+:} false; then
+- else
+-   boost_cv_lib_system=no
+-   case "" in #(
+--    mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+--    mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+--    *) boost_mt=; boost_rtopt=;;
+-+    (mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+-+    (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+-+    (*) boost_mt=; boost_rtopt=;;
+-   esac
+-   if test $enable_static_boost = yes; then
+-     boost_rtopt="s$boost_rtopt"
+-   fi
+-   # Find the proper debug variant depending on what we've been asked to find.
+-   case $boost_rtopt in #(
+--    *d*) boost_rt_d=$boost_rtopt;; #(
+--    *[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-+    (*d*) boost_rt_d=$boost_rtopt;; #(
+-+    (*[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-       boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #(
+--    *) boost_rt_d='-d';;
+-+    (*) boost_rt_d='-d';;
+-   esac
+-   # If the PREFERRED-RT-OPT are not empty, prepend a `-'.
+-   test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+-@@ -16459,21 +16676,22 @@ fi
+- rm -f core conftest.err conftest.$ac_objext
+-   ac_objext=$boost_save_ac_objext
+-   boost_failed_libs=
+--# Don't bother to ident the 6 nested for loops, only the 2 innermost ones
+--# matter.
+-+# Don't bother to ident the following nested for loops, only the 2
+-+# innermost ones matter.
+-+for boost_lib_ in system; do
+- for boost_tag_ in -$boost_cv_lib_tag ''; do
+- for boost_ver_ in -$boost_cv_lib_version ''; do
+- for boost_mt_ in $boost_mt -mt ''; do
+- for boost_rtopt_ in $boost_rtopt '' -d; do
+-   for boost_lib in \
+--    boost_system$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+--    boost_system$boost_tag_$boost_rtopt_$boost_ver_ \
+--    boost_system$boost_tag_$boost_mt_$boost_ver_ \
+--    boost_system$boost_tag_$boost_ver_
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_ver_
+-   do
+-     # Avoid testing twice the same lib
+-     case $boost_failed_libs in #(
+--      *@$boost_lib@*) continue;;
+-+      (*@$boost_lib@*) continue;;
+-     esac
+-     # If with_boost is empty, we'll search in /lib first, which is not quite
+-     # right so instead we'll try to a location based on where the headers are.
+-@@ -16483,14 +16701,17 @@ for boost_rtopt_ in $boost_rtopt '' -d;
+-              /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \
+-              "$with_boost" C:/Boost/lib /lib*
+-     do
+--      test -e "$boost_ldpath" || continue
+-+      # Don't waste time with directories that don't exist.
+-+      if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then
+-+        continue
+-+      fi
+-       boost_save_LDFLAGS=$LDFLAGS
+-       # Are we looking for a static library?
+-       case $boost_ldpath:$boost_rtopt_ in #(
+--        *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-+        (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-           boost_cv_lib_system_LIBS="$boost_ldpath/lib$boost_lib.$libext"
+-           test -e "$boost_cv_lib_system_LIBS" || continue;; #(
+--        *) # No: use -lboost_foo to find the shared library.
+-+        (*) # No: use -lboost_foo to find the shared library.
+-           boost_cv_lib_system_LIBS="-l$boost_lib";;
+-       esac
+-       boost_save_LIBS=$LIBS
+-@@ -16519,11 +16740,11 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_cv_lib_system=yes
+- else
+-@@ -16542,17 +16763,22 @@ rm -f core conftest.err conftest_ipa8_co
+-       LDFLAGS=$boost_save_LDFLAGS
+-       LIBS=$boost_save_LIBS
+-       if test x"$boost_cv_lib_system" = xyes; then
+--        # Check or used cached result of whether or not using -R or -rpath makes sense.
+--        # Some implementations of ld, such as for Mac OSX, require -rpath but
+--        # -R is the flag known to work on other systems.
+--        # https://github.com/tsuna/boost.m4/issues/19
+-+        # Check or used cached result of whether or not using -R or
+-+        # -rpath makes sense.  Some implementations of ld, such as for
+-+        # Mac OSX, require -rpath but -R is the flag known to work on
+-+        # other systems.  https://github.com/tsuna/boost.m4/issues/19
+-         if ${boost_cv_rpath_link_ldflag+:} false; then :
+-   $as_echo_n "(cached) " >&6
+- else
+--  for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+--            LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+--            LIBS="$boost_save_LIBS $boost_cv_lib_system_LIBS"
+--            rm -f conftest$ac_exeext
+-+  case $boost_ldpath in
+-+           '') # Nothing to do.
+-+             boost_cv_rpath_link_ldflag=
+-+             boost_rpath_link_ldflag_found=yes;;
+-+           *)
+-+            for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+-+              LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+              LIBS="$boost_save_LIBS $boost_cv_lib_system_LIBS"
+-+              rm -f conftest$ac_exeext
+- boost_save_ac_ext=$ac_ext
+- boost_use_source=:
+- # If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-@@ -16575,14 +16801,14 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_rpath_link_ldflag_found=yes
+--              break
+-+                break
+- else
+-   if $boost_use_source; then
+-          $as_echo "$as_me: failed program was:" >&5
+-@@ -16595,7 +16821,9 @@ ac_objext=$boost_save_ac_objext
+- ac_ext=$boost_save_ac_ext
+- rm -f core conftest.err conftest_ipa8_conftest.oo \
+-       conftest$ac_exeext
+--          done
+-+            done
+-+            ;;
+-+          esac
+-           if test "x$boost_rpath_link_ldflag_found" != "xyes"; then :
+-   as_fn_error $? "Unable to determine whether to use -R or -rpath" "$LINENO" 5
+- fi
+-@@ -16604,9 +16832,10 @@ fi
+- 
+- fi
+- 
+--        boost_cv_lib_system_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+        test x"$boost_ldpath" != x &&
+-+          boost_cv_lib_system_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-         boost_cv_lib_system_LDPATH="$boost_ldpath"
+--        break 6
+-+        break 7
+-       else
+-         boost_failed_libs="$boost_failed_libs@$boost_lib@"
+-       fi
+-@@ -16616,13 +16845,14 @@ done
+- done
+- done
+- done
+-+done # boost_lib_
+- rm -f conftest.$ac_objext
+- 
+- fi
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_system" >&5
+- $as_echo "$boost_cv_lib_system" >&6; }
+- case $boost_cv_lib_system in #(
+--  no) $as_echo "$as_me: failed program was:" >&5
+-+  (no) $as_echo "$as_me: failed program was:" >&5
+- sed 's/^/| /' conftest.$ac_ext >&5
+- 
+-     as_fn_error $? "cannot find the flags to link with Boost system" "$LINENO" 5
+-@@ -16650,11 +16880,11 @@ fi
+- if test "${enable_werror+set}" = set; then :
+-   enableval=$enable_werror; enable_werror="$enableval"
+- else
+--  enable_werror=yes
+-+  enable_werror=no
+- 
+- fi
+- 
+--if test x"$enable_werror" != "xno"; then :
+-+if test x"$enable_werror" == "xyes"; then :
+- 
+-      CXXFLAGS="$CXXFLAGS -Werror"
+- 
+-@@ -16936,13 +17166,6 @@ fi
+- 
+- boost_save_CPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+--# Now let's try to find the library.  The algorithm is as follows: first look
+--# for a given library name according to the user's PREFERRED-RT-OPT.  For each
+--# library name, we prefer to use the ones that carry the tag (toolset name).
+--# Each library is searched through the various standard paths were Boost is
+--# usually installed.  If we can't find the standard variants, we try to
+--# enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist
+--# but there's -obviously- libboost_threads-mt.dylib).
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the Boost iostreams library" >&5
+- $as_echo_n "checking for the Boost iostreams library... " >&6; }
+- if ${boost_cv_lib_iostreams+:} false; then :
+-@@ -16950,19 +17173,19 @@ if ${boost_cv_lib_iostreams+:} false; th
+- else
+-   boost_cv_lib_iostreams=no
+-   case "" in #(
+--    mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+--    mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+--    *) boost_mt=; boost_rtopt=;;
+-+    (mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+-+    (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+-+    (*) boost_mt=; boost_rtopt=;;
+-   esac
+-   if test $enable_static_boost = yes; then
+-     boost_rtopt="s$boost_rtopt"
+-   fi
+-   # Find the proper debug variant depending on what we've been asked to find.
+-   case $boost_rtopt in #(
+--    *d*) boost_rt_d=$boost_rtopt;; #(
+--    *[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-+    (*d*) boost_rt_d=$boost_rtopt;; #(
+-+    (*[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-       boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #(
+--    *) boost_rt_d='-d';;
+-+    (*) boost_rt_d='-d';;
+-   esac
+-   # If the PREFERRED-RT-OPT are not empty, prepend a `-'.
+-   test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+-@@ -16993,21 +17216,22 @@ fi
+- rm -f core conftest.err conftest.$ac_objext
+-   ac_objext=$boost_save_ac_objext
+-   boost_failed_libs=
+--# Don't bother to ident the 6 nested for loops, only the 2 innermost ones
+--# matter.
+-+# Don't bother to ident the following nested for loops, only the 2
+-+# innermost ones matter.
+-+for boost_lib_ in iostreams; do
+- for boost_tag_ in -$boost_cv_lib_tag ''; do
+- for boost_ver_ in -$boost_cv_lib_version ''; do
+- for boost_mt_ in $boost_mt -mt ''; do
+- for boost_rtopt_ in $boost_rtopt '' -d; do
+-   for boost_lib in \
+--    boost_iostreams$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+--    boost_iostreams$boost_tag_$boost_rtopt_$boost_ver_ \
+--    boost_iostreams$boost_tag_$boost_mt_$boost_ver_ \
+--    boost_iostreams$boost_tag_$boost_ver_
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_ver_
+-   do
+-     # Avoid testing twice the same lib
+-     case $boost_failed_libs in #(
+--      *@$boost_lib@*) continue;;
+-+      (*@$boost_lib@*) continue;;
+-     esac
+-     # If with_boost is empty, we'll search in /lib first, which is not quite
+-     # right so instead we'll try to a location based on where the headers are.
+-@@ -17017,14 +17241,17 @@ for boost_rtopt_ in $boost_rtopt '' -d;
+-              /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \
+-              "$with_boost" C:/Boost/lib /lib*
+-     do
+--      test -e "$boost_ldpath" || continue
+-+      # Don't waste time with directories that don't exist.
+-+      if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then
+-+        continue
+-+      fi
+-       boost_save_LDFLAGS=$LDFLAGS
+-       # Are we looking for a static library?
+-       case $boost_ldpath:$boost_rtopt_ in #(
+--        *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-+        (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-           boost_cv_lib_iostreams_LIBS="$boost_ldpath/lib$boost_lib.$libext"
+-           test -e "$boost_cv_lib_iostreams_LIBS" || continue;; #(
+--        *) # No: use -lboost_foo to find the shared library.
+-+        (*) # No: use -lboost_foo to find the shared library.
+-           boost_cv_lib_iostreams_LIBS="-l$boost_lib";;
+-       esac
+-       boost_save_LIBS=$LIBS
+-@@ -17053,11 +17280,11 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_cv_lib_iostreams=yes
+- else
+-@@ -17076,17 +17303,22 @@ rm -f core conftest.err conftest_ipa8_co
+-       LDFLAGS=$boost_save_LDFLAGS
+-       LIBS=$boost_save_LIBS
+-       if test x"$boost_cv_lib_iostreams" = xyes; then
+--        # Check or used cached result of whether or not using -R or -rpath makes sense.
+--        # Some implementations of ld, such as for Mac OSX, require -rpath but
+--        # -R is the flag known to work on other systems.
+--        # https://github.com/tsuna/boost.m4/issues/19
+-+        # Check or used cached result of whether or not using -R or
+-+        # -rpath makes sense.  Some implementations of ld, such as for
+-+        # Mac OSX, require -rpath but -R is the flag known to work on
+-+        # other systems.  https://github.com/tsuna/boost.m4/issues/19
+-         if ${boost_cv_rpath_link_ldflag+:} false; then :
+-   $as_echo_n "(cached) " >&6
+- else
+--  for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+--            LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+--            LIBS="$boost_save_LIBS $boost_cv_lib_iostreams_LIBS"
+--            rm -f conftest$ac_exeext
+-+  case $boost_ldpath in
+-+           '') # Nothing to do.
+-+             boost_cv_rpath_link_ldflag=
+-+             boost_rpath_link_ldflag_found=yes;;
+-+           *)
+-+            for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+-+              LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+              LIBS="$boost_save_LIBS $boost_cv_lib_iostreams_LIBS"
+-+              rm -f conftest$ac_exeext
+- boost_save_ac_ext=$ac_ext
+- boost_use_source=:
+- # If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-@@ -17109,14 +17341,14 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_rpath_link_ldflag_found=yes
+--              break
+-+                break
+- else
+-   if $boost_use_source; then
+-          $as_echo "$as_me: failed program was:" >&5
+-@@ -17129,7 +17361,9 @@ ac_objext=$boost_save_ac_objext
+- ac_ext=$boost_save_ac_ext
+- rm -f core conftest.err conftest_ipa8_conftest.oo \
+-       conftest$ac_exeext
+--          done
+-+            done
+-+            ;;
+-+          esac
+-           if test "x$boost_rpath_link_ldflag_found" != "xyes"; then :
+-   as_fn_error $? "Unable to determine whether to use -R or -rpath" "$LINENO" 5
+- fi
+-@@ -17138,9 +17372,10 @@ fi
+- 
+- fi
+- 
+--        boost_cv_lib_iostreams_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+        test x"$boost_ldpath" != x &&
+-+          boost_cv_lib_iostreams_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-         boost_cv_lib_iostreams_LDPATH="$boost_ldpath"
+--        break 6
+-+        break 7
+-       else
+-         boost_failed_libs="$boost_failed_libs@$boost_lib@"
+-       fi
+-@@ -17150,13 +17385,14 @@ done
+- done
+- done
+- done
+-+done # boost_lib_
+- rm -f conftest.$ac_objext
+- 
+- fi
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_iostreams" >&5
+- $as_echo "$boost_cv_lib_iostreams" >&6; }
+- case $boost_cv_lib_iostreams in #(
+--  no) $as_echo "$as_me: failed program was:" >&5
+-+  (no) $as_echo "$as_me: failed program was:" >&5
+- sed 's/^/| /' conftest.$ac_ext >&5
+- 
+-     as_fn_error $? "cannot find the flags to link with Boost iostreams" "$LINENO" 5
+-@@ -17221,13 +17457,6 @@ fi
+- 
+- boost_save_CPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+--# Now let's try to find the library.  The algorithm is as follows: first look
+--# for a given library name according to the user's PREFERRED-RT-OPT.  For each
+--# library name, we prefer to use the ones that carry the tag (toolset name).
+--# Each library is searched through the various standard paths were Boost is
+--# usually installed.  If we can't find the standard variants, we try to
+--# enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist
+--# but there's -obviously- libboost_threads-mt.dylib).
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the Boost program_options library" >&5
+- $as_echo_n "checking for the Boost program_options library... " >&6; }
+- if ${boost_cv_lib_program_options+:} false; then :
+-@@ -17235,19 +17464,19 @@ if ${boost_cv_lib_program_options+:} fal
+- else
+-   boost_cv_lib_program_options=no
+-   case "" in #(
+--    mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+--    mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+--    *) boost_mt=; boost_rtopt=;;
+-+    (mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+-+    (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+-+    (*) boost_mt=; boost_rtopt=;;
+-   esac
+-   if test $enable_static_boost = yes; then
+-     boost_rtopt="s$boost_rtopt"
+-   fi
+-   # Find the proper debug variant depending on what we've been asked to find.
+-   case $boost_rtopt in #(
+--    *d*) boost_rt_d=$boost_rtopt;; #(
+--    *[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-+    (*d*) boost_rt_d=$boost_rtopt;; #(
+-+    (*[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-       boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #(
+--    *) boost_rt_d='-d';;
+-+    (*) boost_rt_d='-d';;
+-   esac
+-   # If the PREFERRED-RT-OPT are not empty, prepend a `-'.
+-   test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+-@@ -17278,21 +17507,22 @@ fi
+- rm -f core conftest.err conftest.$ac_objext
+-   ac_objext=$boost_save_ac_objext
+-   boost_failed_libs=
+--# Don't bother to ident the 6 nested for loops, only the 2 innermost ones
+--# matter.
+-+# Don't bother to ident the following nested for loops, only the 2
+-+# innermost ones matter.
+-+for boost_lib_ in program_options; do
+- for boost_tag_ in -$boost_cv_lib_tag ''; do
+- for boost_ver_ in -$boost_cv_lib_version ''; do
+- for boost_mt_ in $boost_mt -mt ''; do
+- for boost_rtopt_ in $boost_rtopt '' -d; do
+-   for boost_lib in \
+--    boost_program_options$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+--    boost_program_options$boost_tag_$boost_rtopt_$boost_ver_ \
+--    boost_program_options$boost_tag_$boost_mt_$boost_ver_ \
+--    boost_program_options$boost_tag_$boost_ver_
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_ver_
+-   do
+-     # Avoid testing twice the same lib
+-     case $boost_failed_libs in #(
+--      *@$boost_lib@*) continue;;
+-+      (*@$boost_lib@*) continue;;
+-     esac
+-     # If with_boost is empty, we'll search in /lib first, which is not quite
+-     # right so instead we'll try to a location based on where the headers are.
+-@@ -17302,14 +17532,17 @@ for boost_rtopt_ in $boost_rtopt '' -d;
+-              /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \
+-              "$with_boost" C:/Boost/lib /lib*
+-     do
+--      test -e "$boost_ldpath" || continue
+-+      # Don't waste time with directories that don't exist.
+-+      if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then
+-+        continue
+-+      fi
+-       boost_save_LDFLAGS=$LDFLAGS
+-       # Are we looking for a static library?
+-       case $boost_ldpath:$boost_rtopt_ in #(
+--        *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-+        (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-           boost_cv_lib_program_options_LIBS="$boost_ldpath/lib$boost_lib.$libext"
+-           test -e "$boost_cv_lib_program_options_LIBS" || continue;; #(
+--        *) # No: use -lboost_foo to find the shared library.
+-+        (*) # No: use -lboost_foo to find the shared library.
+-           boost_cv_lib_program_options_LIBS="-l$boost_lib";;
+-       esac
+-       boost_save_LIBS=$LIBS
+-@@ -17338,11 +17571,11 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_cv_lib_program_options=yes
+- else
+-@@ -17361,17 +17594,22 @@ rm -f core conftest.err conftest_ipa8_co
+-       LDFLAGS=$boost_save_LDFLAGS
+-       LIBS=$boost_save_LIBS
+-       if test x"$boost_cv_lib_program_options" = xyes; then
+--        # Check or used cached result of whether or not using -R or -rpath makes sense.
+--        # Some implementations of ld, such as for Mac OSX, require -rpath but
+--        # -R is the flag known to work on other systems.
+--        # https://github.com/tsuna/boost.m4/issues/19
+-+        # Check or used cached result of whether or not using -R or
+-+        # -rpath makes sense.  Some implementations of ld, such as for
+-+        # Mac OSX, require -rpath but -R is the flag known to work on
+-+        # other systems.  https://github.com/tsuna/boost.m4/issues/19
+-         if ${boost_cv_rpath_link_ldflag+:} false; then :
+-   $as_echo_n "(cached) " >&6
+- else
+--  for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+--            LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+--            LIBS="$boost_save_LIBS $boost_cv_lib_program_options_LIBS"
+--            rm -f conftest$ac_exeext
+-+  case $boost_ldpath in
+-+           '') # Nothing to do.
+-+             boost_cv_rpath_link_ldflag=
+-+             boost_rpath_link_ldflag_found=yes;;
+-+           *)
+-+            for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+-+              LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+              LIBS="$boost_save_LIBS $boost_cv_lib_program_options_LIBS"
+-+              rm -f conftest$ac_exeext
+- boost_save_ac_ext=$ac_ext
+- boost_use_source=:
+- # If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-@@ -17394,14 +17632,14 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_rpath_link_ldflag_found=yes
+--              break
+-+                break
+- else
+-   if $boost_use_source; then
+-          $as_echo "$as_me: failed program was:" >&5
+-@@ -17414,7 +17652,9 @@ ac_objext=$boost_save_ac_objext
+- ac_ext=$boost_save_ac_ext
+- rm -f core conftest.err conftest_ipa8_conftest.oo \
+-       conftest$ac_exeext
+--          done
+-+            done
+-+            ;;
+-+          esac
+-           if test "x$boost_rpath_link_ldflag_found" != "xyes"; then :
+-   as_fn_error $? "Unable to determine whether to use -R or -rpath" "$LINENO" 5
+- fi
+-@@ -17423,9 +17663,10 @@ fi
+- 
+- fi
+- 
+--        boost_cv_lib_program_options_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+        test x"$boost_ldpath" != x &&
+-+          boost_cv_lib_program_options_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-         boost_cv_lib_program_options_LDPATH="$boost_ldpath"
+--        break 6
+-+        break 7
+-       else
+-         boost_failed_libs="$boost_failed_libs@$boost_lib@"
+-       fi
+-@@ -17435,13 +17676,14 @@ done
+- done
+- done
+- done
+-+done # boost_lib_
+- rm -f conftest.$ac_objext
+- 
+- fi
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_program_options" >&5
+- $as_echo "$boost_cv_lib_program_options" >&6; }
+- case $boost_cv_lib_program_options in #(
+--  no) $as_echo "$as_me: failed program was:" >&5
+-+  (no) $as_echo "$as_me: failed program was:" >&5
+- sed 's/^/| /' conftest.$ac_ext >&5
+- 
+-     as_fn_error $? "cannot find the flags to link with Boost program_options" "$LINENO" 5
+-@@ -17465,7 +17707,7 @@ fi
+- # added as of 1.35.0.  If we have a version <1.35, we must not attempt to
+- # find Boost.System as it didn't exist by then.
+- if test $boost_major_version -ge 135; then
+--if test x"$boost_cv_inc_path" = xno; then
+-+  if test x"$boost_cv_inc_path" = xno; then
+-   { $as_echo "$as_me:${as_lineno-$LINENO}: Boost not available, not searching for the Boost system library" >&5
+- $as_echo "$as_me: Boost not available, not searching for the Boost system library" >&6;}
+- else
+-@@ -17505,13 +17747,6 @@ fi
+- 
+- boost_save_CPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+--# Now let's try to find the library.  The algorithm is as follows: first look
+--# for a given library name according to the user's PREFERRED-RT-OPT.  For each
+--# library name, we prefer to use the ones that carry the tag (toolset name).
+--# Each library is searched through the various standard paths were Boost is
+--# usually installed.  If we can't find the standard variants, we try to
+--# enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist
+--# but there's -obviously- libboost_threads-mt.dylib).
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the Boost system library" >&5
+- $as_echo_n "checking for the Boost system library... " >&6; }
+- if ${boost_cv_lib_system+:} false; then :
+-@@ -17519,19 +17754,19 @@ if ${boost_cv_lib_system+:} false; then
+- else
+-   boost_cv_lib_system=no
+-   case "" in #(
+--    mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+--    mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+--    *) boost_mt=; boost_rtopt=;;
+-+    (mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+-+    (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+-+    (*) boost_mt=; boost_rtopt=;;
+-   esac
+-   if test $enable_static_boost = yes; then
+-     boost_rtopt="s$boost_rtopt"
+-   fi
+-   # Find the proper debug variant depending on what we've been asked to find.
+-   case $boost_rtopt in #(
+--    *d*) boost_rt_d=$boost_rtopt;; #(
+--    *[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-+    (*d*) boost_rt_d=$boost_rtopt;; #(
+-+    (*[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-       boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #(
+--    *) boost_rt_d='-d';;
+-+    (*) boost_rt_d='-d';;
+-   esac
+-   # If the PREFERRED-RT-OPT are not empty, prepend a `-'.
+-   test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+-@@ -17562,21 +17797,22 @@ fi
+- rm -f core conftest.err conftest.$ac_objext
+-   ac_objext=$boost_save_ac_objext
+-   boost_failed_libs=
+--# Don't bother to ident the 6 nested for loops, only the 2 innermost ones
+--# matter.
+-+# Don't bother to ident the following nested for loops, only the 2
+-+# innermost ones matter.
+-+for boost_lib_ in system; do
+- for boost_tag_ in -$boost_cv_lib_tag ''; do
+- for boost_ver_ in -$boost_cv_lib_version ''; do
+- for boost_mt_ in $boost_mt -mt ''; do
+- for boost_rtopt_ in $boost_rtopt '' -d; do
+-   for boost_lib in \
+--    boost_system$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+--    boost_system$boost_tag_$boost_rtopt_$boost_ver_ \
+--    boost_system$boost_tag_$boost_mt_$boost_ver_ \
+--    boost_system$boost_tag_$boost_ver_
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_ver_
+-   do
+-     # Avoid testing twice the same lib
+-     case $boost_failed_libs in #(
+--      *@$boost_lib@*) continue;;
+-+      (*@$boost_lib@*) continue;;
+-     esac
+-     # If with_boost is empty, we'll search in /lib first, which is not quite
+-     # right so instead we'll try to a location based on where the headers are.
+-@@ -17586,14 +17822,17 @@ for boost_rtopt_ in $boost_rtopt '' -d;
+-              /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \
+-              "$with_boost" C:/Boost/lib /lib*
+-     do
+--      test -e "$boost_ldpath" || continue
+-+      # Don't waste time with directories that don't exist.
+-+      if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then
+-+        continue
+-+      fi
+-       boost_save_LDFLAGS=$LDFLAGS
+-       # Are we looking for a static library?
+-       case $boost_ldpath:$boost_rtopt_ in #(
+--        *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-+        (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-           boost_cv_lib_system_LIBS="$boost_ldpath/lib$boost_lib.$libext"
+-           test -e "$boost_cv_lib_system_LIBS" || continue;; #(
+--        *) # No: use -lboost_foo to find the shared library.
+-+        (*) # No: use -lboost_foo to find the shared library.
+-           boost_cv_lib_system_LIBS="-l$boost_lib";;
+-       esac
+-       boost_save_LIBS=$LIBS
+-@@ -17622,11 +17861,11 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_cv_lib_system=yes
+- else
+-@@ -17645,17 +17884,22 @@ rm -f core conftest.err conftest_ipa8_co
+-       LDFLAGS=$boost_save_LDFLAGS
+-       LIBS=$boost_save_LIBS
+-       if test x"$boost_cv_lib_system" = xyes; then
+--        # Check or used cached result of whether or not using -R or -rpath makes sense.
+--        # Some implementations of ld, such as for Mac OSX, require -rpath but
+--        # -R is the flag known to work on other systems.
+--        # https://github.com/tsuna/boost.m4/issues/19
+-+        # Check or used cached result of whether or not using -R or
+-+        # -rpath makes sense.  Some implementations of ld, such as for
+-+        # Mac OSX, require -rpath but -R is the flag known to work on
+-+        # other systems.  https://github.com/tsuna/boost.m4/issues/19
+-         if ${boost_cv_rpath_link_ldflag+:} false; then :
+-   $as_echo_n "(cached) " >&6
+- else
+--  for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+--            LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+--            LIBS="$boost_save_LIBS $boost_cv_lib_system_LIBS"
+--            rm -f conftest$ac_exeext
+-+  case $boost_ldpath in
+-+           '') # Nothing to do.
+-+             boost_cv_rpath_link_ldflag=
+-+             boost_rpath_link_ldflag_found=yes;;
+-+           *)
+-+            for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+-+              LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+              LIBS="$boost_save_LIBS $boost_cv_lib_system_LIBS"
+-+              rm -f conftest$ac_exeext
+- boost_save_ac_ext=$ac_ext
+- boost_use_source=:
+- # If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-@@ -17678,14 +17922,14 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_rpath_link_ldflag_found=yes
+--              break
+-+                break
+- else
+-   if $boost_use_source; then
+-          $as_echo "$as_me: failed program was:" >&5
+-@@ -17698,7 +17942,9 @@ ac_objext=$boost_save_ac_objext
+- ac_ext=$boost_save_ac_ext
+- rm -f core conftest.err conftest_ipa8_conftest.oo \
+-       conftest$ac_exeext
+--          done
+-+            done
+-+            ;;
+-+          esac
+-           if test "x$boost_rpath_link_ldflag_found" != "xyes"; then :
+-   as_fn_error $? "Unable to determine whether to use -R or -rpath" "$LINENO" 5
+- fi
+-@@ -17707,9 +17953,10 @@ fi
+- 
+- fi
+- 
+--        boost_cv_lib_system_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+        test x"$boost_ldpath" != x &&
+-+          boost_cv_lib_system_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-         boost_cv_lib_system_LDPATH="$boost_ldpath"
+--        break 6
+-+        break 7
+-       else
+-         boost_failed_libs="$boost_failed_libs@$boost_lib@"
+-       fi
+-@@ -17719,13 +17966,14 @@ done
+- done
+- done
+- done
+-+done # boost_lib_
+- rm -f conftest.$ac_objext
+- 
+- fi
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_system" >&5
+- $as_echo "$boost_cv_lib_system" >&6; }
+- case $boost_cv_lib_system in #(
+--  no) $as_echo "$as_me: failed program was:" >&5
+-+  (no) $as_echo "$as_me: failed program was:" >&5
+- sed 's/^/| /' conftest.$ac_ext >&5
+- 
+-     as_fn_error $? "cannot find the flags to link with Boost system" "$LINENO" 5
+-@@ -17790,13 +18038,6 @@ fi
+- 
+- boost_save_CPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+--# Now let's try to find the library.  The algorithm is as follows: first look
+--# for a given library name according to the user's PREFERRED-RT-OPT.  For each
+--# library name, we prefer to use the ones that carry the tag (toolset name).
+--# Each library is searched through the various standard paths were Boost is
+--# usually installed.  If we can't find the standard variants, we try to
+--# enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist
+--# but there's -obviously- libboost_threads-mt.dylib).
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the Boost filesystem library" >&5
+- $as_echo_n "checking for the Boost filesystem library... " >&6; }
+- if ${boost_cv_lib_filesystem+:} false; then :
+-@@ -17804,19 +18045,19 @@ if ${boost_cv_lib_filesystem+:} false; t
+- else
+-   boost_cv_lib_filesystem=no
+-   case "" in #(
+--    mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+--    mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+--    *) boost_mt=; boost_rtopt=;;
+-+    (mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+-+    (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+-+    (*) boost_mt=; boost_rtopt=;;
+-   esac
+-   if test $enable_static_boost = yes; then
+-     boost_rtopt="s$boost_rtopt"
+-   fi
+-   # Find the proper debug variant depending on what we've been asked to find.
+-   case $boost_rtopt in #(
+--    *d*) boost_rt_d=$boost_rtopt;; #(
+--    *[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-+    (*d*) boost_rt_d=$boost_rtopt;; #(
+-+    (*[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-       boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #(
+--    *) boost_rt_d='-d';;
+-+    (*) boost_rt_d='-d';;
+-   esac
+-   # If the PREFERRED-RT-OPT are not empty, prepend a `-'.
+-   test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+-@@ -17847,21 +18088,22 @@ fi
+- rm -f core conftest.err conftest.$ac_objext
+-   ac_objext=$boost_save_ac_objext
+-   boost_failed_libs=
+--# Don't bother to ident the 6 nested for loops, only the 2 innermost ones
+--# matter.
+-+# Don't bother to ident the following nested for loops, only the 2
+-+# innermost ones matter.
+-+for boost_lib_ in filesystem; do
+- for boost_tag_ in -$boost_cv_lib_tag ''; do
+- for boost_ver_ in -$boost_cv_lib_version ''; do
+- for boost_mt_ in $boost_mt -mt ''; do
+- for boost_rtopt_ in $boost_rtopt '' -d; do
+-   for boost_lib in \
+--    boost_filesystem$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+--    boost_filesystem$boost_tag_$boost_rtopt_$boost_ver_ \
+--    boost_filesystem$boost_tag_$boost_mt_$boost_ver_ \
+--    boost_filesystem$boost_tag_$boost_ver_
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_ver_
+-   do
+-     # Avoid testing twice the same lib
+-     case $boost_failed_libs in #(
+--      *@$boost_lib@*) continue;;
+-+      (*@$boost_lib@*) continue;;
+-     esac
+-     # If with_boost is empty, we'll search in /lib first, which is not quite
+-     # right so instead we'll try to a location based on where the headers are.
+-@@ -17871,14 +18113,17 @@ for boost_rtopt_ in $boost_rtopt '' -d;
+-              /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \
+-              "$with_boost" C:/Boost/lib /lib*
+-     do
+--      test -e "$boost_ldpath" || continue
+-+      # Don't waste time with directories that don't exist.
+-+      if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then
+-+        continue
+-+      fi
+-       boost_save_LDFLAGS=$LDFLAGS
+-       # Are we looking for a static library?
+-       case $boost_ldpath:$boost_rtopt_ in #(
+--        *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-+        (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-           boost_cv_lib_filesystem_LIBS="$boost_ldpath/lib$boost_lib.$libext"
+-           test -e "$boost_cv_lib_filesystem_LIBS" || continue;; #(
+--        *) # No: use -lboost_foo to find the shared library.
+-+        (*) # No: use -lboost_foo to find the shared library.
+-           boost_cv_lib_filesystem_LIBS="-l$boost_lib";;
+-       esac
+-       boost_save_LIBS=$LIBS
+-@@ -17907,11 +18152,11 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_cv_lib_filesystem=yes
+- else
+-@@ -17930,17 +18175,22 @@ rm -f core conftest.err conftest_ipa8_co
+-       LDFLAGS=$boost_save_LDFLAGS
+-       LIBS=$boost_save_LIBS
+-       if test x"$boost_cv_lib_filesystem" = xyes; then
+--        # Check or used cached result of whether or not using -R or -rpath makes sense.
+--        # Some implementations of ld, such as for Mac OSX, require -rpath but
+--        # -R is the flag known to work on other systems.
+--        # https://github.com/tsuna/boost.m4/issues/19
+-+        # Check or used cached result of whether or not using -R or
+-+        # -rpath makes sense.  Some implementations of ld, such as for
+-+        # Mac OSX, require -rpath but -R is the flag known to work on
+-+        # other systems.  https://github.com/tsuna/boost.m4/issues/19
+-         if ${boost_cv_rpath_link_ldflag+:} false; then :
+-   $as_echo_n "(cached) " >&6
+- else
+--  for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+--            LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+--            LIBS="$boost_save_LIBS $boost_cv_lib_filesystem_LIBS"
+--            rm -f conftest$ac_exeext
+-+  case $boost_ldpath in
+-+           '') # Nothing to do.
+-+             boost_cv_rpath_link_ldflag=
+-+             boost_rpath_link_ldflag_found=yes;;
+-+           *)
+-+            for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+-+              LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+              LIBS="$boost_save_LIBS $boost_cv_lib_filesystem_LIBS"
+-+              rm -f conftest$ac_exeext
+- boost_save_ac_ext=$ac_ext
+- boost_use_source=:
+- # If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-@@ -17963,14 +18213,14 @@ $as_echo "$ac_try_echo"; } >&5
+-   fi
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; } && {
+--      test -z "$ac_cxx_werror_flag" ||
+--      test ! -s conftest.err
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-        } && test -s conftest$ac_exeext && {
+--      test "$cross_compiling" = yes ||
+--      $as_executable_p conftest$ac_exeext
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-        }; then :
+-   boost_rpath_link_ldflag_found=yes
+--              break
+-+                break
+- else
+-   if $boost_use_source; then
+-          $as_echo "$as_me: failed program was:" >&5
+-@@ -17983,7 +18233,9 @@ ac_objext=$boost_save_ac_objext
+- ac_ext=$boost_save_ac_ext
+- rm -f core conftest.err conftest_ipa8_conftest.oo \
+-       conftest$ac_exeext
+--          done
+-+            done
+-+            ;;
+-+          esac
+-           if test "x$boost_rpath_link_ldflag_found" != "xyes"; then :
+-   as_fn_error $? "Unable to determine whether to use -R or -rpath" "$LINENO" 5
+- fi
+-@@ -17992,9 +18244,10 @@ fi
+- 
+- fi
+- 
+--        boost_cv_lib_filesystem_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+        test x"$boost_ldpath" != x &&
+-+          boost_cv_lib_filesystem_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-         boost_cv_lib_filesystem_LDPATH="$boost_ldpath"
+--        break 6
+-+        break 7
+-       else
+-         boost_failed_libs="$boost_failed_libs@$boost_lib@"
+-       fi
+-@@ -18004,13 +18257,14 @@ done
+- done
+- done
+- done
+-+done # boost_lib_
+- rm -f conftest.$ac_objext
+- 
+- fi
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_filesystem" >&5
+- $as_echo "$boost_cv_lib_filesystem" >&6; }
+- case $boost_cv_lib_filesystem in #(
+--  no) $as_echo "$as_me: failed program was:" >&5
+-+  (no) $as_echo "$as_me: failed program was:" >&5
+- sed 's/^/| /' conftest.$ac_ext >&5
+- 
+-     as_fn_error $? "cannot find the flags to link with Boost filesystem" "$LINENO" 5
+-@@ -18029,13 +18283,298 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+- fi
+- 
+- if test $enable_static_boost = yes && test $boost_major_version -ge 135; then
+--    BOOST_FILESYSTEM_LIBS="$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS"
+--
+-+  BOOST_FILESYSTEM_LIBS="$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS"
+- fi
+- LIBS=$boost_filesystem_save_LIBS
+- LDFLAGS=$boost_filesystem_save_LDFLAGS
+- 
+- 
+-+        if test x"$boost_cv_inc_path" = xno; then
+-+  { $as_echo "$as_me:${as_lineno-$LINENO}: Boost not available, not searching for the Boost system library" >&5
+-+$as_echo "$as_me: Boost not available, not searching for the Boost system library" >&6;}
+-+else
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-+if test x"$boost_cv_inc_path" = xno; then
+-+  { $as_echo "$as_me:${as_lineno-$LINENO}: Boost not available, not searching for boost/system/error_code.hpp" >&5
+-+$as_echo "$as_me: Boost not available, not searching for boost/system/error_code.hpp" >&6;}
+-+else
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-+boost_save_CPPFLAGS=$CPPFLAGS
+-+CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+-+ac_fn_cxx_check_header_mongrel "$LINENO" "boost/system/error_code.hpp" "ac_cv_header_boost_system_error_code_hpp" "$ac_includes_default"
+-+if test "x$ac_cv_header_boost_system_error_code_hpp" = xyes; then :
+-+
+-+$as_echo "#define HAVE_BOOST_SYSTEM_ERROR_CODE_HPP 1" >>confdefs.h
+-+
+-+else
+-+  as_fn_error $? "cannot find boost/system/error_code.hpp" "$LINENO" 5
+-+fi
+-+
+-+
+-+CPPFLAGS=$boost_save_CPPFLAGS
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-+fi
+-+
+-+boost_save_CPPFLAGS=$CPPFLAGS
+-+CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for the Boost system library" >&5
+-+$as_echo_n "checking for the Boost system library... " >&6; }
+-+if ${boost_cv_lib_system+:} false; then :
+-+  $as_echo_n "(cached) " >&6
+-+else
+-+  boost_cv_lib_system=no
+-+  case "" in #(
+-+    (mt | mt-) boost_mt=-mt; boost_rtopt=;; #(
+-+    (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X" : 'Xmt-*\(.*\)'`;; #(
+-+    (*) boost_mt=; boost_rtopt=;;
+-+  esac
+-+  if test $enable_static_boost = yes; then
+-+    boost_rtopt="s$boost_rtopt"
+-+  fi
+-+  # Find the proper debug variant depending on what we've been asked to find.
+-+  case $boost_rtopt in #(
+-+    (*d*) boost_rt_d=$boost_rtopt;; #(
+-+    (*[sgpn]*) # Insert the `d' at the right place (in between `sg' and `pn')
+-+      boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #(
+-+    (*) boost_rt_d='-d';;
+-+  esac
+-+  # If the PREFERRED-RT-OPT are not empty, prepend a `-'.
+-+  test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+-+  $boost_guess_use_mt && boost_mt=-mt
+-+  # Look for the abs path the static archive.
+-+  # $libext is computed by Libtool but let's make sure it's non empty.
+-+  test -z "$libext" &&
+-+    as_fn_error $? "the libext variable is empty, did you invoke Libtool?" "$LINENO" 5
+-+  boost_save_ac_objext=$ac_objext
+-+  # Generate the test file.
+-+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-+/* end confdefs.h.  */
+-+#include <boost/system/error_code.hpp>
+-+
+-+int
+-+main ()
+-+{
+-+boost::system::error_code e; e.clear();
+-+  ;
+-+  return 0;
+-+}
+-+_ACEOF
+-+  if ac_fn_cxx_try_compile "$LINENO"; then :
+-+  ac_objext=do_not_rm_me_plz
+-+else
+-+  as_fn_error $? "cannot compile a test that uses Boost system" "$LINENO" 5
+-+fi
+-+rm -f core conftest.err conftest.$ac_objext
+-+  ac_objext=$boost_save_ac_objext
+-+  boost_failed_libs=
+-+# Don't bother to ident the following nested for loops, only the 2
+-+# innermost ones matter.
+-+for boost_lib_ in system; do
+-+for boost_tag_ in -$boost_cv_lib_tag ''; do
+-+for boost_ver_ in -$boost_cv_lib_version ''; do
+-+for boost_mt_ in $boost_mt -mt ''; do
+-+for boost_rtopt_ in $boost_rtopt '' -d; do
+-+  for boost_lib in \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \
+-+    boost_$boost_lib_$boost_tag_$boost_ver_
+-+  do
+-+    # Avoid testing twice the same lib
+-+    case $boost_failed_libs in #(
+-+      (*@$boost_lib@*) continue;;
+-+    esac
+-+    # If with_boost is empty, we'll search in /lib first, which is not quite
+-+    # right so instead we'll try to a location based on where the headers are.
+-+    boost_tmp_lib=$with_boost
+-+    test x"$with_boost" = x && boost_tmp_lib=${boost_cv_inc_path%/include}
+-+    for boost_ldpath in "$boost_tmp_lib/lib" '' \
+-+             /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \
+-+             "$with_boost" C:/Boost/lib /lib*
+-+    do
+-+      # Don't waste time with directories that don't exist.
+-+      if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then
+-+        continue
+-+      fi
+-+      boost_save_LDFLAGS=$LDFLAGS
+-+      # Are we looking for a static library?
+-+      case $boost_ldpath:$boost_rtopt_ in #(
+-+        (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-+          boost_cv_lib_system_LIBS="$boost_ldpath/lib$boost_lib.$libext"
+-+          test -e "$boost_cv_lib_system_LIBS" || continue;; #(
+-+        (*) # No: use -lboost_foo to find the shared library.
+-+          boost_cv_lib_system_LIBS="-l$boost_lib";;
+-+      esac
+-+      boost_save_LIBS=$LIBS
+-+      LIBS="$boost_cv_lib_system_LIBS $LIBS"
+-+      test x"$boost_ldpath" != x && LDFLAGS="$LDFLAGS -L$boost_ldpath"
+-+      rm -f conftest$ac_exeext
+-+boost_save_ac_ext=$ac_ext
+-+boost_use_source=:
+-+# If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-+# tries to link the existing object file instead of compiling from source.
+-+test -f conftest.$ac_objext && ac_ext=$ac_objext && boost_use_source=false &&
+-+  $as_echo "$as_me:${as_lineno-$LINENO}: re-using the existing conftest.$ac_objext" >&5
+-+if { { ac_try="$ac_link"
+-+case "(($ac_try" in
+-+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+-+  *) ac_try_echo=$ac_try;;
+-+esac
+-+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+-+$as_echo "$ac_try_echo"; } >&5
+-+  (eval "$ac_link") 2>conftest.err
+-+  ac_status=$?
+-+  if test -s conftest.err; then
+-+    grep -v '^ *+' conftest.err >conftest.er1
+-+    cat conftest.er1 >&5
+-+    mv -f conftest.er1 conftest.err
+-+  fi
+-+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-+  test $ac_status = 0; } && {
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-+       } && test -s conftest$ac_exeext && {
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-+       }; then :
+-+  boost_cv_lib_system=yes
+-+else
+-+  if $boost_use_source; then
+-+         $as_echo "$as_me: failed program was:" >&5
+-+sed 's/^/| /' conftest.$ac_ext >&5
+-+
+-+       fi
+-+       boost_cv_lib_system=no
+-+fi
+-+ac_objext=$boost_save_ac_objext
+-+ac_ext=$boost_save_ac_ext
+-+rm -f core conftest.err conftest_ipa8_conftest.oo \
+-+      conftest$ac_exeext
+-+      ac_objext=$boost_save_ac_objext
+-+      LDFLAGS=$boost_save_LDFLAGS
+-+      LIBS=$boost_save_LIBS
+-+      if test x"$boost_cv_lib_system" = xyes; then
+-+        # Check or used cached result of whether or not using -R or
+-+        # -rpath makes sense.  Some implementations of ld, such as for
+-+        # Mac OSX, require -rpath but -R is the flag known to work on
+-+        # other systems.  https://github.com/tsuna/boost.m4/issues/19
+-+        if ${boost_cv_rpath_link_ldflag+:} false; then :
+-+  $as_echo_n "(cached) " >&6
+-+else
+-+  case $boost_ldpath in
+-+           '') # Nothing to do.
+-+             boost_cv_rpath_link_ldflag=
+-+             boost_rpath_link_ldflag_found=yes;;
+-+           *)
+-+            for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do
+-+              LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+              LIBS="$boost_save_LIBS $boost_cv_lib_system_LIBS"
+-+              rm -f conftest$ac_exeext
+-+boost_save_ac_ext=$ac_ext
+-+boost_use_source=:
+-+# If we already have a .o, re-use it.  We change $ac_ext so that $ac_link
+-+# tries to link the existing object file instead of compiling from source.
+-+test -f conftest.$ac_objext && ac_ext=$ac_objext && boost_use_source=false &&
+-+  $as_echo "$as_me:${as_lineno-$LINENO}: re-using the existing conftest.$ac_objext" >&5
+-+if { { ac_try="$ac_link"
+-+case "(($ac_try" in
+-+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+-+  *) ac_try_echo=$ac_try;;
+-+esac
+-+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+-+$as_echo "$ac_try_echo"; } >&5
+-+  (eval "$ac_link") 2>conftest.err
+-+  ac_status=$?
+-+  if test -s conftest.err; then
+-+    grep -v '^ *+' conftest.err >conftest.er1
+-+    cat conftest.er1 >&5
+-+    mv -f conftest.er1 conftest.err
+-+  fi
+-+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-+  test $ac_status = 0; } && {
+-+         test -z "$ac_cxx_werror_flag" ||
+-+         test ! -s conftest.err
+-+       } && test -s conftest$ac_exeext && {
+-+         test "$cross_compiling" = yes ||
+-+         $as_executable_p conftest$ac_exeext
+-+       }; then :
+-+  boost_rpath_link_ldflag_found=yes
+-+                break
+-+else
+-+  if $boost_use_source; then
+-+         $as_echo "$as_me: failed program was:" >&5
+-+sed 's/^/| /' conftest.$ac_ext >&5
+-+
+-+       fi
+-+       boost_rpath_link_ldflag_found=no
+-+fi
+-+ac_objext=$boost_save_ac_objext
+-+ac_ext=$boost_save_ac_ext
+-+rm -f core conftest.err conftest_ipa8_conftest.oo \
+-+      conftest$ac_exeext
+-+            done
+-+            ;;
+-+          esac
+-+          if test "x$boost_rpath_link_ldflag_found" != "xyes"; then :
+-+  as_fn_error $? "Unable to determine whether to use -R or -rpath" "$LINENO" 5
+-+fi
+-+          LDFLAGS=$boost_save_LDFLAGS
+-+          LIBS=$boost_save_LIBS
+-+
+-+fi
+-+
+-+        test x"$boost_ldpath" != x &&
+-+          boost_cv_lib_system_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath"
+-+        boost_cv_lib_system_LDPATH="$boost_ldpath"
+-+        break 7
+-+      else
+-+        boost_failed_libs="$boost_failed_libs@$boost_lib@"
+-+      fi
+-+    done
+-+  done
+-+done
+-+done
+-+done
+-+done
+-+done # boost_lib_
+-+rm -f conftest.$ac_objext
+-+
+-+fi
+-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_system" >&5
+-+$as_echo "$boost_cv_lib_system" >&6; }
+-+case $boost_cv_lib_system in #(
+-+  (no) $as_echo "$as_me: failed program was:" >&5
+-+sed 's/^/| /' conftest.$ac_ext >&5
+-+
+-+    as_fn_error $? "cannot find the flags to link with Boost system" "$LINENO" 5
+-+    ;;
+-+esac
+-+BOOST_SYSTEM_LDFLAGS=$boost_cv_lib_system_LDFLAGS
+-+BOOST_SYSTEM_LDPATH=$boost_cv_lib_system_LDPATH
+-+BOOST_LDPATH=$boost_cv_lib_system_LDPATH
+-+BOOST_SYSTEM_LIBS=$boost_cv_lib_system_LIBS
+-+CPPFLAGS=$boost_save_CPPFLAGS
+-+ac_ext=cpp
+-+ac_cpp='$CXXCPP $CPPFLAGS'
+-+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+-+fi
+-+
+-+
+-+
+- 
+- fi
+- 
+-@@ -18051,12 +18590,12 @@ if test -n "$MDDS_CFLAGS"; then
+-     pkg_cv_MDDS_CFLAGS="$MDDS_CFLAGS"
+-  elif test -n "$PKG_CONFIG"; then
+-     if test -n "$PKG_CONFIG" && \
+--    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mdds >= 0.8.0\""; } >&5
+--  ($PKG_CONFIG --exists --print-errors "mdds >= 0.8.0") 2>&5
+-+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mdds >= 0.11.0\""; } >&5
+-+  ($PKG_CONFIG --exists --print-errors "mdds >= 0.11.0") 2>&5
+-   ac_status=$?
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; }; then
+--  pkg_cv_MDDS_CFLAGS=`$PKG_CONFIG --cflags "mdds >= 0.8.0" 2>/dev/null`
+-+  pkg_cv_MDDS_CFLAGS=`$PKG_CONFIG --cflags "mdds >= 0.11.0" 2>/dev/null`
+-                    test "x$?" != "x0" && pkg_failed=yes
+- else
+-   pkg_failed=yes
+-@@ -18068,12 +18607,12 @@ if test -n "$MDDS_LIBS"; then
+-     pkg_cv_MDDS_LIBS="$MDDS_LIBS"
+-  elif test -n "$PKG_CONFIG"; then
+-     if test -n "$PKG_CONFIG" && \
+--    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mdds >= 0.8.0\""; } >&5
+--  ($PKG_CONFIG --exists --print-errors "mdds >= 0.8.0") 2>&5
+-+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mdds >= 0.11.0\""; } >&5
+-+  ($PKG_CONFIG --exists --print-errors "mdds >= 0.11.0") 2>&5
+-   ac_status=$?
+-   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+-   test $ac_status = 0; }; then
+--  pkg_cv_MDDS_LIBS=`$PKG_CONFIG --libs "mdds >= 0.8.0" 2>/dev/null`
+-+  pkg_cv_MDDS_LIBS=`$PKG_CONFIG --libs "mdds >= 0.11.0" 2>/dev/null`
+-                    test "x$?" != "x0" && pkg_failed=yes
+- else
+-   pkg_failed=yes
+-@@ -18094,14 +18633,14 @@ else
+-         _pkg_short_errors_supported=no
+- fi
+-         if test $_pkg_short_errors_supported = yes; then
+--             MDDS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mdds >= 0.8.0" 2>&1`
+-+             MDDS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mdds >= 0.11.0" 2>&1`
+-         else
+--             MDDS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mdds >= 0.8.0" 2>&1`
+-+             MDDS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mdds >= 0.11.0" 2>&1`
+-         fi
+-      # Put the nasty error message in config.log where it belongs
+-      echo "$MDDS_PKG_ERRORS" >&5
+- 
+--     as_fn_error $? "Package requirements (mdds >= 0.8.0) were not met:
+-+     as_fn_error $? "Package requirements (mdds >= 0.11.0) were not met:
+- 
+- $MDDS_PKG_ERRORS
+- 
+-@@ -19998,7 +20537,7 @@ $as_echo "$as_me: executing $ac_file com
+- 
+-   case $ac_file$ac_mode in
+-     "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+--  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+-+  # Older Autoconf quotes --file arguments for eval, but not when files
+-   # are listed without --file.  Let's play safe and only enable the eval
+-   # if we detect the quoting.
+-   case $CONFIG_FILES in
+-@@ -20049,7 +20588,7 @@ $as_echo X"$mf" |
+-     DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+-     test -z "$DEPDIR" && continue
+-     am__include=`sed -n 's/^am__include = //p' < "$mf"`
+--    test -z "am__include" && continue
+-+    test -z "$am__include" && continue
+-     am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+-     # Find all dependency output files, they are included files with
+-     # $(DEPDIR) in their names.  We invoke sed twice because it is the
+diff --git a/external/liborcus/visibility.patch b/external/liborcus/visibility.patch
+deleted file mode 100644
+index a5af639..0000000
+--- a/external/liborcus/visibility.patch
++++ /dev/null
+@@ -1,11 +0,0 @@
+---- configure
+-+++ configure
+-@@ -3211,7 +3211,7 @@
+- ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+- ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+- 
+--CXXFLAGS="$CXXFLAGS -O2 -fvisibility=hidden -Wall"
+-+CXXFLAGS="$CXXFLAGS -O2 -Wall"
+- 
+- # ===========================
+- # Find required base packages
+diff --git a/sc/source/filter/html/htmlpars.cxx b/sc/source/filter/html/htmlpars.cxx
+index ce19c0b..e418ed8 100644
+--- a/sc/source/filter/html/htmlpars.cxx
++++ b/sc/source/filter/html/htmlpars.cxx
+@@ -3170,6 +3170,34 @@ public:
+         maPropName = MemStr();
+         maPropValue = MemStr();
+     }
++
++    // new members
++    void simple_selector_type(const char* /*p*/, size_t /*n*/) {}
++
++    void simple_selector_class(const char* /*p*/, size_t /*n*/) {}
++
++    void simple_selector_pseudo_element(orcus::css::pseudo_element_t /*pe*/) {}
++
++    void simple_selector_pseudo_class(orcus::css::pseudo_class_t /*pc*/) {}
++
++    void simple_selector_id(const char* /*p*/, size_t /*n*/) {}
++
++    void end_simple_selector() {}
++
++    void end_selector() {}
++
++    void combinator(orcus::css::combinator_t /*combinator*/) {}
++
++    void rgb(uint8_t /*red*/ , uint8_t /*green*/ , uint8_t /*blue*/ ) {}
++
++    void rgba(uint8_t /*red*/ , uint8_t /*green*/ , uint8_t /*blue*/ , double /*alpha*/ ) {}
++
++    void hsl(uint8_t /*hue*/ , uint8_t /*sat*/ , uint8_t /*light*/ ) {}
++
++    void hsla(uint8_t /*hue*/ , uint8_t /*sat*/ , uint8_t /*light*/ , double /*alpha*/ ) {}
++
++    void url(const char* /*p*/, size_t /*n*/) {}
++
+ };
+ }
+@@ -3183,7 +3211,7 @@ void ScHTMLQueryParser::ParseStyle(const OUString& rStrm)
+     {
+         aParser.parse();
+     }
+-    catch (const orcus::css_parse_error&)
++    catch (const orcus::css::parse_error&)
+     {
+         // TODO: Parsing of CSS failed.  Do nothing for now.
+     }
+diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx
+index a778310..633b43d 100644
+--- a/sc/source/filter/inc/orcusinterface.hxx
++++ b/sc/source/filter/inc/orcusinterface.hxx
+@@ -43,6 +43,9 @@ public:
+     ScOrcusGlobalSettings(ScDocumentImport& rDoc);
+     virtual void set_origin_date(int year, int month, int day) SAL_OVERRIDE;
++
++    virtual void set_default_formula_grammar(orcus::spreadsheet::formula_grammar_t grammar) SAL_OVERRIDE;
++    virtual orcus::spreadsheet::formula_grammar_t get_default_formula_grammar() const SAL_OVERRIDE;
+ };
+ class ScOrcusSharedStrings : public orcus::spreadsheet::iface::import_shared_strings
+@@ -120,9 +123,12 @@ public:
+         orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, int year, int month, int day, int hour, int minute, double second) SAL_OVERRIDE;
+     virtual void set_format(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, size_t xf_index) SAL_OVERRIDE;
++    virtual void set_format(orcus::spreadsheet::row_t row_start, orcus::spreadsheet::col_t col_start,
++            orcus::spreadsheet::row_t row_end, orcus::spreadsheet::col_t col_end, size_t xf_index) SAL_OVERRIDE;
+     virtual void set_formula(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar, const char* p, size_t n) SAL_OVERRIDE;
+     virtual void set_formula_result(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, const char* p, size_t n) SAL_OVERRIDE;
++    virtual void set_formula_result(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, double val) SAL_OVERRIDE;
+     virtual void set_shared_formula(
+         orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar, size_t sindex,
+@@ -203,6 +209,10 @@ public:
+     virtual void set_cell_xf_count(size_t n) SAL_OVERRIDE;
+     virtual size_t commit_cell_xf() SAL_OVERRIDE;
++    // dxf
++    virtual void set_dxf_count(size_t count) SAL_OVERRIDE;
++    virtual size_t commit_dxf() SAL_OVERRIDE;
++
+     // xf (cell format) - used both by cell xf and cell style xf.
+     virtual void set_xf_number_format(size_t index) SAL_OVERRIDE;
+diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx
+index 3735f28..82b8f9e 100644
+--- a/sc/source/filter/orcus/interface.cxx
++++ b/sc/source/filter/orcus/interface.cxx
+@@ -35,6 +35,15 @@ void ScOrcusGlobalSettings::set_origin_date(int year, int month, int day)
+     mrDoc.setOriginDate(year, month, day);
+ }
++void ScOrcusGlobalSettings::set_default_formula_grammar(orcus::spreadsheet::formula_grammar_t /*grammar*/)
++{
++}
++
++orcus::spreadsheet::formula_grammar_t ScOrcusGlobalSettings::get_default_formula_grammar() const
++{
++    return orcus::spreadsheet::formula_grammar_unknown;
++}
++
+ ScOrcusFactory::StringCellCache::StringCellCache(const ScAddress& rPos, size_t nIndex) :
+     maPos(rPos), mnIndex(nIndex) {}
+@@ -263,6 +272,11 @@ void ScOrcusSheet::set_format(os::row_t /*row*/, os::col_t /*col*/, size_t /*xf_
+ {
+ }
++void ScOrcusSheet::set_format(os::row_t /*row*/, os::col_t /*col*/,
++        os::row_t /*row_end*/, os::col_t /*col_end*/, size_t /*xf_index*/)
++{
++}
++
+ namespace {
+ formula::FormulaGrammar::Grammar getCalcGrammarFromOrcus( os::formula_grammar_t grammar )
+@@ -270,16 +284,18 @@ formula::FormulaGrammar::Grammar getCalcGrammarFromOrcus( os::formula_grammar_t
+     formula::FormulaGrammar::Grammar eGrammar = formula::FormulaGrammar::GRAM_ODFF;
+     switch(grammar)
+     {
+-        case orcus::spreadsheet::ods:
++        case orcus::spreadsheet::formula_grammar_ods:
+             eGrammar = formula::FormulaGrammar::GRAM_ODFF;
+             break;
+-        case orcus::spreadsheet::xlsx_2007:
+-        case orcus::spreadsheet::xlsx_2010:
++        case orcus::spreadsheet::formula_grammar_xlsx_2007:
++        case orcus::spreadsheet::formula_grammar_xlsx_2010:
+             eGrammar = formula::FormulaGrammar::GRAM_OOXML;
+             break;
+-        case orcus::spreadsheet::gnumeric:
++        case orcus::spreadsheet::formula_grammar_gnumeric:
+             eGrammar = formula::FormulaGrammar::GRAM_ENGLISH_XL_A1;
+             break;
++        case orcus::spreadsheet::formula_grammar_unknown:
++            break;
+     }
+     return eGrammar;
+@@ -309,6 +325,19 @@ void ScOrcusSheet::set_formula_result(os::row_t row, os::col_t col, const char*
+     pCell->SetHybridString(mrDoc.getDoc().GetSharedStringPool().intern(aResult));
+ }
++void ScOrcusSheet::set_formula_result(os::row_t row, os::col_t col, double /*val*/)
++{
++    ScFormulaCell* pCell = mrDoc.getDoc().GetFormulaCell(ScAddress(col, row, mnTab));
++    if (!pCell)
++    {
++        SAL_WARN("sc", "trying to set formula result for non formula \
++                cell! Col: " << col << ";Row: " << row << ";Tab: " << mnTab);
++        return;
++    }
++
++    // TODO: FIXME
++}
++
+ void ScOrcusSheet::set_shared_formula(
+     os::row_t row, os::col_t col, os::formula_grammar_t grammar, size_t sindex,
+     const char* p_formula, size_t n_formula)
+@@ -577,6 +606,17 @@ size_t ScOrcusStyles::commit_cell_xf()
+     return 0;
+ }
++// dxf
++
++void ScOrcusStyles::set_dxf_count(size_t /*n*/)
++{
++}
++
++size_t ScOrcusStyles::commit_dxf()
++{
++    return 0;
++}
++
+ // xf (cell format) - used both by cell xf and cell style xf.
+ void ScOrcusStyles::set_xf_number_format(size_t /*index*/)
+-- 
+1.7.9.5
+
index 036bd47787d19aa5c57c499e08a6ac8358acaad1..e73766daea0026a91b700b914b70f4496ef87fec 100644 (file)
@@ -86,6 +86,7 @@ Source28:     http://dev-www.libreoffice.org/src/OpenCOLLADA-master-6509aa13af.tar.b
 # Source28-md5:        4ca8a6ef0afeefc864e9ef21b9f14bd6
 
 Patch1:                %{name}-build.patch
+Patch2:                liborcus-0.9.patch
 URL:           http://www.documentfoundation.org/
 BuildRequires: /usr/bin/getopt
 BuildRequires: Firebird-devel
@@ -148,7 +149,7 @@ BuildRequires:      liblangtag-devel
 BuildRequires: libmspub-devel
 BuildRequires: libmwaw-devel >= 0.3.0
 BuildRequires: libodfgen-devel >= 0.1.1
-BuildRequires: liborcus-devel >= 0.7.0
+BuildRequires: liborcus-devel >= 0.9.0
 BuildRequires: libpagemaker-devel >= 0.0.2
 BuildRequires: libvisio-devel
 BuildRequires: libwpd-devel >= 0.10.0
@@ -2810,6 +2811,7 @@ dialogs.
 %setup -q -n %{name}-%{version} -a1 -a2 -a3
 
 %patch1 -p1
+%patch2 -p1
 
 for dir in *-%{version}; do
        [ -f $dir/ChangeLog ] && mv $dir/ChangeLog ChangeLog-$dir
This page took 0.223344 seconds and 4 git commands to generate.