diff --git a/srcpkgs/freecad/patches/002-execinfo.patch b/srcpkgs/freecad/patches/002-execinfo.patch index 046fe8c487b..ea34e483e6e 100644 --- a/srcpkgs/freecad/patches/002-execinfo.patch +++ b/srcpkgs/freecad/patches/002-execinfo.patch @@ -1,30 +1,30 @@ --- src/App/Application.cpp 2018-04-06 10:48:37.000000000 +0200 +++ src/App/Application.cpp 2018-04-22 15:04:11.876136151 +0200 @@ -1063,7 +1063,9 @@ - #endif - - #if defined(FC_OS_LINUX) -+#ifdef __GLIBC__ - #include -+#endif - #include - #include - + #endif + + #if defined(FC_OS_LINUX) ++#ifdef __GLIBC__ + #include ++#endif + #include + #include + @@ -1075,6 +1077,7 @@ - // This function produces a stack backtrace with demangled function & method names. - void printBacktrace(size_t skip=0) - { -+#ifdef __GLIBC__ - void *callstack[128]; - size_t nMaxFrames = sizeof(callstack) / sizeof(callstack[0]); - size_t nFrames = backtrace(callstack, nMaxFrames); + // This function produces a stack backtrace with demangled function & method names. + void printBacktrace(size_t skip=0) + { ++#ifdef __GLIBC__ + void *callstack[128]; + size_t nMaxFrames = sizeof(callstack) / sizeof(callstack[0]); + size_t nFrames = backtrace(callstack, nMaxFrames); @@ -1105,6 +1108,9 @@ - } - - free(symbols); -+#else -+ std::cerr << "sorry, no backtrace on musl libc"; -+#endif - } - #endif - + } + + free(symbols); ++#else ++ std::cerr << "sorry, no backtrace on musl libc"; ++#endif + } + #endif + diff --git a/srcpkgs/freecad/patches/041-boost-1.69.patch b/srcpkgs/freecad/patches/041-boost-1.69.patch new file mode 100644 index 00000000000..29080308fb9 --- /dev/null +++ b/srcpkgs/freecad/patches/041-boost-1.69.patch @@ -0,0 +1,1979 @@ +https://freecadweb.org/tracker/view.php?id=3653 +https://github.com/FreeCAD/FreeCAD/commit/f898eafd64f88902ea1916b01303705b3baa2c46 + +--- CMakeLists.txt.orig 2018-04-06 08:48:37 UTC ++++ CMakeLists.txt +@@ -594,7 +594,7 @@ endif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + SET(_boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS}) + + find_package(Boost ${BOOST_MIN_VERSION} +- COMPONENTS filesystem program_options regex signals system thread REQUIRED) ++ COMPONENTS filesystem program_options regex system thread REQUIRED) + + IF(NOT Boost_FOUND) + MESSAGE(FATAL_ERROR "========================================\n" +@@ -602,7 +602,6 @@ endif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + " * filesystem\n" + " * program_options\n" + " * regex\n" +- " * signals\n" + " * system\n" + " * thread\n" + "========================================\n") +@@ -1074,7 +1073,7 @@ ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 8) + IF(MSVC) + # set default compiler settings + SET (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /EHa") +- SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFC_DEBUG /Zm128") ++ SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFC_DEBUG /Zm128 /bigobj") + # set default libs + SET (CMAKE_C_STANDARD_LIBRARIES "kernel32.lib user32.lib gdi32.lib winspool.lib SHFolder.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib winmm.lib comsupp.lib Ws2_32.lib dbghelp.lib ") + set (CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES}") +--- src/App/Application.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/App/Application.cpp +@@ -120,7 +120,6 @@ + + #include + #include +-#include + #include + #include + #include +--- src/App/Application.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/Application.h +@@ -25,7 +25,7 @@ + #ifndef APP_APPLICATION_H + #define APP_APPLICATION_H + +-#include ++#include + + #include + +@@ -99,27 +99,27 @@ class AppExport Application (public) + /** @name Signals of the Application */ + //@{ + /// signal on new Document +- boost::signal signalNewDocument; ++ boost::signals2::signal signalNewDocument; + /// signal on document getting deleted +- boost::signal signalDeleteDocument; ++ boost::signals2::signal signalDeleteDocument; + /// signal on already deleted Document +- boost::signal signalDeletedDocument; ++ boost::signals2::signal signalDeletedDocument; + /// signal on relabeling Document (user name) +- boost::signal signalRelabelDocument; ++ boost::signals2::signal signalRelabelDocument; + /// signal on renaming Document (internal name) +- boost::signal signalRenameDocument; ++ boost::signals2::signal signalRenameDocument; + /// signal on activating Document +- boost::signal signalActiveDocument; ++ boost::signals2::signal signalActiveDocument; + /// signal on saving Document +- boost::signal signalSaveDocument; ++ boost::signals2::signal signalSaveDocument; + /// signal on starting to restore Document +- boost::signal signalStartRestoreDocument; ++ boost::signals2::signal signalStartRestoreDocument; + /// signal on restoring Document +- boost::signal signalFinishRestoreDocument; ++ boost::signals2::signal signalFinishRestoreDocument; + /// signal on undo in document +- boost::signal signalUndoDocument; ++ boost::signals2::signal signalUndoDocument; + /// signal on redo in document +- boost::signal signalRedoDocument; ++ boost::signals2::signal signalRedoDocument; + //@} + + +@@ -129,16 +129,16 @@ class AppExport Application (public) + */ + //@{ + /// signal on new Object +- boost::signal signalNewObject; +- //boost::signal m_sig; ++ boost::signals2::signal signalNewObject; ++ //boost::signals2::signal m_sig; + /// signal on deleted Object +- boost::signal signalDeletedObject; ++ boost::signals2::signal signalDeletedObject; + /// signal on changed Object +- boost::signal signalChangedObject; ++ boost::signals2::signal signalChangedObject; + /// signal on relabeled Object +- boost::signal signalRelabelObject; ++ boost::signals2::signal signalRelabelObject; + /// signal on activated Object +- boost::signal signalActivatedObject; ++ boost::signals2::signal signalActivatedObject; + //@} + + /** @name Signals of property changes +@@ -147,11 +147,11 @@ class AppExport Application (public) + */ + //@{ + /// signal on adding a dynamic property +- boost::signal signalAppendDynamicProperty; ++ boost::signals2::signal signalAppendDynamicProperty; + /// signal on about removing a dynamic property +- boost::signal signalRemoveDynamicProperty; ++ boost::signals2::signal signalRemoveDynamicProperty; + /// signal on about changing the editor mode of a property +- boost::signal signalChangePropertyEditor; ++ boost::signals2::signal signalChangePropertyEditor; + //@} + + +--- src/App/Document.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/Document.h +@@ -37,7 +37,7 @@ + #include + #include + +-#include ++#include + + namespace Base { + class Writer; +@@ -113,40 +113,40 @@ class AppExport Document : public App::PropertyContain + /** @name Signals of the document */ + //@{ + /// signal on new Object +- boost::signal signalNewObject; +- //boost::signal m_sig; ++ boost::signals2::signal signalNewObject; ++ //boost::signals2::signal m_sig; + /// signal on deleted Object +- boost::signal signalDeletedObject; ++ boost::signals2::signal signalDeletedObject; + /// signal on changed Object +- boost::signal signalChangedObject; ++ boost::signals2::signal signalChangedObject; + /// signal on relabeled Object +- boost::signal signalRelabelObject; ++ boost::signals2::signal signalRelabelObject; + /// signal on activated Object +- boost::signal signalActivatedObject; ++ boost::signals2::signal signalActivatedObject; + /// signal on created object +- boost::signal signalTransactionAppend; ++ boost::signals2::signal signalTransactionAppend; + /// signal on removed object +- boost::signal signalTransactionRemove; ++ boost::signals2::signal signalTransactionRemove; + /// signal on undo +- boost::signal signalUndo; ++ boost::signals2::signal signalUndo; + /// signal on redo +- boost::signal signalRedo; ++ boost::signals2::signal signalRedo; + /** signal on load/save document + * this signal is given when the document gets streamed. + * you can use this hook to write additional information in + * the file (like the Gui::Document it does). + */ +- boost::signal signalSaveDocument; +- boost::signal signalRestoreDocument; +- boost::signal&, ++ boost::signals2::signal signalSaveDocument; ++ boost::signals2::signal signalRestoreDocument; ++ boost::signals2::signal&, + Base::Writer &)> signalExportObjects; +- boost::signal&, ++ boost::signals2::signal&, + Base::Writer &)> signalExportViewObjects; +- boost::signal&, ++ boost::signals2::signal&, + Base::XMLReader&)> signalImportObjects; +- boost::signal&, Base::Reader&, ++ boost::signals2::signal&, Base::Reader&, + const std::map&)> signalImportViewObjects; +- boost::signal signalRecomputed; ++ boost::signals2::signal signalRecomputed; + //@} + + /** @name File handling of the document */ +--- src/App/DocumentObject.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/App/DocumentObject.cpp +@@ -38,7 +38,7 @@ + #include "DocumentObjectExtension.h" + #include "GeoFeatureGroupExtension.h" + #include +-#include ++#include + #include + + using namespace App; +--- src/App/DocumentObject.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/DocumentObject.h +@@ -33,7 +33,7 @@ + #include + + #include +-#include ++#include + + namespace App + { +@@ -282,9 +282,9 @@ class AppExport DocumentObject: public App::Transactio + App::Document* _pDoc; + + // Connections to track relabeling of document and document objects +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection onRelabledDocumentConnection; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection onRelabledObjectConnection; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection onDeletedObjectConnection; ++ boost::signals2::scoped_connection onRelabledDocumentConnection; ++ boost::signals2::scoped_connection onRelabledObjectConnection; ++ boost::signals2::scoped_connection onDeletedObjectConnection; + + /// Old label; used for renaming expressions + std::string oldLabel; +--- src/App/DocumentObserver.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/App/DocumentObserver.cpp +@@ -27,7 +27,6 @@ + # include + #endif + +-#include + #include + + #include "Application.h" +--- src/App/DocumentObserver.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/DocumentObserver.h +@@ -25,7 +25,7 @@ + #define APP_DOCUMENTOBSERVER_H + + #include +-#include ++#include + #include + + namespace App +@@ -157,7 +157,7 @@ class AppExport DocumentObserver (protected) + + private: + App::Document* _document; +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectApplicationCreatedDocument; + Connection connectApplicationDeletedDocument; + Connection connectDocumentCreatedObject; +--- src/App/DocumentObserverPython.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/DocumentObserverPython.h +@@ -26,7 +26,7 @@ + + #include + +-#include ++#include + #include + + namespace App +@@ -74,7 +74,7 @@ class AppExport DocumentObserverPython (private) + Py::Object inst; + static std::vector _instances; + +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectApplicationCreatedDocument; + Connection connectApplicationDeletedDocument; + Connection connectApplicationRelabelDocument; +--- src/App/MergeDocuments.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/MergeDocuments.h +@@ -24,7 +24,7 @@ + #ifndef APP_MERGEDOCUMENTS_H + #define APP_MERGEDOCUMENTS_H + +-#include ++#include + #include + + namespace zipios { +@@ -57,7 +57,7 @@ class AppExport MergeDocuments : public Base::Persiste + App::Document* appdoc; + std::vector objects; + std::map nameMap; +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectExport; + Connection connectImport; + }; +--- src/App/PreCompiled.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/PreCompiled.h +@@ -71,7 +71,7 @@ + #include + + // Boost +-#include ++#include + #include + #include + +--- src/App/PropertyExpressionEngine.h.orig 2018-04-06 08:48:37 UTC ++++ src/App/PropertyExpressionEngine.h +@@ -25,7 +25,7 @@ + + #include + #include +-#include ++#include + #include + #include + #include +@@ -125,7 +125,7 @@ class AppExport PropertyExpressionEngine : public App: + void slotObjectDeleted(const DocumentObject &obj); + + ///signal called when a expression was changed +- boost::signal expressionChanged; ++ boost::signals2::signal expressionChanged; + + void onDocumentRestored(); + +--- src/Base/Tools.h.orig 2018-04-06 08:48:37 UTC ++++ src/Base/Tools.h +@@ -30,7 +30,7 @@ + #include + #include + #include +-#include ++#include + #include + + namespace Base +@@ -166,17 +166,14 @@ class ObjectStatusLocker (private) + // ---------------------------------------------------------------------------- + + class ConnectionBlocker { +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; +- bool b; +- Connection& c; ++ typedef boost::signals2::connection Connection; ++ typedef boost::signals2::shared_connection_block ConnectionBlock; ++ ConnectionBlock blocker; + + public: +- ConnectionBlocker(Connection& c) : c(c) { +- b = c.blocked(); +- c.block(true); ++ ConnectionBlocker(Connection& c) : blocker(c) { + } + ~ConnectionBlocker() { +- c.block(b); + } + }; + +--- src/Gui/Action.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Action.cpp +@@ -24,7 +24,7 @@ + #include "PreCompiled.h" + + #ifndef _PreComp_ +-# include ++# include + # include + # include + # include +--- src/Gui/Application.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Application.cpp +@@ -25,7 +25,7 @@ + + #ifndef _PreComp_ + # include "InventorAll.h" +-# include ++# include + # include + # include + # include +--- src/Gui/Application.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Application.h +@@ -88,33 +88,33 @@ class GuiExport Application (public) + /** @name Signals of the Application */ + //@{ + /// signal on new Document +- boost::signal signalNewDocument; ++ boost::signals2::signal signalNewDocument; + /// signal on deleted Document +- boost::signal signalDeleteDocument; ++ boost::signals2::signal signalDeleteDocument; + /// signal on relabeling Document +- boost::signal signalRelabelDocument; ++ boost::signals2::signal signalRelabelDocument; + /// signal on renaming Document +- boost::signal signalRenameDocument; ++ boost::signals2::signal signalRenameDocument; + /// signal on activating Document +- boost::signal signalActiveDocument; ++ boost::signals2::signal signalActiveDocument; + /// signal on new Object +- boost::signal signalNewObject; ++ boost::signals2::signal signalNewObject; + /// signal on deleted Object +- boost::signal signalDeletedObject; ++ boost::signals2::signal signalDeletedObject; + /// signal on changed object property +- boost::signal signalChangedObject; ++ boost::signals2::signal signalChangedObject; + /// signal on renamed Object +- boost::signal signalRelabelObject; ++ boost::signals2::signal signalRelabelObject; + /// signal on activated Object +- boost::signal signalActivatedObject; ++ boost::signals2::signal signalActivatedObject; + /// signal on activated workbench +- boost::signal signalActivateWorkbench; ++ boost::signals2::signal signalActivateWorkbench; + /// signal on added workbench +- boost::signal signalAddWorkbench; ++ boost::signals2::signal signalAddWorkbench; + /// signal on removed workbench +- boost::signal signalRemoveWorkbench; ++ boost::signals2::signal signalRemoveWorkbench; + /// signal on activating view +- boost::signal signalActivateView; ++ boost::signals2::signal signalActivateView; + //@} + + /** @name methods for Document handling */ +--- src/Gui/AutoSaver.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/AutoSaver.h +@@ -29,7 +29,7 @@ + #include + #include + #include +-#include ++#include + + namespace App { + class Document; +@@ -53,7 +53,7 @@ class AutoSaveProperty (public) + private: + void slotNewObject(const App::DocumentObject&); + void slotChangePropertyData(const App::Property&); +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection documentNew; + Connection documentMod; + }; +--- src/Gui/DAGView/DAGModel.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/DAGView/DAGModel.cpp +@@ -22,7 +22,6 @@ + + #include "PreCompiled.h" + #ifndef _PreComp_ +-#include + #include + #include + #include +--- src/Gui/DAGView/DAGModel.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/DAGView/DAGModel.h +@@ -26,7 +26,7 @@ + #include + #include + +-#include ++#include + + #include + #include +@@ -86,7 +86,7 @@ namespace Gui + private: + Model(){} + //documentObject slots. +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectNewObject; + Connection connectDelObject; + Connection connectChgObject; +--- src/Gui/DlgDisplayPropertiesImp.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/DlgDisplayPropertiesImp.h +@@ -25,7 +25,7 @@ + #define GUI_DIALOG_DLGDISPLAYPROPERTIES_IMP_H + + #include +-#include ++#include + + #include "ui_DlgDisplayProperties.h" + #include "Selection.h" +@@ -42,7 +42,7 @@ namespace Gui { + class Command; + + namespace Dialog { +-typedef boost::signals::connection DlgDisplayPropertiesImp_Connection; ++typedef boost::signals2::connection DlgDisplayPropertiesImp_Connection; + + /** + * The DlgDisplayPropertiesImp class implements a dialog containing all available document +@@ -79,7 +79,7 @@ private Q_SLOTS: (protected) + + private: + void slotChangedObject(const Gui::ViewProvider&, const App::Property& Prop); +- void reject(); ++ void reject(); + void setDisplayModes(const std::vector&); + void setMaterial(const std::vector&); + void setColorPlot(const std::vector&); +--- src/Gui/Document.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Document.cpp +@@ -31,7 +31,7 @@ + # include + # include + # include +-# include ++# include + # include + # include + # include +@@ -89,7 +89,7 @@ struct DocumentP + std::map _ViewProviderMap; + std::map _ViewProviderMapAnnotation; + +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectNewObject; + Connection connectDelObject; + Connection connectCngObject; +@@ -105,6 +105,8 @@ struct DocumentP + Connection connectRedoDocument; + Connection connectTransactionAppend; + Connection connectTransactionRemove; ++ typedef boost::signals2::shared_connection_block ConnectionBlock; ++ ConnectionBlock connectActObjectBlocker; + }; + + } // namespace Gui +@@ -138,6 +140,8 @@ Document::Document(App::Document* pcDocument,Applicati + (boost::bind(&Gui::Document::slotRelabelObject, this, _1)); + d->connectActObject = pcDocument->signalActivatedObject.connect + (boost::bind(&Gui::Document::slotActivatedObject, this, _1)); ++ d->connectActObjectBlocker = boost::signals2::shared_connection_block ++ (d->connectActObject, false); + d->connectSaveDocument = pcDocument->signalSaveDocument.connect + (boost::bind(&Gui::Document::Save, this, _1)); + d->connectRestDocument = pcDocument->signalRestoreDocument.connect +@@ -846,14 +850,14 @@ void Document::slotStartRestoreDocument(const App::Doc + if (d->_pcDocument != &doc) + return; + // disable this signal while loading a document +- d->connectActObject.block(); ++ d->connectActObjectBlocker.block(); + } + + void Document::slotFinishRestoreDocument(const App::Document& doc) + { + if (d->_pcDocument != &doc) + return; +- d->connectActObject.unblock(); ++ d->connectActObjectBlocker.unblock(); + App::DocumentObject* act = doc.getActiveObject(); + if (act) { + ViewProvider* viewProvider = getViewProvider(act); +--- src/Gui/Document.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Document.h +@@ -92,36 +92,36 @@ class GuiExport Document : public Base::Persistence ( + /** @name Signals of the document */ + //@{ + /// signal on new Object +- mutable boost::signal signalNewObject; ++ mutable boost::signals2::signal signalNewObject; + /// signal on deleted Object +- mutable boost::signal signalDeletedObject; ++ mutable boost::signals2::signal signalDeletedObject; + /** signal on changed Object, the 2nd argument is the changed property + of the referenced document object, not of the view provider */ +- mutable boost::signal signalChangedObject; + /// signal on renamed Object +- mutable boost::signal signalRelabelObject; ++ mutable boost::signals2::signal signalRelabelObject; + /// signal on activated Object +- mutable boost::signal signalActivatedObject; ++ mutable boost::signals2::signal signalActivatedObject; + /// signal on entering in edit mode +- mutable boost::signal signalInEdit; ++ mutable boost::signals2::signal signalInEdit; + /// signal on leaving edit mode +- mutable boost::signal signalResetEdit; ++ mutable boost::signals2::signal signalResetEdit; + /// signal on changed Object, the 2nd argument is the highlite mode to use +- mutable boost::signal signalHighlightObject; ++ mutable boost::signals2::signal signalHighlightObject; + /// signal on changed Object, the 2nd argument is the highlite mode to use +- mutable boost::signal signalExpandObject; ++ mutable boost::signals2::signal signalExpandObject; + /// signal on scrolling to an object +- mutable boost::signal signalScrollToObject; ++ mutable boost::signals2::signal signalScrollToObject; + /// signal on undo Document +- mutable boost::signal signalUndoDocument; ++ mutable boost::signals2::signal signalUndoDocument; + /// signal on redo Document +- mutable boost::signal signalRedoDocument; ++ mutable boost::signals2::signal signalRedoDocument; + /// signal on deleting Document +- mutable boost::signal signalDeleteDocument; ++ mutable boost::signals2::signal signalDeleteDocument; + //@} + + /** @name I/O of the document */ +--- src/Gui/DocumentModel.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/DocumentModel.cpp +@@ -26,7 +26,7 @@ + #ifndef _PreComp_ + # include + # include +-# include ++# include + # include + #endif + +--- src/Gui/DocumentObserver.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/DocumentObserver.cpp +@@ -27,7 +27,6 @@ + # include + #endif + +-#include + #include + + #include "Application.h" +@@ -87,19 +86,6 @@ void DocumentObserver::detachDocument() + this->connectDocumentUndo.disconnect(); + this->connectDocumentRedo.disconnect(); + this->connectDocumentDelete.disconnect(); +-} +- +-void DocumentObserver::enableNotifications(DocumentObserver::Notifications value) +-{ +- this->connectDocumentCreatedObject.block(!(value & Create)); +- this->connectDocumentDeletedObject.block(!(value & Delete)); +- this->connectDocumentChangedObject.block(!(value & Change)); +- this->connectDocumentRelabelObject.block(!(value & Relabel)); +- this->connectDocumentActivateObject.block(!(value & Activate)); +- this->connectDocumentEditObject.block(!(value & Edit)); +- this->connectDocumentResetObject.block(!(value & Reset)); +- this->connectDocumentUndo.block(!(value & Undo)); +- this->connectDocumentRedo.block(!(value & Redo)); + } + + void DocumentObserver::slotUndoDocument(const Document& /*Doc*/) +--- src/Gui/DocumentObserver.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/DocumentObserver.h +@@ -25,8 +25,7 @@ + #define GUI_DOCUMENTOBSERVER_H + + #include +-#include +-#include ++#include + + namespace App { class Property; } + namespace Gui +@@ -45,21 +44,6 @@ class ViewProviderDocumentObject; + class GuiExport DocumentObserver + { + public: +- enum Notification { +- None = 0x0000, +- Create = 0x0001, +- Delete = 0x0002, +- Change = 0x0004, +- Relabel = 0x0008, +- Activate = 0x0010, +- Edit = 0x0020, +- Reset = 0x0040, +- Undo = 0x0080, +- Redo = 0x0100, +- All = 0x01ff +- }; +- Q_DECLARE_FLAGS(Notifications, Notification) +- + /// Constructor + DocumentObserver(); + virtual ~DocumentObserver(); +@@ -72,9 +56,6 @@ class GuiExport DocumentObserver (public) + * is not longer observed then. + */ + void detachDocument(); +- /** Activates the connection depending on the given value. +- */ +- void enableNotifications(Notifications value); + + private: + /** Notifies when an object has been created. */ +@@ -100,7 +81,7 @@ class GuiExport DocumentObserver (public) + virtual void slotDeleteDocument(const Document& Doc); + + private: +- typedef boost::BOOST_SIGNALS_NAMESPACE::scoped_connection Connection; ++ typedef boost::signals2::scoped_connection Connection; + Connection connectDocumentCreatedObject; + Connection connectDocumentDeletedObject; + Connection connectDocumentChangedObject; +--- src/Gui/ExpressionBinding.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ExpressionBinding.h +@@ -27,7 +27,7 @@ + #include + #include + #include +-#include ++#include + + namespace App { + class Expression; +@@ -75,7 +75,7 @@ class GuiExport ExpressionBinding (protected) + int iconHeight; + + void expressionChange(const App::ObjectIdentifier& id); +- boost::signals::scoped_connection connection; ++ boost::signals2::scoped_connection connection; + bool m_autoApply; + }; + +--- src/Gui/GraphvizView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/GraphvizView.h +@@ -26,7 +26,7 @@ + + #include "MDIView.h" + #include +-#include ++#include + + + class QGraphicsScene; +@@ -84,7 +84,7 @@ private Q_SLOTS: (private) + GraphvizWorker* thread; + int nPending; + +- typedef boost::BOOST_SIGNALS_NAMESPACE::scoped_connection Connection; ++ typedef boost::signals2::scoped_connection Connection; + Connection recomputeConnection; + Connection undoConnection; + Connection redoConnection; +--- src/Gui/MDIView.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/MDIView.cpp +@@ -24,7 +24,7 @@ + #include "PreCompiled.h" + + #ifndef _PreComp_ +-# include ++# include + # include + # include + # include +--- src/Gui/MDIView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/MDIView.h +@@ -150,7 +150,7 @@ protected Q_SLOTS: (private) + Qt::WindowStates wstate; + // list of active objects of this view + ActiveObjectList ActiveObjects; +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectDelObject; //remove active object upon delete. + }; + +--- src/Gui/MainWindow.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/MainWindow.cpp +@@ -51,7 +51,6 @@ + # include + #endif + +-#include + #include + + // FreeCAD Base header +--- src/Gui/ManualAlignment.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ManualAlignment.cpp +@@ -49,7 +49,6 @@ + # include + #endif + +-#include + #include + + #include +--- src/Gui/ManualAlignment.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ManualAlignment.h +@@ -30,7 +30,7 @@ + #include + #include + #include +-#include ++#include + + class SbVec3f; + class SoPickedPoint; +@@ -244,7 +244,7 @@ Q_SIGNALS: (private) + + static ManualAlignment* _instance; + +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectApplicationDeletedDocument; + Connection connectDocumentDeletedObject; + +--- src/Gui/MergeDocuments.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/MergeDocuments.h +@@ -24,7 +24,7 @@ + #ifndef GUI_MERGEDOCUMENTS_H + #define GUI_MERGEDOCUMENTS_H + +-#include ++#include + #include + + namespace zipios { +@@ -57,7 +57,7 @@ class GuiExport MergeDocuments : public Base::Persiste + Gui::Document* document; + std::vector objects; + std::map nameMap; +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectExport; + Connection connectImport; + }; +--- src/Gui/Placement.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Placement.h +@@ -28,7 +28,7 @@ + #include + #include + +-#include ++#include + #include + + class QSignalMapper; +@@ -84,7 +84,7 @@ Q_SIGNALS: + + private: + typedef Gui::LocationInterfaceComp Ui_PlacementComp; +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Ui_PlacementComp* ui; + QSignalMapper* signalMapper; + Connection connectAct; +--- src/Gui/PreCompiled.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/PreCompiled.h +@@ -72,7 +72,7 @@ + #include + + // Boost +-#include ++#include + #include + #include + #include +--- src/Gui/ProjectView.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ProjectView.cpp +@@ -24,7 +24,6 @@ + #include "PreCompiled.h" + + #ifndef _PreComp_ +-# include + # include + # include + # include +--- src/Gui/PropertyView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/PropertyView.h +@@ -28,7 +28,7 @@ + + #include "DockWindow.h" + #include "Selection.h" +-#include ++#include + + class QPixmap; + class QTabWidget; +@@ -65,15 +65,15 @@ class PropertyView : public QWidget, public Gui::Selec + Gui::PropertyEditor::PropertyEditor* propertyEditorView; + Gui::PropertyEditor::PropertyEditor* propertyEditorData; + +-public Q_SLOTS: +- /// Stores a preference for the last tab selected +- void tabChanged(int index); +- ++public Q_SLOTS: ++ /// Stores a preference for the last tab selected ++ void tabChanged(int index); ++ + protected: + void changeEvent(QEvent *e); + + private: +- void onSelectionChanged(const SelectionChanges& msg); ++ void onSelectionChanged(const SelectionChanges& msg); + void slotChangePropertyData(const App::DocumentObject&, const App::Property&); + void slotChangePropertyView(const Gui::ViewProvider&, const App::Property&); + void slotAppendDynamicProperty(const App::Property&); +@@ -83,7 +83,7 @@ public Q_SLOTS: (private) + private: + struct PropInfo; + struct PropFind; +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectPropData; + Connection connectPropView; + Connection connectPropAppend; +--- src/Gui/Selection.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Selection.cpp +@@ -26,7 +26,6 @@ + #ifndef _PreComp_ + # include + # include +-# include + # include + # include + # include +@@ -54,7 +53,7 @@ + using namespace Gui; + using namespace std; + +-SelectionObserver::SelectionObserver() ++SelectionObserver::SelectionObserver() : blocker(connectSelection, false) + { + attachSelection(); + } +@@ -68,9 +67,9 @@ bool SelectionObserver::blockConnection(bool block) + { + bool ok = connectSelection.blocked(); + if (block) +- connectSelection.block(); ++ blocker.block(); + else +- connectSelection.unblock(); ++ blocker.unblock(); + return ok; + } + +--- src/Gui/Selection.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Selection.h +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + + #include +@@ -143,8 +144,9 @@ class GuiExport SelectionObserver (private) + virtual void onSelectionChanged(const SelectionChanges& msg) = 0; + + private: +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectSelection; ++ boost::signals2::shared_connection_block blocker; + }; + + /** +@@ -290,7 +292,7 @@ class GuiExport SelectionSingleton : public Base::Subj + }; + + /// signal on new object +- boost::signal signalSelectionChanged; ++ boost::signals2::signal signalSelectionChanged; + + /** Returns a vector of selection objects + * If no document name is given the objects of the active are returned. +--- src/Gui/TaskView/TaskAppearance.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/TaskView/TaskAppearance.h +@@ -26,7 +26,7 @@ + + #include "TaskView.h" + #include +-#include ++#include + + + class Ui_TaskAppearance; +@@ -38,7 +38,7 @@ class Property; + namespace Gui { + class ViewProvider; + namespace TaskView { +-typedef boost::signals::connection TaskAppearance_Connection; ++typedef boost::signals2::connection TaskAppearance_Connection; + + class TaskAppearance : public TaskBox, public Gui::SelectionSingleton::ObserverType + { +--- src/Gui/TaskView/TaskSelectLinkProperty.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/TaskView/TaskSelectLinkProperty.h +@@ -26,7 +26,6 @@ + + #include "TaskView.h" + #include +-#include + #include + + +--- src/Gui/TaskView/TaskView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/TaskView/TaskView.h +@@ -29,7 +29,7 @@ + #include + #include + #include +-#include ++#include + #include + + #if !defined (QSINT_ACTIONPANEL) +@@ -51,7 +51,7 @@ class CombiView; + } + namespace TaskView { + +-typedef boost::signals::connection Connection; ++typedef boost::signals2::connection Connection; + class TaskEditControl; + class TaskDialog; + +--- src/Gui/Tree.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Tree.cpp +@@ -24,7 +24,6 @@ + #include "PreCompiled.h" + + #ifndef _PreComp_ +-# include + # include + # include + # include +--- src/Gui/Tree.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/Tree.h +@@ -184,7 +184,7 @@ class DocumentItem : public QTreeWidgetItem (private) + const Gui::Document* pDocument; + std::map ObjectMap; + +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectNewObject; + Connection connectDelObject; + Connection connectChgObject; +@@ -222,7 +222,7 @@ class DocumentObjectItem : public QTreeWidgetItem (pr + void slotChangeStatusTip(const QString&); + + private: +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + int previousStatus; + Gui::ViewProviderDocumentObject* viewObject; + Connection connectIcon; +--- src/Gui/ViewProvider.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ViewProvider.h +@@ -29,7 +29,7 @@ + #include + #include + #include +-#include ++#include + + #include + #include +@@ -199,11 +199,11 @@ class GuiExport ViewProvider : public App::Transaction + /** @name Signals of the view provider */ + //@{ + /// signal on icon change +- boost::signal signalChangeIcon; ++ boost::signals2::signal signalChangeIcon; + /// signal on tooltip change +- boost::signal signalChangeToolTip; ++ boost::signals2::signal signalChangeToolTip; + /// signal on status tip change +- boost::signal signalChangeStatusTip; ++ boost::signals2::signal signalChangeStatusTip; + //@} + + /** update the content of the ViewProvider +--- src/Gui/ViewProviderOriginGroup.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ViewProviderOriginGroup.h +@@ -23,8 +23,6 @@ + #ifndef VIEWPROVIDERORIGINGROUP_H_JIXBOPA7 + #define VIEWPROVIDERORIGINGROUP_H_JIXBOPA7 + +-#include +- + #include "ViewProviderGeoFeatureGroup.h" + #include "ViewProviderOriginGroupExtension.h" + +--- src/Gui/ViewProviderOriginGroupExtension.h.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ViewProviderOriginGroupExtension.h +@@ -56,8 +56,8 @@ class GuiExport ViewProviderOriginGroupExtension : pub + std::vector constructChildren ( + const std::vector &children ) const; + +- boost::signals::connection connectChangedObjectApp; +- boost::signals::connection connectChangedObjectGui; ++ boost::signals2::connection connectChangedObjectApp; ++ boost::signals2::connection connectChangedObjectGui; + }; + + typedef ViewProviderExtensionPythonT ViewProviderOriginGroupExtensionPython; +--- src/Gui/ViewProviderPythonFeature.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Gui/ViewProviderPythonFeature.cpp +@@ -30,7 +30,6 @@ + # include + # include + # include +-# include + # include + # include + # include +--- src/Mod/Drawing/Gui/TaskOrthoViews.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Drawing/Gui/TaskOrthoViews.cpp +@@ -641,11 +641,12 @@ void OrthoViews::del_view(int rel_x, int rel_y) + + if (num > 0) + { +- connectDocumentDeletedObject.block(); +- views[num]->deleteme(); +- delete views[num]; +- views.erase(views.begin() + num); +- connectDocumentDeletedObject.unblock(); ++ { ++ boost::signals2::shared_connection_block blocker(connectDocumentDeletedObject); ++ views[num]->deleteme(); ++ delete views[num]; ++ views.erase(views.begin() + num); ++ } + + min_r_x = max_r_x = 0; + min_r_y = max_r_y = 0; +@@ -667,14 +668,13 @@ void OrthoViews::del_view(int rel_x, int rel_y) + + void OrthoViews::del_all() + { +- connectDocumentDeletedObject.block(); ++ boost::signals2::shared_connection_block blocker(connectDocumentDeletedObject); + for (int i = views.size() - 1; i >= 0; i--) // count downwards to delete from back + { + views[i]->deleteme(); + delete views[i]; + views.pop_back(); + } +- connectDocumentDeletedObject.unblock(); + } + + int OrthoViews::is_Ortho(int rel_x, int rel_y) // is the view at r_x, r_y an ortho or axo one? +--- src/Mod/Drawing/Gui/TaskOrthoViews.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Drawing/Gui/TaskOrthoViews.h +@@ -30,9 +30,9 @@ + + #include + #include +-#include ++#include + +-#include ++#include + + + +@@ -148,8 +148,8 @@ class OrthoViews (private) + + bool hidden, smooth; + bool autodims; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection connectDocumentDeletedObject; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection connectApplicationDeletedDocument; ++ boost::signals2::scoped_connection connectDocumentDeletedObject; ++ boost::signals2::scoped_connection connectApplicationDeletedDocument; + }; + + +--- src/Mod/Fem/Gui/TaskPostBoxes.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Fem/Gui/TaskPostBoxes.h +@@ -30,7 +30,6 @@ + #include + #include + #include "ViewProviderFemPostFunction.h" +-#include + + class QComboBox; + class Ui_TaskPostDisplay; +@@ -139,15 +138,15 @@ class TaskPostBox : public Gui::TaskView::TaskBox { (p + ~TaskPostBox(); + + virtual void applyPythonCode() = 0; +- virtual bool isGuiTaskOnly() {return false;}; //return true if only gui properties are manipulated ++ virtual bool isGuiTaskOnly() {return false;} //return true if only gui properties are manipulated + + protected: +- App::DocumentObject* getObject() {return m_object;}; ++ App::DocumentObject* getObject() {return m_object;} + template +- T* getTypedObject() {return static_cast(m_object);}; +- Gui::ViewProviderDocumentObject* getView() {return m_view;}; ++ T* getTypedObject() {return static_cast(m_object);} ++ Gui::ViewProviderDocumentObject* getView() {return m_view;} + template +- T* getTypedView() {return static_cast(m_view);}; ++ T* getTypedView() {return static_cast(m_view);} + + bool autoApply(); + void recompute(); +@@ -203,7 +202,7 @@ class TaskPostDisplay : public TaskPostBox (public) + ~TaskPostDisplay(); + + virtual void applyPythonCode(); +- virtual bool isGuiTaskOnly() {return true;}; ++ virtual bool isGuiTaskOnly() {return true;} + + private Q_SLOTS: + void on_Representation_activated(int i); +--- src/Mod/Fem/Gui/ViewProviderFemPostFunction.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Fem/Gui/ViewProviderFemPostFunction.h +@@ -28,29 +28,8 @@ + #include + #include + #include ++#include + +- +-#if defined(signals) && defined(QOBJECTDEFS_H) && \ +- !defined(QT_MOC_CPP) +-# undef signals +-# define signals signals +-#endif +- +-#include +-namespace boost +-{ +- namespace signalslib = signals; +-} +- +-#if defined(signals) && defined(QOBJECTDEFS_H) && \ +- !defined(QT_MOC_CPP) +-# undef signals +-// Restore the macro definition of "signals", as it was +-// defined by Qt's . +-# define signals protected +-#endif +- +- + class SoScale; + class SoSurroundScale; + class SoTransformManip; +@@ -70,19 +49,19 @@ class FemGuiExport FunctionWidget : public QWidget { + + Q_OBJECT + public: +- FunctionWidget() {}; +- virtual ~FunctionWidget() {}; ++ FunctionWidget() {} ++ virtual ~FunctionWidget() {} + + virtual void applyPythonCode() = 0; + virtual void setViewProvider(ViewProviderFemPostFunction* view); + void onObjectsChanged(const App::DocumentObject& obj, const App::Property&); + + protected: +- ViewProviderFemPostFunction* getView() {return m_view;}; +- Fem::FemPostFunction* getObject(){return m_object;}; ++ ViewProviderFemPostFunction* getView() {return m_view;} ++ Fem::FemPostFunction* getObject(){return m_object;} + +- bool blockObjectUpdates() {return m_block;}; +- void setBlockObjectUpdates(bool val) {m_block = val;}; ++ bool blockObjectUpdates() {return m_block;} ++ void setBlockObjectUpdates(bool val) {m_block = val;} + + virtual void onChange(const App::Property& p) = 0; + +@@ -90,7 +69,7 @@ class FemGuiExport FunctionWidget : public QWidget { + bool m_block; + ViewProviderFemPostFunction* m_view; + Fem::FemPostFunction* m_object; +- boost::signalslib::scoped_connection m_connection; ++ boost::signals2::scoped_connection m_connection; + }; + + class FemGuiExport ViewProviderFemPostFunctionProvider : public Gui::ViewProviderDocumentObject +--- src/Mod/Inspection/App/InspectionFeature.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Inspection/App/InspectionFeature.cpp +@@ -35,7 +35,6 @@ + #include + #include + +-#include + #include + + #include +--- src/Mod/Mesh/Gui/DlgEvaluateMeshImp.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Mesh/Gui/DlgEvaluateMeshImp.cpp +@@ -31,7 +31,6 @@ + #include "ui_DlgEvaluateMesh.h" + #include "DlgEvaluateSettings.h" + +-#include + #include + + #include +--- src/Mod/Mesh/Gui/MeshEditor.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Mesh/Gui/MeshEditor.h +@@ -25,7 +25,7 @@ + + #include + #include +-#include ++#include + + class SoCoordinate3; + class SoFaceSet; +@@ -139,7 +139,7 @@ private Q_SLOTS: + + private: + typedef std::vector TBoundary; +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + + static void fileHoleCallback(void * ud, SoEventCallback * n); + void createPolygons(); +--- src/Mod/PartDesign/App/Body.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/App/Body.h +@@ -27,7 +27,7 @@ + #include + #include + +-#include ++#include + + namespace App { + class Origin; +@@ -145,7 +145,7 @@ class PartDesignExport Body : public Part::BodyBase ( + virtual void unsetupObject () override; + + private: +- boost::signals::scoped_connection connection; ++ boost::signals2::scoped_connection connection; + }; + + } //namespace PartDesign +--- src/Mod/PartDesign/Gui/TaskFeatureParameters.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/TaskFeatureParameters.cpp +@@ -49,7 +49,6 @@ TaskFeatureParameters::TaskFeatureParameters(PartDesig + { + Gui::Document* doc = vp->getDocument(); + this->attachDocument(doc); +- this->enableNotifications(DocumentObserver::Delete); + } + + void TaskFeatureParameters::slotDeletedObject(const Gui::ViewProviderDocumentObject& Obj) +--- src/Mod/PartDesign/Gui/TaskHoleParameters.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/TaskHoleParameters.h +@@ -121,7 +121,7 @@ private Q_SLOTS: (private) + + private: + +- typedef boost::BOOST_SIGNALS_NAMESPACE::scoped_connection Connection; ++ typedef boost::signals2::scoped_connection Connection; + Connection connectPropChanged; + + std::unique_ptr observer; +--- src/Mod/PartDesign/Gui/TaskPrimitiveParameters.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/TaskPrimitiveParameters.cpp +@@ -183,7 +183,6 @@ TaskBoxPrimitives::TaskBoxPrimitives(ViewProviderPrimi + + Gui::Document* doc = vp->getDocument(); + this->attachDocument(doc); +- this->enableNotifications(DocumentObserver::Delete); + + //show the parts coordinate system axis for selection + PartDesign::Body * body = PartDesign::Body::findBodyOf(vp->getObject()); +--- src/Mod/PartDesign/Gui/TaskPrimitiveParameters.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/TaskPrimitiveParameters.h +@@ -48,8 +48,6 @@ class ViewProvider; + + namespace PartDesignGui { + +-namespace s = boost::signals; +- + class TaskBoxPrimitives : public Gui::TaskView::TaskBox, + public Gui::DocumentObserver + { +--- src/Mod/PartDesign/Gui/TaskTransformedMessages.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/TaskTransformedMessages.h +@@ -25,10 +25,10 @@ + #define GUI_TASKVIEW_TaskTransformedMessages_H + + #include +-#include ++#include + + class Ui_TaskTransformedMessages; +-typedef boost::signals::connection Connection; ++typedef boost::signals2::connection Connection; + + namespace App { + class Property; +--- src/Mod/PartDesign/Gui/TaskTransformedParameters.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/TaskTransformedParameters.cpp +@@ -76,7 +76,6 @@ TaskTransformedParameters::TaskTransformedParameters(V + if (TransformedView) { + Gui::Document* doc = TransformedView->getDocument(); + this->attachDocument(doc); +- this->enableNotifications(DocumentObserver::Delete); + } + } + +--- src/Mod/PartDesign/Gui/ViewProviderBody.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/ViewProviderBody.h +@@ -96,8 +96,8 @@ class PartDesignGuiExport ViewProviderBody : public Pa + private: + static const char* BodyModeEnum[]; + +- boost::signals::connection connectChangedObjectApp; +- boost::signals::connection connectChangedObjectGui; ++ boost::signals2::connection connectChangedObjectApp; ++ boost::signals2::connection connectChangedObjectGui; + }; + + +--- src/Mod/PartDesign/Gui/ViewProviderTransformed.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/ViewProviderTransformed.h +@@ -47,7 +47,7 @@ class PartDesignGuiExport ViewProviderTransformed : pu + virtual bool onDelete(const std::vector &); + + /// signals if the transformation contains errors +- boost::signal signalDiagnosis; ++ boost::signals2::signal signalDiagnosis; + + // The feature name of the subclass + std::string featureName; +--- src/Mod/PartDesign/Gui/WorkflowManager.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/PartDesign/Gui/WorkflowManager.h +@@ -23,7 +23,7 @@ + #ifndef WORKFLOWMANAGER_H_PB7A5GCM + #define WORKFLOWMANAGER_H_PB7A5GCM + +-#include ++#include + #include + + namespace App { +@@ -98,9 +98,9 @@ class PartDesignGuiExport WorkflowManager { (private) + private: + std::map dwMap; + +- boost::signals::connection connectNewDocument; +- boost::signals::connection connectFinishRestoreDocument; +- boost::signals::connection connectDeleteDocument; ++ boost::signals2::connection connectNewDocument; ++ boost::signals2::connection connectFinishRestoreDocument; ++ boost::signals2::connection connectDeleteDocument; + + static WorkflowManager* _instance; + }; +--- src/Mod/Part/App/PreCompiled.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Part/App/PreCompiled.h +@@ -63,7 +63,7 @@ + #include + + // Boost +-#include ++#include + #include + + #include +@@ -73,10 +73,10 @@ + #include + //namespace po = boost::program_options; + +-#include +-#include +-#include +- ++#include ++#include ++#include ++ + #include "OpenCascadeAll.h" + + #elif defined(FC_OS_WIN32) +--- src/Mod/Part/Gui/DlgBooleanOperation.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Part/Gui/DlgBooleanOperation.h +@@ -25,7 +25,7 @@ + + #include + #include +-#include ++#include + + class QTreeWidgetItem; + +@@ -35,7 +35,7 @@ class Property; + } + namespace PartGui { + +-typedef boost::signals::connection Connection; ++typedef boost::signals2::connection Connection; + class Ui_DlgBooleanOperation; + class DlgBooleanOperation : public QWidget + { +--- src/Mod/Part/Gui/DlgFilletEdges.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Part/Gui/DlgFilletEdges.cpp +@@ -43,7 +43,7 @@ + # include + # include + # include +-# include ++# include + # include + # include + # include +@@ -206,7 +206,7 @@ namespace PartGui { + std::vector edge_ids; + TopTools_IndexedMapOfShape all_edges; + TopTools_IndexedMapOfShape all_faces; +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectApplicationDeletedObject; + Connection connectApplicationDeletedDocument; + +--- src/Mod/Part/Gui/TaskAttacher.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Part/Gui/TaskAttacher.h +@@ -131,7 +131,7 @@ private Q_SLOTS: (private) + Attacher::SuggestResult lastSuggestResult; + bool completed; + +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectDelObject; + }; + +--- src/Mod/Part/Gui/TaskFaceColors.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Part/Gui/TaskFaceColors.cpp +@@ -43,7 +43,7 @@ + # include + #endif + +-#include ++#include + #include + + #include "ui_TaskFaceColors.h" +@@ -92,7 +92,7 @@ namespace PartGui { + class FaceColors::Private + { + public: +- typedef boost::signals::connection Connection; ++ typedef boost::signals2::connection Connection; + Ui_TaskFaceColors* ui; + Gui::View3DInventorViewer* view; + ViewProviderPartExt* vp; +--- src/Mod/Sandbox/App/DocumentProtector.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sandbox/App/DocumentProtector.h +@@ -25,7 +25,6 @@ + #define SANDBOX_DOCUMENTPROTECTOR_H + + #include +-#include + #include + #include + +@@ -49,9 +48,9 @@ class SandboxAppExport DocumentProtector : public App: + void recompute(); + + private: +- /** Checks if the given document is about to be closed */ +- void slotDeletedDocument(const App::Document& Doc); +- void validate(); ++ /** Checks if the given document is about to be closed */ ++ void slotDeletedDocument(const App::Document& Doc); ++ void validate(); + }; + + class AbstractCallable +@@ -80,8 +79,8 @@ class Callable : public AbstractCallable (public) + + virtual void operator()() const + { +- T* v = static_cast(obj); +- (v->*method)(); ++ T* v = static_cast(obj); ++ (v->*method)(); + } + + private: +@@ -101,8 +100,8 @@ class CallableWithArgs : public AbstractCallable (pub + + virtual void operator()() const + { +- T* v = static_cast(obj); +- (v->*method)(arg); ++ T* v = static_cast(obj); ++ (v->*method)(arg); + } + + private: +@@ -122,7 +121,7 @@ class SandboxAppExport DocumentObjectProtector (publi + void purgeTouched(); + + private: +- void validate(); ++ void validate(); + + private: + App::DocumentObject* obj; +--- src/Mod/Sketcher/App/PropertyConstraintList.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/App/PropertyConstraintList.h +@@ -32,7 +32,7 @@ + #include + #include + #include "Constraint.h" +-#include ++#include + #include + + namespace Base { +@@ -129,8 +129,8 @@ class SketcherExport PropertyConstraintList : public A + + typedef std::pair ConstraintInfo ; + +- boost::signal &)> signalConstraintsRenamed; +- boost::signal &)> signalConstraintsRemoved; ++ boost::signals2::signal &)> signalConstraintsRenamed; ++ boost::signals2::signal &)> signalConstraintsRemoved; + + static std::string getConstraintName(const std::string &name, int i); + +--- src/Mod/Sketcher/App/SketchObject.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/App/SketchObject.h +@@ -23,7 +23,7 @@ + #ifndef SKETCHER_SKETCHOBJECT_H + #define SKETCHER_SKETCHOBJECT_H + +-#include ++#include + #include + #include + #include +@@ -397,8 +397,8 @@ class SketcherExport SketchObject : public Part::Part2 + std::vector lastConflicting; + std::vector lastRedundant; + +- boost::signals::scoped_connection constraintsRenamedConn; +- boost::signals::scoped_connection constraintsRemovedConn; ++ boost::signals2::scoped_connection constraintsRenamedConn; ++ boost::signals2::scoped_connection constraintsRemovedConn; + + bool AutoLockTangencyAndPerpty(Constraint* cstr, bool bForce = false, bool bLock = true); + }; +--- src/Mod/Sketcher/Gui/TaskDlgEditSketch.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/Gui/TaskDlgEditSketch.h +@@ -32,9 +32,9 @@ + #include "TaskSketcherGeneral.h" + #include "TaskSketcherMessages.h" + #include "TaskSketcherSolverAdvanced.h" +-#include ++#include + +-typedef boost::signals::connection Connection; ++typedef boost::signals2::connection Connection; + + namespace SketcherGui { + +--- src/Mod/Sketcher/Gui/TaskSketcherConstrains.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/Gui/TaskSketcherConstrains.h +@@ -26,7 +26,7 @@ + + #include + #include +-#include ++#include + #include + + namespace App { +@@ -91,7 +91,7 @@ public Q_SLOTS: + protected: + void changeEvent(QEvent *e); + ViewProviderSketch *sketchView; +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectionConstraintsChanged; + + private: +--- src/Mod/Sketcher/Gui/TaskSketcherElements.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/Gui/TaskSketcherElements.h +@@ -26,7 +26,7 @@ + + #include + #include +-#include ++#include + #include + + namespace App { +@@ -115,7 +115,7 @@ public Q_SLOTS: (protected) + void changeEvent(QEvent *e); + void leaveEvent ( QEvent * event ); + ViewProviderSketch *sketchView; +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectionElementsChanged; + + private: +--- src/Mod/Sketcher/Gui/TaskSketcherMessages.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/Gui/TaskSketcherMessages.h +@@ -26,10 +26,10 @@ + + #include + #include +-#include ++#include + + class Ui_TaskSketcherMessages; +-typedef boost::signals::connection Connection; ++typedef boost::signals2::connection Connection; + + namespace App { + class Property; +--- src/Mod/Sketcher/Gui/TaskSketcherSolverAdvanced.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/Gui/TaskSketcherSolverAdvanced.h +@@ -26,7 +26,6 @@ + + #include + #include +-#include + + class Ui_TaskSketcherSolverAdvanced; + +--- src/Mod/Sketcher/Gui/ViewProviderSketch.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Sketcher/Gui/ViewProviderSketch.h +@@ -33,11 +33,10 @@ + #include + #include + #include +-#include ++#include + #include + #include + +-#include + + class TopoDS_Shape; + class TopoDS_Face; +@@ -234,13 +233,13 @@ class SketcherGuiExport ViewProviderSketch : public Pa + friend struct ::EditData; + + /// signals if the constraints list has changed +- boost::signal signalConstraintsChanged; ++ boost::signals2::signal signalConstraintsChanged; + /// signals if the sketch has been set up +- boost::signal signalSetUp; ++ boost::signals2::signal signalSetUp; + /// signals if the sketch has been solved +- boost::signal signalSolved; ++ boost::signals2::signal signalSolved; + /// signals if the elements list has changed +- boost::signal signalElementsChanged; ++ boost::signals2::signal signalElementsChanged; + + protected: + virtual bool setEdit(int ModNum); +@@ -269,8 +268,8 @@ class SketcherGuiExport ViewProviderSketch : public Pa + void slotRedoDocument(const Gui::Document&); + + protected: +- boost::signals::connection connectUndoDocument; +- boost::signals::connection connectRedoDocument; ++ boost::signals2::connection connectUndoDocument; ++ boost::signals2::connection connectRedoDocument; + + + /** @name Protected helpers for drawing constraint icons*/ +--- src/Mod/Spreadsheet/App/Sheet.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Spreadsheet/App/Sheet.h +@@ -170,13 +170,13 @@ class SpreadsheetExport Sheet : public App::DocumentOb + + // Signals + +- boost::signal cellUpdated; ++ boost::signals2::signal cellUpdated; + +- boost::signal cellSpanChanged; ++ boost::signals2::signal cellSpanChanged; + +- boost::signal columnWidthChanged; ++ boost::signals2::signal columnWidthChanged; + +- boost::signal rowHeightChanged; ++ boost::signals2::signal rowHeightChanged; + + /** @name Access properties */ + //@{ +@@ -296,8 +296,8 @@ class SpreadsheetExport Sheet : public App::DocumentOb + typedef std::map ObserverMap; + ObserverMap observers; + +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection onRelabledDocumentConnection; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection onRenamedDocumentConnection; ++ boost::signals2::scoped_connection onRelabledDocumentConnection; ++ boost::signals2::scoped_connection onRenamedDocumentConnection; + + friend class SheetObserver; + +--- src/Mod/Spreadsheet/Gui/SheetModel.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Spreadsheet/Gui/SheetModel.h +@@ -24,7 +24,7 @@ + #define SHEETMODEL_H + + #include +-#include ++#include + #include + #include + +@@ -52,7 +52,7 @@ class SheetModel : public QAbstractTableModel (public) + private: + void cellUpdated(App::CellAddress address); + +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection cellUpdatedConnection; ++ boost::signals2::scoped_connection cellUpdatedConnection; + Spreadsheet::Sheet * sheet; + QColor aliasBgColor; + QColor textFgColor; +--- src/Mod/Spreadsheet/Gui/SheetTableView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Spreadsheet/Gui/SheetTableView.h +@@ -26,7 +26,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + +@@ -74,7 +74,7 @@ protected Q_SLOTS: (protected) + QModelIndex currentEditIndex; + Spreadsheet::Sheet * sheet; + +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection cellSpanChangedConnection; ++ boost::signals2::scoped_connection cellSpanChangedConnection; + }; + + } +--- src/Mod/Spreadsheet/Gui/SpreadsheetView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/Spreadsheet/Gui/SpreadsheetView.h +@@ -98,9 +98,9 @@ protected Q_SLOTS: (protected) + Spreadsheet::Sheet * sheet; + SpreadsheetDelegate * delegate; + SheetModel * model; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection columnWidthChangedConnection; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection rowHeightChangedConnection; +- boost::BOOST_SIGNALS_NAMESPACE::scoped_connection positionChangedConnection; ++ boost::signals2::scoped_connection columnWidthChangedConnection; ++ boost::signals2::scoped_connection rowHeightChangedConnection; ++ boost::signals2::scoped_connection positionChangedConnection; + + QMap newColumnSizes; + QMap newRowSizes; +--- src/Mod/TechDraw/App/DrawPage.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/App/DrawPage.h +@@ -24,7 +24,7 @@ + #ifndef _DrawPage_h_ + #define _DrawPage_h_ + +-#include ++#include + + #include + #include +@@ -59,7 +59,7 @@ class TechDrawExport DrawPage: public App::DocumentObj + int addView(App::DocumentObject *docObj); + int removeView(App::DocumentObject* docObj); + short mustExecute() const; +- boost::signal signalGuiPaint; ++ boost::signals2::signal signalGuiPaint; + + /// returns the type name of the ViewProvider + virtual const char* getViewProviderName(void) const { +--- src/Mod/TechDraw/App/DrawView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/App/DrawView.h +@@ -23,7 +23,7 @@ + #ifndef _DrawView_h_ + #define _DrawView_h_ + +-#include ++#include + + #include + +@@ -85,7 +85,7 @@ class TechDrawExport DrawView : public App::DocumentOb + virtual bool checkFit(DrawPage*) const; + virtual void setPosition(double x, double y); + bool keepUpdated(void); +- boost::signal signalGuiPaint; ++ boost::signals2::signal signalGuiPaint; + virtual double getScale(void) const; + void checkScale(void); + void requestPaint(void); +--- src/Mod/TechDraw/Gui/MDIViewPage.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/Gui/MDIViewPage.cpp +@@ -38,7 +38,7 @@ + #include + #include + #include +- #include ++ #include + #include + + #endif // #ifndef _PreComp_ +--- src/Mod/TechDraw/Gui/MDIViewPage.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/Gui/MDIViewPage.h +@@ -118,7 +118,7 @@ public Q_SLOTS: (protected) + + void onDeleteObject(const App::DocumentObject& obj); + +- typedef boost::BOOST_SIGNALS_NAMESPACE::connection Connection; ++ typedef boost::signals2::connection Connection; + Connection connectDeletedObject; + + private: +--- src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp +@@ -25,7 +25,6 @@ + #include "PreCompiled.h" + + #ifndef _PreComp_ +-#include + #include + + #endif +--- src/Mod/TechDraw/Gui/ViewProviderDrawingView.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/Gui/ViewProviderDrawingView.h +@@ -78,7 +78,7 @@ class TechDrawGuiExport ViewProviderDrawingView : publ + 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; + + +--- src/Mod/TechDraw/Gui/ViewProviderPage.cpp.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/Gui/ViewProviderPage.cpp +@@ -29,7 +29,6 @@ + # include + # include + #include +-#include + #include + + #endif +--- src/Mod/TechDraw/Gui/ViewProviderPage.h.orig 2018-04-06 08:48:37 UTC ++++ src/Mod/TechDraw/Gui/ViewProviderPage.h +@@ -81,7 +81,7 @@ class TechDrawGuiExport ViewProviderPage : public Gui: + + 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); diff --git a/srcpkgs/freecad/template b/srcpkgs/freecad/template index 86ceeca3918..f143deea22d 100644 --- a/srcpkgs/freecad/template +++ b/srcpkgs/freecad/template @@ -5,7 +5,7 @@ # - python3: freecad code not yet ready for it, probably at 0.18 pkgname=freecad version=0.17 -revision=6 +revision=7 wrksrc="FreeCAD-${version}" build_style=cmake @@ -16,8 +16,8 @@ configure_args=" -DBUILD_QT5=OFF -DCMAKE_INSTALL_PREFIX=${_inst_prefix} -DCMAKE_INSTALL_LIBDIR=${_inst_prefix}/lib" -hostmakedepends="pkg-config swig doxygen graphviz" -makedepends="python-devel boost-devel boost-python libxerces-c-devel +hostmakedepends="pkg-config swig doxygen graphviz dos2unix" +makedepends="python-devel boost-devel libxerces-c-devel zlib-devel occt-devel vtk-devel hdf5-devel openmpi-devel libmed-devel eigen coin3-devel libshiboken-python-devel libspnav-devel pyside-tools liblz4-devel libpyside-python-devel python-matplotlib netcdf-devel jsoncpp-devel @@ -34,6 +34,10 @@ homepage="https://freecadweb.org/" distfiles="https://github.com/FreeCAD/FreeCAD/archive/${version}.tar.gz" checksum=ae017393476b6dc7f1192bcaf91ceedc2f9b791f2495307ce7c45efadb5266fb +post_extract() { + find $wrksrc -type f -exec dos2unix {} + +} + post_install() { # AppHomePath is computed with binary's realpath: # do not move binaries but symlink them instead.