--- rstudio-1.1.463-orig/src/cpp/CMakeLists.txt 2018-11-17 21:24:35.285976284 +1100 +++ rstudio-1.1.463/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 +++ rstudio-1.1.463/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 +++ rstudio-1.1.463/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 +++ rstudio-1.1.463/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 +++ rstudio-1.1.463/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 +++ rstudio-1.1.463/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 ..