Re: [PATCH] Push the NATIVE_CRLF Makefile variable to C and added a test for native.

2014-08-19 Thread Junio C Hamano
Torsten Bögershausen tbo...@web.de 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 pattho...@users.sourceforge.net
 Signed-off-by: Stepan Kasal ka...@ucw.cz
 Signed-off-by: Torsten Bögershausen tbo...@web.de
 ---

 (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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] Push the NATIVE_CRLF Makefile variable to C and added a test for native.

2014-08-18 Thread Torsten Bögershausen
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 pattho...@users.sourceforge.net
Signed-off-by: Stepan Kasal ka...@ucw.cz
Signed-off-by: Torsten Bögershausen tbo...@web.de
---

(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' '
+
+   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
+   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
-- 
2.1.0.rc2.210.g636bceb

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html