Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
Date: 2015-09-08
Initial Package Version: 5.0.1.2
Upstream Status: Applied
Origin: Upstream / Fedora (David Tardon)
Description: Fixes for boost_1_59_0.

I found the first part of this at fedora, apparently backported (I think
that just means cherry-picked in this case),
http://pkgs.fedoraproject.org/cgit/libreoffice.git/commit/?id=57cfb98d1c45259f946ff3444eeb6891a030e063

That fixed my initial error linking libwriterperfect_importtestbase.a,
but some considerable time later the build failed in libcdr-0.1.a and
libvisio-0.1.a.  I think that is because fedora use external packages
for those.

I then picked up some upstream changes from 30th August, also by
David Tardon at redhat.  Three of these drop a dependency on boost, three
more fix the build in libabw, libvisio, libcdr.  I had to apply some of
these by hand, so E&OE.

November 14th, 2015, for version 5.0.3.2: Some files
have been patched in the source and I have removed them from the initial
patch: libebook.mk, libmspub.mk, libpagemaker.mk, librevenge.mk,
ComGCC_defs.mk, Com_MSC_defs.mk, liborcus.mk. Pierre Labastie.
diff -Naur a/external/libabw/ExternalProject_libabw.mk b/external/libabw/ExternalProject_libabw.mk
--- a/external/libabw/ExternalProject_libabw.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libabw/ExternalProject_libabw.mk	2015-09-07 05:38:02.772996780 +0100
@@ -35,7 +35,8 @@
 			--disable-werror \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
 			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),\
-				-I$(call gb_UnpackedTarball_get_dir,boost))" \
+				-I$(call gb_UnpackedTarball_get_dir,boost)) \
+				-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED" \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 		&& $(MAKE) \
 	)
diff -Naur a/external/libcdr/ExternalProject_libcdr.mk b/external/libcdr/ExternalProject_libcdr.mk
--- a/external/libcdr/ExternalProject_libcdr.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libcdr/ExternalProject_libcdr.mk	2015-09-07 05:47:59.917229440 +0100
@@ -36,7 +36,8 @@
 			--disable-werror \
 			--disable-weffc \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
-			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost))" \
+			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost)) \
+				-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED" \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 		&& $(MAKE) \
 	)
diff -Naur a/external/libmwaw/ExternalProject_libmwaw.mk b/external/libmwaw/ExternalProject_libmwaw.mk
--- a/external/libmwaw/ExternalProject_libmwaw.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libmwaw/ExternalProject_libmwaw.mk	2015-09-07 05:56:50.897902089 +0100
@@ -16,7 +16,6 @@
 ))
 
 $(eval $(call gb_ExternalProject_use_externals,libmwaw,\
-	boost_headers \
 	revenge \
 ))
 
@@ -30,15 +29,14 @@
 			, \
 				--enable-shared --disable-static \
 			) \
+			--with-sharedptr=c++11 \
 			--without-docs \
 			--disable-tools \
 			--disable-zip \
 			$(if $(ENABLE_DEBUG),--enable-debug,--disable-debug) \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
 			--disable-werror \
-			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),\
-				$(if $(COM_GCC_IS_CLANG),-Qunused-arguments) \
-				-I$(call gb_UnpackedTarball_get_dir,boost))" \
+			CXXFLAGS="$(CXXFLAGS_CXX11)" \
 			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
 				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
 					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
diff -Naur a/external/libmwaw/Library_mwaw.mk b/external/libmwaw/Library_mwaw.mk
--- a/external/libmwaw/Library_mwaw.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libmwaw/Library_mwaw.mk	2015-09-07 05:38:02.760996856 +0100
@@ -13,7 +13,6 @@
 
 $(eval $(call gb_Library_use_externals,mwaw,\
     revenge \
-    boost_headers \
 ))
 
 $(eval $(call gb_Library_set_warnings_not_errors,mwaw))
@@ -24,10 +23,10 @@
 ))
 
 $(eval $(call gb_Library_add_defs,mwaw,\
-	-DBOOST_ALL_NO_LIB \
 	-DBUILD_MWAW \
 	-DNDEBUG \
 	-D_WINDLL \
+	-DSHAREDPTR_STD \
 ))
 
 $(eval $(call gb_Library_add_generated_exception_objects,mwaw,\
diff -Naur a/external/libodfgen/ExternalProject_libodfgen.mk b/external/libodfgen/ExternalProject_libodfgen.mk
--- a/external/libodfgen/ExternalProject_libodfgen.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libodfgen/ExternalProject_libodfgen.mk	2015-09-07 05:44:35.670516577 +0100
@@ -16,7 +16,6 @@
 ))
 
 $(eval $(call gb_ExternalProject_use_externals,libodfgen,\
-	boost_headers \
 	revenge \
 ))
 
@@ -35,7 +34,7 @@
 			--disable-weffc \
 			--without-docs \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
-			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost)) $(if $(SYSTEM_REVENGE),,$(if $(filter-out MSC,$(COM)),-DLIBREVENGE_VISIBILITY))" \
+			CXXFLAGS="$(CXXFLAGS_CXX11) $(if $(SYSTEM_REVENGE),,$(if $(filter-out MSC,$(COM)),-DLIBREVENGE_VISIBILITY))" \
 			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
 				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
 					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
diff -Naur a/external/libodfgen/Library_odfgen.mk b/external/libodfgen/Library_odfgen.mk
--- a/external/libodfgen/Library_odfgen.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libodfgen/Library_odfgen.mk	2015-09-07 05:38:02.768996806 +0100
@@ -12,7 +12,6 @@
 $(eval $(call gb_Library_use_unpacked,odfgen,libodfgen))
 
 $(eval $(call gb_Library_use_externals,odfgen,\
-    boost_headers \
 	revenge \
 ))
 
@@ -24,10 +23,10 @@
 ))
 
 $(eval $(call gb_Library_add_defs,odfgen,\
-	-DBOOST_ALL_NO_LIB \
 	-DDLL_EXPORT \
 	-DLIBODFGEN_BUILD \
 	-DNDEBUG \
+	-DSHAREDPTR_STD \
 	-DPACKAGE=\"libodfgen\" \
 	-DVERSION=\"0.1.$(ODFGEN_VERSION_MICRO)\" \
 ))
diff -Naur a/external/libvisio/ExternalProject_libvisio.mk b/external/libvisio/ExternalProject_libvisio.mk
--- a/external/libvisio/ExternalProject_libvisio.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libvisio/ExternalProject_libvisio.mk	2015-09-07 05:45:58.941991310 +0100
@@ -35,7 +35,8 @@
 			$(if $(ENABLE_DEBUG),--enable-debug,--disable-debug) \
 			--disable-werror \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
-			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost))" \
+			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost)) \
+				-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED" \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 		&& $(MAKE) \
 	)
diff -Naur a/external/libwps/0001-add-missing-include.patch b/external/libwps/0001-add-missing-include.patch
--- a/external/libwps/0001-add-missing-include.patch	1970-01-01 01:00:00.000000000 +0100
+++ b/external/libwps/0001-add-missing-include.patch	2015-09-07 05:38:02.736997008 +0100
@@ -0,0 +1,24 @@
+From bc6f0f3a006123a89d1321038edeb75f2fd67c6f Mon Sep 17 00:00:00 2001
+From: David Tardon <dtardon@redhat.com>
+Date: Sun, 30 Aug 2015 11:21:29 +0200
+Subject: [PATCH] add missing include
+
+---
+ src/lib/WPS8.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/lib/WPS8.cpp b/src/lib/WPS8.cpp
+index 04c1e57..8d39fa8 100644
+--- a/src/lib/WPS8.cpp
++++ b/src/lib/WPS8.cpp
+@@ -19,6 +19,7 @@
+  * applicable instead of those above.
+  */
+ 
++#include <algorithm>
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
+-- 
+2.4.3
+
diff -Naur a/external/libwps/ExternalProject_libwps.mk b/external/libwps/ExternalProject_libwps.mk
--- a/external/libwps/ExternalProject_libwps.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libwps/ExternalProject_libwps.mk	2015-09-07 05:39:58.960267334 +0100
@@ -16,7 +16,6 @@
 ))
 
 $(eval $(call gb_ExternalProject_use_externals,libwps,\
-	boost_headers \
 	revenge \
 ))
 
@@ -30,12 +29,13 @@
 			, \
 				--enable-shared --disable-static \
 			) \
+			--with-sharedptr=c++11 \
 			--without-docs \
 			--disable-tools \
 			--disable-debug \
 			--disable-werror \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
-			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost)) $(gb_VISIBILITY_FLAGS) $(gb_VISIBILITY_FLAGS_CXX)" \
+			CXXFLAGS="$(CXXFLAGS_CXX11) $(gb_VISIBILITY_FLAGS) $(gb_VISIBILITY_FLAGS_CXX)" \
 			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
 				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
 					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
diff -Naur a/external/libwps/Library_wps.mk b/external/libwps/Library_wps.mk
--- a/external/libwps/Library_wps.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libwps/Library_wps.mk	2015-09-07 05:38:02.756996881 +0100
@@ -12,7 +12,6 @@
 $(eval $(call gb_Library_use_unpacked,wps,libwps))
 
 $(eval $(call gb_Library_use_externals,wps,\
-    boost_headers \
 	revenge \
 ))
 
@@ -24,10 +23,10 @@
 ))
 
 $(eval $(call gb_Library_add_defs,wps,\
-	-DBOOST_ALL_NO_LIB \
 	-DBUILD_WPS\
 	-DDLL_EXPORT \
 	-DNDEBUG \
+	-DSHAREDPTR_STD \
 ))
 
 $(eval $(call gb_Library_set_generated_cxx_suffix,wps,cpp))
diff -Naur a/external/libwps/UnpackedTarball_libwps.mk b/external/libwps/UnpackedTarball_libwps.mk
--- a/external/libwps/UnpackedTarball_libwps.mk	2015-08-22 07:41:35.000000000 +0100
+++ b/external/libwps/UnpackedTarball_libwps.mk	2015-09-07 05:41:48.911570689 +0100
@@ -14,6 +14,7 @@
 $(eval $(call gb_UnpackedTarball_set_patchlevel,libwps,1))
 
 $(eval $(call gb_UnpackedTarball_add_patches,libwps,\
+	external/libwps/0001-add-missing-include.patch \
 	external/libwps/0001-QuattroPro-parser-correct-a-mistake-when-reading-neg.patch \
 	external/libwps/0001-error-C2065-M_PI-undeclared-identifier.patch \
 	$(if $(SYSTEM_REVENGE),,external/libwps/rpath.patch.0) \
