зеркало из https://github.com/microsoft/git.git
Allow building Git in systems without iconv
Systems using some uClibc versions do not properly support iconv stuff. This patch allows Git to be built on those systems by passing NO_ICONV=YesPlease to make. The only drawback is mailinfo won't do charset conversion in those systems. Signed-off-by: Fernando J. Pereda <ferdy@gentoo.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Родитель
be97bd1b88
Коммит
b6e56eca8a
6
Makefile
6
Makefile
|
@ -53,6 +53,8 @@ all:
|
|||
# Define NO_SOCKADDR_STORAGE if your platform does not have struct
|
||||
# sockaddr_storage.
|
||||
#
|
||||
# Define NO_ICONV if your libc does not properly support iconv.
|
||||
#
|
||||
# Define COLLISION_CHECK below if you believe that SHA1's
|
||||
# 1461501637330902918203684832716283019655932542976 hashes do not give you
|
||||
# sufficient guarantee that no collisions between objects will ever happen.
|
||||
|
@ -380,6 +382,10 @@ else
|
|||
endif
|
||||
endif
|
||||
|
||||
ifdef NO_ICONV
|
||||
ALL_CFLAGS += -DNO_ICONV
|
||||
endif
|
||||
|
||||
ifdef PPC_SHA1
|
||||
SHA1_HEADER = "ppc/sha1.h"
|
||||
LIB_OBJS += ppc/sha1.o ppc/sha1ppc.o
|
||||
|
|
|
@ -7,7 +7,9 @@
|
|||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#ifndef NO_ICONV
|
||||
#include <iconv.h>
|
||||
#endif
|
||||
#include "git-compat-util.h"
|
||||
#include "cache.h"
|
||||
|
||||
|
@ -469,6 +471,7 @@ static int decode_b_segment(char *in, char *ot, char *ep)
|
|||
|
||||
static void convert_to_utf8(char *line, char *charset)
|
||||
{
|
||||
#ifndef NO_ICONV
|
||||
char *in, *out;
|
||||
size_t insize, outsize, nrc;
|
||||
char outbuf[4096]; /* cheat */
|
||||
|
@ -501,6 +504,7 @@ static void convert_to_utf8(char *line, char *charset)
|
|||
return;
|
||||
*out = 0;
|
||||
strcpy(line, outbuf);
|
||||
#endif
|
||||
}
|
||||
|
||||
static void decode_header_bq(char *it)
|
||||
|
|
Загрузка…
Ссылка в новой задаче