diff options
author | Vicente Olivert Riera <Vincent.Riera@imgtec.com> | 2014-10-24 13:34:30 +0100 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2014-10-25 11:24:20 +0200 |
commit | c34110ec51a66fb0a1efb5823ea41ba036c1bfe3 (patch) | |
tree | 5e700b6f3c8d8c0c29d98e71cdc786ec1ac3f34e | |
parent | 9e30c5c2b1cf2c535734a5c1f07b612e830a60b1 (diff) | |
download | buildroot-c34110ec51a66fb0a1efb5823ea41ba036c1bfe3.tar.gz buildroot-c34110ec51a66fb0a1efb5823ea41ba036c1bfe3.zip |
uclibc: Do not include __iconv_codesets into iconv utility
Backporting an upstream patch to fix a problem in the install step:
make[1]: Entering directory `/br/output/build/uclibc-0.9.31.1'
make[2]: Nothing to be done for `locale_headers'.
CC utils/getconf
STRIP -x -R .note -R .comment ../utils/getconf
CC utils/iconv
../lib/libc.a(iconv.os):(.rodata+0x18): multiple definition of
`__iconv_codesets'
/tmp/ccVmV8Lq.o:(.rodata+0x18): first defined here
collect2: error: ld returned 1 exit status
Upstream commit:
http://git.uclibc.org/uClibc/commit/?id=d46dc8bc88e38251bfa3712efe7abf62933f5419
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-rw-r--r-- | package/uclibc/0.9.31.1/0014-Do-not-include-__iconv_codesets-into-iconv-utility.patch | 79 | ||||
-rw-r--r-- | package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch | 79 |
2 files changed, 158 insertions, 0 deletions
diff --git a/package/uclibc/0.9.31.1/0014-Do-not-include-__iconv_codesets-into-iconv-utility.patch b/package/uclibc/0.9.31.1/0014-Do-not-include-__iconv_codesets-into-iconv-utility.patch new file mode 100644 index 0000000000..4b6a701cfb --- /dev/null +++ b/package/uclibc/0.9.31.1/0014-Do-not-include-__iconv_codesets-into-iconv-utility.patch @@ -0,0 +1,79 @@ +uclibc: Do not include __iconv_codesets into iconv utility + +Backporting an upstream patch to fix a problem in the install step: + +make[1]: Entering directory `/br/output/build/uclibc-0.9.31.1' +make[2]: Nothing to be done for `locale_headers'. + CC utils/getconf + STRIP -x -R .note -R .comment ../utils/getconf + CC utils/iconv +../lib/libc.a(iconv.os):(.rodata+0x18): multiple definition of +`__iconv_codesets' +/tmp/ccVmV8Lq.o:(.rodata+0x18): first defined here +collect2: error: ld returned 1 exit status + +Upstream commit: + http://git.uclibc.org/uClibc/commit/?id=d46dc8bc88e38251bfa3712efe7abf62933f5419 + +Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> + +From d46dc8bc88e38251bfa3712efe7abf62933f5419 Mon Sep 17 00:00:00 2001 +From: Peter S. Mazinger <ps.m@gmx.net> +Date: Thu, 24 Mar 2011 00:15:25 +0000 +Subject: iconv: Do not include __iconv_codesets into iconv utility + +Host iconv needs only L_iconv_main defined and __iconv_codesets +has to included, as host system does not provide it. +Keep __iconv_codesets out of iconv linked against uClibc. + +Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> +Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> +--- +diff --git a/libc/misc/wchar/wchar.c b/libc/misc/wchar/wchar.c +index 412c557..0704096 100644 +--- a/libc/misc/wchar/wchar.c ++++ b/libc/misc/wchar/wchar.c +@@ -1196,6 +1196,9 @@ libc_hidden_proto(__iconv_codesets) + #endif + + #if defined L_iconv || defined L_iconv_main ++# ifdef L_iconv_main ++static ++# endif + const unsigned char __iconv_codesets[] = + "\x0a\xe0""WCHAR_T\x00" /* superset of UCS-4 but platform-endian */ + #if __BYTE_ORDER == __BIG_ENDIAN +diff --git a/utils/Makefile.in b/utils/Makefile.in +index bb85be3..1714d28 100644 +--- a/utils/Makefile.in ++++ b/utils/Makefile.in +@@ -36,8 +36,7 @@ CFLAGS-ldd := $(CFLAGS-utils-shared) -DBUILDING_LINKAGE + # Need CFLAGS-utils explicitly, because the source file is not located in utils + CFLAGS-iconv := $(CFLAGS-utils) \ + $(CFLAGS-utils-shared) \ +- -I$(top_srcdir)libc/misc/wchar \ +- -DL_iconv_main \ ++ -I$(top_srcdir)libc/misc/wchar + + CFLAGS-locale := $(CFLAGS-utils) + CFLAGS-getconf :=$(CFLAGS-utils) \ +diff --git a/utils/iconv.c b/utils/iconv.c +index 04e2c32..a0260df 100644 +--- a/utils/iconv.c ++++ b/utils/iconv.c +@@ -108,7 +108,12 @@ + #include <wchar.h> + #include "wchar.c" /* for _UC_iconv_t and __iconv_codesets */ + +-extern const unsigned char __iconv_codesets[]; ++#ifdef L_iconv_main ++static ++#else ++extern ++#endif ++const unsigned char __iconv_codesets[]; + + #define IBUF BUFSIZ + #define OBUF BUFSIZ +-- +cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch b/package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch new file mode 100644 index 0000000000..a6b5b5e9da --- /dev/null +++ b/package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch @@ -0,0 +1,79 @@ +uclibc: Do not include __iconv_codesets into iconv utility + +Backporting an upstream patch to fix a problem in the install step: + +make[1]: Entering directory `/br/output/build/uclibc-0.9.33.2' +make[2]: Nothing to be done for `locale_headers'. + CC utils/getconf + STRIP -x -R .note -R .comment ../utils/getconf + CC utils/iconv +../lib/libc.a(iconv.os):(.rodata+0x18): multiple definition of +`__iconv_codesets' +/tmp/ccVmV8Lq.o:(.rodata+0x18): first defined here +collect2: error: ld returned 1 exit status + +Upstream commit: + http://git.uclibc.org/uClibc/commit/?id=d46dc8bc88e38251bfa3712efe7abf62933f5419 + +Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> + +From d46dc8bc88e38251bfa3712efe7abf62933f5419 Mon Sep 17 00:00:00 2001 +From: Peter S. Mazinger <ps.m@gmx.net> +Date: Thu, 24 Mar 2011 00:15:25 +0000 +Subject: iconv: Do not include __iconv_codesets into iconv utility + +Host iconv needs only L_iconv_main defined and __iconv_codesets +has to included, as host system does not provide it. +Keep __iconv_codesets out of iconv linked against uClibc. + +Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> +Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> +--- +diff --git a/libc/misc/wchar/wchar.c b/libc/misc/wchar/wchar.c +index 412c557..0704096 100644 +--- a/libc/misc/wchar/wchar.c ++++ b/libc/misc/wchar/wchar.c +@@ -1196,6 +1196,9 @@ libc_hidden_proto(__iconv_codesets) + #endif + + #if defined L_iconv || defined L_iconv_main ++# ifdef L_iconv_main ++static ++# endif + const unsigned char __iconv_codesets[] = + "\x0a\xe0""WCHAR_T\x00" /* superset of UCS-4 but platform-endian */ + #if __BYTE_ORDER == __BIG_ENDIAN +diff --git a/utils/Makefile.in b/utils/Makefile.in +index bb85be3..1714d28 100644 +--- a/utils/Makefile.in ++++ b/utils/Makefile.in +@@ -36,8 +36,7 @@ CFLAGS-ldd := $(CFLAGS-utils-shared) -DBUILDING_LINKAGE + # Need CFLAGS-utils explicitly, because the source file is not located in utils + CFLAGS-iconv := $(CFLAGS-utils) \ + $(CFLAGS-utils-shared) \ +- -I$(top_srcdir)libc/misc/wchar \ +- -DL_iconv_main \ ++ -I$(top_srcdir)libc/misc/wchar + + CFLAGS-locale := $(CFLAGS-utils) + CFLAGS-getconf :=$(CFLAGS-utils) \ +diff --git a/utils/iconv.c b/utils/iconv.c +index 04e2c32..a0260df 100644 +--- a/utils/iconv.c ++++ b/utils/iconv.c +@@ -108,7 +108,12 @@ + #include <wchar.h> + #include "wchar.c" /* for _UC_iconv_t and __iconv_codesets */ + +-extern const unsigned char __iconv_codesets[]; ++#ifdef L_iconv_main ++static ++#else ++extern ++#endif ++const unsigned char __iconv_codesets[]; + + #define IBUF BUFSIZ + #define OBUF BUFSIZ +-- +cgit v0.9.1 |