Hello community, here is the log from the commit of package lucene++ for openSUSE:Factory checked in at 2015-05-20 23:55:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/lucene++ (Old) and /work/SRC/openSUSE:Factory/.lucene++.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lucene++" Changes: -------- --- /work/SRC/openSUSE:Factory/lucene++/lucene++.changes 2015-03-05 18:17:13.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.lucene++.new/lucene++.changes 2015-05-20 23:55:08.000000000 +0200 @@ -1,0 +2,6 @@ +Tue May 19 20:35:16 UTC 2015 - [email protected] + +- fix build with boost 1.58, adding upstream patch + 0001-Fix-compilation-with-Boost-1.58.patch + +------------------------------------------------------------------- New: ---- 0001-Fix-compilation-with-Boost-1.58.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ lucene++.spec ++++++ --- /var/tmp/diff_new_pack.pFiyO9/_old 2015-05-20 23:55:08.000000000 +0200 +++ /var/tmp/diff_new_pack.pFiyO9/_new 2015-05-20 23:55:08.000000000 +0200 @@ -24,6 +24,7 @@ Group: Development/Libraries/C and C++ Url: https://github.com/luceneplusplus/LucenePlusPlus Source: https://github.com/luceneplusplus/LucenePlusPlus/archive/rel_%{version}.tar.gz#/%{name}-%{version}.tar.gz +Patch1: 0001-Fix-compilation-with-Boost-1.58.patch BuildRequires: boost-devel BuildRequires: cmake >= 2.8.6 BuildRequires: gcc-c++ @@ -51,6 +52,7 @@ %prep %setup -q -n LucenePlusPlus-rel_%{version} +%patch1 -p1 %build %if 0%{?suse_version} >= 1310 ++++++ 0001-Fix-compilation-with-Boost-1.58.patch ++++++ >From 1987082cf9278a639d772b4f35a8ae2d34944177 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Va=CC=81clav=20Slavi=CC=81k?= <[email protected]> Date: Mon, 4 May 2015 18:04:46 +0200 Subject: [PATCH] Fix compilation with Boost 1.58 1.58 introduces strict type checking in boost::get() and while that's good in theory, the VariantUtils code makes it impractical to use. Instead, use relaxed_get() to get the old behavior. relaxed_get() didn't exist in older versions of Boost, so the code must check BOOST_VERSION. Fixes #93. --- include/VariantUtils.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/VariantUtils.h b/include/VariantUtils.h index 1e6c243..5a72e59 100644 --- a/include/VariantUtils.h +++ b/include/VariantUtils.h @@ -8,6 +8,7 @@ #define VARIANTUTILS_H #include <boost/any.hpp> +#include <boost/version.hpp> #include "Lucene.h" #include "MiscUtils.h" @@ -22,7 +23,11 @@ public: template <typename TYPE, typename VAR> static TYPE get(VAR var) { +#if BOOST_VERSION < 105800 return var.type() == typeid(TYPE) ? boost::get<TYPE>(var) : TYPE(); +#else + return var.type() == typeid(TYPE) ? boost::relaxed_get<TYPE>(var) : TYPE(); +#endif } template <typename TYPE, typename VAR> -- 2.4.0
