From 09c0803077b9887792b50520aa90bc30dc451f8c Mon Sep 17 00:00:00 2001 From: Nirbheek Chauhan Date: Mon, 30 Oct 2023 22:02:54 +0530 Subject: [PATCH] wraps: Ignore whitespace when applying diff_file Fixes https://github.com/mesonbuild/meson/issues/12092 --- mesonbuild/wrap/wrap.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mesonbuild/wrap/wrap.py b/mesonbuild/wrap/wrap.py index d302e9dcf..53caa0267 100644 --- a/mesonbuild/wrap/wrap.py +++ b/mesonbuild/wrap/wrap.py @@ -811,13 +811,15 @@ class Resolver: relpath = os.path.relpath(str(path), self.dirname) if PATCH: # Always pass a POSIX path to patch, because on Windows it's MSYS - cmd = [PATCH, '-f', '-p1', '-i', str(Path(relpath).as_posix())] + # Ignore whitespace when applying patches to workaround + # line-ending differences + cmd = [PATCH, '-l', '-f', '-p1', '-i', str(Path(relpath).as_posix())] elif GIT: # If the `patch` command is not available, fall back to `git # apply`. The `--work-tree` is necessary in case we're inside a # Git repository: by default, Git will try to apply the patch to # the repository root. - cmd = [GIT, '--work-tree', '.', 'apply', '-p1', relpath] + cmd = [GIT, '--work-tree', '.', 'apply', '--ignore-whitespace', '-p1', relpath] else: raise WrapException('Missing "patch" or "git" commands to apply diff files')