Commit Graph
14 Commits
Author SHA1 Message Date
Christoph Reiter 39481ed0f0 msys2-runtime: refresh patches
For https://github.com/msys2/msys2-runtime/pull/17
2020-11-08 10:31:24 +01:00
Johannes Schindelin b1c8e2fbc5 msys2-runtime: expose the "deep-copy" symlink behavior via a new mode
This patch synchronizes msys2/MSYS2-packages/msys2-runtime with
msys2/msys2-runtime after merging
https://github.com/msys2/msys2-runtime/pull/16.

We specifically override Cygwin's symlink() behavior to make deep copies
instead of creating a special-crafted system file that Cygwin (MSYS2,
and only those two) will recognize as symbolic link.

The patch to override this behavior is incomplete, though: it hacks up
the WSYM_sysfile code path, which causes all kinds of problems:

- Contrary to the documentation, MSYS=winsymlinks:native won't fall back
  to creating Cygwin-style symbolic links. Instead, it (quite
  surprisingly) creates deep copies instead.

- There is no way to opt into the original Cygwin behavior because that
  code path is now dead code.

- The fact that the WSYM_sysfile code path is modified to do something
  very different from what it is intended to do means that all changes
  that Cygwin makes to that code path have to be inspected, and
  occasionally even more hacks have to be put on top, such as 44bb133,
  where we specifically had to disable Cygwin's code to try creating WSL
  symlinks before falling back to creating system files instead).

Let's fix this by introducing a proper new mode:
MSYS=winsymlinks:deepcopy. This mode is made the default so
that users should be unaffected by this PR.

Users wishing to let the MSYS2 runtime create Cygwin-style
symbolic links can ask for that by setting
MSYS=winsymlinks:sysfile.

By fixing this issue, we can now stop disabling Cygwin's WSL
symlink behavior, too: it is in the sysfile code path and
won't affect the default behavior of the MSYS2 runtime.

While at it, the indentation of the original patch is fixed,
too.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2020-10-22 13:38:14 +02:00
Christoph Reiter 906e033002 msys2-runtime: Update to 3.1.7 2020-08-24 08:10:51 +02:00
Christoph Reiter bb27db732f msys2-runtime: Update patches
Fixes #2060
2020-08-10 09:41:08 +02:00
Johannes Schindelin 5dea2a9351 Upgrade the MSYS2 runtime to v3.1.4 (#1953)
* msys2-runtime: add a shell script to generate the patches from msys2/Cygwin

The idea is to commit a change incrementing the `pkgver`, then running
this script, and then amending the commit.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

* msys2-runtime: work around Cygwin's source code containing symlinks

It is a bit unfortunate that MSYS2 substitutes symlinks by deep copies,
by default. Git, for example, claims that it cannot do symlinks, but
Cygwin now needs this. Let's make do with that default.

The strategy we use is simple: we override the auto-detected
`core.symlinks` setting. That will result in a dirty worktree, of
course: deep copies are not symlinks, and `git status` will detect it.
But that does not matter, as the build will now work ("deep" copies of
those header files will work just as well as real symlinks would have
done).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

* msys2-runtime: upgrade to v3.1.4

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2020-05-18 08:55:21 +03:00
Alexey Pavlov d9310fcb58 msys2-runtime: Update to Cygwin's 3.0.6 release 2019-04-15 10:53:36 +03:00
Alexey Pavlov b7ec2196aa msys2-runtime: Update to Cygwin's 2.11.1 release 2018-09-07 09:12:49 +03:00
Alexey Pavlov 3c6ae6b0d7 msys2-runtime: Update to cygwin 2.10.0 release 2018-02-08 15:04:06 +03:00
Alexey Pavlov b1fda0af0f msys2-runtime: Fix cygwin regressions 2017-09-13 16:00:29 +03:00
Alexey Pavlov 4789fa428e msys2-runtime: Update to Cygwin's 2.7.0 release 2017-02-14 08:46:38 +03:00
Alexey Pavlov dd5b47fc19 msys2-runtime: Rebase to cygwin 2.6.1 release. 2017-01-23 12:41:57 +03:00
Alexey Pavlov 79eddc9fdf msys2-runtime: Update to Cygwin's 2.6.0 release 2016-09-07 21:43:22 +03:00
Alexey Pavlov 6bbf65b6f1 msys2-runtime: Update to Cygwin's 2.5.2 release 2016-06-30 09:00:29 +03:00
Alexey Pavlov a87ff6cc43 msys2-runtime: Switch to use released Cygwin sources 2016-05-16 10:42:41 +03:00