muon
cmake-init
Our great sponsors
muon | cmake-init | |
---|---|---|
7 | 164 | |
2,828 | 1,812 | |
- | - | |
0.0 | 8.1 | |
about 1 year ago | 5 days ago | |
C | CMake | |
MIT License | GNU General Public License v3.0 only |
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.
muon
- This year in Servo: over 1000 pull requests and beyond
-
Muon: GPU Based Electron on a Diet
I do care, and in your example, it depends on what license the project uses and how "proprietary_library" is distributed.
In this specific case, Muon cannot be GPL'ed, for example, because it distributes a copy of Ultralight [1] and Ultralight has a proprietary (incompatible) license [2]. For a license like MIT or BSD, I think applying that license is technically valid, bug again, not very practical. I doubt Muon would make it into the OpenBSD repos, for example. Its distribution is hindered by the depedency.
[1] https://github.com/ImVexed/muon/tree/master/ultralight
[2] https://github.com/ultralight-ux/Ultralight/blob/master/lice...
- Muon - GPU Based Electron on a Diet
cmake-init
-
CMake install schema for single- and multi-config generators
https://github.com/friendlyanon/cmake-init This is how you do CMake properly. If you deviate from its install rules you are highly likely to do something wrong.
-
cgen: another declarative CMake configuration generator
CMake itself is as declarative as a build systems need to be. For anything nontrivial, these "declarative" solutions all fall apart. Just use https://github.com/friendlyanon/cmake-init, learn CMake and you won't have any issues.
-
How does one actually build a C++ project
If you want something with a (mostly) Just Works experience then just use https://github.com/friendlyanon/cmake-init
- CMakeList.txt, add_executable vs. add_library vs. target_link_libraries vs. target_link_directories
- Check out my tasks.json for C++ of VScode
- Clang++ Halp
-
Putting libraries in program folder
For CMake basics check out the official "Getting started" tutorial: https://cmake.org/cmake/help/latest/guide/tutorial/index.html, as well as Introduction to Modern CMake. You can also get inspired by the CMake project generator cmake-init
- Recourses to help understand libraries/projects and setting them up?
-
How to Create a Modern C Project with CMake and Conan
You can just use https://github.com/friendlyanon/cmake-init to get a CMake + Conan C project ready to go with a short little command: cmake-init --c -e -p conan coolio
- CMake template
What are some alternatives?
libsamplerate - An audio Sample Rate Conversion library
meson - The Meson Build System
cmake-cookbook - CMake Cookbook recipes.
w64devkit - Portable C and C++ Development Kit for x64 (and x86) Windows
AppInitHook - Global user-mode hooking framework, based on AppInit_DLLs. The goal is to allow you to rapidly develop hooks to inject in an arbitrary process.
xmake - 🔥 A cross-platform build utility based on Lua
lfbb - A Lock Free Bipartite Buffer Library written in standard C11
fastbuild - High performance build system for Windows, OSX and Linux. Supporting caching, network distribution and more.
app_timer - Friendly, lightweight, hardware-agnostic timer abstraction layer in C. Use a single timer/counter source to drive many timed events.
ModernCppStarter - 🚀 Kick-start your C++! A template for modern C++ projects using CMake, CI, code coverage, clang-format, reproducible dependency management and much more.
Unity Test API - Simple Unit Testing for C
llvm-mingw - An LLVM/Clang/LLD based mingw-w64 toolchain