msys2 / msys2-runtime

Our friendly fork of Cygwin 💖 https://cygwin.org 💖 see the wiki for details
https://github.com/msys2/msys2-runtime/wiki
GNU General Public License v2.0
185 stars 39 forks source link

pathconv: don't skip arguments with double quote #196

Closed lazka closed 9 months ago

lazka commented 9 months ago

It is used to pass strings/paths to the preprocessor and breaks for example the CPython build. For example -DPREFIX='"/ucrt64"'.

Fixes #190

lazka commented 9 months ago

We are also guessing that this broke gettext relocation and the texlive build, but that isn't confirmed.

lazka commented 9 months ago

Included the binutils fix from #194 to fix the build.

lazka commented 9 months ago

Confirmed that this unbreaks gettext

lazka commented 9 months ago

for future reference, this is the change for the tests: https://github.com/msys2/msys2-tests/pull/62

dscho commented 9 months ago

I'll have to figure out whether this causes a regression in any of the test cases listed in cfc7696's commit message

I was able to verify that the latest original MSYS2 runtime still allows Git's test suite to pass. Yay!

nyfair commented 9 months ago

Can you simply revert 0042-fixup-Add-functionality-for-converting-UNIX-paths-in.patch? The following characters are all valid path

` ' " [ ] 
dscho commented 9 months ago

Can you simply revert 0042-fixup-Add-functionality-for-converting-UNIX-paths-in.patch? The following characters are all valid path

` ' " [ ] 

At least for double-quotes, that's not true: https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions.

I do not remember why the other characters were added, but we should be able to use a variation of https://github.com/git-for-windows/git-for-windows-automation/compare/main...dscho:git-for-windows-automation:311f91570add4645b5e1babb9a013c1c4e9b2fed to see what breaks, if you happen to open a revert PR (modulo ").