diff options
author | Timo Kaufmann <timokau@zoho.com> | 2018-07-16 22:45:07 +0200 |
---|---|---|
committer | Timo Kaufmann <timokau@zoho.com> | 2018-07-16 22:46:54 +0200 |
commit | 30585139410578e9cbf3091a3f930dcd22de1ebc (patch) | |
tree | 3ab1b20627547e85bb79414f6edd9eae5222a5c0 | |
parent | 8f9b985e60de16883b2e67eaf2924144d647f31e (diff) | |
download | nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.tar nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.tar.gz nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.tar.bz2 nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.tar.lz nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.tar.xz nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.tar.zst nixlib-30585139410578e9cbf3091a3f930dcd22de1ebc.zip |
fetchpatch: add option to revert a patch
-rw-r--r-- | pkgs/applications/science/math/sage/patches/revert-269c1e1551285.patch | 14 | ||||
-rw-r--r-- | pkgs/applications/science/math/sage/sage-src.nix | 7 | ||||
-rw-r--r-- | pkgs/build-support/fetchpatch/default.nix | 11 |
3 files changed, 13 insertions, 19 deletions
diff --git a/pkgs/applications/science/math/sage/patches/revert-269c1e1551285.patch b/pkgs/applications/science/math/sage/patches/revert-269c1e1551285.patch deleted file mode 100644 index b57e48b86dec..000000000000 --- a/pkgs/applications/science/math/sage/patches/revert-269c1e1551285.patch +++ /dev/null @@ -1,14 +0,0 @@ -reverted: ---- b/src/sage/geometry/polyhedron/backend_cdd.py -+++ a/src/sage/geometry/polyhedron/backend_cdd.py -@@ -154,7 +154,9 @@ - ... [0.62, -1.38, 0.38],[0.144, -1.04, 0.04], - ... [0.1309090909, -1.0290909091, 0.04]] - sage: Polyhedron(point_list) -+ Traceback (most recent call last): -+ ... -+ ValueError: *Error: Numerical inconsistency is found. Use the GMP exact arithmetic. -- A 3-dimensional polyhedron in RDF^3 defined as the convex hull of 14 vertices - sage: Polyhedron(point_list, base_ring=QQ) - A 3-dimensional polyhedron in QQ^3 defined as the convex hull of 14 vertices - """ diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix index 348adf5d5095..a785c310bd3e 100644 --- a/pkgs/applications/science/math/sage/sage-src.nix +++ b/pkgs/applications/science/math/sage/sage-src.nix @@ -156,7 +156,12 @@ stdenv.mkDerivation rec { sha256 = "0fmw7pzbaxs2dshky6iw9pr8i23p9ih2y2lw661qypdrxh5xw03k"; stripLen = 1; }) - ./patches/revert-269c1e1551285.patch + (fetchpatch { + name = "revert-cddlib-doctest-changes.patch"; + url = "https://git.sagemath.org/sage.git/patch/?id=269c1e1551285566b8ba7a2b890989e5590e9f11"; + sha256 = "12bcjhq7hm2pmmj2bgjvcffjyls2x7q61ivlnaj5v5bsvhc183iy"; + revert = true; + }) # Only formatting changes. diff --git a/pkgs/build-support/fetchpatch/default.nix b/pkgs/build-support/fetchpatch/default.nix index 1e231d649b3e..40a7675b7ac5 100644 --- a/pkgs/build-support/fetchpatch/default.nix +++ b/pkgs/build-support/fetchpatch/default.nix @@ -5,7 +5,7 @@ # stripLen acts as the -p parameter when applying a patch. { lib, fetchurl, patchutils }: -{ stripLen ? 0, extraPrefix ? null, excludes ? [], includes ? [], ... }@args: +{ stripLen ? 0, extraPrefix ? null, excludes ? [], includes ? [], revert ? false, ... }@args: fetchurl ({ postFetch = '' @@ -37,7 +37,7 @@ fetchurl ({ ${builtins.toString (builtins.map (x: "-x ${lib.escapeShellArg x}") excludes)} \ ${builtins.toString (builtins.map (x: "-i ${lib.escapeShellArg x}") includes)} \ "$tmpfile" > "$out" - ${args.postFetch or ""} + if [ ! -s "$out" ]; then echo "error: Filtered patch '$out$' is empty (while the original patch file was not)!" 1>&2 echo "Check your includes and excludes." 1>&2 @@ -45,6 +45,9 @@ fetchurl ({ cat "$tmpfile" 1>&2 exit 1 fi - ''; + '' + lib.optionalString revert '' + ${patchutils}/bin/interdiff "$out" /dev/null > "$tmpfile" + mv "$tmpfile" "$out" + '' + (args.postFetch or ""); meta.broken = excludes != [] && includes != []; -} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "includes" "postFetch"]) +} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "includes" "revert" "postFetch"]) |