diff options
author | Kirk Shoop <kirk.shoop@microsoft.com> | 2016-12-13 19:58:34 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-13 19:58:34 -0800 |
commit | cfa49a4d4baa57159319d8498f8f9158b9036e6a (patch) | |
tree | 88fe0d4d32c8824aaf80ad9b759421effbc9983b /projects | |
parent | 2ac078e3b0c78785134a195c26e7b55a6758f3c7 (diff) | |
download | RxCpp-cfa49a4d4baa57159319d8498f8f9158b9036e6a.tar.gz |
add support for C++ coroutines (#286)
* add support for C++ coroutines
* add tests and docs
* address feedback and fix lifetime issue
Diffstat (limited to 'projects')
-rw-r--r-- | projects/CMake/CMakeLists.txt | 3 | ||||
-rw-r--r-- | projects/CMake/shared.cmake | 9 |
2 files changed, 11 insertions, 1 deletions
diff --git a/projects/CMake/CMakeLists.txt b/projects/CMake/CMakeLists.txt index 484762b..dc5326f 100644 --- a/projects/CMake/CMakeLists.txt +++ b/projects/CMake/CMakeLists.txt @@ -84,6 +84,7 @@ set(RX_SOURCES ${RXCPP_DIR}/Rx/v2/src/rxcpp/operators/rx-zip.hpp ${RXCPP_DIR}/Rx/v2/src/rxcpp/rx-connectable_observable.hpp ${RXCPP_DIR}/Rx/v2/src/rxcpp/rx-coordination.hpp + ${RXCPP_DIR}/Rx/v2/src/rxcpp/rx-coroutine.hpp ${RXCPP_DIR}/Rx/v2/src/rxcpp/rx-grouped_observable.hpp ${RXCPP_DIR}/Rx/v2/src/rxcpp/rx-includes.hpp ${RXCPP_DIR}/Rx/v2/src/rxcpp/rx-notification.hpp @@ -132,4 +133,4 @@ SET_TARGET_PROPERTIES(RxCpp PROPERTIES LINKER_LANGUAGE CXX) set(CMAKE_SKIP_INSTALL_ALL_DEPENDENCY TRUE CACHE BOOL "Don't require all projects to be built in order to install" FORCE) install(DIRECTORY ${RXCPP_DIR}/Rx/v2/src/rxcpp/ DESTINATION rxcpp - FILES_MATCHING PATTERN "*.hpp")
\ No newline at end of file + FILES_MATCHING PATTERN "*.hpp") diff --git a/projects/CMake/shared.cmake b/projects/CMake/shared.cmake index c29bdcb..87f1820 100644 --- a/projects/CMake/shared.cmake +++ b/projects/CMake/shared.cmake @@ -5,6 +5,7 @@ FIND_PACKAGE(Threads) MESSAGE( STATUS "CMAKE_CXX_COMPILER_ID: " ${CMAKE_CXX_COMPILER_ID} ) if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + MESSAGE( STATUS "clang compiler version: " ${CMAKE_CXX_COMPILER_VERSION} ) MESSAGE( STATUS "using clang settings" ) set(RX_COMPILE_OPTIONS -Wall -Wextra -Werror -Wunused @@ -12,11 +13,13 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") -ftemplate-depth=1024 ) elseif (CMAKE_CXX_COMPILER_ID MATCHES "GNU") + MESSAGE( STATUS "gnu compiler version: " ${CMAKE_CXX_COMPILER_VERSION} ) MESSAGE( STATUS "using gnu settings" ) set(RX_COMPILE_OPTIONS -Wall -Wextra -Werror -Wunused ) elseif (CMAKE_CXX_COMPILER_ID MATCHES "MSVC") + MESSAGE( STATUS "msvc compiler version: " ${CMAKE_CXX_COMPILER_VERSION} ) MESSAGE( STATUS "using msvc settings" ) set(RX_COMPILE_OPTIONS /W4 /WX @@ -25,6 +28,12 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "MSVC") /bigobj /DUNICODE /D_UNICODE # it is a new millenium ) + if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "19.0.23506.0") + set(RX_COMPILE_OPTIONS + ${RX_COMPILE_OPTIONS} + /await # enable coroutines + ) + endif() endif() set(RX_COMPILE_FEATURES |