Tags: Yiklek/CPM.cmake
Tags
Add file locking to support parallel runs. (cpm-cmake#427) * Add file locking to support parallel runs. * Fixed formatting. * Prevent double locking file. * Fix SegFault from test 2. * Remove unnecessary debugging messages. * Lock the package directory rather than the cache directory. Only synchronize if CPM_SOURCE_CACHE is defined. * Lock the version specific cache entry rather than the package specific entry. * Remove unnecessary arguments in conditional statements. * Change back to locking entire cache directory. * Only check CPM_HAS_CACHE_LOCK. * Lock on a per-package basis rather than the entire cache. * Clean up the locked file. * Unlock then remove to fix Windows. * Specify use of cmake.lock as the lock file. * - Changed CPM_HAS_CACHE_LOCK to ${CPM_ARGS_NAME}_CPM_HAS_CACHE_LOCK. - Removed redundant variable initialization. * Add unit test. * Actually test if resulting git cache is clean in unit test. * - Added comments - Fixed formatting - Removed unnecessary imports * convert parallelism test to integration test * remove comment * - Removed now unnecessary variable. - Only delete file instead of unlocking it then deleting it. * Forgot to change variable name. * Add similar changes to the missed section. * Fixed formatting. * Unlock the file, but do not delete it. * Only unlock the file if it exists. * Changed cache.cmake test to ignore non-directory entries. * Integration test lib make_project: * keyword args * 'name' arg to allow multiple projects from the same test * - Moved checks to function. - Fixed small grammatical errors. * - Fix formatting * Switch to snake case. --------- Co-authored-by: Lars Melchior <[email protected]> Co-authored-by: Lars Melchior <[email protected]> Co-authored-by: Borislav Stanimirov <[email protected]>
Restore policy changes in CPMAddPackage (cpm-cmake#388) * Restore policy changes in CPMAddPackage Fixes cpm-cmake#387 * Correct style issues found by CI
Timestamps for URL downloads match the download time (cpm-cmake#372) * Timestamps for URL downloads match the download time By enabling CMake policy 135 we ensure that extracted files timestamp match that of the download time, instead of when the archive is created. This makes sure that if the URL changes to an older version we still rebuild everything as the timestamp stays newer. * Introduce CPM_SET_RECOMMENDED_CMAKE_POLICIES Enabling CPM_SET_RECOMMENDED_CMAKE_POLICIES will establish defaults for all CMake policies so that both CPM and added projects operate inline with CPM recommended best practices. * Fix style issues found by ci * Update README.md Co-authored-by: Lars Melchior <[email protected]> * Update cmake/CPM.cmake Co-authored-by: Lars Melchior <[email protected]> * Set policies when CPM.cmake is included * CPM_SET_RECOMMENDED_CMAKE_POLICIES default is ON * Correct failing CI tests * CPM.cmake always sets policies to on Co-authored-by: Lars Melchior <[email protected]>
CPM_DIRECTORY always stores absolute non symlink paths (cpm-cmake#379) * CPM_DIRECTORY always stores absolute non symlink paths When CPM is brought into a project via downloading it will be placed in the build directory. When the build directory is a symlink the CPM_DIRECTORY value will hold the symlink value. This means that trying to run CMake via the real build directory will cause CPM to fail since it considers the current CMAKE_CURRENT_LIST_DIR to be different and will early exit. This resolves the issue be always getting CMake to resolve symlinks before comparing paths for CPM_DIRECTORY. * Refactor logic based on PR review
CPMAddPackage fails if the SOURCE_DIR directory is deleted. (cpm-cmak… …e#370) * Fixed: Deleted SOURCE_DIR directory would abort just after git stash save --quiet;--include-untracked * Fixed: Review comments * Added: Integration test for deleted SOURCE_DIR with FetchContent * Fixed: Review comments * Fixed: Review comments
Allow overriding FetchContent using CPM (cpm-cmake#352) * Override FetchContent paramers, fixes cpm-cmake#281 * add check to verify that dependency is cached * update test comment * rename test file and class * update test indentation
Add per package CPM_DOWNLOAD controls (cpm-cmake#336) * Add per project CPM_DOWNLOAD controls Introduces support for `CPM_<PACKAGE>_DOWNLOAD` variable ( and env ) which allows finer grained control. * Address PR feedback on API names
Fix <package>_SOURCE_DIR and _BINARY_DIR handling when caching is act… …ive (cpm-cmake#314) * fix: use CACHE variables instead relying on FetchContents mechanism * apply cmake-format Signed-off-by: DNKpp <[email protected]>
PreviousNext