diff --git a/0001-Add-odf-strikeout-to-orcus-interface.patch b/0001-Add-odf-strikeout-to-orcus-interface.patch new file mode 100644 index 0000000..cd8c89e --- /dev/null +++ b/0001-Add-odf-strikeout-to-orcus-interface.patch @@ -0,0 +1,56 @@ +From 872c5e0c807ae248387ee425615e4c8080d01221 Mon Sep 17 00:00:00 2001 +From: Jaskaran Singh +Date: Thu, 28 Jul 2016 14:00:46 +0530 +Subject: [PATCH] Add odf strikeout to orcus interface + +Change-Id: Ibf8d1e7b0272fe4112fda0249eafef1aa5438d9a +--- + sc/source/filter/inc/orcusinterface.hxx | 7 +++ + sc/source/filter/orcus/interface.cxx | 88 +++++++++++++++++++++++++++++---- + 2 files changed, 85 insertions(+), 10 deletions(-) + +diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx +index 9754ea4..9afc218 100644 +--- a/sc/source/filter/inc/orcusinterface.hxx ++++ b/sc/source/filter/inc/orcusinterface.hxx +@@ -390,6 +393,10 @@ public: + orcus::spreadsheet::color_elem_t red, + orcus::spreadsheet::color_elem_t green, + orcus::spreadsheet::color_elem_t blue) override; ++ virtual void set_strikethrough_style(orcus::spreadsheet::strikethrough_style_t s) override; ++ virtual void set_strikethrough_type(orcus::spreadsheet::strikethrough_type_t s) override; ++ virtual void set_strikethrough_width(orcus::spreadsheet::strikethrough_width_t s) override; ++ virtual void set_strikethrough_text(orcus::spreadsheet::strikethrough_text_t s) override; + virtual size_t commit_font() override; + + // fill +diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx +index 1be81262..5f30120 100644 +--- a/sc/source/filter/orcus/interface.cxx ++++ b/sc/source/filter/orcus/interface.cxx +@@ -1141,6 +1149,22 @@ void ScOrcusStyles::set_font_color(orcus::spreadsheet::color_elem_t alpha, + maCurrentFont.maColor = Color(alpha, red, green, blue); + } + ++void ScOrcusStyles::set_strikethrough_style(orcus::spreadsheet::strikethrough_style_t /*s*/) ++{ ++} ++ ++void ScOrcusStyles::set_strikethrough_type(orcus::spreadsheet::strikethrough_type_t /*s*/) ++{ ++} ++ ++void ScOrcusStyles::set_strikethrough_width(orcus::spreadsheet::strikethrough_width_t /*s*/) ++{ ++} ++ ++void ScOrcusStyles::set_strikethrough_text(orcus::spreadsheet::strikethrough_text_t /*s*/) ++{ ++} ++ + size_t ScOrcusStyles::commit_font() + { + SAL_INFO("sc.orcus.style", "commit font"); +-- +2.9.3 + diff --git a/0001-Declare-font-border-protection-orcus-interface-metho.patch b/0001-Declare-font-border-protection-orcus-interface-metho.patch new file mode 100644 index 0000000..9e8aff7 --- /dev/null +++ b/0001-Declare-font-border-protection-orcus-interface-metho.patch @@ -0,0 +1,110 @@ +From 5a2b92977df1ce28f99b1a391fdfd3a37bd727f9 Mon Sep 17 00:00:00 2001 +From: Jaskaran Singh +Date: Sun, 26 Jun 2016 13:13:42 +0530 +Subject: [PATCH] Declare font, border, protection orcus interface methods + +Change-Id: I486d861ba3c2c763964cdc3af2312661ef1a533d +--- + sc/source/filter/inc/orcusinterface.hxx | 10 +++++++++ + sc/source/filter/orcus/interface.cxx | 38 +++++++++++++++++++++++++++++++++ + 2 files changed, 48 insertions(+) + +diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx +index 3046b44..521b388 100644 +--- a/sc/source/filter/inc/orcusinterface.hxx ++++ b/sc/source/filter/inc/orcusinterface.hxx +@@ -357,6 +357,13 @@ public: + virtual void set_font_name(const char* s, size_t n) override; + virtual void set_font_size(double point) override; + virtual void set_font_underline(orcus::spreadsheet::underline_t e) override; ++ virtual void set_font_underline_width(orcus::spreadsheet::underline_width_t e) override; ++ virtual void set_font_underline_mode(orcus::spreadsheet::underline_mode_t e) override; ++ virtual void set_font_underline_type(orcus::spreadsheet::underline_type_t e) override; ++ virtual void set_font_underline_color(orcus::spreadsheet::color_elem_t alpha, ++ orcus::spreadsheet::color_elem_t red, ++ orcus::spreadsheet::color_elem_t green, ++ orcus::spreadsheet::color_elem_t blue) override; + virtual void set_font_color( orcus::spreadsheet::color_elem_t alpha, + orcus::spreadsheet::color_elem_t red, + orcus::spreadsheet::color_elem_t green, +@@ -381,11 +388,14 @@ public: + orcus::spreadsheet::color_elem_t red, + orcus::spreadsheet::color_elem_t green, + orcus::spreadsheet::color_elem_t blue) override; ++ virtual void set_border_width(orcus::spreadsheet::border_direction_t dir, orcus::length_t width) override; + virtual size_t commit_border() override; + + // cell protection + virtual void set_cell_hidden(bool b) override; + virtual void set_cell_locked(bool b) override; ++ virtual void set_cell_print_content(bool b) override; ++ virtual void set_cell_formula_hidden(bool b) override; + virtual size_t commit_cell_protection() override; + + // number format +diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx +index e8a2dba..dbeb6aa 100644 +--- a/sc/source/filter/orcus/interface.cxx ++++ b/sc/source/filter/orcus/interface.cxx +@@ -961,6 +961,29 @@ void ScOrcusStyles::set_font_underline(orcus::spreadsheet::underline_t e) + } + } + ++void ScOrcusStyles::set_font_underline_width(orcus::spreadsheet::underline_width_t /* e */) ++{ ++ ++} ++ ++void ScOrcusStyles::set_font_underline_mode(orcus::spreadsheet::underline_mode_t /* e */) ++{ ++ ++} ++ ++void ScOrcusStyles::set_font_underline_type(orcus::spreadsheet::underline_type_t /* e */) ++{ ++ ++} ++ ++void ScOrcusStyles::set_font_underline_color(orcus::spreadsheet::color_elem_t /*alpha*/, ++ orcus::spreadsheet::color_elem_t /*red*/, ++ orcus::spreadsheet::color_elem_t /*green*/, ++ orcus::spreadsheet::color_elem_t /*blue*/) ++{ ++ ++} ++ + void ScOrcusStyles::set_font_color(orcus::spreadsheet::color_elem_t alpha, + orcus::spreadsheet::color_elem_t red, + orcus::spreadsheet::color_elem_t green, +@@ -1035,6 +1058,11 @@ void ScOrcusStyles::set_border_color(orcus::spreadsheet::border_direction_t dir, + current_line.maColor = Color(alpha, red, green, blue); + } + ++void ScOrcusStyles::set_border_width(orcus::spreadsheet::border_direction_t /* dir */, orcus::length_t /* width */) ++{ ++ ++} ++ + size_t ScOrcusStyles::commit_border() + { + SAL_INFO("sc.orcus.style", "commit border"); +@@ -1054,6 +1082,16 @@ void ScOrcusStyles::set_cell_locked(bool b) + maCurrentProtection.mbLocked = b; + } + ++void ScOrcusStyles::set_cell_print_content(bool /* b */) ++{ ++ ++} ++ ++void ScOrcusStyles::set_cell_formula_hidden(bool /* b */) ++{ ++ ++} ++ + size_t ScOrcusStyles::commit_cell_protection() + { + SAL_INFO("sc.orcus.style", "commit cell protection"); +-- +2.9.3 + diff --git a/0001-Reform-orcus-interface-to-set-border-width.patch b/0001-Reform-orcus-interface-to-set-border-width.patch new file mode 100644 index 0000000..878de28 --- /dev/null +++ b/0001-Reform-orcus-interface-to-set-border-width.patch @@ -0,0 +1,42 @@ +From 933ae1905617a2e2cc177a34a7060a2b26e5827c Mon Sep 17 00:00:00 2001 +From: Jaskaran Singh +Date: Thu, 28 Jul 2016 15:40:22 +0530 +Subject: [PATCH] Reform orcus interface to set border width + +Change-Id: Ic93b334205221548e4bd7920551034b1ccee4fa8 +--- + sc/source/filter/inc/orcusinterface.hxx | 2 +- + sc/source/filter/orcus/interface.cxx | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx +index 9afc218..f3520b4 100644 +--- a/sc/source/filter/inc/orcusinterface.hxx ++++ b/sc/source/filter/inc/orcusinterface.hxx +@@ -417,7 +417,7 @@ public: + orcus::spreadsheet::color_elem_t red, + orcus::spreadsheet::color_elem_t green, + orcus::spreadsheet::color_elem_t blue) override; +- virtual void set_border_width(orcus::spreadsheet::border_direction_t dir, orcus::length_t width) override; ++ virtual void set_border_width(orcus::spreadsheet::border_direction_t dir, double val, orcus::length_unit_t unit) override; + virtual size_t commit_border() override; + + // cell protection +diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx +index 5f30120..ff8c7465 100644 +--- a/sc/source/filter/orcus/interface.cxx ++++ b/sc/source/filter/orcus/interface.cxx +@@ -1318,8 +1318,8 @@ void ScOrcusStyles::set_border_color(orcus::spreadsheet::border_direction_t dir, + current_line.maColor = Color(alpha, red, green, blue); + } + +-void ScOrcusStyles::set_border_width(orcus::spreadsheet::border_direction_t /* dir */, orcus::length_t /* width */) ++void ScOrcusStyles::set_border_width(orcus::spreadsheet::border_direction_t /* dir */, double /* val */, orcus::length_unit_t /* unit */) + { + + } + + size_t ScOrcusStyles::commit_border() +-- +2.9.3 + diff --git a/0001-Switch-from-orcus-0.11-to-orcus-0.12.patch b/0001-Switch-from-orcus-0.11-to-orcus-0.12.patch new file mode 100644 index 0000000..74f6fce --- /dev/null +++ b/0001-Switch-from-orcus-0.11-to-orcus-0.12.patch @@ -0,0 +1,160 @@ +From 08f105a770ac20641cd287f9e999dc70eaafa343 Mon Sep 17 00:00:00 2001 +From: Jaskaran Singh +Date: Fri, 24 Jun 2016 19:53:11 +0530 +Subject: [PATCH] Switch from orcus-0.11 to orcus-0.12 + +Change-Id: I837ed3a30fae6fbe6cb658f1feecce1e88279ae0 +(cherry picked from commit 92be10ca0669fc05565507c4e62c674c5224e49f) +--- + RepositoryExternal.mk | 4 ++-- + configure.ac | 2 +- + download.lst | 4 ++-- + .../liborcus/0001-workaround-a-linking-problem-on-windows.patch | 4 ++-- + external/liborcus/ExternalPackage_liborcus.mk | 8 ++++---- + external/liborcus/ExternalProject_liborcus.mk | 4 ++-- + external/liborcus/Library_orcus-parser.mk | 3 +++ + external/liborcus/Library_orcus.mk | 1 + + 8 files changed, 17 insertions(+), 13 deletions(-) + +diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk +index 0fc7d25..6094333 100644 +--- a/RepositoryExternal.mk ++++ b/RepositoryExternal.mk +@@ -3108,7 +3108,7 @@ $(call gb_LinkTarget_set_include,$(1),\ + ) + + $(call gb_LinkTarget_add_libs,$(1),\ +- -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs -lorcus-0.11 \ ++ -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/liborcus/.libs -lorcus-0.12 \ + ) + + $(if $(SYSTEM_BOOST), \ +@@ -3127,7 +3127,7 @@ $(call gb_LinkTarget_set_include,$(1),\ + ) + + $(call gb_LinkTarget_add_libs,$(1),\ +- -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs -lorcus-parser-0.11 \ ++ -L$(call gb_UnpackedTarball_get_dir,liborcus)/src/parser/.libs -lorcus-parser-0.12 \ + ) + + endef +diff --git a/configure.ac b/configure.ac +index d271db2..8421640 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -9173,7 +9173,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.11 >= 0.11.2]) ++ libo_CHECK_SYSTEM_MODULE([orcus],[ORCUS],[liborcus-0.12 >= 0.12.0]) + if test "$with_system_orcus" != "yes"; then + if test "$SYSTEM_BOOST" = "TRUE"; then + # =========================================================== +diff --git a/download.lst b/download.lst +index 7632f99..19e4752 100644 +--- a/download.lst ++++ b/download.lst +@@ -118,8 +118,8 @@ export OPENCOLLADA_TARBALL := OpenCOLLADA-master-6509aa13af.tar.bz2 + export OPENLDAP_TARBALL := 804c6cb5698db30b75ad0ff1c25baefd-openldap-2.4.31.tgz + export OPENSSL_MD5SUM := 9392e65072ce4b614c1392eefc1f23d0 + export OPENSSL_TARBALL := openssl-1.0.2h.tar.gz +-export ORCUS_MD5SUM := 205badaee72adf99422add8c4c49d669 +-export ORCUS_TARBALL := liborcus-0.11.2.tar.gz ++export ORCUS_MD5SUM := b3b3efc8d6c92bb8016464e42cab3d06 ++export ORCUS_TARBALL := b3b3efc8d6c92bb8016464e42cab3d06-liborcus-0.12.0.tar.gz + export OWNCLOUD_ANDROID_LIB_MD5SUM := 593f0aa47bf2efc0efda2d28fae063b2 + export OWNCLOUD_ANDROID_LIB_TARBALL := owncloud-android-library-0.9.4-no-binary-deps.tar.gz + export PAGEMAKER_MD5SUM := 5c4985a68be0b79d3f809da5e12b143c +diff --git a/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch b/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch +index 5710877..308e51c 100644 +--- a/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch ++++ b/external/liborcus/0001-workaround-a-linking-problem-on-windows.patch +@@ -24,7 +24,7 @@ index b6e3f83..8027f25 100644 + 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; +++const xmlns_id_t XMLNS_UNKNOWN_ID = nullptr; + 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; +@@ -36,7 +36,7 @@ index be4e304..0a1b4a7 100644 + + namespace orcus { + +--const xmlns_id_t XMLNS_UNKNOWN_ID = NULL; ++-const xmlns_id_t XMLNS_UNKNOWN_ID = nullptr; + const xml_token_t XML_UNKNOWN_TOKEN = 0; + + const size_t index_not_found = std::numeric_limits::max(); +diff --git a/external/liborcus/ExternalPackage_liborcus.mk b/external/liborcus/ExternalPackage_liborcus.mk +index 56debe9..4a8b5f8 100644 +--- a/external/liborcus/ExternalPackage_liborcus.mk ++++ b/external/liborcus/ExternalPackage_liborcus.mk +@@ -12,11 +12,11 @@ $(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.11.0.dylib,src/liborcus/.libs/liborcus-0.11.0.dylib)) +-$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-parser-0.11.0.dylib,src/parser/.libs/liborcus-parser-0.11.0.dylib)) ++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-0.12.0.dylib,src/liborcus/.libs/liborcus-0.12.0.dylib)) ++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-parser-0.12.0.dylib,src/parser/.libs/liborcus-parser-0.12.0.dylib)) + else ifeq ($(DISABLE_DYNLOADING),) +-$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-0.11.so.0,src/liborcus/.libs/liborcus-0.11.so.0.0.0)) +-$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-parser-0.11.so.0,src/parser/.libs/liborcus-parser-0.11.so.0.0.0)) ++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-0.12.so.0,src/liborcus/.libs/liborcus-0.12.so.0.0.0)) ++$(eval $(call gb_ExternalPackage_add_file,liborcus,$(LIBO_LIB_FOLDER)/liborcus-parser-0.12.so.0,src/parser/.libs/liborcus-parser-0.12.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 580ef847..dce7d63 100644 +--- a/external/liborcus/ExternalProject_liborcus.mk ++++ b/external/liborcus/ExternalProject_liborcus.mk +@@ -113,8 +113,8 @@ $(call gb_ExternalProject_get_state_target,liborcus,build) : + $(MAKE) \ + $(if $(filter MACOSX,$(OS)),\ + && $(PERL) $(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl OOO \ +- $(gb_Package_SOURCEDIR_liborcus)/src/liborcus/.libs/liborcus-0.11.0.dylib \ +- $(gb_Package_SOURCEDIR_liborcus)/src/parser/.libs/liborcus-parser-0.11.0.dylib \ ++ $(gb_Package_SOURCEDIR_liborcus)/src/liborcus/.libs/liborcus-0.12.0.dylib \ ++ $(gb_Package_SOURCEDIR_liborcus)/src/parser/.libs/liborcus-parser-0.12.0.dylib \ + ) \ + ) + +diff --git a/external/liborcus/Library_orcus-parser.mk b/external/liborcus/Library_orcus-parser.mk +index 28af14e..4c2ca7f 100644 +--- a/external/liborcus/Library_orcus-parser.mk ++++ b/external/liborcus/Library_orcus-parser.mk +@@ -39,12 +39,15 @@ $(eval $(call gb_Library_add_generated_exception_objects,orcus-parser,\ + UnpackedTarball/liborcus/src/parser/css_types \ + UnpackedTarball/liborcus/src/parser/csv_parser_base \ + UnpackedTarball/liborcus/src/parser/exception \ ++ UnpackedTarball/liborcus/src/parser/json_global \ + UnpackedTarball/liborcus/src/parser/json_parser_base \ ++ UnpackedTarball/liborcus/src/parser/json_parser_thread \ + UnpackedTarball/liborcus/src/parser/parser_base \ + 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/sax_token_parser_thread \ + UnpackedTarball/liborcus/src/parser/stream \ + UnpackedTarball/liborcus/src/parser/string_pool \ + UnpackedTarball/liborcus/src/parser/tokens \ +diff --git a/external/liborcus/Library_orcus.mk b/external/liborcus/Library_orcus.mk +index e49adca..adc43cb 100644 +--- a/external/liborcus/Library_orcus.mk ++++ b/external/liborcus/Library_orcus.mk +@@ -65,6 +65,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,orcus,\ + UnpackedTarball/liborcus/src/liborcus/measurement \ + UnpackedTarball/liborcus/src/liborcus/odf_helper \ + UnpackedTarball/liborcus/src/liborcus/odf_namespace_types \ ++ UnpackedTarball/liborcus/src/liborcus/odf_number_formatting_context \ + UnpackedTarball/liborcus/src/liborcus/odf_para_context \ + UnpackedTarball/liborcus/src/liborcus/odf_styles_context \ + UnpackedTarball/liborcus/src/liborcus/odf_styles \ +-- +2.9.3 + diff --git a/libreoffice.spec b/libreoffice.spec index e1baded..bf149b7 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -194,7 +194,11 @@ BuildRequires: pkgconfig(libcmis-0.5) BuildRequires: pkgconfig(libe-book-0.1) BuildRequires: pkgconfig(libeot) BuildRequires: pkgconfig(libgltf-0.0) +%if 0%{?fedora} >= 26 +BuildRequires: pkgconfig(liborcus-0.12) +%else BuildRequires: pkgconfig(liborcus-0.11) +%endif BuildRequires: pkgconfig(libpagemaker-0.0) BuildRequires: pkgconfig(libwps-0.4) BuildRequires: pkgconfig(mdds-1.2) @@ -249,6 +253,13 @@ Patch18: 0001-Related-rhbz-1362451-avoid-recursive-ownerchanged-ha.patch Patch19: 0001-fix-build-on-32-bit-ARM-on-latest-Rawhide.patch Patch20: 0001-only-date-autofilter-menus-need-the-space-for-the-tr.patch +%if 0%{?fedora} >= 26 +Patch400: 0001-Switch-from-orcus-0.11-to-orcus-0.12.patch +Patch401: 0001-Declare-font-border-protection-orcus-interface-metho.patch +Patch402: 0001-Add-odf-strikeout-to-orcus-interface.patch +Patch403: 0001-Reform-orcus-interface-to-set-border-width.patch +%endif + %if 0%{?rhel} # not upstreamed Patch500: 0001-disable-libe-book-support.patch