diff --git a/README.md b/README.md index aee8990..81aa60f 100644 --- a/README.md +++ b/README.md @@ -28,9 +28,9 @@ Concepts and various type constraints have been added. Enhancements are always a The generated Doxygen documentation for `wait_queue` is [here](https://connectivecpp.github.io/wait-queue/). -## Dependencies +## Library Dependencies -The `wait_queue` header file does not have any third-party dependencies. It uses C++ standard library headers only. The unit test code does have dependencies as noted below. +The `wait_queue` header file does not have any third-party dependencies. It uses C++ standard library headers only. The unit test and example code do have dependencies as noted below. ## C++ Standard @@ -51,6 +51,10 @@ The unit test uses two third-party libraries (each is a single header-only file) Specific version (or branch) specs for the dependencies are in the [test/CMakeLists.txt](test/CMakeLists.txt) file, look for the `CPMAddPackage` command. +## Example Dependencies + +The example applications use the Connective C++ `shared_buffer` reference counted buffer classes. Specific version (or branch) specs for the dependency are in the [example/CMakeLists.txt](example/CMakeLists.txt) file, look for the `CPMAddPackage` command. + ## Build and Run Unit Tests To build and run the unit test program: @@ -73,3 +77,7 @@ test/wait_queue_test -s The example can be built by adding `-D WAIT_QUEUE_BUILD_EXAMPLES:BOOL=ON` to the CMake configure / generate step. +### CMake Version Compatibility + +CMake 3.27 and later has removed (or will remove) compatibility with CMake versions older than 3.5. The GitHub actions for the `wait_queue` unit test have been updated to use the `CMAKE_POLICY_VERSION_MINIMUM=3.5` flag as a workaround (until the dependent library CMake files have been updated appropriately). + diff --git a/cmake/download_cpm.cmake b/cmake/download_cpm.cmake index a7319b7..6d7718c 100644 --- a/cmake/download_cpm.cmake +++ b/cmake/download_cpm.cmake @@ -4,7 +4,7 @@ file( DOWNLOAD - https://github.com/cpm-cmake/CPM.cmake/releases/download/v0.40.8/CPM.cmake + https://github.com/cpm-cmake/CPM.cmake/releases/download/v0.42.0/CPM.cmake ${CMAKE_CURRENT_BINARY_DIR}/cmake/CPM.cmake ) include(${CMAKE_CURRENT_BINARY_DIR}/cmake/CPM.cmake) diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt index 40c57c6..9310995 100644 --- a/example/CMakeLists.txt +++ b/example/CMakeLists.txt @@ -9,7 +9,7 @@ cmake_minimum_required ( VERSION 3.14 FATAL_ERROR ) project ( wait_queue_example LANGUAGES CXX ) # add dependencies -CPMAddPackage ( "gh:connectivecpp/shared-buffer@1.0.2" ) +CPMAddPackage ( "gh:connectivecpp/shared-buffer@1.0.5" ) # add executables add_executable ( wait_queue_example wait_queue_example.cpp ) diff --git a/include/queue/wait_queue.hpp b/include/queue/wait_queue.hpp index 1de1e44..dab1a18 100644 --- a/include/queue/wait_queue.hpp +++ b/include/queue/wait_queue.hpp @@ -14,7 +14,7 @@ * for specific use cases (see below for additional details). The default container * type is @c std::deque. * - * A graceful shutdown can be requested using the @c request_stop method (modeled on the + * A graceful shutdown can be requested using the @c std::request_stop method (modeled on the * C++ 20 @c request_stop from @c std::stop_source). This allows waiting reader threads * to be notified for shutdown. Alternatively a @c std::stop_token can be passed in to * the @c wait_queue constructor, allowing shutdown from outside of the @c wait_queue @@ -142,7 +142,7 @@ * * @authors Cliff Green, Lou Langholtz, Anthony Williams * - * @copyright (c) 2017-2024 by Cliff Green + * @copyright (c) 2017-2025 by Cliff Green * * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE.txt or copy at http://www.boost.org/LICENSE_1_0.txt) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 123878f..a5cc15e 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -15,7 +15,7 @@ target_compile_features ( wait_queue_test PRIVATE cxx_std_20 ) # add dependencies include ( ../cmake/download_cpm.cmake ) -CPMAddPackage ( "gh:catchorg/Catch2@3.8.0" ) +CPMAddPackage ( "gh:catchorg/Catch2@3.11.0" ) CPMAddPackage ( "gh:martinmoene/ring-span-lite@0.7.0" ) # CPMAddPackage ( "gh:JustasMasiulis/circular_buffer@master" ) CPMAddPackage ( NAME circular_buffer diff --git a/test/wait_queue_test.cpp b/test/wait_queue_test.cpp index 9405ce9..e253f69 100644 --- a/test/wait_queue_test.cpp +++ b/test/wait_queue_test.cpp @@ -4,7 +4,7 @@ * * @author Cliff Green * - * @copyright (c) 2017-2024 by Cliff Green + * @copyright (c) 2017-2025 by Cliff Green * * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE.txt or copy at http://www.boost.org/LICENSE_1_0.txt)