SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Python CMake Projects
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
cxx
:electric_plug: Configuration-free utility for building, testing and packaging executables written in C++. Can auto-detect compilation flags based on includes, via the package system and pkg-config. (by xyproto)
-
py-build-cmake
Modern, PEP 517 compliant build backend for creating Python packages with extensions built using CMake.
-
StaticAnalysis
GitHub action performs static analysis on C++/Python code, flags issues, and posts comments directly on PRs. (by JacobDomagala)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
[openage]https://github.com/SFTtech/openage) - Age of Empires II clone. Python, C++
Conan is a package manager for C/C++. See: https://conan.io/.
The way it works is that you can provide "recipes", which are Python scripts, that automate the process of collecting source code (usually from a remote Git repository, or a remote source tarball), patching it, making its dependencies and transitive dependencies available, building for specific platform and architecture (via any number of build systems), then packaging up and serving binaries. There's a lot of complexity involved.
Here are the two recipes I mentioned:
libcurl: https://github.com/conan-io/conan-center-index/blob/master/r...
OpenSSL v3: https://github.com/conan-io/conan-center-index/blob/master/r...
Now, for the sake of this thread I want to highlight three things here:
- Conan recipes are usually made by people unaffiliated with the libraries they're packaging;
- The recipes are fully Turing-complete, do a lot of work, have their own bugs - therefore they should really be treated as software comonents themselves, for the purpose of OSS clearing/supply chain verification, except as far as I know, nobody does it;
- The recipes can, and do, patch source code and build scripts. There's supporting infrastruture for this built into Conan, and of course one can also do it by brute-force search and replace. See e.g. ZLib recipe that does it both at the same time:
https://github.com/conan-io/conan-center-index/blob/7b0ac710... -- `_patch_sources` does both direct search-and-replace in source files, and applies the patches from https://github.com/conan-io/conan-center-index/tree/master/r....
Now, good luck keeping track of what's going on there.
-- The CXX compiler identification is GNU 9.4.0-- The C compiler identification is GNU 9.4.0 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Setting build type to 'RelWithDebInfo' as none was specified. -- /usr/local/bin/ccache found and enabled -- Downloading conan.cmake from https://github.com/conan-io/cmake-conan -- Conan: Adding cci remote repository (https://center.conan.io) verify ssl (True) usage: conan remote [-h] [-v [V]] {add,auth,disable,enable,list,list-users,login,logout,remove,rename,set-user,update} ... conan remote: error: unrecognized arguments: https://center.conan.io True ERROR: Exiting with code: 2 CMake Error at build/conan.cmake:858 (message): Conan remote failed='2' Call Stack (most recent call first): build/_deps/_project_options-src/src/Conan.cmake:20 (conan_add_remote) build/_deps/_project_options-src/src/Index.cmake:182 (run_conan) build/_deps/_project_options-src/src/DynamicProjectOptions.cmake:132 (project_options) CMakeLists.txt:79 (dynamic_project_options)-- Configuring incomplete, errors occurred! See also "/home/user/Desktop/bitwyre/trading/intermediaries/cram_cpp_v3/build/CMakeFiles/CMakeOutput.log".
I used a tool called cmake-converter to generate some cmake files. It works great, but my include and library directories are set to be relative to the projects. On top of that, I didn't consider if the source files would be visible or how to make that happen. So here's a couple questions:
Project mention: Cxx: Configuration-free utility for building executables written in C++ | news.ycombinator.com | 2024-02-18
Python CMake related posts
- Conan Unrecongnized commands error
- Recourses to help understand libraries/projects and setting them up?
- CMake+Conan2 project template example repositories?
- vcpkg vs conan
- Help understanding Project Setups
- Conan 2.0, the new version of the open-source C and C++ package manager
- Cross compiling pybind11 module with Mingw-gcc for Windows from Linux
-
A note from our sponsor - SaaSHub
www.saashub.com | 26 Apr 2024
Index
What are some of the best open-source CMake projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | openage | 12,377 |
2 | conan | 7,753 |
3 | cmake_format | 925 |
4 | cmake-conan | 799 |
5 | cmakeconverter | 783 |
6 | cget | 443 |
7 | scikit-build-core | 175 |
8 | catkin_tools | 160 |
9 | faiss-server | 133 |
10 | torchlambda | 123 |
11 | cxx | 118 |
12 | cmake_min_version | 113 |
13 | my-scripts | 108 |
14 | cmake-python-distributions | 107 |
15 | Sublime-CMakeLists | 72 |
16 | reflecxx | 55 |
17 | cookiecutter-cpp-project | 49 |
18 | cookiecutter-qt-app | 36 |
19 | py-build-cmake | 35 |
20 | yacpm | 33 |
21 | cmake-project-creator | 26 |
22 | StaticAnalysis | 25 |
23 | Raylib-Basic-Project | 6 |
Sponsored