awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
cpm-cmake avatar

cpm-cmake/CPM.cmake

0
View on GitHub↗
3,910 نجوم·214 تفرعات·CMake·mit·3 مشاهدات

CPM.cmake

CPM.cmake is a dependency manager and package resolver for C and C++ projects that integrates directly into the CMake build system. It automates the process of fetching, configuring, and managing external libraries by resolving dependencies through system-wide package managers or by downloading source code from remote repositories.

The system ensures reproducible builds by locking transitive dependency versions and verifying the authenticity of downloaded source archives using cryptographic hash checksums. It allows for development flexibility through local filesystem overrides, which redirect remote dependencies to local paths, and sequential source patching to modify dependency behavior without altering the original codebase.

Broad capabilities include version resolution via semantic tags or commit hashes, local caching of dependency sources to reduce network overhead, and the application of custom build flags and options during the configuration of third-party projects.

Features

  • Remote Dependency Integration - Automates the downloading and integration of external libraries from remote repositories into the build system.
  • CMake-Based Managers - Acts as a comprehensive dependency manager and package resolver integrated directly into the CMake build system.
  • Dependency Lock Managers - Generates lock files to fix versions of all transitive dependencies for reproducible builds.
  • Dependency Resolvers - Implements logic for calculating and fetching dependency graphs to resolve transitive library versions.
  • Remote Version Resolution - Resolves specific library versions by fetching tags or commit hashes directly from remote Git repositories.
  • Package Dependency Managers - Resolves third-party dependencies by checking system-wide package managers before falling back to automated source downloads.
  • Reproducible Build Environments - Ensures consistent builds across environments by locking transitive dependency versions and verifying source integrity.
  • Third-Party Source Integration - Downloads and configures third-party projects from any source without requiring modifications to the original codebase.
  • CMake Integrations - Provides a CMake script that automates the retrieval and inclusion of external project source code.
  • Dependency Management - Provides an automated system for fetching and configuring external C++ libraries directly through CMake.
  • Semantic Versioning Systems - Uses semantic versioning and release tags to integrate libraries and ensure deterministic builds.
  • System Package Manager Integrations - Locates dependencies via system-wide package managers before falling back to downloading from source.
  • C++ Package Orchestration - Manages the lifecycle of third party C++ dependencies by checking system installations before downloading from source.
  • External Library Installers - Downloads and configures external source code from remote repositories using specific version tags or commit hashes.
  • Fallback Resolution Strategies - Attempts to find packages via system-wide managers before falling back to automated source downloads.
  • Package Dependency Resolution - Locates required packages by checking for global installations before falling back to automated fetching.
  • Dependency Build Options - Passes build settings and flags to a dependency during configuration to toggle features or disable components.
  • Dependency Caches - Stores downloaded packages in a local directory to speed up build times and ensure consistent environments.
  • Post-Download Patching - Executes a sequence of patch files against dependency source code immediately after downloading to modify behavior.
  • Local Dependency Caching - Implements local caching of downloaded dependencies to reduce network overhead and ensure build consistency.
  • Local Dependency Linkers - Redirects dependencies to absolute local paths to test changes without updating remote sources.
  • Local Source Overrides - Allows redirecting remote dependency resolution to a local filesystem path for iterative development.
  • Download Integrity Verification - Validates the authenticity of downloaded source archives by comparing file hashes against trusted checksums.
  • Post-Download Integrity Checks - Validates the authenticity of downloaded source archives using cryptographic hash checksums to ensure supply chain security.
  • Patch Application - Applies a series of external patch files to downloaded source code before configuration.

سجل النجوم

مخطط تاريخ النجوم لـ cpm-cmake/cpm.cmakeمخطط تاريخ النجوم لـ cpm-cmake/cpm.cmake

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

بدائل مفتوحة المصدر لـ CPM.cmake

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع CPM.cmake.
  • thelartians/cpmالصورة الرمزية لـ TheLartians

    TheLartians/CPM

    4,026عرض على GitHub↗

    CPM is a source-based package manager and build tool for CMake that downloads, versions, and integrates external C++ dependencies without requiring an external installation. It functions as a script-based resolution system that fetches remote source code and configures project targets for immediate use within the build process. The project ensures reproducible build workflows through lockfile version pinning and cryptographic hash-based integrity verification of downloaded archives. It supports concurrent development by allowing remote resources to be overridden with local filesystem paths an

    CMake
    عرض على GitHub↗4,026
  • rust-lang/cargoالصورة الرمزية لـ rust-lang

    rust-lang/cargo

    14,624عرض على GitHub↗

    Cargo is the official build system and package manager for the Rust programming language. It provides a unified command-line interface that orchestrates the entire development lifecycle, including compiling source code, managing complex dependency graphs, running tests, and distributing packages through a centralized registry. By utilizing declarative manifest files, it ensures that builds remain reproducible and consistent across different environments. The tool distinguishes itself through its deep integration with the Rust compiler and its sophisticated approach to project management. It f

    Rustcargopackage-managerrust
    عرض على GitHub↗14,624
  • masterminds/glideالصورة الرمزية لـ Masterminds

    Masterminds/glide

    8,095عرض على GitHub↗

    Glide is a Go dependency management tool that fetches, pins, and vendors external packages to enable reproducible builds across environments. It stores project-specific copies of Go packages in a vendor directory, isolating dependencies per project to avoid version conflicts, and supports fetching packages from Git, Mercurial, Bazaar, and Subversion repositories. The tool resolves dependency versions using semantic versioning ranges and operators, and generates a lock file that records exact commit IDs for all transitive dependencies. Glide distinguishes itself with an interactive version wiz

    Gogogolangpackage-management
    عرض على GitHub↗8,095
  • homebrew/homebrew-coreالصورة الرمزية لـ Homebrew

    Homebrew/homebrew-core

    15,383عرض على GitHub↗

    This project is a Ruby-based package definition repository that functions as a cross-platform package manager and software dependency resolver for macOS and Linux. It provides a centralized system for installing, updating, and managing software through a Git-based distribution model. The system distinguishes itself through a binary package distribution network that produces pre-compiled bottles to avoid local compilation from source. It utilizes a Ruby-based domain specific language to define installation recipes and employs a distributed version control architecture to synchronize these defi

    Rubycoreformulaehacktoberfest
    عرض على GitHub↗15,383
عرض جميع البدائل الـ 30 لـ CPM.cmake→

الأسئلة الشائعة

ما هي وظيفة cpm-cmake/cpm.cmake؟

CPM.cmake is a dependency manager and package resolver for C and C++ projects that integrates directly into the CMake build system. It automates the process of fetching, configuring, and managing external libraries by resolving dependencies through system-wide package managers or by downloading source code from remote repositories.

ما هي الميزات الرئيسية لـ cpm-cmake/cpm.cmake؟

الميزات الرئيسية لـ cpm-cmake/cpm.cmake هي: Remote Dependency Integration, CMake-Based Managers, Dependency Lock Managers, Dependency Resolvers, Remote Version Resolution, Package Dependency Managers, Reproducible Build Environments, Third-Party Source Integration.

ما هي البدائل مفتوحة المصدر لـ cpm-cmake/cpm.cmake؟

تشمل البدائل مفتوحة المصدر لـ cpm-cmake/cpm.cmake: thelartians/cpm — CPM is a source-based package manager and build tool for CMake that downloads, versions, and integrates external C++… rust-lang/cargo — Cargo is the official build system and package manager for the Rust programming language. It provides a unified… masterminds/glide — Glide is a Go dependency management tool that fetches, pins, and vendors external packages to enable reproducible… homebrew/homebrew-core — This project is a Ruby-based package definition repository that functions as a cross-platform package manager and… friendlyanon/cmake-init — cmake-init is a project generator and build system boilerplate designed to automate the initialization of C++… componentjs/component — Component is a frontend build tool and package manager designed for modular web application development. It functions…