cmake-init-fetchcontent
Example for optionally vendoring using FetchContent (by friendlyanon)
SimpleBluez
A simple C++ wrapper around Bluez with a commercially-friendly licence. (by OpenBluetoothToolbox)
cmake-init-fetchcontent | SimpleBluez | |
---|---|---|
4 | 1 | |
2 | 5 | |
- | - | |
1.8 | 7.5 | |
about 2 years ago | over 1 year ago | |
CMake | C++ | |
- | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cmake-init-fetchcontent
Posts with mentions or reviews of cmake-init-fetchcontent.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-08-09.
-
CMake 3.24 has support for dependency providers
You can see that in action here: https://github.com/friendlyanon/cmake-init-fetchcontent This example has the idiomatic find_package(headeronly REQUIRED) call in the CMakeLists.txt, but when configuring ${sourceDir}/cmake/find is added to CMAKE_MODULE_PATH, so the FetchContent code is run to "find" the dependency. There are comments to further explain this.
-
SimpleBLE - Cross-platform BLE library for Windows, Linux and MacOS/iOS
Please consider using https://github.com/friendlyanon/cmake-init before this has any significant amount of users. There is an example that shows you how to still rely on FetchContent as an opt-in.
-
How would you create/maintain a new c++ project using modern tools/practices?
Are they only on git(hub)? You can write a vcpkg overlay port (example) or use FetchContent if the projects are FetchContent ready in a way that doesn't force FetchContent on people trying to build the project (example).
-
cmake-init - The missing CMake project initializer, now with Conan and vcpkg templates!
This came up somewhere else, but I created an example repo that idiomatically uses find_package and an opt-in find module to FetchContent a dependency from GitHub: https://github.com/friendlyanon/cmake-init-fetchcontent
SimpleBluez
Posts with mentions or reviews of SimpleBluez.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-04-04.
-
SimpleBLE - Cross-platform BLE library for Windows, Linux and MacOS/iOS
Internally, SimpleBLE is using CoreBluetooth on MacOS, WinRT on Windows and SimpleBluez/SimpleDBus (two other components that I wrote providing low-level access to DBus as well as Bluez abstractions). The library is extensively tested in terms of functionality as well as memory/thread sanity and I do feel confident about it being production ready. Tiny caveat: Most tests I run are manual, although I have plans for a proper hardware-in-the-loop CI pipeline if I get enough people interested / funding.
What are some alternatives?
When comparing cmake-init-fetchcontent and SimpleBluez you can also consider the following projects:
SimpleBLE - SimpleBLE - the all-in-one Bluetooth library for MacOS, iOS, Windows, and Linux.
cmake-init-vcpkg-example - cmake-init generated executable project with vcpkg integration
brainflow - BrainFlow is a library intended to obtain, parse and analyze EEG, EMG, ECG and other kinds of data from biosensors
cmake-init-use-pkg-config - Using a dependency that does not support clients using CMake
SimpleDBus - A simple C++ wrapper around DBus with a commercial-friendly licence.
cmake_format - Source code formatter for cmake listfiles.
cmake-init - The missing CMake project initializer
gui_starter_template - A template CMake project to get you started with C++ and tooling
Vcpkg - C++ Library Manager for Windows, Linux, and MacOS
cmake-init-fetchcontent vs SimpleBLE
SimpleBluez vs SimpleBLE
cmake-init-fetchcontent vs cmake-init-vcpkg-example
SimpleBluez vs brainflow
cmake-init-fetchcontent vs cmake-init-use-pkg-config
cmake-init-fetchcontent vs brainflow
cmake-init-fetchcontent vs SimpleDBus
cmake-init-fetchcontent vs cmake_format
cmake-init-fetchcontent vs cmake-init
cmake-init-fetchcontent vs gui_starter_template
cmake-init-fetchcontent vs Vcpkg