# cpm-cmake/CPM.cmake

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

Repository: https://github.com/cpm-cmake/CPM.cmake
Canonical: https://ross.abutalabs.com/products/cpmcmake
Language: CMake
License: MIT
License Family: permissive
Topics: dependency-manager, package-manager, cmake, c, c-plus-plus, cpp, git, svn, dependency, dependencies, update, version-manager, versions, reproducible, builds, reproducible-builds, cross-platform
Last push: 2026-07-06T12:22:10+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 91, release rhythm 92, longevity 100
- inputs: {"age_days": 2703, "days_push": 58, "days_rel": 58, "gap_med": 14, "n_releases_24m": 12}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4105, forks 225 (observed 2026-08-28T04:08:35.600016+00:00)

## What it is
CPM.cmake is a small CMake script that adds setup-free, cross-platform dependency management to CMake projects. It wraps CMake's FetchContent module with version pinning, caching, and a simple CPMAddPackage API.

## Use cases
- manage c++ dependencies without installing a package manager
- pin dependency versions reproducibly in cmake
- fetch github projects directly into a cmake build
- avoid vcpkg or conan setup for small projects
- cache dependencies across builds to speed up ci

## When to choose
- your project uses modern cmake and you want zero-setup dependency management
- you want reproducible builds with version-controlled dependencies
- you want to consume any git repo or downloadable source as a dependency without packaging it

## When to avoid
- you need prebuilt binaries or a large curated package ecosystem
- your team already standardizes on vcpkg, conan, or system packages
- you need dependency resolution with complex version constraint solving

## Facets
- artifact type: library
- maturity: active
- function: package-manager, build-tool, developer-tools
- domain: developer-tools, cross-platform, version-control
- platform: windows, cpp, cross-platform
- tags: cmake, dependency-management, fetchcontent, reproducible-builds, c-plus-plus, linux, macos

## Member repositories
- cpm-cmake/CPM.cmake (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:35.600016+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:23:14.451270+00:00, confidence not recorded.
  - readme: https://github.com/cpm-cmake/CPM.cmake (fetched 2026-08-28T04:08:35.600016+00:00, sha dc80c5f5f2c7)
- Data as of 2026-08-30T08:39:29.467469+00:00.
