summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorJuro Bystricky <jurobystricky@hotmail.com>2014-11-27 10:32:59 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-12-05 18:01:06 +0000
commit9fc63c57a82661a65ace3ebccdb535fe33de70f5 (patch)
treed73d2080b1f058299dad059e4c6f72d6bbf9e8f7 /meta
parent0935937969e6189e897973bb32c36b7672faa6b4 (diff)
downloadpoky-9fc63c57a82661a65ace3ebccdb535fe33de70f5.tar.gz
eglibc: modified option-groups.h generation
option-groups.h only explicitely #defines options that are enabled. EGLIBC options are typically pre-processed under the assumption that if an option is not explicitely defined then it evaluates as 0. This assumption is correct, but it generates a compiler warning message each time an undefined symbol is being evaluated. In order to remove the warnings, each EGLIBC option is now defined as 1 if the option is enabled or as 0 otherwise. The consequence is we cannot use #ifdef OPTION_XXX when evaluating the option, we must always use #if OPTION_XXX. [YOCTO #7001] (From OE-Core rev: 7f1bdc331304a61a4836a5752bca210450b6c5b5) Signed-off-by: Juro Bystricky <jurobystricky@hotmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-core/glibc/glibc/eglibc-use-option-groups.patch34
-rw-r--r--meta/recipes-core/glibc/glibc/option-groups.patch6
2 files changed, 20 insertions, 20 deletions
diff --git a/meta/recipes-core/glibc/glibc/eglibc-use-option-groups.patch b/meta/recipes-core/glibc/glibc/eglibc-use-option-groups.patch
index 40c783212a..7136253c8b 100644
--- a/meta/recipes-core/glibc/glibc/eglibc-use-option-groups.patch
+++ b/meta/recipes-core/glibc/glibc/eglibc-use-option-groups.patch
@@ -5724,7 +5724,7 @@ Index: git/posix/regex.h
5724 # define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1) 5724 # define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1)
5725 5725
5726+/* EGLIBC: Old regex implementation does not support these. */ 5726+/* EGLIBC: Old regex implementation does not support these. */
5727+# ifdef __OPTION_POSIX_REGEXP_GLIBC 5727+# if __OPTION_POSIX_REGEXP_GLIBC
5728 /* If this bit is set, then ignore case when matching. 5728 /* If this bit is set, then ignore case when matching.
5729 If not set, then case is significant. */ 5729 If not set, then case is significant. */
5730 # define RE_ICASE (RE_INVALID_INTERVAL_ORD << 1) 5730 # define RE_ICASE (RE_INVALID_INTERVAL_ORD << 1)
@@ -5740,7 +5740,7 @@ Index: git/posix/regex.h
5740 (RE_CHAR_CLASSES | RE_DOT_NEWLINE | RE_DOT_NOT_NULL \ 5740 (RE_CHAR_CLASSES | RE_DOT_NEWLINE | RE_DOT_NOT_NULL \
5741 | RE_INTERVALS | RE_NO_EMPTY_RANGES) 5741 | RE_INTERVALS | RE_NO_EMPTY_RANGES)
5742 5742
5743+#ifdef __OPTION_POSIX_REGEXP_GLIBC 5743+#if __OPTION_POSIX_REGEXP_GLIBC
5744 #define RE_SYNTAX_POSIX_BASIC \ 5744 #define RE_SYNTAX_POSIX_BASIC \
5745 (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM | RE_CONTEXT_INVALID_DUP) 5745 (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM | RE_CONTEXT_INVALID_DUP)
5746+#else 5746+#else
@@ -5754,7 +5754,7 @@ Index: git/posix/regex.h
5754 /* Like REG_NOTBOL, except for the end-of-line. */ 5754 /* Like REG_NOTBOL, except for the end-of-line. */
5755 #define REG_NOTEOL (1 << 1) 5755 #define REG_NOTEOL (1 << 1)
5756 5756
5757+#ifdef __OPTION_POSIX_REGEXP_GLIBC 5757+#if __OPTION_POSIX_REGEXP_GLIBC
5758 /* Use PMATCH[0] to delimit the start and end of the search in the 5758 /* Use PMATCH[0] to delimit the start and end of the search in the
5759 buffer. */ 5759 buffer. */
5760 #define REG_STARTEND (1 << 2) 5760 #define REG_STARTEND (1 << 2)
@@ -15542,7 +15542,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15542 libc_hidden_proto (__nldbl___isoc99_vsscanf) 15542 libc_hidden_proto (__nldbl___isoc99_vsscanf)
15543 libc_hidden_proto (__nldbl___isoc99_vfscanf) 15543 libc_hidden_proto (__nldbl___isoc99_vfscanf)
15544+ 15544+
15545+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15545+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15546+libc_hidden_proto (__nldbl_vfwscanf) 15546+libc_hidden_proto (__nldbl_vfwscanf)
15547+libc_hidden_proto (__nldbl_vswscanf) 15547+libc_hidden_proto (__nldbl_vswscanf)
15548+libc_hidden_proto (__nldbl_vfwprintf) 15548+libc_hidden_proto (__nldbl_vfwprintf)
@@ -15559,7 +15559,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15559 } 15559 }
15560 weak_alias (__nldbl_fprintf, __nldbl__IO_fprintf) 15560 weak_alias (__nldbl_fprintf, __nldbl__IO_fprintf)
15561 15561
15562+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15562+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15563 int 15563 int
15564 attribute_compat_text_section weak_function 15564 attribute_compat_text_section weak_function
15565 __nldbl_fwprintf (FILE *stream, const wchar_t *fmt, ...) 15565 __nldbl_fwprintf (FILE *stream, const wchar_t *fmt, ...)
@@ -15575,7 +15575,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15575 return done; 15575 return done;
15576 } 15576 }
15577 15577
15578+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15578+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15579 int 15579 int
15580 attribute_compat_text_section 15580 attribute_compat_text_section
15581 __nldbl_swprintf (wchar_t *s, size_t n, const wchar_t *fmt, ...) 15581 __nldbl_swprintf (wchar_t *s, size_t n, const wchar_t *fmt, ...)
@@ -15591,7 +15591,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15591 } 15591 }
15592 libc_hidden_def (__nldbl_vdprintf) 15592 libc_hidden_def (__nldbl_vdprintf)
15593 15593
15594+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15594+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15595 int 15595 int
15596 attribute_compat_text_section weak_function 15596 attribute_compat_text_section weak_function
15597 __nldbl_vfwprintf (FILE *s, const wchar_t *fmt, va_list ap) 15597 __nldbl_vfwprintf (FILE *s, const wchar_t *fmt, va_list ap)
@@ -15607,7 +15607,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15607 libc_hidden_def (__nldbl_vsnprintf) 15607 libc_hidden_def (__nldbl_vsnprintf)
15608 weak_alias (__nldbl_vsnprintf, __nldbl___vsnprintf) 15608 weak_alias (__nldbl_vsnprintf, __nldbl___vsnprintf)
15609 15609
15610+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15610+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15611 int 15611 int
15612 attribute_compat_text_section weak_function 15612 attribute_compat_text_section weak_function
15613 __nldbl_vswprintf (wchar_t *string, size_t maxlen, const wchar_t *fmt, 15613 __nldbl_vswprintf (wchar_t *string, size_t maxlen, const wchar_t *fmt,
@@ -15623,7 +15623,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15623 return done; 15623 return done;
15624 } 15624 }
15625 15625
15626+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15626+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15627 int 15627 int
15628 attribute_compat_text_section 15628 attribute_compat_text_section
15629 __nldbl_vfwscanf (FILE *s, const wchar_t *fmt, va_list ap) 15629 __nldbl_vfwscanf (FILE *s, const wchar_t *fmt, va_list ap)
@@ -15639,7 +15639,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15639 return done; 15639 return done;
15640 } 15640 }
15641 15641
15642+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15642+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15643 int 15643 int
15644 attribute_compat_text_section 15644 attribute_compat_text_section
15645 __nldbl___fwprintf_chk (FILE *stream, int flag, const wchar_t *fmt, ...) 15645 __nldbl___fwprintf_chk (FILE *stream, int flag, const wchar_t *fmt, ...)
@@ -15655,7 +15655,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15655 return done; 15655 return done;
15656 } 15656 }
15657 15657
15658+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15658+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15659 int 15659 int
15660 attribute_compat_text_section 15660 attribute_compat_text_section
15661 __nldbl___swprintf_chk (wchar_t *s, size_t n, int flag, size_t slen, 15661 __nldbl___swprintf_chk (wchar_t *s, size_t n, int flag, size_t slen,
@@ -15671,7 +15671,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15671 } 15671 }
15672 libc_hidden_def (__nldbl___vfprintf_chk) 15672 libc_hidden_def (__nldbl___vfprintf_chk)
15673 15673
15674+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15674+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15675 int 15675 int
15676 attribute_compat_text_section 15676 attribute_compat_text_section
15677 __nldbl___vfwprintf_chk (FILE *s, int flag, const wchar_t *fmt, va_list ap) 15677 __nldbl___vfwprintf_chk (FILE *s, int flag, const wchar_t *fmt, va_list ap)
@@ -15687,7 +15687,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15687 } 15687 }
15688 libc_hidden_def (__nldbl___vsprintf_chk) 15688 libc_hidden_def (__nldbl___vsprintf_chk)
15689 15689
15690+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15690+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15691 int 15691 int
15692 attribute_compat_text_section 15692 attribute_compat_text_section
15693 __nldbl___vswprintf_chk (wchar_t *string, size_t maxlen, int flag, size_t slen, 15693 __nldbl___vswprintf_chk (wchar_t *string, size_t maxlen, int flag, size_t slen,
@@ -15719,7 +15719,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15719 return done; 15719 return done;
15720 } 15720 }
15721 15721
15722+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15722+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15723 int 15723 int
15724 attribute_compat_text_section 15724 attribute_compat_text_section
15725 __nldbl___isoc99_vfwscanf (FILE *s, const wchar_t *fmt, va_list ap) 15725 __nldbl___isoc99_vfwscanf (FILE *s, const wchar_t *fmt, va_list ap)
@@ -15735,7 +15735,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
15735 compat_symbol (libc, __nldbl___strfmon_l, __strfmon_l, GLIBC_2_1); 15735 compat_symbol (libc, __nldbl___strfmon_l, __strfmon_l, GLIBC_2_1);
15736 #endif 15736 #endif
15737 #if LONG_DOUBLE_COMPAT(libc, GLIBC_2_2) 15737 #if LONG_DOUBLE_COMPAT(libc, GLIBC_2_2)
15738+# ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15738+# if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15739 compat_symbol (libc, __nldbl_swprintf, swprintf, GLIBC_2_2); 15739 compat_symbol (libc, __nldbl_swprintf, swprintf, GLIBC_2_2);
15740 compat_symbol (libc, __nldbl_vwprintf, vwprintf, GLIBC_2_2); 15740 compat_symbol (libc, __nldbl_vwprintf, vwprintf, GLIBC_2_2);
15741 compat_symbol (libc, __nldbl_wprintf, wprintf, GLIBC_2_2); 15741 compat_symbol (libc, __nldbl_wprintf, wprintf, GLIBC_2_2);
@@ -15783,7 +15783,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.h
15783 NLDBL_DECL (__isoc99_vscanf); 15783 NLDBL_DECL (__isoc99_vscanf);
15784 NLDBL_DECL (__isoc99_vfscanf); 15784 NLDBL_DECL (__isoc99_vfscanf);
15785 NLDBL_DECL (__isoc99_vsscanf); 15785 NLDBL_DECL (__isoc99_vsscanf);
15786+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15786+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15787+NLDBL_DECL (vfwscanf); 15787+NLDBL_DECL (vfwscanf);
15788+NLDBL_DECL (vfwprintf); 15788+NLDBL_DECL (vfwprintf);
15789+NLDBL_DECL (vswprintf); 15789+NLDBL_DECL (vswprintf);
@@ -15819,7 +15819,7 @@ Index: git/sysdeps/ieee754/ldbl-opt/nldbl-compat.h
15819 _G_va_list) __THROW; 15819 _G_va_list) __THROW;
15820 extern void __nldbl___vsyslog_chk (int, int, const char *, va_list); 15820 extern void __nldbl___vsyslog_chk (int, int, const char *, va_list);
15821- 15821-
15822+#ifdef __OPTION_POSIX_WIDE_CHAR_DEVICE_IO 15822+#if __OPTION_POSIX_WIDE_CHAR_DEVICE_IO
15823+extern int __nldbl___vfwprintf_chk (FILE *__restrict, int, 15823+extern int __nldbl___vfwprintf_chk (FILE *__restrict, int,
15824+ const wchar_t *__restrict, __gnuc_va_list); 15824+ const wchar_t *__restrict, __gnuc_va_list);
15825+extern int __nldbl___vswprintf_chk (wchar_t *__restrict, size_t, int, size_t, 15825+extern int __nldbl___vswprintf_chk (wchar_t *__restrict, size_t, int, size_t,
diff --git a/meta/recipes-core/glibc/glibc/option-groups.patch b/meta/recipes-core/glibc/glibc/option-groups.patch
index 693bd2fbb8..198be73524 100644
--- a/meta/recipes-core/glibc/glibc/option-groups.patch
+++ b/meta/recipes-core/glibc/glibc/option-groups.patch
@@ -1358,8 +1358,8 @@ Index: git/scripts/option-groups.awk
1358+ print " It defines macros that indicate which EGLIBC option groups were" 1358+ print " It defines macros that indicate which EGLIBC option groups were"
1359+ print " configured in 'option-groups.config' when this C library was" 1359+ print " configured in 'option-groups.config' when this C library was"
1360+ print " built. For each option group named OPTION_foo, it #defines" 1360+ print " built. For each option group named OPTION_foo, it #defines"
1361+ print " __OPTION_foo to be 1 if the group is enabled, or leaves that" 1361+ print " __OPTION_foo to be 1 if the group is enabled, or #defines that"
1362+ print " symbol undefined if the group is disabled. */" 1362+ print " symbol to be 0 if the group is disabled. */"
1363+ print "" 1363+ print ""
1364+ print "#ifndef __GNU_OPTION_GROUPS_H" 1364+ print "#ifndef __GNU_OPTION_GROUPS_H"
1365+ print "#define __GNU_OPTION_GROUPS_H" 1365+ print "#define __GNU_OPTION_GROUPS_H"
@@ -1379,7 +1379,7 @@ Index: git/scripts/option-groups.awk
1379+ if (vars[var] == "y") 1379+ if (vars[var] == "y")
1380+ print "#define __" var " 1" 1380+ print "#define __" var " 1"
1381+ else if (vars[var] == "n") 1381+ else if (vars[var] == "n")
1382+ print "/* #undef __" var " */" 1382+ print "#define __" var " 0"
1383+ else if (vars[var] ~ /^[0-9]+/ || 1383+ else if (vars[var] ~ /^[0-9]+/ ||
1384+ vars[var] ~ /^0x[0-9aAbBcCdDeEfF]+/ || 1384+ vars[var] ~ /^0x[0-9aAbBcCdDeEfF]+/ ||
1385+ vars[var] ~ /^\"/) 1385+ vars[var] ~ /^\"/)