Hello community, here is the log from the commit of package FreeCAD for openSUSE:Factory checked in at 2019-03-18 10:39:22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/FreeCAD (Old) and /work/SRC/openSUSE:Factory/.FreeCAD.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "FreeCAD" Mon Mar 18 10:39:22 2019 rev:13 rq:685413 version:0.17.1545162057.e1db7bff8 Changes: -------- --- /work/SRC/openSUSE:Factory/FreeCAD/FreeCAD.changes 2019-03-11 11:17:39.185291030 +0100 +++ /work/SRC/openSUSE:Factory/.FreeCAD.new.28833/FreeCAD.changes 2019-03-18 10:39:24.955444282 +0100 @@ -1,0 +2,10 @@ +Thu Mar 14 03:36:03 UTC 2019 - Stefan BrĂ¼ns <[email protected]> + +- Add support for Boost::Signals2, Boost::Signals has been deprecated + since Boost 1.54 and removed in 1.69: + * 0001-Convert-deprecated-boost-signal-to-signals2.patch + * 0002-move-from-deprecated-boost.signals-to-boost.signals2.patch + * 0003-fix-blocking-of-SelectionObserver.patch +- Add explicit double-conversion-devel BuildRequires + +------------------------------------------------------------------- New: ---- 0001-Convert-deprecated-boost-signal-to-signals2.patch 0002-move-from-deprecated-boost.signals-to-boost.signals2.patch 0003-fix-blocking-of-SelectionObserver.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ FreeCAD.spec ++++++ --- /var/tmp/diff_new_pack.TkOjqC/_old 2019-03-18 10:39:31.067439059 +0100 +++ /var/tmp/diff_new_pack.TkOjqC/_new 2019-03-18 10:39:31.071439056 +0100 @@ -18,6 +18,12 @@ %define x_prefix %{_libdir}/%{name} +%if 0%{?suse_version} > 1500 +%bcond_without boost_signals2 +%else +%bcond_with boost_signals2 +%endif + Name: FreeCAD Version: 0.17.1545162057.e1db7bff8 Release: 0 @@ -43,6 +49,14 @@ Patch7: 0001-Use-GL_RGB32F-instead-of-GL_RGB32F_ARB.patch # PATCH-FIX-UPSTREAM -- https://github.com/FreeCAD/FreeCAD/commit/5ff383b46.patch Patch8: fix-gcc8-build-failure.patch +%if %{with boost_signals2} +# PATCH-FIX-UPSTREAM -- https://github.com/FreeCAD/FreeCAD/commit/26d7d747257f.patch +Patch9: 0001-Convert-deprecated-boost-signal-to-signals2.patch +# PATCH-FIX-UPSTREAM -- https://github.com/FreeCAD/FreeCAD/commit/f898eafd64f8.patch +Patch10: 0002-move-from-deprecated-boost.signals-to-boost.signals2.patch +# PATCH-FIX-UPSTREAM -- https://github.com/FreeCAD/FreeCAD/commit/c3014fc65f86.patch +Patch11: 0003-fix-blocking-of-SelectionObserver.patch +%endif # Test suite fails on 32bit and I don't want to debug that anymore ExcludeArch: %ix86 %arm ppc s390 s390x @@ -56,7 +70,9 @@ BuildRequires: libboost_program_options-devel >= 1.55 BuildRequires: libboost_python3-devel >= 1.55 BuildRequires: libboost_regex-devel >= 1.55 +%if %{without boost_signals2} BuildRequires: libboost_signals-devel >= 1.55 +%endif BuildRequires: libboost_system-devel >= 1.55 BuildRequires: libboost_thread-devel >= 1.55 %else @@ -65,6 +81,7 @@ BuildRequires: cmake BuildRequires: dos2unix +BuildRequires: double-conversion-devel BuildRequires: doxygen BuildRequires: eigen3-devel BuildRequires: f2c @@ -135,6 +152,8 @@ BuildRequires: zlib-devel Requires(post): shared-mime-info Requires(postun): shared-mime-info +# we need to ensure to have the minimum version from build env +Requires: libopencascade7 >= %(/bin/bash -c 'rpm -q --qf "%%{version}" libopencascade7') Recommends: ccx @@ -246,7 +265,7 @@ mv %{buildroot}%{_datadir}/%{name}/freecad.xpm %{buildroot}%{_datadir}/pixmaps/freecad.xpm # Install additional documentation files -#install -pm 0644 ChangeLog.txt copying.lib %{buildroot}%{_docdir}/%{name}/ +#install -pm 0644 ChangeLog.txt copying.lib %%{buildroot}%%{_docdir}/%%{name}/ %suse_update_desktop_file -c %{name} "%{name}" "3D CAD Modeler" %{name} "freecad" Education Engineering ++++++ 0001-Convert-deprecated-boost-signal-to-signals2.patch ++++++ >From ca29d09d51f20d147c5377e66207a1c959698afd Mon Sep 17 00:00:00 2001 From: wandererfan <[email protected]> Date: Thu, 10 May 2018 12:00:13 -0400 Subject: [PATCH 1/3] Convert deprecated boost::signal to signals2 --- src/Mod/TechDraw/App/DrawPage.h | 4 ++-- src/Mod/TechDraw/App/DrawView.h | 4 ++-- src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp | 3 ++- src/Mod/TechDraw/Gui/ViewProviderDrawingView.h | 4 +++- src/Mod/TechDraw/Gui/ViewProviderPage.cpp | 3 ++- src/Mod/TechDraw/Gui/ViewProviderPage.h | 4 +++- 6 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/Mod/TechDraw/App/DrawPage.h b/src/Mod/TechDraw/App/DrawPage.h index 60df838b8..cfde590d0 100644 --- a/src/Mod/TechDraw/App/DrawPage.h +++ b/src/Mod/TechDraw/App/DrawPage.h @@ -24,7 +24,7 @@ #ifndef _DrawPage_h_ #define _DrawPage_h_ -#include <boost/signals.hpp> +#include <boost/signals2.hpp> #include <App/DocumentObject.h> #include <App/DocumentObjectGroup.h> @@ -59,7 +59,7 @@ public: int addView(App::DocumentObject *docObj); int removeView(App::DocumentObject* docObj); short mustExecute() const; - boost::signal<void (const DrawPage*)> signalGuiPaint; + boost::signals2::signal<void (const DrawPage*)> signalGuiPaint; /// returns the type name of the ViewProvider virtual const char* getViewProviderName(void) const { diff --git a/src/Mod/TechDraw/App/DrawView.h b/src/Mod/TechDraw/App/DrawView.h index dde8baa35..3f09a015f 100644 --- a/src/Mod/TechDraw/App/DrawView.h +++ b/src/Mod/TechDraw/App/DrawView.h @@ -23,7 +23,7 @@ #ifndef _DrawView_h_ #define _DrawView_h_ -#include <boost/signals.hpp> +#include <boost/signals2.hpp> #include <QRectF> @@ -85,7 +85,7 @@ public: virtual bool checkFit(DrawPage*) const; virtual void setPosition(double x, double y); bool keepUpdated(void); - boost::signal<void (const DrawView*)> signalGuiPaint; + boost::signals2::signal<void (const DrawView*)> signalGuiPaint; virtual double getScale(void) const; void checkScale(void); void requestPaint(void); diff --git a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp index 1175c1aff..32fe47afe 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp @@ -25,7 +25,8 @@ #include "PreCompiled.h" #ifndef _PreComp_ -#include <boost/signal.hpp> +#include <boost/signals2.hpp> +#include <boost/signals2/connection.hpp> #include <boost/bind.hpp> #endif diff --git a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h index 679fc8413..31970b4a6 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h +++ b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h @@ -25,6 +25,8 @@ #ifndef DRAWINGGUI_VIEWPROVIDERVIEW_H #define DRAWINGGUI_VIEWPROVIDERVIEW_H +#include <boost/signals2.hpp> + #include <Gui/ViewProviderFeature.h> #include <Gui/ViewProviderDocumentObjectGroup.h> @@ -78,7 +80,7 @@ public: virtual TechDraw::DrawView* getViewObject() const; void onGuiRepaint(const TechDraw::DrawView* dv); - typedef boost::signals::scoped_connection Connection; + typedef boost::signals2::scoped_connection Connection; Connection connectGuiRepaint; diff --git a/src/Mod/TechDraw/Gui/ViewProviderPage.cpp b/src/Mod/TechDraw/Gui/ViewProviderPage.cpp index fd5903bc1..245e39a9b 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderPage.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderPage.cpp @@ -29,7 +29,8 @@ # include <QMenu> # include <QTimer> #include <QPointer> -#include <boost/signal.hpp> +#include <boost/signals2.hpp> +#include <boost/signals2/connection.hpp> #include <boost/bind.hpp> #endif diff --git a/src/Mod/TechDraw/Gui/ViewProviderPage.h b/src/Mod/TechDraw/Gui/ViewProviderPage.h index e12be67fb..73e41bdc7 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderPage.h +++ b/src/Mod/TechDraw/Gui/ViewProviderPage.h @@ -30,6 +30,8 @@ #include <Gui/ViewProviderDocumentObjectGroup.h> #include <Gui/Selection.h> +#include <boost/signals2.hpp> + namespace TechDraw{ class DrawPage; } @@ -81,7 +83,7 @@ public: TechDraw::DrawPage* getDrawPage() const; void onGuiRepaint(const TechDraw::DrawPage* dp); - typedef boost::signals::scoped_connection Connection; + typedef boost::signals2::scoped_connection Connection; Connection connectGuiRepaint; void unsetEdit(int ModNum); -- 2.21.0 ++++++ 0002-move-from-deprecated-boost.signals-to-boost.signals2.patch ++++++ ++++ 2155 lines (skipped) ++++++ 0003-fix-blocking-of-SelectionObserver.patch ++++++ >From aa280edbde0e4cce207844f97eac3782fe2d3e1a Mon Sep 17 00:00:00 2001 From: wmayer <[email protected]> Date: Sun, 4 Nov 2018 11:54:40 +0100 Subject: [PATCH 3/3] fix blocking of SelectionObserver --- src/Gui/Selection.cpp | 10 +++++----- src/Gui/Selection.h | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Gui/Selection.cpp b/src/Gui/Selection.cpp index 80b7e3056..52976e6a0 100644 --- a/src/Gui/Selection.cpp +++ b/src/Gui/Selection.cpp @@ -53,7 +53,7 @@ using namespace Gui; using namespace std; -SelectionObserver::SelectionObserver() : blocker(connectSelection, false) +SelectionObserver::SelectionObserver() : blockSelection(false) { attachSelection(); } @@ -65,17 +65,17 @@ SelectionObserver::~SelectionObserver() bool SelectionObserver::blockConnection(bool block) { - bool ok = connectSelection.blocked(); + bool ok = blockSelection; if (block) - blocker.block(); + blockSelection = true; else - blocker.unblock(); + blockSelection = false; return ok; } bool SelectionObserver::isConnectionBlocked() const { - return connectSelection.blocked(); + return blockSelection; } void SelectionObserver::attachSelection() diff --git a/src/Gui/Selection.h b/src/Gui/Selection.h index e1c195989..5e3144e16 100644 --- a/src/Gui/Selection.h +++ b/src/Gui/Selection.h @@ -146,7 +146,7 @@ private: private: typedef boost::signals2::connection Connection; Connection connectSelection; - boost::signals2::shared_connection_block blocker; + bool blockSelection; }; /** -- 2.21.0
