diff options
Diffstat (limited to 'meta/recipes-extended/slang/slang')
5 files changed, 554 insertions, 0 deletions
diff --git a/meta/recipes-extended/slang/slang/change-char-type-to-signed-char-in-macros.patch b/meta/recipes-extended/slang/slang/change-char-type-to-signed-char-in-macros.patch new file mode 100644 index 0000000000..2ea1ffda57 --- /dev/null +++ b/meta/recipes-extended/slang/slang/change-char-type-to-signed-char-in-macros.patch | |||
@@ -0,0 +1,218 @@ | |||
1 | slang: change char type to signed char in macros | ||
2 | |||
3 | C language has 3 distinct char types: | ||
4 | char | ||
5 | unsigned char | ||
6 | signed char | ||
7 | A char has the same range of values as signed char on X86, | ||
8 | but same as unsigned char on ARM which made Slang's typecast() | ||
9 | and array_sort() unable to work for char value on ARM, since | ||
10 | Slang is assuming "char" as "signed char". | ||
11 | |||
12 | Now we change "char" as "signed char" explicitly in | ||
13 | util/mkslarith2.sl, and use it to regenerate src/slarith2.inc | ||
14 | |||
15 | Upstream-Status: Submitted | ||
16 | Signed-off-by: Roy.Li <rongqing.li@windriver.com> | ||
17 | --- | ||
18 | src/slarith2.inc | 72 ++++++++++++++++++++++++------------------------- | ||
19 | src/util/mkslarith2.sl | 2 - | ||
20 | 2 files changed, 37 insertions(+), 37 deletions(-) | ||
21 | |||
22 | --- a/src/util/mkslarith2.sl | ||
23 | +++ b/src/util/mkslarith2.sl | ||
24 | @@ -1,7 +1,7 @@ | ||
25 | #!/usr/bin/env slsh | ||
26 | |||
27 | private variable CTypes = | ||
28 | - ["char", "unsigned char", "short", "unsigned short", "int", "unsigned int", | ||
29 | + ["signed char", "unsigned char", "short", "unsigned short", "int", "unsigned int", | ||
30 | "long", "unsigned long", "long long", "unsigned long long", | ||
31 | "float", "double", "long double"]; | ||
32 | private variable Is_Int_Type = | ||
33 | --- a/src/slarith2.inc | ||
34 | +++ b/src/slarith2.inc | ||
35 | @@ -1,43 +1,43 @@ | ||
36 | /* DO NOT EDIT -- this file was generated by src/util/mkslarith2.sl */ | ||
37 | -/* ------------ char ---------- */ | ||
38 | -DEFUN_1(copy_char_to_char,char,char) | ||
39 | +/* ------------ signed char ---------- */ | ||
40 | +DEFUN_1(copy_char_to_char,signed char,signed char) | ||
41 | #define char_to_char NULL | ||
42 | #define copy_char_to_uchar copy_char_to_char | ||
43 | #define char_to_uchar NULL | ||
44 | -DEFUN_1(copy_char_to_short,char,short) | ||
45 | +DEFUN_1(copy_char_to_short,signed char,short) | ||
46 | #define char_to_short NULL | ||
47 | -DEFUN_1(copy_char_to_ushort,char,unsigned short) | ||
48 | +DEFUN_1(copy_char_to_ushort,signed char,unsigned short) | ||
49 | #define char_to_ushort NULL | ||
50 | -DEFUN_1(copy_char_to_int,char,int) | ||
51 | -DEFUN_2(char_to_int,char,int,copy_char_to_int) | ||
52 | -DEFUN_1(copy_char_to_uint,char,unsigned int) | ||
53 | -DEFUN_2(char_to_uint,char,unsigned int,copy_char_to_uint) | ||
54 | -DEFUN_1(copy_char_to_long,char,long) | ||
55 | -DEFUN_2(char_to_long,char,long,copy_char_to_long) | ||
56 | -DEFUN_1(copy_char_to_ulong,char,unsigned long) | ||
57 | -DEFUN_2(char_to_ulong,char,unsigned long,copy_char_to_ulong) | ||
58 | +DEFUN_1(copy_char_to_int,signed char,int) | ||
59 | +DEFUN_2(char_to_int,signed char,int,copy_char_to_int) | ||
60 | +DEFUN_1(copy_char_to_uint,signed char,unsigned int) | ||
61 | +DEFUN_2(char_to_uint,signed char,unsigned int,copy_char_to_uint) | ||
62 | +DEFUN_1(copy_char_to_long,signed char,long) | ||
63 | +DEFUN_2(char_to_long,signed char,long,copy_char_to_long) | ||
64 | +DEFUN_1(copy_char_to_ulong,signed char,unsigned long) | ||
65 | +DEFUN_2(char_to_ulong,signed char,unsigned long,copy_char_to_ulong) | ||
66 | #if defined(HAVE_LONG_LONG) | ||
67 | -DEFUN_1(copy_char_to_llong,char,long long) | ||
68 | -DEFUN_2(char_to_llong,char,long long,copy_char_to_llong) | ||
69 | +DEFUN_1(copy_char_to_llong,signed char,long long) | ||
70 | +DEFUN_2(char_to_llong,signed char,long long,copy_char_to_llong) | ||
71 | #endif /* defined(HAVE_LONG_LONG) */ | ||
72 | #if defined(HAVE_LONG_LONG) | ||
73 | -DEFUN_1(copy_char_to_ullong,char,unsigned long long) | ||
74 | -DEFUN_2(char_to_ullong,char,unsigned long long,copy_char_to_ullong) | ||
75 | +DEFUN_1(copy_char_to_ullong,signed char,unsigned long long) | ||
76 | +DEFUN_2(char_to_ullong,signed char,unsigned long long,copy_char_to_ullong) | ||
77 | #endif /* defined(HAVE_LONG_LONG) */ | ||
78 | #if SLANG_HAS_FLOAT | ||
79 | -DEFUN_1(copy_char_to_float,char,float) | ||
80 | -DEFUN_2(char_to_float,char,float,copy_char_to_float) | ||
81 | +DEFUN_1(copy_char_to_float,signed char,float) | ||
82 | +DEFUN_2(char_to_float,signed char,float,copy_char_to_float) | ||
83 | #endif /* SLANG_HAS_FLOAT */ | ||
84 | #if SLANG_HAS_FLOAT | ||
85 | -DEFUN_1(copy_char_to_double,char,double) | ||
86 | -DEFUN_2(char_to_double,char,double,copy_char_to_double) | ||
87 | +DEFUN_1(copy_char_to_double,signed char,double) | ||
88 | +DEFUN_2(char_to_double,signed char,double,copy_char_to_double) | ||
89 | #endif /* SLANG_HAS_FLOAT */ | ||
90 | #if defined(HAVE_LONG_DOUBLE) | ||
91 | -DEFUN_1(copy_char_to_ldouble,char,long double) | ||
92 | -DEFUN_2(char_to_ldouble,char,long double,copy_char_to_ldouble) | ||
93 | +DEFUN_1(copy_char_to_ldouble,signed char,long double) | ||
94 | +DEFUN_2(char_to_ldouble,signed char,long double,copy_char_to_ldouble) | ||
95 | #endif /* defined(HAVE_LONG_DOUBLE) */ | ||
96 | #if SLANG_HAS_FLOAT | ||
97 | -TO_DOUBLE_FUN(char_to_one_double,char) | ||
98 | +TO_DOUBLE_FUN(char_to_one_double,signed char) | ||
99 | #endif | ||
100 | |||
101 | /* ------------ unsigned char ---------- */ | ||
102 | @@ -82,7 +82,7 @@ TO_DOUBLE_FUN(uchar_to_one_double,unsign | ||
103 | #endif | ||
104 | |||
105 | /* ------------ short ---------- */ | ||
106 | -DEFUN_1(copy_short_to_char,short,char) | ||
107 | +DEFUN_1(copy_short_to_char,short,signed char) | ||
108 | #define short_to_char NULL | ||
109 | DEFUN_1(copy_short_to_uchar,short,unsigned char) | ||
110 | #define short_to_uchar NULL | ||
111 | @@ -123,7 +123,7 @@ TO_DOUBLE_FUN(short_to_one_double,short) | ||
112 | #endif | ||
113 | |||
114 | /* ------------ unsigned short ---------- */ | ||
115 | -DEFUN_1(copy_ushort_to_char,unsigned short,char) | ||
116 | +DEFUN_1(copy_ushort_to_char,unsigned short,signed char) | ||
117 | #define ushort_to_char NULL | ||
118 | DEFUN_1(copy_ushort_to_uchar,unsigned short,unsigned char) | ||
119 | #define ushort_to_uchar NULL | ||
120 | @@ -164,7 +164,7 @@ TO_DOUBLE_FUN(ushort_to_one_double,unsig | ||
121 | #endif | ||
122 | |||
123 | /* ------------ int ---------- */ | ||
124 | -DEFUN_1(copy_int_to_char,int,char) | ||
125 | +DEFUN_1(copy_int_to_char,int,signed char) | ||
126 | #define int_to_char NULL | ||
127 | DEFUN_1(copy_int_to_uchar,int,unsigned char) | ||
128 | #define int_to_uchar NULL | ||
129 | @@ -205,7 +205,7 @@ TO_DOUBLE_FUN(int_to_one_double,int) | ||
130 | #endif | ||
131 | |||
132 | /* ------------ unsigned int ---------- */ | ||
133 | -DEFUN_1(copy_uint_to_char,unsigned int,char) | ||
134 | +DEFUN_1(copy_uint_to_char,unsigned int,signed char) | ||
135 | #define uint_to_char NULL | ||
136 | DEFUN_1(copy_uint_to_uchar,unsigned int,unsigned char) | ||
137 | #define uint_to_uchar NULL | ||
138 | @@ -246,7 +246,7 @@ TO_DOUBLE_FUN(uint_to_one_double,unsigne | ||
139 | #endif | ||
140 | |||
141 | /* ------------ long ---------- */ | ||
142 | -DEFUN_1(copy_long_to_char,long,char) | ||
143 | +DEFUN_1(copy_long_to_char,long,signed char) | ||
144 | #define long_to_char NULL | ||
145 | DEFUN_1(copy_long_to_uchar,long,unsigned char) | ||
146 | #define long_to_uchar NULL | ||
147 | @@ -287,7 +287,7 @@ TO_DOUBLE_FUN(long_to_one_double,long) | ||
148 | #endif | ||
149 | |||
150 | /* ------------ unsigned long ---------- */ | ||
151 | -DEFUN_1(copy_ulong_to_char,unsigned long,char) | ||
152 | +DEFUN_1(copy_ulong_to_char,unsigned long,signed char) | ||
153 | #define ulong_to_char NULL | ||
154 | DEFUN_1(copy_ulong_to_uchar,unsigned long,unsigned char) | ||
155 | #define ulong_to_uchar NULL | ||
156 | @@ -329,7 +329,7 @@ TO_DOUBLE_FUN(ulong_to_one_double,unsign | ||
157 | |||
158 | /* ------------ long long ---------- */ | ||
159 | #if defined(HAVE_LONG_LONG) | ||
160 | -DEFUN_1(copy_llong_to_char,long long,char) | ||
161 | +DEFUN_1(copy_llong_to_char,long long,signed char) | ||
162 | #define llong_to_char NULL | ||
163 | DEFUN_1(copy_llong_to_uchar,long long,unsigned char) | ||
164 | #define llong_to_uchar NULL | ||
165 | @@ -372,7 +372,7 @@ TO_DOUBLE_FUN(llong_to_one_double,long l | ||
166 | |||
167 | /* ------------ unsigned long long ---------- */ | ||
168 | #if defined(HAVE_LONG_LONG) | ||
169 | -DEFUN_1(copy_ullong_to_char,unsigned long long,char) | ||
170 | +DEFUN_1(copy_ullong_to_char,unsigned long long,signed char) | ||
171 | #define ullong_to_char NULL | ||
172 | DEFUN_1(copy_ullong_to_uchar,unsigned long long,unsigned char) | ||
173 | #define ullong_to_uchar NULL | ||
174 | @@ -415,7 +415,7 @@ TO_DOUBLE_FUN(ullong_to_one_double,unsig | ||
175 | |||
176 | /* ------------ float ---------- */ | ||
177 | #if SLANG_HAS_FLOAT | ||
178 | -DEFUN_1(copy_float_to_char,float,char) | ||
179 | +DEFUN_1(copy_float_to_char,float,signed char) | ||
180 | #define float_to_char NULL | ||
181 | DEFUN_1(copy_float_to_uchar,float,unsigned char) | ||
182 | #define float_to_uchar NULL | ||
183 | @@ -458,7 +458,7 @@ TO_DOUBLE_FUN(float_to_one_double,float) | ||
184 | |||
185 | /* ------------ double ---------- */ | ||
186 | #if SLANG_HAS_FLOAT | ||
187 | -DEFUN_1(copy_double_to_char,double,char) | ||
188 | +DEFUN_1(copy_double_to_char,double,signed char) | ||
189 | #define double_to_char NULL | ||
190 | DEFUN_1(copy_double_to_uchar,double,unsigned char) | ||
191 | #define double_to_uchar NULL | ||
192 | @@ -501,7 +501,7 @@ TO_DOUBLE_FUN(double_to_one_double,doubl | ||
193 | |||
194 | /* ------------ long double ---------- */ | ||
195 | #if defined(HAVE_LONG_DOUBLE) | ||
196 | -DEFUN_1(copy_ldouble_to_char,long double,char) | ||
197 | +DEFUN_1(copy_ldouble_to_char,long double,signed char) | ||
198 | #define ldouble_to_char NULL | ||
199 | DEFUN_1(copy_ldouble_to_uchar,long double,unsigned char) | ||
200 | #define ldouble_to_uchar NULL | ||
201 | @@ -545,7 +545,7 @@ TO_DOUBLE_FUN(ldouble_to_one_double,long | ||
202 | #if SLANG_HAS_FLOAT | ||
203 | static To_Double_Fun_Table_Type To_Double_Fun_Table [MAX_ARITHMETIC_TYPES] = | ||
204 | { | ||
205 | - {sizeof(char), char_to_one_double}, | ||
206 | + {sizeof(signed char), char_to_one_double}, | ||
207 | {sizeof(unsigned char), uchar_to_one_double}, | ||
208 | {sizeof(short), short_to_one_double}, | ||
209 | {sizeof(unsigned short), ushort_to_one_double}, | ||
210 | @@ -583,7 +583,7 @@ static To_Double_Fun_Table_Type To_Doubl | ||
211 | |||
212 | static Binary_Matrix_Type Binary_Matrix [MAX_ARITHMETIC_TYPES][MAX_ARITHMETIC_TYPES] = | ||
213 | { | ||
214 | - /* char */ | ||
215 | + /* signed char */ | ||
216 | { | ||
217 | {(FVOID_STAR)copy_char_to_char, char_to_char}, | ||
218 | {(FVOID_STAR)copy_char_to_uchar, char_to_uchar}, | ||
diff --git a/meta/recipes-extended/slang/slang/fix-check-pcre.patch b/meta/recipes-extended/slang/slang/fix-check-pcre.patch new file mode 100644 index 0000000000..0c1553a661 --- /dev/null +++ b/meta/recipes-extended/slang/slang/fix-check-pcre.patch | |||
@@ -0,0 +1,108 @@ | |||
1 | fix the pcre existence checking | ||
2 | |||
3 | when check if there is pcre, the configure file always check | ||
4 | the host dir. now we make it work by adding correct prefix for | ||
5 | cross-compile environment. | ||
6 | |||
7 | When enable pcre-module, we see a QA warning because rpaths | ||
8 | hardcoded into the build, rpaths are not needed, so lets turn | ||
9 | this off. | ||
10 | |||
11 | Upstream-Status: Inappropriate | ||
12 | Signed-off-by: Roy.Li <rongqing.li@windriver.com> | ||
13 | --- | ||
14 | configure | 60 ++++++------------------------------------------------------ | ||
15 | 1 files changed, 6 insertions(+), 54 deletions(-) | ||
16 | |||
17 | diff --git a/configure b/configure | ||
18 | index f1586c3..d22814f 100755 | ||
19 | --- a/configure | ||
20 | +++ b/configure | ||
21 | @@ -6991,6 +6991,7 @@ $as_echo_n "checking for the pcre library and header files ... " >&6; } | ||
22 | /usr/include/pcre,/usr/lib \ | ||
23 | /usr/pcre/include,/usr/pcre/lib \ | ||
24 | /usr/include,/usr/lib \ | ||
25 | + /usr/include,/usr/lib64 \ | ||
26 | /opt/include/pcre,/opt/lib \ | ||
27 | /opt/pcre/include,/opt/pcre/lib \ | ||
28 | /opt/include,/opt/lib" | ||
29 | @@ -7021,14 +7022,14 @@ $as_echo_n "checking for the pcre library and header files ... " >&6; } | ||
30 | xincdir=`echo $include_and_lib | tr ',' ' ' | awk '{print $1}'` | ||
31 | xlibdir=`echo $include_and_lib | tr ',' ' ' | awk '{print $2}'` | ||
32 | found=0 | ||
33 | - if test -r $xincdir/$xincfile | ||
34 | + if test -r $PKG_CONFIG_SYSROOT_DIR/$xincdir/$xincfile | ||
35 | then | ||
36 | for E in $exts | ||
37 | do | ||
38 | - if test -r "$xlibdir/$xlibfile.$E" | ||
39 | + if test -r "$PKG_CONFIG_SYSROOT_DIR/$xlibdir/$xlibfile.$E" | ||
40 | then | ||
41 | - jd_pcre_include_dir="$xincdir" | ||
42 | - jd_pcre_library_dir="$xlibdir" | ||
43 | + jd_pcre_include_dir="$PKG_CONFIG_SYSROOT_DIR/$xincdir" | ||
44 | + jd_pcre_library_dir="$PKG_CONFIG_SYSROOT_DIR/$xlibdir" | ||
45 | jd_with_pcre_library="yes" | ||
46 | found=1 | ||
47 | break | ||
48 | @@ -7054,56 +7055,7 @@ $as_echo "yes: $jd_pcre_library_dir and $jd_pcre_include_dir" >&6; } | ||
49 | then | ||
50 | PCRE_LIB="" | ||
51 | else | ||
52 | - | ||
53 | -if test "X$jd_pcre_library_dir" != "X" | ||
54 | -then | ||
55 | - if test "X$RPATH" = "X" | ||
56 | - then | ||
57 | - | ||
58 | -case "$host_os" in | ||
59 | - *linux*|*solaris* ) | ||
60 | - if test "X$GCC" = Xyes | ||
61 | - then | ||
62 | - if test "X$ac_R_nospace" = "Xno" | ||
63 | - then | ||
64 | - RPATH="-Wl,-R," | ||
65 | - else | ||
66 | - RPATH="-Wl,-R" | ||
67 | - fi | ||
68 | - else | ||
69 | - if test "X$ac_R_nospace" = "Xno" | ||
70 | - then | ||
71 | - RPATH="-R " | ||
72 | - else | ||
73 | - RPATH="-R" | ||
74 | - fi | ||
75 | - fi | ||
76 | - ;; | ||
77 | - *osf*|*openbsd*) | ||
78 | - if test "X$GCC" = Xyes | ||
79 | - then | ||
80 | - RPATH="-Wl,-rpath," | ||
81 | - else | ||
82 | - RPATH="-rpath " | ||
83 | - fi | ||
84 | - ;; | ||
85 | - *netbsd*) | ||
86 | - if test "X$GCC" = Xyes | ||
87 | - then | ||
88 | - RPATH="-Wl,-R" | ||
89 | - fi | ||
90 | - ;; | ||
91 | -esac | ||
92 | - | ||
93 | - if test "X$RPATH" != "X" | ||
94 | - then | ||
95 | - RPATH="$RPATH$jd_pcre_library_dir" | ||
96 | - fi | ||
97 | - else | ||
98 | - RPATH="$RPATH:$jd_pcre_library_dir" | ||
99 | - fi | ||
100 | -fi | ||
101 | - | ||
102 | + RPATH="" | ||
103 | fi | ||
104 | |||
105 | PCRE_INC=-I$jd_pcre_include_dir | ||
106 | -- | ||
107 | 1.7.4.1 | ||
108 | |||
diff --git a/meta/recipes-extended/slang/slang/rpathfix.patch b/meta/recipes-extended/slang/slang/rpathfix.patch new file mode 100644 index 0000000000..50cac9264f --- /dev/null +++ b/meta/recipes-extended/slang/slang/rpathfix.patch | |||
@@ -0,0 +1,70 @@ | |||
1 | Without this patch we see rpaths hardcoded into the build which results in QA | ||
2 | warnings. These rpaths are not needed so lets turn this off. | ||
3 | |||
4 | Upstream-Status: Inappropriate | ||
5 | (but could be turned into a proper configure option) | ||
6 | |||
7 | RP 2012/03/14 | ||
8 | |||
9 | Index: slang-2.2.4/configure | ||
10 | =================================================================== | ||
11 | --- slang-2.2.4.orig/configure 2012-03-14 23:40:01.283560679 +0000 | ||
12 | +++ slang-2.2.4/configure 2012-03-14 23:41:18.023558900 +0000 | ||
13 | @@ -6081,56 +6081,7 @@ | ||
14 | ELF_CFLAGS="$ELF_CFLAGS $IEEE_CFLAGS" | ||
15 | CFLAGS="$CFLAGS $IEEE_CFLAGS" | ||
16 | |||
17 | - | ||
18 | -if test "X$libdir" != "X" | ||
19 | -then | ||
20 | - if test "X$RPATH" = "X" | ||
21 | - then | ||
22 | - | ||
23 | -case "$host_os" in | ||
24 | - *linux*|*solaris* ) | ||
25 | - if test "X$GCC" = Xyes | ||
26 | - then | ||
27 | - if test "X$ac_R_nospace" = "Xno" | ||
28 | - then | ||
29 | - RPATH="-Wl,-R," | ||
30 | - else | ||
31 | - RPATH="-Wl,-R" | ||
32 | - fi | ||
33 | - else | ||
34 | - if test "X$ac_R_nospace" = "Xno" | ||
35 | - then | ||
36 | - RPATH="-R " | ||
37 | - else | ||
38 | - RPATH="-R" | ||
39 | - fi | ||
40 | - fi | ||
41 | - ;; | ||
42 | - *osf*|*openbsd*) | ||
43 | - if test "X$GCC" = Xyes | ||
44 | - then | ||
45 | - RPATH="-Wl,-rpath," | ||
46 | - else | ||
47 | - RPATH="-rpath " | ||
48 | - fi | ||
49 | - ;; | ||
50 | - *netbsd*) | ||
51 | - if test "X$GCC" = Xyes | ||
52 | - then | ||
53 | - RPATH="-Wl,-R" | ||
54 | - fi | ||
55 | - ;; | ||
56 | -esac | ||
57 | - | ||
58 | - if test "X$RPATH" != "X" | ||
59 | - then | ||
60 | - RPATH="$RPATH$libdir" | ||
61 | - fi | ||
62 | - else | ||
63 | - RPATH="$RPATH:$libdir" | ||
64 | - fi | ||
65 | -fi | ||
66 | - | ||
67 | +RPATH="" | ||
68 | |||
69 | # The cast to long int works around a bug in the HP C Compiler | ||
70 | # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects | ||
diff --git a/meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch b/meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch new file mode 100644 index 0000000000..958fe983c5 --- /dev/null +++ b/meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch | |||
@@ -0,0 +1,116 @@ | |||
1 | From 4588f4a0287787788eb86fb16f326cbaa7454e1d Mon Sep 17 00:00:00 2001 | ||
2 | From: Zheng Junling <zhengjunling@huawei.com> | ||
3 | Date: Mon, 16 Jun 2014 12:51:25 +0000 | ||
4 | Subject: [PATCH] slang: fix the iconv existence checking | ||
5 | |||
6 | When checking whether there is iconv, the configure file always check | ||
7 | the host env. | ||
8 | |||
9 | Now we make it working properly by adding correct prefix for cross- | ||
10 | compiling environment. | ||
11 | |||
12 | When enabling iconv-module, we see a QA warning because rpaths hardcoded | ||
13 | into the build. And rpaths are not needed, so let's turn this off. | ||
14 | |||
15 | This patch is generated by referencing the existing "fix-check-pcre" | ||
16 | patch. | ||
17 | |||
18 | Upstream-Status: Inappropriate | ||
19 | |||
20 | Signed-off-by: Zheng Junling <zhengjunling@huawei.com> | ||
21 | --- | ||
22 | configure | 60 ++++++------------------------------------------------------ | ||
23 | 1 file changed, 6 insertions(+), 54 deletions(-) | ||
24 | |||
25 | diff --git a/configure b/configure | ||
26 | index 7a96256..91632f3 100755 | ||
27 | --- a/configure | ||
28 | +++ b/configure | ||
29 | @@ -7909,6 +7909,7 @@ $as_echo_n "checking for the iconv library and header files ... " >&6; } | ||
30 | /usr/include/iconv,/usr/lib \ | ||
31 | /usr/iconv/include,/usr/iconv/lib \ | ||
32 | /usr/include,/usr/lib \ | ||
33 | + /usr/include,/usr/lib64 \ | ||
34 | /opt/include/iconv,/opt/lib \ | ||
35 | /opt/iconv/include,/opt/iconv/lib \ | ||
36 | /opt/include,/opt/lib" | ||
37 | @@ -7939,14 +7940,14 @@ $as_echo_n "checking for the iconv library and header files ... " >&6; } | ||
38 | xincdir=`echo $include_and_lib | tr ',' ' ' | awk '{print $1}'` | ||
39 | xlibdir=`echo $include_and_lib | tr ',' ' ' | awk '{print $2}'` | ||
40 | found=0 | ||
41 | - if test -r $xincdir/$xincfile | ||
42 | + if test -r $PKG_CONFIG_SYSROOT_DIR/$xincdir/$xincfile | ||
43 | then | ||
44 | for E in $exts | ||
45 | do | ||
46 | - if test -r "$xlibdir/$xlibfile.$E" | ||
47 | + if test -r "$PKG_CONFIG_SYSROOT_DIR/$xlibdir/$xlibfile.$E" | ||
48 | then | ||
49 | - jd_iconv_include_dir="$xincdir" | ||
50 | - jd_iconv_library_dir="$xlibdir" | ||
51 | + jd_iconv_include_dir="$PKG_CONFIG_SYSROOT_DIR/$xincdir" | ||
52 | + jd_iconv_library_dir="$PKG_CONFIG_SYSROOT_DIR/$xlibdir" | ||
53 | jd_with_iconv_library="yes" | ||
54 | found=1 | ||
55 | break | ||
56 | @@ -7972,56 +7973,7 @@ $as_echo "yes: $jd_iconv_library_dir and $jd_iconv_include_dir" >&6; } | ||
57 | then | ||
58 | ICONV_LIB="" | ||
59 | else | ||
60 | - | ||
61 | -if test "X$jd_iconv_library_dir" != "X" | ||
62 | -then | ||
63 | - if test "X$RPATH" = "X" | ||
64 | - then | ||
65 | - | ||
66 | -case "$host_os" in | ||
67 | - *linux*|*solaris* ) | ||
68 | - if test "X$GCC" = Xyes | ||
69 | - then | ||
70 | - if test "X$ac_R_nospace" = "Xno" | ||
71 | - then | ||
72 | - RPATH="-Wl,-R," | ||
73 | - else | ||
74 | - RPATH="-Wl,-R" | ||
75 | - fi | ||
76 | - else | ||
77 | - if test "X$ac_R_nospace" = "Xno" | ||
78 | - then | ||
79 | - RPATH="-R " | ||
80 | - else | ||
81 | - RPATH="-R" | ||
82 | - fi | ||
83 | - fi | ||
84 | - ;; | ||
85 | - *osf*|*openbsd*) | ||
86 | - if test "X$GCC" = Xyes | ||
87 | - then | ||
88 | - RPATH="-Wl,-rpath," | ||
89 | - else | ||
90 | - RPATH="-rpath " | ||
91 | - fi | ||
92 | - ;; | ||
93 | - *netbsd*) | ||
94 | - if test "X$GCC" = Xyes | ||
95 | - then | ||
96 | - RPATH="-Wl,-R" | ||
97 | - fi | ||
98 | - ;; | ||
99 | -esac | ||
100 | - | ||
101 | - if test "X$RPATH" != "X" | ||
102 | - then | ||
103 | - RPATH="$RPATH$jd_iconv_library_dir" | ||
104 | - fi | ||
105 | - else | ||
106 | - RPATH="$RPATH:$jd_iconv_library_dir" | ||
107 | - fi | ||
108 | -fi | ||
109 | - | ||
110 | + RPATH="" | ||
111 | fi | ||
112 | |||
113 | ICONV_INC=-I$jd_iconv_include_dir | ||
114 | -- | ||
115 | 1.8.3.4 | ||
116 | |||
diff --git a/meta/recipes-extended/slang/slang/sprintf-bug-concerning-8-bit-characters.patch b/meta/recipes-extended/slang/slang/sprintf-bug-concerning-8-bit-characters.patch new file mode 100644 index 0000000000..ddf5cce5cb --- /dev/null +++ b/meta/recipes-extended/slang/slang/sprintf-bug-concerning-8-bit-characters.patch | |||
@@ -0,0 +1,42 @@ | |||
1 | Upstream-Status: Backported | ||
2 | |||
3 | From 3a05d1a920140e9f2c72791c12f664213feb46df Mon Sep 17 00:00:00 2001 | ||
4 | From: Manfred Hanke <Manfred.Hanke@tngtech.com> | ||
5 | Date: Thu, 20 Jun 2013 10:24:12 +0200 | ||
6 | Subject: [PATCH] sprintf bug (concerning %c for 8-bit character in non-UTF8 | ||
7 | mode) fixed | ||
8 | |||
9 | char *str points to SLuchar_Type utf8_buf[], which had too small scope | ||
10 | |||
11 | src/test/strops.sl failed in the following environment: | ||
12 | - compiler: gcc (Debian 4.7.2-5) 4.7.2 | ||
13 | - CFLAGS: -g -O2 | ||
14 | - libc: GNU C Library (Debian EGLIBC 2.13-38) stable release version 2.13 | ||
15 | - kernel: 3.2.0-4-686-pae #1 SMP Debian 3.2.39-2 i686 GNU/Linux | ||
16 | --- | ||
17 | src/slstrops.c | 2 +- | ||
18 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
19 | |||
20 | diff --git a/src/slstrops.c b/src/slstrops.c | ||
21 | index ce6acb0..cbbbb01 100644 | ||
22 | --- a/src/slstrops.c | ||
23 | +++ b/src/slstrops.c | ||
24 | @@ -1884,6 +1884,7 @@ static char *SLdo_sprintf (char *fmt) /*{{{*/ | ||
25 | #endif | ||
26 | unsigned char uch; | ||
27 | int use_long = 0, use_alt_format = 0; | ||
28 | + SLuchar_Type utf8_buf[SLUTF8_MAX_MBLEN+1]; | ||
29 | |||
30 | while (1) | ||
31 | { | ||
32 | @@ -2071,7 +2072,6 @@ static char *SLdo_sprintf (char *fmt) /*{{{*/ | ||
33 | #endif | ||
34 | { | ||
35 | SLwchar_Type wc; | ||
36 | - SLuchar_Type utf8_buf[SLUTF8_MAX_MBLEN+1]; | ||
37 | |||
38 | if (-1 == SLang_pop_wchar (&wc)) | ||
39 | return out; | ||
40 | -- | ||
41 | 1.7.9.5 | ||
42 | |||