User Experience on mobile might not be great yet, but I'm working on it.

Your first time on this page? Allow me to give some explanations.

Awesome CMake

A curated list of awesome CMake resources, scripts, modules and examples.

Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.

Last Update: June 26, 2022, 6:06 p.m.

Thank you onqtam & contributors
View Topic on GitHub:
onqtam/awesome-cmake

Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.

Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.

Community

Resources

The Hitchhikerโ€™s Guide to the CMake

466
54
1y 114d
BSD-2-Clause

Samples for Learning Modern CMake

202
24
5y 10m
MIT

Material used for teaching.

57
11
1y 95d
n/a

Tutorial about doing CMake Right (Official repo is now https://github.com/IRCAD-IHU/modern-cmake-tutorial)

15
6
2y 116d
n/a

slides)- by Deniz Bahadir, Meeting C++ 2019.

Package Management / Build Systems

1.88K
607
2y 6m
BSD-2-Clause

C++ package retrieval

400
21
8m
n/a

C++ Package Manager

709
46
5y 108d
MIT

Conan - The open-source C/C++ package manager

5.65K
717
4m
MIT

High-level build system for distributed, multi-platform C/C++ projects.

401
72
4m
MIT

a small build system with a focus on speed

7.73K
1.23K
4m
Apache-2.0

C++ Library Manager for Windows, Linux, and MacOS

14.87K
4.29K
4m
n/a

It's the C++ Package Manager Manager

10
2
1y 6m
MIT

๐Ÿ“ฆ CMake's missing package manager. A small CMake script for setup-free, cross-platform, reproducible dependency management.

1.02K
88
4m
MIT

[[APACHE2]][APACHE2]

Modules

My collection of CMake modules

817
201
5m
BSL-1.0

Additional CMake functionality. Most of the modules are from Ryan Pavlik (https://github.com/rpavlik/cmake-modules)

384
177
5m
n/a

Common CMake modules

141
70
1y 11d
n/a

CMake modules for some scientific libraries

78
58
1y 8m
BSD-2-Clause

CMake modules for common applications related to computer graphics

107
63
1y 11m
MIT

CMake module for Mathematica.

46
11
6m
MIT

Extra modules and scripts for CMake.

94
38
4m
n/a

[CMake] [BSD-2] CMake module to find ICU

28
8
5y 5m
BSD-2-Clause

CMake find module for Intel Threading Building Blocks

80
34
5y 6m
MIT

CMake module for building Windows Installer packages with WiX toolset

10
3
2y 5m
BSD-3-Clause

CMake module for building IDL files with MIDL and generating CLR DLL using Tlbimp

14
6
1y 8m
BSD-3-Clause

CMake module collection

30
24
7y 71d
MIT

Extra CMake Modules for YARP and friends

41
21
10m
n/a

CMake Community Modules

1
1
2y 5m
n/a

A simple framework for compile-time benchmarks

157
15
3y 4m
n/a

CMake modules, scripts, and utilities

0
0
87d
GPL-3.0

Utility Scripts

CMake module to speed up builds.

1.25K
142
2y 6m
MIT

Useful cmake macros that help with: compiler/linker flags, collecting sources, PCHs, Unity builds and other stuff.

189
29
2y 5m
MIT

An Enhancement Suite for the CMake Build System

383
39
6m
n/a
100
23
2y 4m
BSD-2-Clause

CMake module for downloading an external project's source at configure time

417
90
5y 69d
MIT

CMake and other scripts to help build process of FlyEM software

27
15
5y 8m
n/a

Coveralls JSON coverage generator and uploader for CMake

79
14
2y 4m
MIT

unmaintained - CMake module to activate certain C++ standard, feature checks and appropriate automated workarounds - basically an improved version of cmake-compile-features

71
13
5y 9m
Zlib

LibFindMacros development repository and other cool CMake stuff

40
17
2y 5m
n/a

Bunch of CMake pain in the baker

38
22
8m
MIT

Per-target CPPCheck for CMake

17
8
6y 29d
MIT

Add clang-tidy checks to a target using CMake

15
6
6y 28d
MIT

A unit testing framework for CMake

32
5
5y 28d
MIT

CMake macro to determine the language of a header file

4
2
6y 33d
MIT

Utility and common library for all polysquare cmake tools.

3
2
6y 29d
MIT

CMake integration for include-what-you-use

8
4
6y 29d
MIT

CMake modules to help use sanitizers

265
47
3y 8m
n/a

Visual Studio and GCC precompiled header macro for CMake

156
42
5y 118d
n/a

CMake precompiled header support via custom PCH compiler extension

105
22
2y 8m
MIT

CMake module for code coverage

74
27
8m
BSD-3-Clause

Get dependencies with cmake

59
3
3y 5m
n/a

Make CMake less painful when trying to write Modern Flexible CMake

99
7
2y 5m
MIT

Toolchains

Cross compiling toolchains in Docker images

2.42K
307
4m
MIT

CMake toolchain file and other scripts for the Android NDK

1.16K
439
7y 43d
n/a

A toolchain file and examples using cmake for iOS development (this is a fork of a similar project found on code.google.com)

298
106
1y 9m
BSD-3-Clause

A simple CMake utility for building and deploying Qt based applications on Android without QtCreator

212
63
9m
n/a

cmake toolchain for AVR

150
52
1y 70d
n/a

Arduino CMake Build system

53
20
6y 4m
n/a

Collection of CMake toolchain files and scripts for cross-platform build and CI testing (GCC, Visual Studio, iOS, Android, Clang analyzer, sanitizers etc.)

811
196
1y 42d
BSD-2-Clause

Toolchains for crosscompiling with CMake.

70
27
4m
n/a

CMake scripts for Staticlibs projects

7
5
3y 50d
Apache-2.0

CMake toolchain for all Arduino compatible boards

86
21
2y 12d
MIT

Examples / Templates

Template for reliable, cross-platform C++ project setup using cmake.

739
108
5m
MIT
30
4
5y 6m
BSD-2-Clause

CMake: config mode of find_package command (examples)

341
52
2y 101d
n/a

this tries to be a minimal cmake example, that covers sources resources dependencies and packaging.

151
35
4y 8m
CC0-1.0

Example project which demonstrates various CMake features.

139
51
2y 6m
BSD-3-Clause

Useful CMake Examples

7.66K
1.79K
9m
MIT

A minimal CMake template for Qt 5 & 6 projects

170
29
1y 116d
Unlicense

CMake BASIS makes it easy to create sharable software and libraries that work together. This is accomplished by combining and documenting some of the best practices and utilities available. This project supplies a fully integrated suite of functionality to make the whole process seamless!

37
10
12m
n/a

A small c++ template with modern CMake

248
40
6m
MIT

An OS-agnostic C++ library template in plain CMake.

271
44
1y 5m
MIT

Example library that shows best practices and proper usage of CMake by using targets

543
59
1y 101d
MIT

Installation example for a C++ project (Windows) with Cmake.

27
7
9m
MIT

A simple, cross-platform, and continuously integrated C++14 project template

61
9
3y 11m
CC0-1.0

Concise CMake templates for creating C++ libraries or executables.

108
11
2y 15d
n/a

Short copy-pasteable CMake snippets ::: ${โœ‚๏ธ}

48
5
2y 11m
BSD-3-Clause

CMake Cookbook recipes.

1.53K
430
1y 10m
n/a

A template C++ repository, using CMake and Catch

39
9
2y 18d
n/a

Pitchfork is a Set of C++ Project Conventions

605
35
3y 5m
MIT

A collection of as simple as possible, modern CMake projects

924
49
1y 4m
MIT

Boiler plate template for C++ projects, with CMake, Doctest, Travis CI, Appveyor, Github Actions and coverage reports.

445
114
9m
Unlicense

๐Ÿš€ Kick-start your C++! A template for modern C++ projects using CMake, CI, code coverage, clang-format, reproducible dependency management and much more.

2.49K
192
8m
Unlicense

Other

CMake plugin composer.

34
11
2y 80d
BSD-3-Clause

Improved build system generator for CPython C, C++, Cython and Fortran extensions

301
88
4m
n/a

CMake-based build system for node.js native modules

71
22
2y 5m
ISC

Emacs Font-lock rules for CMake

37
5
6m
GPL-3.0

A program that automatically generates CMake and Meson configuration files for your Vala project

107
15
3y 10m
GPL-3.0

A CMake-based build system that is used to build all packages in ROS.

264
270
6m
BSD-3-Clause

CMake scripts for painless usage of SuiteSparse+METIS from Visual Studio and the rest of Windows/Linux/OSX IDEs supported by CMake

359
203
2y 5m
BSD-3-Clause

CMake scripts for building OpenSceneGraph third party libraries.

142
104
10m
Unlicense

cmake for D2

53
14
9m
MIT

Enhanced CMake Project Manager plugin for Qt Creator

70
9
4m
n/a

Check for coding style issues in CMake files

96
16
5y 38d
Apache-2.0

Standardise code formating for cmake projects with git and clang-format

48
13
4y 8m
Unlicense

Autotools-style configure script wrapper around CMake

79
6
5y 20d
CC0-1.0

Python module to reduce a cmake file to an AST

26
9
4y 21d
MIT

CMake checks cache helper modules โ€“ for fast CI CMake builds!

55
5
3y 4m
n/a

Static analysis for CMake files.

20
5
2y 11m
MIT

CMake LSP Implementation

128
13
8m
MIT

Project to enable using CMake from a Maven build.

57
9
4m
n/a

Bake git information into your binary.

0
0
54d
MIT