Closed pvmm closed 1 year ago
The problem is that in 'auto' mode, Git does not leave the original format but forces the Unix specific encoding (LF) on repository.
As a result, when you want to package a release via GitHub, it creates a package that is incompatible with Windows (the .bat
files no longer work because of the encoding problem).
In the future, I want MSXgl to be usable by all OS (including rewriting the Build tool in Python) but first I'm already trying to make sure that everything works well on the main development platform: Windows.
Creating a library is a huge challenge and I try to stay focused to move forward step by step.
Sorry if this prevents Linux/MacOS users from enjoying it for the moment.
If you revert the .gitattributes modification, I can merge the others modifications.
This doesn't make sense. There are thousands and thousands of projects in github that are multiplatform, use batch files on windows and don't have to adopt this setting. For instance, Danilo Angelo's project https://github.com/DamnedAngel/MSX-Templates-for-VisualStudio
What's the difference?
From the docs (https://docs.github.com/en/get-started/getting-started-with-git/configuring-git-to-handle-line-endings):
text eol=lf
Git will always convert line endings to LF on checkout. You should use this for files that must keep LF endings, even on Windows.
text eol=crlf
Git will always convert line endings to CRLF on checkout. You should use this for files that must keep CRLF endings, even on OSX or Linux.
These situations don't seem to be the case. But I will checkout the code on a windows machine and try to walk thru this problem that you are telling me exists if I set eol to auto.
MSXgl and MSXtk can now be build on Linux and macOS.
It's the job of the OS to decide whether text files should have CR, LF or both, so let's allow git to do its job and set this to auto. (files that need CR or LF in specific places are usually binary anyway).