diff --git a/srcpkgs/rstudio/patches/boost-1.68.patch b/srcpkgs/rstudio/patches/0001-boost-1.68.patch similarity index 100% rename from srcpkgs/rstudio/patches/boost-1.68.patch rename to srcpkgs/rstudio/patches/0001-boost-1.68.patch diff --git a/srcpkgs/rstudio/patches/rstudio-1.1.463-boost-1.69.0_p1.patch b/srcpkgs/rstudio/patches/rstudio-1.1.463-boost-1.69.0_p1.patch new file mode 100644 index 0000000000..a52697bfb2 --- /dev/null +++ b/srcpkgs/rstudio/patches/rstudio-1.1.463-boost-1.69.0_p1.patch @@ -0,0 +1,680 @@ +--- /dev/null 2018-11-10 15:32:26.332997437 +1100 ++++ src/cpp/core/include/core/BoostSignals.hpp 2018-11-17 21:24:35.285976284 +1100 +@@ -0,0 +1,40 @@ ++/* ++ * BoostSignals.hpp ++ * ++ * Copyright (C) 2009-18 by RStudio, Inc. ++ * ++ * Unless you have received this program directly from RStudio pursuant ++ * to the terms of a commercial license agreement with RStudio, then ++ * this program is licensed to you under the terms of version 3 of the ++ * GNU Affero General Public License. This program is distributed WITHOUT ++ * ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THOSE OF NON-INFRINGEMENT, ++ * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Please refer to the ++ * AGPL (http://www.gnu.org/licenses/agpl-3.0.txt) for more details. ++ * ++ */ ++ ++#ifndef CORE_RSTUDIO_BOOST_SIGNALS_HPP ++#define CORE_RSTUDIO_BOOST_SIGNALS_HPP ++ ++#if RSTUDIO_BOOST_SIGNALS_VERSION == 1 ++ ++# include ++# define RSTUDIO_BOOST_SIGNAL boost::signal ++# define RSTUDIO_BOOST_CONNECTION boost::signals::connection ++# define RSTUDIO_BOOST_SCOPED_CONNECTION boost::signals::scoped_connection ++# define RSTUDIO_BOOST_LAST_VALUE boost::last_value ++ ++#elif RSTUDIO_BOOST_SIGNALS_VERSION == 2 ++ ++# include ++# define RSTUDIO_BOOST_SIGNAL boost::signals2::signal ++# define RSTUDIO_BOOST_CONNECTION boost::signals2::connection ++# define RSTUDIO_BOOST_SCOPED_CONNECTION boost::signals2::scoped_connection ++# define RSTUDIO_BOOST_LAST_VALUE boost::signals2::last_value ++ ++#else ++# error "Unrecognized RSTUDIO_BOOST_SIGNALS_VERSION" ++#endif ++ ++#endif // CORE_RSTUDIO_BOOST_SIGNALS_HPP ++ +--- rstudio-1.1.463-orig/src/cpp/CMakeLists.txt 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/CMakeLists.txt 2018-11-17 21:24:35.285976284 +1100 +@@ -208,6 +208,18 @@ + message(STATUS "Using RStudio-provided Boost ${BOOST_VERSION}") + endif() + ++# allow opt-in to using Boost.Signals2 ++# TODO: remove this in RStudio v1.3 and port to signals2 ++if(NOT RSTUDIO_BOOST_SIGNALS_VERSION) ++ if (BOOST_VERSION VERSION_LESS 1.69.0) ++ set(RSTUDIO_BOOST_SIGNALS_VERSION 1) ++ else() ++ set(RSTUDIO_BOOST_SIGNALS_VERSION 2) ++ endif() ++endif() ++ ++message(STATUS "Using Booost.Signals version ${RSTUDIO_BOOST_SIGNALS_VERSION}") ++add_definitions(-DRSTUDIO_BOOST_SIGNALS_VERSION=${RSTUDIO_BOOST_SIGNALS_VERSION}) + + # add boost as system include directory + include_directories(SYSTEM ${Boost_INCLUDE_DIRS}) +--- rstudio-1.1.463-orig/src/cpp/r/include/r/session/RConsoleHistory.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/r/include/r/session/RConsoleHistory.hpp 2018-11-17 21:24:35.285976284 +1100 +@@ -20,8 +20,8 @@ + + #include + #include +-#include + ++#include + #include + + namespace rstudio { +@@ -44,7 +44,7 @@ + public: + typedef boost::circular_buffer::value_type value_type; + typedef boost::circular_buffer::const_iterator const_iterator; +- typedef boost::signal AddSignal; ++ typedef RSTUDIO_BOOST_SIGNAL AddSignal; + + private: + ConsoleHistory(); +@@ -86,8 +86,7 @@ + core::Error loadFromFile(const core::FilePath& filePath, bool verifyFile); + core::Error saveToFile(const core::FilePath& filePath) const; + +- boost::signals::connection connectOnAdd( +- const AddSignal::slot_function_type& slot) ++ RSTUDIO_BOOST_CONNECTION connectOnAdd(const AddSignal::slot_function_type& slot) + { + return onAdd_.connect(slot); + } +--- rstudio-1.1.463-orig/src/cpp/r/include/r/session/RGraphics.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/r/include/r/session/RGraphics.hpp 2018-11-17 21:24:35.286976293 +1100 +@@ -19,6 +19,8 @@ + #include + #include + ++#include ++ + namespace rstudio { + namespace r { + namespace session { +@@ -56,8 +58,8 @@ + #include + + #include +-#include + ++#include + #include + #include + +@@ -162,7 +164,7 @@ + virtual void clear() = 0; + + // subscribe to showManipulator event +- virtual boost::signal& onShowManipulator() = 0; ++ virtual RSTUDIO_BOOST_SIGNAL& onShowManipulator() = 0; + + // set manipulator values + virtual void setPlotManipulatorValues(const core::json::Object& values) = 0; +--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManager.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/r/session/graphics/RGraphicsPlotManager.cpp 2018-11-17 21:24:35.286976293 +1100 +@@ -540,7 +540,7 @@ + + + +-boost::signal& PlotManager::onShowManipulator() ++RSTUDIO_BOOST_SIGNAL& PlotManager::onShowManipulator() + { + return plotManipulatorManager().onShowManipulator(); + } +--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManager.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/r/session/graphics/RGraphicsPlotManager.hpp 2018-11-17 21:24:35.287976303 +1100 +@@ -22,10 +22,10 @@ + #include + #include + #include +-#include + #include + #include + ++#include + #include + #include + +@@ -45,10 +45,10 @@ + + struct GraphicsDeviceEvents + { +- boost::signal onNewPage; +- boost::signal onDrawing; +- boost::signal onResized; +- boost::signal onClosed; ++ RSTUDIO_BOOST_SIGNAL onNewPage; ++ RSTUDIO_BOOST_SIGNAL onDrawing; ++ RSTUDIO_BOOST_SIGNAL onResized; ++ RSTUDIO_BOOST_SIGNAL onClosed; + }; + + class PlotManipulatorManager; +@@ -110,7 +110,7 @@ + + virtual void clear(); + +- virtual boost::signal& onShowManipulator() ; ++ virtual RSTUDIO_BOOST_SIGNAL& onShowManipulator() ; + virtual void setPlotManipulatorValues(const core::json::Object& values); + virtual void manipulatorPlotClicked(int x, int y); + +--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.cpp 2018-11-17 21:24:35.287976303 +1100 +@@ -184,7 +184,7 @@ + } + + +-boost::signal& PlotManipulatorManager::onShowManipulator() ++RSTUDIO_BOOST_SIGNAL& PlotManipulatorManager::onShowManipulator() + { + return onShowManipulator_; + } +--- rstudio-1.1.463-orig/src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/r/session/graphics/RGraphicsPlotManipulatorManager.hpp 2018-11-17 21:24:35.287976303 +1100 +@@ -16,8 +16,7 @@ + #ifndef R_SESSION_GRAPHICS_PLOT_MANIPULATOR_MANAGER_HPP + #define R_SESSION_GRAPHICS_PLOT_MANIPULATOR_MANAGER_HPP + +-#include +- ++#include + #include + #include + +@@ -53,7 +52,7 @@ + public: + core::Error initialize(const UnitConversionFunctions& convert); + +- boost::signal& onShowManipulator() ; ++ RSTUDIO_BOOST_SIGNAL& onShowManipulator() ; + void setPlotManipulatorValues(const core::json::Object& values); + void manipulatorPlotClicked(int x, int y); + +@@ -85,7 +84,7 @@ + bool replayingManipulator_; + + // manipulator event hook +- boost::signal onShowManipulator_; ++ RSTUDIO_BOOST_SIGNAL onShowManipulator_; + + // unit conversion function + UnitConversionFunctions convert_; +--- rstudio-1.1.463-orig/src/cpp/server/include/server/ServerSessionManager.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/server/include/server/ServerSessionManager.hpp 2018-11-17 21:27:05.255436316 +1100 +@@ -20,9 +20,9 @@ + #include + #include + +-#include + #include + ++#include + #include + + #include +--- rstudio-1.1.463-orig/src/cpp/session/SessionMain.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/SessionMain.cpp 2018-11-17 21:24:35.288976313 +1100 +@@ -33,12 +33,12 @@ + #include + #include + +-#include + #include + #include + #include + + #include ++#include + #include + #include + #include +--- rstudio-1.1.463-orig/src/cpp/session/SessionModuleContext.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/SessionModuleContext.cpp 2018-11-17 21:24:35.289976322 +1100 +@@ -19,10 +19,10 @@ + + #include + #include +-#include + #include + #include + ++#include + #include + #include + #include +@@ -586,13 +586,13 @@ + + int nextGroup_; + +- boost::signal, ++ RSTUDIO_BOOST_SIGNAL, + int, + std::less > suspendSignal_; + +- boost::signal, ++ RSTUDIO_BOOST_SIGNAL, + int, + std::greater > resumeSignal_; + }; +--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionConsoleProcess.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/include/session/SessionConsoleProcess.hpp 2018-11-17 21:24:35.290976332 +1100 +@@ -20,10 +20,10 @@ + #include + + #include +-#include + #include + #include + ++#include + #include + #include + +@@ -146,7 +146,7 @@ + void setPromptHandler( + const boost::function& onPrompt); + +- boost::signal& onExit() { return onExit_; } ++ RSTUDIO_BOOST_SIGNAL& onExit() { return onExit_; } + + std::string handle() const { return procInfo_->getHandle(); } + InteractionMode interactionMode() const { return procInfo_->getInteractionMode(); } +@@ -264,7 +264,7 @@ + boost::mutex inputOutputQueueMutex_; + + boost::function onPrompt_; +- boost::signal onExit_; ++ RSTUDIO_BOOST_SIGNAL onExit_; + + // regex for prompt detection + boost::regex controlCharsPattern_; +--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionModuleContext.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/include/session/SessionModuleContext.hpp 2018-11-17 21:28:25.019212857 +1100 +@@ -21,9 +21,9 @@ + + #include + #include +-#include + #include + ++#include + #include + #include + #include +@@ -315,35 +315,35 @@ + // session events + struct Events : boost::noncopyable + { +- boost::signal onSessionInfo; +- boost::signal onClientInit; +- boost::signal onBeforeExecute; +- boost::signal onConsolePrompt; +- boost::signal onConsoleInput; +- boost::signal ++ RSTUDIO_BOOST_SIGNAL onSessionInfo; ++ RSTUDIO_BOOST_SIGNAL onClientInit; ++ RSTUDIO_BOOST_SIGNAL onBeforeExecute; ++ RSTUDIO_BOOST_SIGNAL onConsolePrompt; ++ RSTUDIO_BOOST_SIGNAL onConsoleInput; ++ RSTUDIO_BOOST_SIGNAL + onActiveConsoleChanged; +- boost::signal ++ RSTUDIO_BOOST_SIGNAL + onConsoleOutput; +- boost::signal onUserInterrupt; +- boost::signal onDetectChanges; +- boost::signal onSourceEditorFileSaved; +- boost::signal onDeferredInit; +- boost::signal afterSessionInitHook; +- boost::signal onBackgroundProcessing; +- boost::signal onShutdown; +- boost::signal onQuit; +- boost::signal onDestroyed; +- boost::signal&)> ++ RSTUDIO_BOOST_SIGNAL onUserInterrupt; ++ RSTUDIO_BOOST_SIGNAL onDetectChanges; ++ RSTUDIO_BOOST_SIGNAL onSourceEditorFileSaved; ++ RSTUDIO_BOOST_SIGNAL onDeferredInit; ++ RSTUDIO_BOOST_SIGNAL afterSessionInitHook; ++ RSTUDIO_BOOST_SIGNAL onBackgroundProcessing; ++ RSTUDIO_BOOST_SIGNAL onShutdown; ++ RSTUDIO_BOOST_SIGNAL onQuit; ++ RSTUDIO_BOOST_SIGNAL onDestroyed; ++ RSTUDIO_BOOST_SIGNAL&)> + onLibPathsChanged; +- boost::signal onPackageLoaded; +- boost::signal onPackageLibraryMutated; +- boost::signal onPreferencesSaved; +- boost::signal ++ RSTUDIO_BOOST_SIGNAL onPackageLoaded; ++ RSTUDIO_BOOST_SIGNAL onPackageLibraryMutated; ++ RSTUDIO_BOOST_SIGNAL onPreferencesSaved; ++ RSTUDIO_BOOST_SIGNAL + onDistributedEvent; +- boost::signal onPermissionsChanged; ++ RSTUDIO_BOOST_SIGNAL onPermissionsChanged; + + // signal for detecting extended type of documents +- boost::signal), ++ RSTUDIO_BOOST_SIGNAL), + firstNonEmpty > onDetectSourceExtendedType; + }; + +--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionSourceDatabase.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/include/session/SessionSourceDatabase.hpp 2018-11-17 21:24:35.291976342 +1100 +@@ -21,8 +21,8 @@ + + #include + #include +-#include + ++#include + #include + #include + +@@ -204,14 +204,14 @@ + // source database events + struct Events : boost::noncopyable + { +- boost::signal)> onDocUpdated; +- boost::signal)> onDocUpdated; ++ RSTUDIO_BOOST_SIGNAL)> onDocRenamed; +- boost::signal onDocAdded; +- boost::signal onDocAdded; ++ RSTUDIO_BOOST_SIGNAL)> onDocPendingRemove; +- boost::signal onDocRemoved; +- boost::signal onRemoveAll; ++ RSTUDIO_BOOST_SIGNAL onDocRemoved; ++ RSTUDIO_BOOST_SIGNAL onRemoveAll; + }; + + Events& events(); +--- rstudio-1.1.463-orig/src/cpp/session/include/session/SessionUserSettings.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/include/session/SessionUserSettings.hpp 2018-11-17 21:24:35.291976342 +1100 +@@ -20,8 +20,8 @@ + + #include + #include +-#include + ++#include + #include + #include + #include +@@ -62,7 +62,7 @@ + friend UserSettings& userSettings(); + + public: +- boost::signal onChanged; ++ RSTUDIO_BOOST_SIGNAL onChanged; + + public: + // COPYING: boost::noncopyable +--- rstudio-1.1.463-orig/src/cpp/session/include/session/projects/SessionProjects.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/include/session/projects/SessionProjects.hpp 2018-11-17 21:24:35.291976342 +1100 +@@ -22,8 +22,8 @@ + #include + #include + #include +-#include + ++#include + #include + #include + #include +@@ -220,10 +220,10 @@ + + bool hasFileMonitor_; + std::vector monitorSubscribers_; +- boost::signal&)> onMonitoringEnabled_; +- boost::signal&)> ++ RSTUDIO_BOOST_SIGNAL&)> onMonitoringEnabled_; ++ RSTUDIO_BOOST_SIGNAL&)> + onFilesChanged_; +- boost::signal onMonitoringDisabled_; ++ RSTUDIO_BOOST_SIGNAL onMonitoringDisabled_; + }; + + ProjectContext& projectContext(); +--- rstudio-1.1.463-orig/src/cpp/session/modules/SessionPlots.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/SessionPlots.hpp 2018-11-17 21:24:35.292976352 +1100 +@@ -16,7 +16,7 @@ + #ifndef SESSION_PLOTS_HPP + #define SESSION_PLOTS_HPP + +-#include ++#include + + namespace rstudio { + namespace core { +@@ -35,9 +35,9 @@ + + struct Events : boost::noncopyable + { +- boost::signal onBeforeNewPlot; +- boost::signal onBeforeNewGridPage; +- boost::signal onNewPlot; ++ RSTUDIO_BOOST_SIGNAL onBeforeNewPlot; ++ RSTUDIO_BOOST_SIGNAL onBeforeNewGridPage; ++ RSTUDIO_BOOST_SIGNAL onNewPlot; + }; + + Events& events(); +--- rstudio-1.1.463-orig/src/cpp/session/modules/build/SessionSourceCpp.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/build/SessionSourceCpp.cpp 2018-11-17 21:24:35.293976361 +1100 +@@ -15,11 +15,11 @@ + + #include "SessionSourceCpp.hpp" + +-#include + #include + #include + #include + ++#include + #include + #include + #include +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookAlternateEngines.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookAlternateEngines.cpp 2018-11-17 21:24:35.294976371 +1100 +@@ -142,7 +142,7 @@ + LOG_ERROR(error); + + // capture console output, error +- boost::signals::scoped_connection consoleHandler = ++ RSTUDIO_BOOST_SCOPED_CONNECTION consoleHandler = + module_context::events().onConsoleOutput.connect( + boost::bind(chunkConsoleOutputHandler, + _1, +@@ -219,7 +219,7 @@ + LOG_ERROR(error); + + // capture console output, error +- boost::signals::scoped_connection consoleHandler = ++ RSTUDIO_BOOST_SCOPED_CONNECTION consoleHandler = + module_context::events().onConsoleOutput.connect( + boost::bind(chunkConsoleOutputHandler, + _1, +@@ -363,7 +363,7 @@ + LOG_ERROR(error); + + // capture console output, error +- boost::signals::scoped_connection consoleHandler = ++ RSTUDIO_BOOST_SCOPED_CONNECTION consoleHandler = + module_context::events().onConsoleOutput.connect( + boost::bind(chunkConsoleOutputHandler, + _1, +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookCapture.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookCapture.cpp 2018-11-17 21:24:35.294976371 +1100 +@@ -16,6 +16,8 @@ + #include "SessionRmdNotebook.hpp" + #include "NotebookCapture.hpp" + ++#include ++ + namespace rstudio { + namespace session { + namespace modules { +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookExec.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookExec.cpp 2018-11-17 21:24:35.295976381 +1100 +@@ -441,7 +441,7 @@ + } + + // unhook all our event handlers +- BOOST_FOREACH(const boost::signals::connection connection, connections_) ++ BOOST_FOREACH(const RSTUDIO_BOOST_CONNECTION connection, connections_) + { + connection.disconnect(); + } +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookExec.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookExec.hpp 2018-11-17 21:24:35.295976381 +1100 +@@ -18,8 +18,7 @@ + + #include + +-#include +- ++#include + #include + + #include +@@ -99,7 +98,7 @@ + bool hasErrors_; + + std::vector > captures_; +- std::vector connections_; ++ std::vector connections_; + }; + + } // namespace notebook +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookPlots.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookPlots.cpp 2018-11-17 21:24:35.295976381 +1100 +@@ -20,11 +20,12 @@ + + #include + #include +-#include + +-#include +-#include ++#include + #include ++#include ++ ++#include + + #include + +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookPlots.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookPlots.hpp 2018-11-17 21:24:35.296976391 +1100 +@@ -18,8 +18,10 @@ + #define SESSION_NOTEBOOK_PLOTS_HPP + + #include +-#include ++ ++#include + #include ++ + #include + + #include "NotebookCapture.hpp" +@@ -80,9 +82,9 @@ + + unsigned lastOrdinal_; + +- boost::signals::connection onBeforeNewPlot_; +- boost::signals::connection onBeforeNewGridPage_; +- boost::signals::connection onNewPlot_; ++ RSTUDIO_BOOST_CONNECTION onBeforeNewPlot_; ++ RSTUDIO_BOOST_CONNECTION onBeforeNewGridPage_; ++ RSTUDIO_BOOST_CONNECTION onNewPlot_; + + double width_; + double height_; +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/NotebookQueue.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/NotebookQueue.cpp 2018-11-17 21:24:35.296976391 +1100 +@@ -87,7 +87,7 @@ + pInput_->enque(kThreadQuitCommand); + + // unregister handlers +- BOOST_FOREACH(boost::signals::connection connection, handlers_) ++ BOOST_FOREACH(RSTUDIO_BOOST_CONNECTION connection, handlers_) + { + connection.disconnect(); + } +@@ -651,7 +651,7 @@ + boost::shared_ptr execContext_; + + // registered signal handlers +- std::vector handlers_; ++ std::vector handlers_; + + // the thread which submits console input, and the queue which feeds it + boost::thread console_; +--- rstudio-1.1.463-orig/src/cpp/session/modules/rmarkdown/SessionRmdNotebook.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/rmarkdown/SessionRmdNotebook.hpp 2018-11-17 21:24:35.296976391 +1100 +@@ -18,7 +18,8 @@ + #define SESSION_RMARKDOWN_NOTEBOOK_HPP + + #include +-#include ++ ++#include + #include + + #define kChunkLibDir "lib" +@@ -76,24 +77,24 @@ + struct Events : boost::noncopyable + { + // Document {0}, chunk {1} from context id {3} execution completed +- boost::signal + onChunkExecCompleted; + + // Document {0}, chunk {1} had console output of type {2} and text {3} +- boost::signal + onChunkConsoleOutput; + +- boost::signal + onPlotOutput; +- boost::signal onHtmlOutput; +- boost::signal onErrorOutput; +- boost::signal onErrorOutput; ++ RSTUDIO_BOOST_SIGNAL onDataOutput; +- boost::signal ++ RSTUDIO_BOOST_SIGNAL + onCondition; + }; + diff --git a/srcpkgs/rstudio/patches/rstudio-1.1.463-boost-1.69.0_p2.patch b/srcpkgs/rstudio/patches/rstudio-1.1.463-boost-1.69.0_p2.patch new file mode 100644 index 0000000000..80d759fdc0 --- /dev/null +++ b/srcpkgs/rstudio/patches/rstudio-1.1.463-boost-1.69.0_p2.patch @@ -0,0 +1,167 @@ +--- rstudio-1.1.463-orig/src/cpp/CMakeLists.txt 2018-11-17 21:24:35.285976284 +1100 ++++ src/cpp/CMakeLists.txt 2018-11-17 21:41:02.712507842 +1100 +@@ -175,6 +175,9 @@ + set(Boost_USE_STATIC_LIBS ON) + set(BOOST_INCLUDEDIR ${RSTUDIO_TOOLS_BOOST}/include) + find_package(Boost ${BOOST_VERSION} REQUIRED) ++ if(NOT Boost_VERSION VERSION_LESS 1.69.0) ++ list(REMOVE_ITEM BOOST_LIBS signals) ++ endif() + + # define library list manually (find_package doesn't always pick them up) + set(BOOST_LIB_DIR ${RSTUDIO_TOOLS_BOOST}/lib) +@@ -184,11 +187,15 @@ + message(STATUS "Using RStudio-provided Boost ${BOOST_VERSION}") + else() + add_definitions(-DRSTUDIO_BOOST_NAMESPACE=boost) ++ find_package(Boost ${BOOST_VERSION} REQUIRED) ++ if(NOT Boost_VERSION VERSION_LESS 1.69.0) ++ list(REMOVE_ITEM BOOST_LIBS signals) ++ endif() + find_package(Boost ${BOOST_VERSION} REQUIRED COMPONENTS ${BOOST_LIBS}) + message(STATUS "Using system Boost ${BOOST_VERSION}") + endif() + +- # WIN32 BOOST ++# WIN32 BOOST + else() + # hard-code to our own prebuilt boost libs + add_definitions(-DRSTUDIO_BOOST_NAMESPACE=rstudio_boost) +@@ -211,14 +218,14 @@ + # allow opt-in to using Boost.Signals2 + # TODO: remove this in RStudio v1.3 and port to signals2 + if(NOT RSTUDIO_BOOST_SIGNALS_VERSION) +- if (BOOST_VERSION VERSION_LESS 1.69.0) ++ if (Boost_VERSION VERSION_LESS 1.69.0) + set(RSTUDIO_BOOST_SIGNALS_VERSION 1) + else() + set(RSTUDIO_BOOST_SIGNALS_VERSION 2) + endif() + endif() + +-message(STATUS "Using Booost.Signals version ${RSTUDIO_BOOST_SIGNALS_VERSION}") ++message(STATUS "Using Boost.Signals version ${RSTUDIO_BOOST_SIGNALS_VERSION}") + add_definitions(-DRSTUDIO_BOOST_SIGNALS_VERSION=${RSTUDIO_BOOST_SIGNALS_VERSION}) + + # add boost as system include directory +--- rstudio-1.1.463-orig/src/cpp/core/include/core/r_util/RFunctionInformation.hpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/core/include/core/r_util/RFunctionInformation.hpp 2018-11-17 21:41:02.713507852 +1100 +@@ -75,9 +75,9 @@ + const std::string& name() const { return name_; } + const boost::optional& defaultValue() const { return defaultValue_; } + boost::tribool hasDefault() const { return hasDefault_; } +- bool isUsed() const { return isUsed_; } ++ bool isUsed() const { return bool(isUsed_); } + void setIsUsed(bool value) { isUsed_ = value; } +- bool isMissingnessHandled() const { return isMissingnessHandled_; } ++ bool isMissingnessHandled() const { return bool(isMissingnessHandled_); } + void setMissingnessHandled(bool value) { isMissingnessHandled_ = value; } + + private: +@@ -130,7 +130,7 @@ + + bool isPrimitive() + { +- return isPrimitive_ == true; ++ return bool(isPrimitive_); + } + + void setIsPrimitive(bool isPrimitive) +--- rstudio-1.1.463-orig/src/cpp/session/modules/SessionRParser.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/session/modules/SessionRParser.cpp 2018-11-17 21:41:02.714507862 +1100 +@@ -390,7 +390,7 @@ + if (!failed) + { + DEBUG("--- Found function in pkgInfo index: " << *fnInfo.binding()); +- return fnInfo.performsNse(); ++ return bool(fnInfo.performsNse()); + } + + // Handle some special cases first. +--- rstudio-1.1.463-orig/src/tools/clang-ubsan-build 2018-10-25 09:42:55.000000000 +1100 ++++ src/tools/clang-ubsan-build 2018-11-17 21:41:02.714507862 +1100 +@@ -10,19 +10,19 @@ + + : ${RSTUDIO_USE_LIBCXX="Yes"} + : ${RSTUDIO_USE_SYSTEM_BOOST="Yes"} +-: ${RSTUDIO_BOOST_VERSION="1.56.0"} ++: ${RSTUDIO_BOOST_REQUESTED_VERSION="1.56.0"} + + mkdir -p "${BUILD_DIR}" + cd "${BUILD_DIR}" +-cmake ../cpp \ +- -DLIBR_HOME="${R_HOME}" \ +- -DCMAKE_C_COMPILER="${CC}" \ +- -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ +- -DCMAKE_CXX_COMPILER="${CXX}" \ +- -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ +- -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \ +- -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \ +- -DRSTUDIO_BOOST_VERSION="${RSTUDIO_BOOST_VERSION}" \ ++cmake ../cpp \ ++ -DLIBR_HOME="${R_HOME}" \ ++ -DCMAKE_C_COMPILER="${CC}" \ ++ -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ ++ -DCMAKE_CXX_COMPILER="${CXX}" \ ++ -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ ++ -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \ ++ -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \ ++ -DRSTUDIO_BOOST_REQUESTED_VERSION="${RSTUDIO_BOOST_REQUESTED_VERSION}" \ + "$@" + cd .. + +--- rstudio-1.1.463-orig/src/tools/gcc-ubsan-build 2018-10-25 09:42:55.000000000 +1100 ++++ src/tools/gcc-ubsan-build 2018-11-17 21:41:02.715507871 +1100 +@@ -19,19 +19,19 @@ + # NOTE: Boost 1.50.0 not compatible with gcc-6 + : ${RSTUDIO_USE_LIBCXX="No"} + : ${RSTUDIO_USE_SYSTEM_BOOST="Yes"} +-: ${RSTUDIO_BOOST_VERSION="1.54.0"} ++: ${RSTUDIO_BOOST_REQUESTED_VERSION="1.54.0"} + + mkdir -p "${BUILD_DIR}" + cd "${BUILD_DIR}" +-cmake ../cpp \ +- -DLIBR_HOME="${R_HOME}" \ +- -DCMAKE_C_COMPILER="${CC}" \ +- -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ +- -DCMAKE_CXX_COMPILER="${CXX}" \ +- -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ +- -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \ +- -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \ +- -DRSTUDIO_BOOST_VERSION="${RSTUDIO_BOOST_VERSION}" \ ++cmake ../cpp \ ++ -DLIBR_HOME="${R_HOME}" \ ++ -DCMAKE_C_COMPILER="${CC}" \ ++ -DCMAKE_C_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ ++ -DCMAKE_CXX_COMPILER="${CXX}" \ ++ -DCMAKE_CXX_FLAGS="${ASANFLAGS} ${LDFLAGS}" \ ++ -DRSTUDIO_USE_LIBCXX="${RSTUDIO_USE_LIBCXX}" \ ++ -DRSTUDIO_USE_SYSTEM_BOOST="${RSTUDIO_USE_SYSTEM_BOOST}" \ ++ -DRSTUDIO_BOOST_REQUESTED_VERSION="${RSTUDIO_BOOST_REQUESTED_VERSION}" \ + "$@" + cd .. + +--- rstudio-1.1.463-orig/src/tools/xcode-ubsan-build 2018-10-25 09:42:55.000000000 +1100 ++++ src/tools/xcode-ubsan-build 2018-11-17 21:41:02.715507871 +1100 +@@ -15,13 +15,13 @@ + # sanitizers released with newer versions of clang) + mkdir -p "${BUILD_DIR}" + cd "${BUILD_DIR}" +-cmake ../cpp -GXcode \ +- -DLIBR_HOME="${R_HOME}" \ +- -DLIBR_INCLUDE_DIRS="${R_INCL}" \ +- -DLIBR_DOC_DIR="${R_DOCS}" \ +- -DRSTUDIO_USE_LIBCXX="Yes" \ +- -DRSTUDIO_USE_SYSTEM_BOOST="Yes" \ +- -DRSTUDIO_BOOST_VERSION="1.56.0" \ ++cmake ../cpp -GXcode \ ++ -DLIBR_HOME="${R_HOME}" \ ++ -DLIBR_INCLUDE_DIRS="${R_INCL}" \ ++ -DLIBR_DOC_DIR="${R_DOCS}" \ ++ -DRSTUDIO_USE_LIBCXX="Yes" \ ++ -DRSTUDIO_USE_SYSTEM_BOOST="Yes" \ ++ -DRSTUDIO_BOOST_REQUESTED_VERSION="1.56.0" \ + "$@" + cmake ../cpp -DLIBR_LIBRARIES="${R_LIBS}/libR.dylib" + cd .. diff --git a/srcpkgs/rstudio/patches/rstudio-1.1.463-fix-ptr-int-compare.patch b/srcpkgs/rstudio/patches/rstudio-1.1.463-fix-ptr-int-compare.patch new file mode 100644 index 0000000000..3d33eb0545 --- /dev/null +++ b/srcpkgs/rstudio/patches/rstudio-1.1.463-fix-ptr-int-compare.patch @@ -0,0 +1,13 @@ +--- rstudio-1.1.463-orig/src/cpp/server/ServerSecureKeyFile.cpp 2018-10-25 09:42:55.000000000 +1100 ++++ src/cpp/server/ServerSecureKeyFile.cpp 2018-11-17 22:17:18.110012955 +1100 +@@ -79,8 +79,8 @@ + return error; + + // change mode it so it is only readable and writeable by this user +- if (changeFileMode(secureKeyPath, +- core::system::UserReadWriteMode) < 0) ++ if (!!changeFileMode(secureKeyPath, ++ core::system::UserReadWriteMode)) + { + return systemError(errno, ERROR_LOCATION); + } diff --git a/srcpkgs/rstudio/template b/srcpkgs/rstudio/template index a0a94b1b2b..b176db7d34 100644 --- a/srcpkgs/rstudio/template +++ b/srcpkgs/rstudio/template @@ -1,7 +1,7 @@ # Template file for 'rstudio' pkgname=rstudio -version=1.1.456 -revision=3 +version=1.1.463 +revision=1 only_for_archs="i686 x86_64" build_style=cmake make_install_args="INSTALL_ROOT=${DESTDIR} \ @@ -36,7 +36,7 @@ distfiles="https://github.com/rstudio/rstudio/archive/v${version}.tar.gz ${_aws}/rstudio-buildtools/selenium-java-${_selenium_version}.zip ${_aws}/rstudio-buildtools/selenium-server-standalone-${_selenium_version}.jar ${_aws}/rstudio-buildtools/chromedriver-linux" -checksum="1362ad0afdb214d85e4edf86a1d42d0f83d0fa91dc4e5079af6424df9b1573d0 +checksum="57be651509ff2542a1dabccb70584ecf6b35fb20f97618091c181d4982667cdd 4341a9630efb9dcf7f215c324136407f3b3d6003e1c96f2e5e1f9f14d5787494 f561f4eb5d5fe1cff95c881e6aed53a86e9f0de8a52863295a8600375f96ab94 aa65061b73836190410720bea422eb8e787680d7bc0c2b244ae6c9a0d24747b3 @@ -51,8 +51,7 @@ skip_extraction="core-dictionaries.zip selenium-java-${_selenium_version}.zip selenium-server-standalone-${_selenium_version}.jar chromedriver-linux" - -broken="boost patches are missing" +CXXFLAGS="-DBOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS" post_extract() { _srcdir="${XBPS_SRCDISTDIR}/${pkgname}-${version}"