Torsten Bögershausen <tboegi@xxxxxx> writes: > Commit 95f31e9a correctly points out that the NATIVE_CRLF setting is > incorrectly set on Mingw git. However, the Makefile variable is not > propagated to the C preprocessor and results in no change. This patch > pushes the definition to the C code and adds a test to validate that > when core.eol as native is crlf, we actually normalize text files to this > line ending convention when core.autocrlf is false. > > Signed-off-by: Pat Thoyts <patthoyts@xxxxxxxxxxxxxxxxxxxxx> > Signed-off-by: Stepan Kasal <kasal@xxxxxx> > Signed-off-by: Torsten Bögershausen <tboegi@xxxxxx> > --- > > (This is from MINGW, and some part of my brain thougth that this was send > upstream, but it wasn't. Only 95f31e9a is in git.git) > > Makefile | 3 +++ > t/t0026-eol-config.sh | 18 ++++++++++++++++++ > 2 files changed, 21 insertions(+) > > diff --git a/Makefile b/Makefile > index 63a210d..13311d2 100644 > --- a/Makefile > +++ b/Makefile > @@ -1481,6 +1481,9 @@ ifdef NO_REGEX > COMPAT_CFLAGS += -Icompat/regex > COMPAT_OBJS += compat/regex/regex.o > endif > +ifdef NATIVE_CRLF > + BASIC_CFLAGS += -DNATIVE_CRLF > +endif > > ifdef USE_NED_ALLOCATOR > COMPAT_CFLAGS += -Icompat/nedmalloc > diff --git a/t/t0026-eol-config.sh b/t/t0026-eol-config.sh > index 4807b0f..43a580a 100755 > --- a/t/t0026-eol-config.sh > +++ b/t/t0026-eol-config.sh > @@ -80,4 +80,22 @@ test_expect_success 'autocrlf=true overrides unset eol' ' > test -z "$onediff" && test -z "$twodiff" > ' > > +test_expect_success NATIVE_CRLF 'eol native is crlf' ' Who defines this test prerequisite? > + > + rm -rf native_eol && mkdir native_eol && > + ( cd native_eol && > + printf "*.txt text\n" > .gitattributes > + printf "one\r\ntwo\r\nthree\r\n" > filedos.txt > + printf "one\ntwo\nthree\n" > fileunix.txt Style and nits: - No SP between a redirection operator and its target. - Broken && chain. - Not indented. i.e. rm -rf native_eol && mkdir native_eol && ( cd native_eol && printf ... >.gitattributes && ... has_cr filedos.txt && has_cr fileunix.txt ) > + git init && > + git config core.autocrlf false && > + git config core.eol native && > + git add filedos.txt fileunix.txt && > + git commit -m "first" && > + rm file*.txt && > + git reset --hard HEAD && > + has_cr filedos.txt && has_cr fileunix.txt > + ) > +' > + > test_done -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html