forked from mirrors/nixpkgs
bf7d13dc4f
Allows restricting patches to a specific subdirectory, à la `git diff --relative=subdir`. This cannot be done (cleanly) currently because the `includes` logic happens *after* `stripLen` is applied, so we can't match on `subdir/*`. This change adds a `relative` argument that makes this possible by filtering files before doing any processing, and setting `stripLen` and `extraPrefix` accordingly.
25 lines
912 B
Nix
25 lines
912 B
Nix
{ invalidateFetcherByDrvHash, fetchpatch, ... }:
|
|
|
|
{
|
|
simple = invalidateFetcherByDrvHash fetchpatch {
|
|
url = "https://github.com/facebook/zstd/pull/2724/commits/e1f85dbca3a0ed5ef06c8396912a0914db8dea6a.patch";
|
|
sha256 = "sha256-PuYAqnJWAE+L9bsroOnnBGJhERW8LHrGSLtIEkKU9vg=";
|
|
};
|
|
|
|
relative = invalidateFetcherByDrvHash fetchpatch {
|
|
url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
|
|
relative = "include";
|
|
sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4=";
|
|
};
|
|
|
|
full = invalidateFetcherByDrvHash fetchpatch {
|
|
url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
|
|
relative = "test";
|
|
stripLen = 1;
|
|
extraPrefix = "foo/bar/";
|
|
excludes = [ "foo/bar/bernoulli_no_atomic_mp.cpp" ];
|
|
revert = true;
|
|
sha256 = "sha256-+UKmEbr2rIAweCav/hR/7d4ZrYV84ht/domTrHtm8sM=";
|
|
};
|
|
}
|