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


Reply via email to