Blame view

buildroot/buildroot-2016.08.1/package/log4cxx/0001-charset-fixes.patch 1.73 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  Fix build when iconv support is not available
  
  When iconv support is not available, the apr-util library does not
  provide character set conversion features, and therefore APR_HAS_XLATE
  is false.
  
  However, on Linux !defined(_WIN32) is always true, but the part of the
  code that defines the APRCharsetDecoder and APRCharsetEncoder are only
  enclosed in a #if APR_HAS_XLATE, without the "|| defined(_WIN32)"
  which leads to build failures: the APRCharsetEncoder and
  APRCharsetDecoder classes are used without being defined.
  
  This patch removes the || !defined(_WIN32) so that when iconv support
  is not here, we fall back to raising an exception at runtime.
  
  Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  
  Index: b/src/main/cpp/charsetdecoder.cpp
  ===================================================================
  --- a/src/main/cpp/charsetdecoder.cpp
  +++ b/src/main/cpp/charsetdecoder.cpp
  @@ -476,7 +476,7 @@
           StringHelper::equalsIgnoreCase(charset, LOG4CXX_STR("ISO-LATIN-1"), LOG4CXX_STR("iso-latin-1"))) {
           return new ISOLatinCharsetDecoder();
       }
  -#if APR_HAS_XLATE || !defined(_WIN32)
  +#if APR_HAS_XLATE
       return new APRCharsetDecoder(charset);
   #else    
       throw IllegalArgumentException(charset);
  Index: b/src/main/cpp/charsetencoder.cpp
  ===================================================================
  --- a/src/main/cpp/charsetencoder.cpp
  +++ b/src/main/cpp/charsetencoder.cpp
  @@ -484,7 +484,7 @@
       } else if (StringHelper::equalsIgnoreCase(charset, LOG4CXX_STR("UTF-16LE"), LOG4CXX_STR("utf-16le"))) {
           return new UTF16LECharsetEncoder();
       }
  -#if APR_HAS_XLATE || !defined(_WIN32)
  +#if APR_HAS_XLATE
       return new APRCharsetEncoder(charset);
   #else    
       throw IllegalArgumentException(charset);