All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] glibc: 'yes' within the path sets wrong variables
@ 2015-02-23  9:54 Benjamin Esquivel
  2015-02-24 19:40 ` Saul Wold
  2015-02-26 16:18 ` Khem Raj
  0 siblings, 2 replies; 12+ messages in thread
From: Benjamin Esquivel @ 2015-02-23  9:54 UTC (permalink / raw)
  To: openembedded-core

The pre-processed output of conftest.c contains an include dir
and if the path of it contains a 'yes' it will cause some variables
to be wrongly set to yes because of the way it greps for it.
The fix is to use a more elaborated string instead of just 'yes'.
This has to be done at the configure and the configure.ac files,
normally it would only require the configure.ac changes but they
also need modification given the configure files also pop-out of
the source tarball.

[YOCTO #6614]

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
---
 meta/recipes-core/glibc/glibc/fix-yesdir.patch | 230 +++++++++++++++++++++++++
 meta/recipes-core/glibc/glibc_2.21.bb          |   1 +
 2 files changed, 231 insertions(+)
 create mode 100644 meta/recipes-core/glibc/glibc/fix-yesdir.patch

diff --git a/meta/recipes-core/glibc/glibc/fix-yesdir.patch b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
new file mode 100644
index 0000000..4d014c0
--- /dev/null
+++ b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
@@ -0,0 +1,230 @@
+Index: git/sysdeps/arm/configure
+===================================================================
+--- git.orig/sysdeps/arm/configure
++++ git/sysdeps/arm/configure
+@@ -150,12 +150,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __ARM_PCS_VFP
+-		      yes
++		      use_arm_pcs_vfp
+ 		     #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
+   libc_cv_arm_pcs_vfp=yes
+ else
+   libc_cv_arm_pcs_vfp=no
+Index: git/sysdeps/arm/configure.ac
+===================================================================
+--- git.orig/sysdeps/arm/configure.ac
++++ git/sysdeps/arm/configure.ac
+@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
+ # the dynamic linker via %ifdef.
+ AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
+   [libc_cv_arm_pcs_vfp],
+-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
+-		      yes
++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
++		      use_arm_pcs_vfp
+ 		     #endif
+   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
+ if test $libc_cv_arm_pcs_vfp = yes; then
+Index: git/sysdeps/aarch64/configure
+===================================================================
+--- git.orig/sysdeps/aarch64/configure
++++ git/sysdeps/aarch64/configure
+@@ -148,12 +148,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __AARCH64EB__
+-                      yes
++                      is_aarch64_be
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
+   libc_cv_aarch64_be=yes
+ else
+   libc_cv_aarch64_be=no
+Index: git/sysdeps/aarch64/configure.ac
+===================================================================
+--- git.orig/sysdeps/aarch64/configure.ac
++++ git/sysdeps/aarch64/configure.ac
+@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
+ # the dynamic linker via %ifdef.
+ AC_CACHE_CHECK([for big endian],
+   [libc_cv_aarch64_be],
+-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
+-                      yes
++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
++                      is_aarch64_be
+                      #endif
+   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
+ if test $libc_cv_aarch64_be = yes; then
+Index: git/sysdeps/mips/configure
+===================================================================
+--- git.orig/sysdeps/mips/configure
++++ git/sysdeps/mips/configure
+@@ -143,11 +143,11 @@ else
+ /* end confdefs.h.  */
+ dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
+   libc_cv_mips_nan2008=yes
+ else
+   libc_cv_mips_nan2008=no
+Index: git/sysdeps/mips/configure.ac
+===================================================================
+--- git.orig/sysdeps/mips/configure.ac
++++ git/sysdeps/mips/configure.ac
+@@ -6,9 +6,9 @@ dnl position independent way.
+ dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
+ 
+ AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+ if test x$libc_cv_mips_nan2008 = xyes; then
+   AC_DEFINE(HAVE_MIPS_NAN2008)
+Index: git/sysdeps/nios2/configure
+===================================================================
+--- git.orig/sysdeps/nios2/configure
++++ git/sysdeps/nios2/configure
+@@ -142,12 +142,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __nios2_big_endian__
+-                      yes
++                      is_nios2_be
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
+   libc_cv_nios2_be=yes
+ else
+   libc_cv_nios2_be=no
+Index: git/sysdeps/nios2/configure.ac
+===================================================================
+--- git.orig/sysdeps/nios2/configure.ac
++++ git/sysdeps/nios2/configure.ac
+@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
+ # Nios II big endian is not yet supported.
+ AC_CACHE_CHECK([for big endian],
+   [libc_cv_nios2_be],
+-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
+-                      yes
++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
++                      is_nios2_be
+                      #endif
+   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
+ if test $libc_cv_nios2_be = yes; then
+Index: git/sysdeps/unix/sysv/linux/mips/configure
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/mips/configure
++++ git/sysdeps/unix/sysv/linux/mips/configure
+@@ -387,11 +387,11 @@ else
+ /* end confdefs.h.  */
+ dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
+   libc_cv_mips_nan2008=yes
+ else
+   libc_cv_mips_nan2008=no
+Index: git/sysdeps/unix/sysv/linux/mips/configure.ac
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/mips/configure.ac
++++ git/sysdeps/unix/sysv/linux/mips/configure.ac
+@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
+ LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
+ 
+ AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+ 
+ libc_mips_nan=
+Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
+@@ -155,12 +155,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #if _CALL_ELF == 2
+-                      yes
++                      use_ppc_elfv2_abi
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
+   libc_cv_ppc64_elfv2_abi=yes
+ else
+   libc_cv_ppc64_elfv2_abi=no
+@@ -188,12 +188,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef _CALL_ELF
+-                         yes
++                         is_def_call_elf
+                        #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
+   libc_cv_ppc64_def_call_elf=yes
+ else
+   libc_cv_ppc64_def_call_elf=no
+Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
+@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
+ # Define default-abi according to compiler flags.
+ AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
+   [libc_cv_ppc64_elfv2_abi],
+-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
+-                      yes
++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
++                      use_ppc_elfv2_abi
+                      #endif
+   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
+ if test $libc_cv_ppc64_elfv2_abi = yes; then
+@@ -19,8 +19,8 @@ else
+   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
+   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
+     [libc_cv_ppc64_def_call_elf],
+-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
+-                         yes
++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
++                         is_def_call_elf
+                        #endif
+     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
+   if test $libc_cv_ppc64_def_call_elf = no; then
diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
index 1ef494b..d7aab4b 100644
--- a/meta/recipes-core/glibc/glibc_2.21.bb
+++ b/meta/recipes-core/glibc/glibc_2.21.bb
@@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
            file://fix_am_rootsbindir.patch \
            file://0001-Add-unused-attribute.patch \
            file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
+           file://fix-yesdir.patch \
            ${EGLIBCPATCHES} \
           "
 EGLIBCPATCHES = "\
-- 
1.8.4.5



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-23  9:54 [PATCH] glibc: 'yes' within the path sets wrong variables Benjamin Esquivel
@ 2015-02-24 19:40 ` Saul Wold
  2015-02-24 22:17   ` Benjamin Esquivel
  2015-02-26 16:18 ` Khem Raj
  1 sibling, 1 reply; 12+ messages in thread
From: Saul Wold @ 2015-02-24 19:40 UTC (permalink / raw)
  To: Benjamin Esquivel, openembedded-core

On 02/23/2015 01:54 AM, Benjamin Esquivel wrote:
> The pre-processed output of conftest.c contains an include dir
> and if the path of it contains a 'yes' it will cause some variables
> to be wrongly set to yes because of the way it greps for it.
> The fix is to use a more elaborated string instead of just 'yes'.
> This has to be done at the configure and the configure.ac files,
> normally it would only require the configure.ac changes but they
> also need modification given the configure files also pop-out of
> the source tarball.
>
So the configure file does not get regenerated as part of the standard 
auto-reconf?


> [YOCTO #6614]
>
> Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
> ---
>   meta/recipes-core/glibc/glibc/fix-yesdir.patch | 230 +++++++++++++++++++++++++
>   meta/recipes-core/glibc/glibc_2.21.bb          |   1 +
>   2 files changed, 231 insertions(+)
>   create mode 100644 meta/recipes-core/glibc/glibc/fix-yesdir.patch
>
> diff --git a/meta/recipes-core/glibc/glibc/fix-yesdir.patch b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> new file mode 100644
> index 0000000..4d014c0
> --- /dev/null
> +++ b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> @@ -0,0 +1,230 @@

This patch needs a comment which should include an Upstream-Status: ??
and a Signed-off-by (in addition to the above SOB).

See http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines

for details.

Sau!

> +Index: git/sysdeps/arm/configure
> +===================================================================
> +--- git.orig/sysdeps/arm/configure
> ++++ git/sysdeps/arm/configure
> +@@ -150,12 +150,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef __ARM_PCS_VFP
> +-		      yes
> ++		      use_arm_pcs_vfp
> + 		     #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
> +   libc_cv_arm_pcs_vfp=yes
> + else
> +   libc_cv_arm_pcs_vfp=no
> +Index: git/sysdeps/arm/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/arm/configure.ac
> ++++ git/sysdeps/arm/configure.ac
> +@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
> + # the dynamic linker via %ifdef.
> + AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
> +   [libc_cv_arm_pcs_vfp],
> +-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
> +-		      yes
> ++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
> ++		      use_arm_pcs_vfp
> + 		     #endif
> +   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
> + if test $libc_cv_arm_pcs_vfp = yes; then
> +Index: git/sysdeps/aarch64/configure
> +===================================================================
> +--- git.orig/sysdeps/aarch64/configure
> ++++ git/sysdeps/aarch64/configure
> +@@ -148,12 +148,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef __AARCH64EB__
> +-                      yes
> ++                      is_aarch64_be
> +                      #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
> +   libc_cv_aarch64_be=yes
> + else
> +   libc_cv_aarch64_be=no
> +Index: git/sysdeps/aarch64/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/aarch64/configure.ac
> ++++ git/sysdeps/aarch64/configure.ac
> +@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> + # the dynamic linker via %ifdef.
> + AC_CACHE_CHECK([for big endian],
> +   [libc_cv_aarch64_be],
> +-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
> +-                      yes
> ++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
> ++                      is_aarch64_be
> +                      #endif
> +   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
> + if test $libc_cv_aarch64_be = yes; then
> +Index: git/sysdeps/mips/configure
> +===================================================================
> +--- git.orig/sysdeps/mips/configure
> ++++ git/sysdeps/mips/configure
> +@@ -143,11 +143,11 @@ else
> + /* end confdefs.h.  */
> + dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> +   libc_cv_mips_nan2008=yes
> + else
> +   libc_cv_mips_nan2008=no
> +Index: git/sysdeps/mips/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/mips/configure.ac
> ++++ git/sysdeps/mips/configure.ac
> +@@ -6,9 +6,9 @@ dnl position independent way.
> + dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
> +
> + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> + if test x$libc_cv_mips_nan2008 = xyes; then
> +   AC_DEFINE(HAVE_MIPS_NAN2008)
> +Index: git/sysdeps/nios2/configure
> +===================================================================
> +--- git.orig/sysdeps/nios2/configure
> ++++ git/sysdeps/nios2/configure
> +@@ -142,12 +142,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef __nios2_big_endian__
> +-                      yes
> ++                      is_nios2_be
> +                      #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
> +   libc_cv_nios2_be=yes
> + else
> +   libc_cv_nios2_be=no
> +Index: git/sysdeps/nios2/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/nios2/configure.ac
> ++++ git/sysdeps/nios2/configure.ac
> +@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> + # Nios II big endian is not yet supported.
> + AC_CACHE_CHECK([for big endian],
> +   [libc_cv_nios2_be],
> +-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
> +-                      yes
> ++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
> ++                      is_nios2_be
> +                      #endif
> +   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
> + if test $libc_cv_nios2_be = yes; then
> +Index: git/sysdeps/unix/sysv/linux/mips/configure
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/mips/configure
> ++++ git/sysdeps/unix/sysv/linux/mips/configure
> +@@ -387,11 +387,11 @@ else
> + /* end confdefs.h.  */
> + dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> +   libc_cv_mips_nan2008=yes
> + else
> +   libc_cv_mips_nan2008=no
> +Index: git/sysdeps/unix/sysv/linux/mips/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/mips/configure.ac
> ++++ git/sysdeps/unix/sysv/linux/mips/configure.ac
> +@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
> + LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
> +
> + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> +
> + libc_mips_nan=
> +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> +@@ -155,12 +155,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #if _CALL_ELF == 2
> +-                      yes
> ++                      use_ppc_elfv2_abi
> +                      #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
> +   libc_cv_ppc64_elfv2_abi=yes
> + else
> +   libc_cv_ppc64_elfv2_abi=no
> +@@ -188,12 +188,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef _CALL_ELF
> +-                         yes
> ++                         is_def_call_elf
> +                        #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
> +   libc_cv_ppc64_def_call_elf=yes
> + else
> +   libc_cv_ppc64_def_call_elf=no
> +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> +@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
> + # Define default-abi according to compiler flags.
> + AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
> +   [libc_cv_ppc64_elfv2_abi],
> +-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
> +-                      yes
> ++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
> ++                      use_ppc_elfv2_abi
> +                      #endif
> +   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
> + if test $libc_cv_ppc64_elfv2_abi = yes; then
> +@@ -19,8 +19,8 @@ else
> +   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
> +   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
> +     [libc_cv_ppc64_def_call_elf],
> +-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
> +-                         yes
> ++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
> ++                         is_def_call_elf
> +                        #endif
> +     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
> +   if test $libc_cv_ppc64_def_call_elf = no; then
> diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
> index 1ef494b..d7aab4b 100644
> --- a/meta/recipes-core/glibc/glibc_2.21.bb
> +++ b/meta/recipes-core/glibc/glibc_2.21.bb
> @@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
>              file://fix_am_rootsbindir.patch \
>              file://0001-Add-unused-attribute.patch \
>              file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
> +           file://fix-yesdir.patch \
>              ${EGLIBCPATCHES} \
>             "
>   EGLIBCPATCHES = "\
>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-24 19:40 ` Saul Wold
@ 2015-02-24 22:17   ` Benjamin Esquivel
  2015-02-25 12:23     ` Burton, Ross
  0 siblings, 1 reply; 12+ messages in thread
From: Benjamin Esquivel @ 2015-02-24 22:17 UTC (permalink / raw)
  To: Saul Wold; +Cc: openembedded-core

On Tue, 2015-02-24 at 11:40 -0800, Saul Wold wrote:
> On 02/23/2015 01:54 AM, Benjamin Esquivel wrote:
> > The pre-processed output of conftest.c contains an include dir
> > and if the path of it contains a 'yes' it will cause some variables
> > to be wrongly set to yes because of the way it greps for it.
> > The fix is to use a more elaborated string instead of just 'yes'.
> > This has to be done at the configure and the configure.ac files,
> > normally it would only require the configure.ac changes but they
> > also need modification given the configure files also pop-out of
> > the source tarball.
> >
> So the configure file does not get regenerated as part of the standard 
> auto-reconf?
> 
No, if the fix is only applied at the configure.ac file the unwanted
behavior still shows up from the configure file.
> 
> > [YOCTO #6614]
> >
> > Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
> > ---
> >   meta/recipes-core/glibc/glibc/fix-yesdir.patch | 230 +++++++++++++++++++++++++
> >   meta/recipes-core/glibc/glibc_2.21.bb          |   1 +
> >   2 files changed, 231 insertions(+)
> >   create mode 100644 meta/recipes-core/glibc/glibc/fix-yesdir.patch
> >
> > diff --git a/meta/recipes-core/glibc/glibc/fix-yesdir.patch b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> > new file mode 100644
> > index 0000000..4d014c0
> > --- /dev/null
> > +++ b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> > @@ -0,0 +1,230 @@
> 
> This patch needs a comment which should include an Upstream-Status: ??
> and a Signed-off-by (in addition to the above SOB).
> 
> See http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
> 
> for details.
> 
> Sau!
> 
> > +Index: git/sysdeps/arm/configure
> > +===================================================================
> > +--- git.orig/sysdeps/arm/configure
> > ++++ git/sysdeps/arm/configure
> > +@@ -150,12 +150,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef __ARM_PCS_VFP
> > +-		      yes
> > ++		      use_arm_pcs_vfp
> > + 		     #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
> > +   libc_cv_arm_pcs_vfp=yes
> > + else
> > +   libc_cv_arm_pcs_vfp=no
> > +Index: git/sysdeps/arm/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/arm/configure.ac
> > ++++ git/sysdeps/arm/configure.ac
> > +@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
> > + # the dynamic linker via %ifdef.
> > + AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
> > +   [libc_cv_arm_pcs_vfp],
> > +-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
> > +-		      yes
> > ++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
> > ++		      use_arm_pcs_vfp
> > + 		     #endif
> > +   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
> > + if test $libc_cv_arm_pcs_vfp = yes; then
> > +Index: git/sysdeps/aarch64/configure
> > +===================================================================
> > +--- git.orig/sysdeps/aarch64/configure
> > ++++ git/sysdeps/aarch64/configure
> > +@@ -148,12 +148,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef __AARCH64EB__
> > +-                      yes
> > ++                      is_aarch64_be
> > +                      #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
> > +   libc_cv_aarch64_be=yes
> > + else
> > +   libc_cv_aarch64_be=no
> > +Index: git/sysdeps/aarch64/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/aarch64/configure.ac
> > ++++ git/sysdeps/aarch64/configure.ac
> > +@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> > + # the dynamic linker via %ifdef.
> > + AC_CACHE_CHECK([for big endian],
> > +   [libc_cv_aarch64_be],
> > +-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
> > +-                      yes
> > ++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
> > ++                      is_aarch64_be
> > +                      #endif
> > +   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
> > + if test $libc_cv_aarch64_be = yes; then
> > +Index: git/sysdeps/mips/configure
> > +===================================================================
> > +--- git.orig/sysdeps/mips/configure
> > ++++ git/sysdeps/mips/configure
> > +@@ -143,11 +143,11 @@ else
> > + /* end confdefs.h.  */
> > + dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> > +   libc_cv_mips_nan2008=yes
> > + else
> > +   libc_cv_mips_nan2008=no
> > +Index: git/sysdeps/mips/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/mips/configure.ac
> > ++++ git/sysdeps/mips/configure.ac
> > +@@ -6,9 +6,9 @@ dnl position independent way.
> > + dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
> > +
> > + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> > +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> > ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> > + if test x$libc_cv_mips_nan2008 = xyes; then
> > +   AC_DEFINE(HAVE_MIPS_NAN2008)
> > +Index: git/sysdeps/nios2/configure
> > +===================================================================
> > +--- git.orig/sysdeps/nios2/configure
> > ++++ git/sysdeps/nios2/configure
> > +@@ -142,12 +142,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef __nios2_big_endian__
> > +-                      yes
> > ++                      is_nios2_be
> > +                      #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
> > +   libc_cv_nios2_be=yes
> > + else
> > +   libc_cv_nios2_be=no
> > +Index: git/sysdeps/nios2/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/nios2/configure.ac
> > ++++ git/sysdeps/nios2/configure.ac
> > +@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> > + # Nios II big endian is not yet supported.
> > + AC_CACHE_CHECK([for big endian],
> > +   [libc_cv_nios2_be],
> > +-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
> > +-                      yes
> > ++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
> > ++                      is_nios2_be
> > +                      #endif
> > +   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
> > + if test $libc_cv_nios2_be = yes; then
> > +Index: git/sysdeps/unix/sysv/linux/mips/configure
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/mips/configure
> > ++++ git/sysdeps/unix/sysv/linux/mips/configure
> > +@@ -387,11 +387,11 @@ else
> > + /* end confdefs.h.  */
> > + dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> > +   libc_cv_mips_nan2008=yes
> > + else
> > +   libc_cv_mips_nan2008=no
> > +Index: git/sysdeps/unix/sysv/linux/mips/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/mips/configure.ac
> > ++++ git/sysdeps/unix/sysv/linux/mips/configure.ac
> > +@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
> > + LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
> > +
> > + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> > +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> > ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> > +
> > + libc_mips_nan=
> > +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> > ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> > +@@ -155,12 +155,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #if _CALL_ELF == 2
> > +-                      yes
> > ++                      use_ppc_elfv2_abi
> > +                      #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
> > +   libc_cv_ppc64_elfv2_abi=yes
> > + else
> > +   libc_cv_ppc64_elfv2_abi=no
> > +@@ -188,12 +188,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef _CALL_ELF
> > +-                         yes
> > ++                         is_def_call_elf
> > +                        #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
> > +   libc_cv_ppc64_def_call_elf=yes
> > + else
> > +   libc_cv_ppc64_def_call_elf=no
> > +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> > ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> > +@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
> > + # Define default-abi according to compiler flags.
> > + AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
> > +   [libc_cv_ppc64_elfv2_abi],
> > +-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
> > +-                      yes
> > ++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
> > ++                      use_ppc_elfv2_abi
> > +                      #endif
> > +   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
> > + if test $libc_cv_ppc64_elfv2_abi = yes; then
> > +@@ -19,8 +19,8 @@ else
> > +   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
> > +   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
> > +     [libc_cv_ppc64_def_call_elf],
> > +-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
> > +-                         yes
> > ++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
> > ++                         is_def_call_elf
> > +                        #endif
> > +     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
> > +   if test $libc_cv_ppc64_def_call_elf = no; then
> > diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
> > index 1ef494b..d7aab4b 100644
> > --- a/meta/recipes-core/glibc/glibc_2.21.bb
> > +++ b/meta/recipes-core/glibc/glibc_2.21.bb
> > @@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
> >              file://fix_am_rootsbindir.patch \
> >              file://0001-Add-unused-attribute.patch \
> >              file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
> > +           file://fix-yesdir.patch \
> >              ${EGLIBCPATCHES} \
> >             "
> >   EGLIBCPATCHES = "\
> >




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-24 22:17   ` Benjamin Esquivel
@ 2015-02-25 12:23     ` Burton, Ross
  2015-02-25 18:14       ` Benjamin Esquivel
  0 siblings, 1 reply; 12+ messages in thread
From: Burton, Ross @ 2015-02-25 12:23 UTC (permalink / raw)
  To: benjamin.esquivel; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 409 bytes --]

On 24 February 2015 at 22:17, Benjamin Esquivel <
benjamin.esquivel@linux.intel.com> wrote:

> > So the configure file does not get regenerated as part of the standard
> > auto-reconf?
> >
> No, if the fix is only applied at the configure.ac file the unwanted
> behavior still shows up from the configure file.


Yeah, gcc isn't reconfigured.  Presumably there's a good reason for this. :)

Ross

[-- Attachment #2: Type: text/html, Size: 865 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-25 12:23     ` Burton, Ross
@ 2015-02-25 18:14       ` Benjamin Esquivel
  2015-02-26 12:22         ` Burton, Ross
  0 siblings, 1 reply; 12+ messages in thread
From: Benjamin Esquivel @ 2015-02-25 18:14 UTC (permalink / raw)
  To: Burton, Ross, Saul Wold; +Cc: OE-core

On Wed, 2015-02-25 at 12:23 +0000, Burton, Ross wrote:
> 
> On 24 February 2015 at 22:17, Benjamin Esquivel
> <benjamin.esquivel@linux.intel.com> wrote:
>         > So the configure file does not get regenerated as part of
>         the standard
>         > auto-reconf?
>         >
>         No, if the fix is only applied at the configure.ac file the
>         unwanted
>         behavior still shows up from the configure file.
> 
> Yeah, gcc isn't reconfigured.  Presumably there's a good reason for
> this. :)

Saul, is there a specific part of the glibc's run.do_configure that
should re-conf?

> 
> Ross




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-25 18:14       ` Benjamin Esquivel
@ 2015-02-26 12:22         ` Burton, Ross
  2015-02-26 16:17           ` Khem Raj
  0 siblings, 1 reply; 12+ messages in thread
From: Burton, Ross @ 2015-02-26 12:22 UTC (permalink / raw)
  To: benjamin.esquivel, Khem Raj; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 553 bytes --]

On 25 February 2015 at 18:14, Benjamin Esquivel <
benjamin.esquivel@linux.intel.com> wrote:

> Saul, is there a specific part of the glibc's run.do_configure that
> should re-conf?
>

The glibc recipe explicitly avoids autoreconfig:

"# override this function to avoid the autoconf/automake/aclocal/autoheader
calls for now"

Khem is the person to ask if this is something that can be removed but for
now, patching the configure is all we can do (and sending the patch
upstream so we don't need to patch configure in the future).

Ross

[-- Attachment #2: Type: text/html, Size: 1170 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-26 12:22         ` Burton, Ross
@ 2015-02-26 16:17           ` Khem Raj
  2015-03-02 16:02             ` [meta-oe][PATCH v2] " Benjamin Esquivel
  2015-03-02 16:09             ` [PATCH] " Benjamin Esquivel
  0 siblings, 2 replies; 12+ messages in thread
From: Khem Raj @ 2015-02-26 16:17 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

On Thu, Feb 26, 2015 at 4:22 AM, Burton, Ross <ross.burton@intel.com> wrote:
>
> On 25 February 2015 at 18:14, Benjamin Esquivel
> <benjamin.esquivel@linux.intel.com> wrote:
>>
>> Saul, is there a specific part of the glibc's run.do_configure that
>> should re-conf?
>
>
> The glibc recipe explicitly avoids autoreconfig:
>
> "# override this function to avoid the autoconf/automake/aclocal/autoheader
> calls for now"

it is intentional since glibc would use older versions of autotools.
2.21 should be using 2.69, so in theory we
can reconf, but this needs to be tested thoroughly.

>
> Khem is the person to ask if this is something that can be removed but for
> now, patching the configure is all we can do (and sending the patch upstream
> so we don't need to patch configure in the future).
>
> Ross


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-23  9:54 [PATCH] glibc: 'yes' within the path sets wrong variables Benjamin Esquivel
  2015-02-24 19:40 ` Saul Wold
@ 2015-02-26 16:18 ` Khem Raj
  2015-03-02 16:10   ` Benjamin Esquivel
  1 sibling, 1 reply; 12+ messages in thread
From: Khem Raj @ 2015-02-26 16:18 UTC (permalink / raw)
  To: Benjamin Esquivel; +Cc: Patches and discussions about the oe-core layer

On Mon, Feb 23, 2015 at 1:54 AM, Benjamin Esquivel
<benjamin.esquivel@linux.intel.com> wrote:
> The pre-processed output of conftest.c contains an include dir
> and if the path of it contains a 'yes' it will cause some variables
> to be wrongly set to yes because of the way it greps for it.
> The fix is to use a more elaborated string instead of just 'yes'.
> This has to be done at the configure and the configure.ac files,
> normally it would only require the configure.ac changes but they
> also need modification given the configure files also pop-out of
> the source tarball.
>
> [YOCTO #6614]

looks good. Mark it upstreamable, and send it to glibc ml as well.

>
> Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
> ---
>  meta/recipes-core/glibc/glibc/fix-yesdir.patch | 230 +++++++++++++++++++++++++
>  meta/recipes-core/glibc/glibc_2.21.bb          |   1 +
>  2 files changed, 231 insertions(+)
>  create mode 100644 meta/recipes-core/glibc/glibc/fix-yesdir.patch
>
> diff --git a/meta/recipes-core/glibc/glibc/fix-yesdir.patch b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> new file mode 100644
> index 0000000..4d014c0
> --- /dev/null
> +++ b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> @@ -0,0 +1,230 @@
> +Index: git/sysdeps/arm/configure
> +===================================================================
> +--- git.orig/sysdeps/arm/configure
> ++++ git/sysdeps/arm/configure
> +@@ -150,12 +150,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef __ARM_PCS_VFP
> +-                    yes
> ++                    use_arm_pcs_vfp
> +                    #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
> +   libc_cv_arm_pcs_vfp=yes
> + else
> +   libc_cv_arm_pcs_vfp=no
> +Index: git/sysdeps/arm/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/arm/configure.ac
> ++++ git/sysdeps/arm/configure.ac
> +@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
> + # the dynamic linker via %ifdef.
> + AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
> +   [libc_cv_arm_pcs_vfp],
> +-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
> +-                    yes
> ++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
> ++                    use_arm_pcs_vfp
> +                    #endif
> +   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
> + if test $libc_cv_arm_pcs_vfp = yes; then
> +Index: git/sysdeps/aarch64/configure
> +===================================================================
> +--- git.orig/sysdeps/aarch64/configure
> ++++ git/sysdeps/aarch64/configure
> +@@ -148,12 +148,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef __AARCH64EB__
> +-                      yes
> ++                      is_aarch64_be
> +                      #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
> +   libc_cv_aarch64_be=yes
> + else
> +   libc_cv_aarch64_be=no
> +Index: git/sysdeps/aarch64/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/aarch64/configure.ac
> ++++ git/sysdeps/aarch64/configure.ac
> +@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> + # the dynamic linker via %ifdef.
> + AC_CACHE_CHECK([for big endian],
> +   [libc_cv_aarch64_be],
> +-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
> +-                      yes
> ++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
> ++                      is_aarch64_be
> +                      #endif
> +   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
> + if test $libc_cv_aarch64_be = yes; then
> +Index: git/sysdeps/mips/configure
> +===================================================================
> +--- git.orig/sysdeps/mips/configure
> ++++ git/sysdeps/mips/configure
> +@@ -143,11 +143,11 @@ else
> + /* end confdefs.h.  */
> + dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> +   libc_cv_mips_nan2008=yes
> + else
> +   libc_cv_mips_nan2008=no
> +Index: git/sysdeps/mips/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/mips/configure.ac
> ++++ git/sysdeps/mips/configure.ac
> +@@ -6,9 +6,9 @@ dnl position independent way.
> + dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
> +
> + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> + if test x$libc_cv_mips_nan2008 = xyes; then
> +   AC_DEFINE(HAVE_MIPS_NAN2008)
> +Index: git/sysdeps/nios2/configure
> +===================================================================
> +--- git.orig/sysdeps/nios2/configure
> ++++ git/sysdeps/nios2/configure
> +@@ -142,12 +142,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef __nios2_big_endian__
> +-                      yes
> ++                      is_nios2_be
> +                      #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
> +   libc_cv_nios2_be=yes
> + else
> +   libc_cv_nios2_be=no
> +Index: git/sysdeps/nios2/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/nios2/configure.ac
> ++++ git/sysdeps/nios2/configure.ac
> +@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> + # Nios II big endian is not yet supported.
> + AC_CACHE_CHECK([for big endian],
> +   [libc_cv_nios2_be],
> +-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
> +-                      yes
> ++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
> ++                      is_nios2_be
> +                      #endif
> +   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
> + if test $libc_cv_nios2_be = yes; then
> +Index: git/sysdeps/unix/sysv/linux/mips/configure
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/mips/configure
> ++++ git/sysdeps/unix/sysv/linux/mips/configure
> +@@ -387,11 +387,11 @@ else
> + /* end confdefs.h.  */
> + dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> +   libc_cv_mips_nan2008=yes
> + else
> +   libc_cv_mips_nan2008=no
> +Index: git/sysdeps/unix/sysv/linux/mips/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/mips/configure.ac
> ++++ git/sysdeps/unix/sysv/linux/mips/configure.ac
> +@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
> + LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
> +
> + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> + #ifdef __mips_nan2008
> +-yes
> ++use_mips_nan2008
> + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> +
> + libc_mips_nan=
> +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> +@@ -155,12 +155,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #if _CALL_ELF == 2
> +-                      yes
> ++                      use_ppc_elfv2_abi
> +                      #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
> +   libc_cv_ppc64_elfv2_abi=yes
> + else
> +   libc_cv_ppc64_elfv2_abi=no
> +@@ -188,12 +188,12 @@ else
> +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #ifdef _CALL_ELF
> +-                         yes
> ++                         is_def_call_elf
> +                        #endif
> +
> + _ACEOF
> + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> +-  $EGREP "yes" >/dev/null 2>&1; then :
> ++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
> +   libc_cv_ppc64_def_call_elf=yes
> + else
> +   libc_cv_ppc64_def_call_elf=no
> +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> +===================================================================
> +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> +@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
> + # Define default-abi according to compiler flags.
> + AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
> +   [libc_cv_ppc64_elfv2_abi],
> +-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
> +-                      yes
> ++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
> ++                      use_ppc_elfv2_abi
> +                      #endif
> +   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
> + if test $libc_cv_ppc64_elfv2_abi = yes; then
> +@@ -19,8 +19,8 @@ else
> +   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
> +   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
> +     [libc_cv_ppc64_def_call_elf],
> +-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
> +-                         yes
> ++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
> ++                         is_def_call_elf
> +                        #endif
> +     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
> +   if test $libc_cv_ppc64_def_call_elf = no; then
> diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
> index 1ef494b..d7aab4b 100644
> --- a/meta/recipes-core/glibc/glibc_2.21.bb
> +++ b/meta/recipes-core/glibc/glibc_2.21.bb
> @@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
>             file://fix_am_rootsbindir.patch \
>             file://0001-Add-unused-attribute.patch \
>             file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
> +           file://fix-yesdir.patch \
>             ${EGLIBCPATCHES} \
>            "
>  EGLIBCPATCHES = "\
> --
> 1.8.4.5
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [meta-oe][PATCH v2] glibc: 'yes' within the path sets wrong variables
  2015-02-26 16:17           ` Khem Raj
@ 2015-03-02 16:02             ` Benjamin Esquivel
  2015-03-05  8:17               ` [PATCH v3] " Benjamin Esquivel
  2015-03-02 16:09             ` [PATCH] " Benjamin Esquivel
  1 sibling, 1 reply; 12+ messages in thread
From: Benjamin Esquivel @ 2015-03-02 16:02 UTC (permalink / raw)
  To: openembedded-core; +Cc: , , raj.khem

The pre-processed output of conftest.c contains an include dir
and if the path of it contains a 'yes' it will cause some variables
to be wrongly set to yes because of the way it greps for it.
The fix is to use a more elaborated string instead of just 'yes'.
This has to be done at the configure and the configure.ac files,
normally it would only require the configure.ac changes but they
also need modification given the configure files also pop-out of
the source tarball.

[YOCTO #6614]

Upstream Status: Submitted

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
---
 meta/recipes-core/glibc/glibc/fix-yesdir.patch | 230 +++++++++++++++++++++++++
 meta/recipes-core/glibc/glibc_2.21.bb          |   1 +
 2 files changed, 231 insertions(+)
 create mode 100644 meta/recipes-core/glibc/glibc/fix-yesdir.patch

diff --git a/meta/recipes-core/glibc/glibc/fix-yesdir.patch b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
new file mode 100644
index 0000000..4d014c0
--- /dev/null
+++ b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
@@ -0,0 +1,230 @@
+Index: git/sysdeps/arm/configure
+===================================================================
+--- git.orig/sysdeps/arm/configure
++++ git/sysdeps/arm/configure
+@@ -150,12 +150,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __ARM_PCS_VFP
+-		      yes
++		      use_arm_pcs_vfp
+ 		     #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
+   libc_cv_arm_pcs_vfp=yes
+ else
+   libc_cv_arm_pcs_vfp=no
+Index: git/sysdeps/arm/configure.ac
+===================================================================
+--- git.orig/sysdeps/arm/configure.ac
++++ git/sysdeps/arm/configure.ac
+@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
+ # the dynamic linker via %ifdef.
+ AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
+   [libc_cv_arm_pcs_vfp],
+-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
+-		      yes
++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
++		      use_arm_pcs_vfp
+ 		     #endif
+   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
+ if test $libc_cv_arm_pcs_vfp = yes; then
+Index: git/sysdeps/aarch64/configure
+===================================================================
+--- git.orig/sysdeps/aarch64/configure
++++ git/sysdeps/aarch64/configure
+@@ -148,12 +148,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __AARCH64EB__
+-                      yes
++                      is_aarch64_be
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
+   libc_cv_aarch64_be=yes
+ else
+   libc_cv_aarch64_be=no
+Index: git/sysdeps/aarch64/configure.ac
+===================================================================
+--- git.orig/sysdeps/aarch64/configure.ac
++++ git/sysdeps/aarch64/configure.ac
+@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
+ # the dynamic linker via %ifdef.
+ AC_CACHE_CHECK([for big endian],
+   [libc_cv_aarch64_be],
+-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
+-                      yes
++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
++                      is_aarch64_be
+                      #endif
+   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
+ if test $libc_cv_aarch64_be = yes; then
+Index: git/sysdeps/mips/configure
+===================================================================
+--- git.orig/sysdeps/mips/configure
++++ git/sysdeps/mips/configure
+@@ -143,11 +143,11 @@ else
+ /* end confdefs.h.  */
+ dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
+   libc_cv_mips_nan2008=yes
+ else
+   libc_cv_mips_nan2008=no
+Index: git/sysdeps/mips/configure.ac
+===================================================================
+--- git.orig/sysdeps/mips/configure.ac
++++ git/sysdeps/mips/configure.ac
+@@ -6,9 +6,9 @@ dnl position independent way.
+ dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
+ 
+ AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+ if test x$libc_cv_mips_nan2008 = xyes; then
+   AC_DEFINE(HAVE_MIPS_NAN2008)
+Index: git/sysdeps/nios2/configure
+===================================================================
+--- git.orig/sysdeps/nios2/configure
++++ git/sysdeps/nios2/configure
+@@ -142,12 +142,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __nios2_big_endian__
+-                      yes
++                      is_nios2_be
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
+   libc_cv_nios2_be=yes
+ else
+   libc_cv_nios2_be=no
+Index: git/sysdeps/nios2/configure.ac
+===================================================================
+--- git.orig/sysdeps/nios2/configure.ac
++++ git/sysdeps/nios2/configure.ac
+@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
+ # Nios II big endian is not yet supported.
+ AC_CACHE_CHECK([for big endian],
+   [libc_cv_nios2_be],
+-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
+-                      yes
++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
++                      is_nios2_be
+                      #endif
+   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
+ if test $libc_cv_nios2_be = yes; then
+Index: git/sysdeps/unix/sysv/linux/mips/configure
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/mips/configure
++++ git/sysdeps/unix/sysv/linux/mips/configure
+@@ -387,11 +387,11 @@ else
+ /* end confdefs.h.  */
+ dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
+   libc_cv_mips_nan2008=yes
+ else
+   libc_cv_mips_nan2008=no
+Index: git/sysdeps/unix/sysv/linux/mips/configure.ac
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/mips/configure.ac
++++ git/sysdeps/unix/sysv/linux/mips/configure.ac
+@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
+ LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
+ 
+ AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+ 
+ libc_mips_nan=
+Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
+@@ -155,12 +155,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #if _CALL_ELF == 2
+-                      yes
++                      use_ppc_elfv2_abi
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
+   libc_cv_ppc64_elfv2_abi=yes
+ else
+   libc_cv_ppc64_elfv2_abi=no
+@@ -188,12 +188,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef _CALL_ELF
+-                         yes
++                         is_def_call_elf
+                        #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
+   libc_cv_ppc64_def_call_elf=yes
+ else
+   libc_cv_ppc64_def_call_elf=no
+Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
+===================================================================
+--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
+@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
+ # Define default-abi according to compiler flags.
+ AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
+   [libc_cv_ppc64_elfv2_abi],
+-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
+-                      yes
++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
++                      use_ppc_elfv2_abi
+                      #endif
+   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
+ if test $libc_cv_ppc64_elfv2_abi = yes; then
+@@ -19,8 +19,8 @@ else
+   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
+   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
+     [libc_cv_ppc64_def_call_elf],
+-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
+-                         yes
++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
++                         is_def_call_elf
+                        #endif
+     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
+   if test $libc_cv_ppc64_def_call_elf = no; then
diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
index 1ef494b..d7aab4b 100644
--- a/meta/recipes-core/glibc/glibc_2.21.bb
+++ b/meta/recipes-core/glibc/glibc_2.21.bb
@@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
            file://fix_am_rootsbindir.patch \
            file://0001-Add-unused-attribute.patch \
            file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
+           file://fix-yesdir.patch \
            ${EGLIBCPATCHES} \
           "
 EGLIBCPATCHES = "\
-- 
1.8.4.5



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-26 16:17           ` Khem Raj
  2015-03-02 16:02             ` [meta-oe][PATCH v2] " Benjamin Esquivel
@ 2015-03-02 16:09             ` Benjamin Esquivel
  1 sibling, 0 replies; 12+ messages in thread
From: Benjamin Esquivel @ 2015-03-02 16:09 UTC (permalink / raw)
  To: Khem Raj; +Cc: OE-core

On Thu, 2015-02-26 at 08:17 -0800, Khem Raj wrote:
> On Thu, Feb 26, 2015 at 4:22 AM, Burton, Ross <ross.burton@intel.com> wrote:
> >
> > On 25 February 2015 at 18:14, Benjamin Esquivel
> > <benjamin.esquivel@linux.intel.com> wrote:
> >>
> >> Saul, is there a specific part of the glibc's run.do_configure that
> >> should re-conf?
> >
> >
> > The glibc recipe explicitly avoids autoreconfig:
> >
> > "# override this function to avoid the autoconf/automake/aclocal/autoheader
> > calls for now"
> 
> it is intentional since glibc would use older versions of autotools.
> 2.21 should be using 2.69, so in theory we
> can reconf, but this needs to be tested thoroughly.

Indeed it starts bleeding all over with failures if a reconf is
attempted. I'll stick to the bug fix for now.

> 
> >
> > Khem is the person to ask if this is something that can be removed but for
> > now, patching the configure is all we can do (and sending the patch upstream
> > so we don't need to patch configure in the future).
> >
> > Ross




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] glibc: 'yes' within the path sets wrong variables
  2015-02-26 16:18 ` Khem Raj
@ 2015-03-02 16:10   ` Benjamin Esquivel
  0 siblings, 0 replies; 12+ messages in thread
From: Benjamin Esquivel @ 2015-03-02 16:10 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Thu, 2015-02-26 at 08:18 -0800, Khem Raj wrote:
> On Mon, Feb 23, 2015 at 1:54 AM, Benjamin Esquivel
> <benjamin.esquivel@linux.intel.com> wrote:
> > The pre-processed output of conftest.c contains an include dir
> > and if the path of it contains a 'yes' it will cause some variables
> > to be wrongly set to yes because of the way it greps for it.
> > The fix is to use a more elaborated string instead of just 'yes'.
> > This has to be done at the configure and the configure.ac files,
> > normally it would only require the configure.ac changes but they
> > also need modification given the configure files also pop-out of
> > the source tarball.
> >
> > [YOCTO #6614]
> 
> looks good. Mark it upstreamable, and send it to glibc ml as well.
> 

will do

> >
> > Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
> > ---
> >  meta/recipes-core/glibc/glibc/fix-yesdir.patch | 230 +++++++++++++++++++++++++
> >  meta/recipes-core/glibc/glibc_2.21.bb          |   1 +
> >  2 files changed, 231 insertions(+)
> >  create mode 100644 meta/recipes-core/glibc/glibc/fix-yesdir.patch
> >
> > diff --git a/meta/recipes-core/glibc/glibc/fix-yesdir.patch b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> > new file mode 100644
> > index 0000000..4d014c0
> > --- /dev/null
> > +++ b/meta/recipes-core/glibc/glibc/fix-yesdir.patch
> > @@ -0,0 +1,230 @@
> > +Index: git/sysdeps/arm/configure
> > +===================================================================
> > +--- git.orig/sysdeps/arm/configure
> > ++++ git/sysdeps/arm/configure
> > +@@ -150,12 +150,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef __ARM_PCS_VFP
> > +-                    yes
> > ++                    use_arm_pcs_vfp
> > +                    #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
> > +   libc_cv_arm_pcs_vfp=yes
> > + else
> > +   libc_cv_arm_pcs_vfp=no
> > +Index: git/sysdeps/arm/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/arm/configure.ac
> > ++++ git/sysdeps/arm/configure.ac
> > +@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
> > + # the dynamic linker via %ifdef.
> > + AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
> > +   [libc_cv_arm_pcs_vfp],
> > +-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
> > +-                    yes
> > ++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
> > ++                    use_arm_pcs_vfp
> > +                    #endif
> > +   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
> > + if test $libc_cv_arm_pcs_vfp = yes; then
> > +Index: git/sysdeps/aarch64/configure
> > +===================================================================
> > +--- git.orig/sysdeps/aarch64/configure
> > ++++ git/sysdeps/aarch64/configure
> > +@@ -148,12 +148,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef __AARCH64EB__
> > +-                      yes
> > ++                      is_aarch64_be
> > +                      #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
> > +   libc_cv_aarch64_be=yes
> > + else
> > +   libc_cv_aarch64_be=no
> > +Index: git/sysdeps/aarch64/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/aarch64/configure.ac
> > ++++ git/sysdeps/aarch64/configure.ac
> > +@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> > + # the dynamic linker via %ifdef.
> > + AC_CACHE_CHECK([for big endian],
> > +   [libc_cv_aarch64_be],
> > +-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
> > +-                      yes
> > ++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
> > ++                      is_aarch64_be
> > +                      #endif
> > +   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
> > + if test $libc_cv_aarch64_be = yes; then
> > +Index: git/sysdeps/mips/configure
> > +===================================================================
> > +--- git.orig/sysdeps/mips/configure
> > ++++ git/sysdeps/mips/configure
> > +@@ -143,11 +143,11 @@ else
> > + /* end confdefs.h.  */
> > + dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> > +   libc_cv_mips_nan2008=yes
> > + else
> > +   libc_cv_mips_nan2008=no
> > +Index: git/sysdeps/mips/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/mips/configure.ac
> > ++++ git/sysdeps/mips/configure.ac
> > +@@ -6,9 +6,9 @@ dnl position independent way.
> > + dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
> > +
> > + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> > +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> > ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> > + if test x$libc_cv_mips_nan2008 = xyes; then
> > +   AC_DEFINE(HAVE_MIPS_NAN2008)
> > +Index: git/sysdeps/nios2/configure
> > +===================================================================
> > +--- git.orig/sysdeps/nios2/configure
> > ++++ git/sysdeps/nios2/configure
> > +@@ -142,12 +142,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef __nios2_big_endian__
> > +-                      yes
> > ++                      is_nios2_be
> > +                      #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
> > +   libc_cv_nios2_be=yes
> > + else
> > +   libc_cv_nios2_be=no
> > +Index: git/sysdeps/nios2/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/nios2/configure.ac
> > ++++ git/sysdeps/nios2/configure.ac
> > +@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the
> > + # Nios II big endian is not yet supported.
> > + AC_CACHE_CHECK([for big endian],
> > +   [libc_cv_nios2_be],
> > +-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
> > +-                      yes
> > ++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
> > ++                      is_nios2_be
> > +                      #endif
> > +   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
> > + if test $libc_cv_nios2_be = yes; then
> > +Index: git/sysdeps/unix/sysv/linux/mips/configure
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/mips/configure
> > ++++ git/sysdeps/unix/sysv/linux/mips/configure
> > +@@ -387,11 +387,11 @@ else
> > + /* end confdefs.h.  */
> > + dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
> > +   libc_cv_mips_nan2008=yes
> > + else
> > +   libc_cv_mips_nan2008=no
> > +Index: git/sysdeps/unix/sysv/linux/mips/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/mips/configure.ac
> > ++++ git/sysdeps/unix/sysv/linux/mips/configure.ac
> > +@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
> > + LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
> > +
> > + AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
> > +-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
> > ++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
> > + #ifdef __mips_nan2008
> > +-yes
> > ++use_mips_nan2008
> > + #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
> > +
> > + libc_mips_nan=
> > +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> > ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
> > +@@ -155,12 +155,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #if _CALL_ELF == 2
> > +-                      yes
> > ++                      use_ppc_elfv2_abi
> > +                      #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
> > +   libc_cv_ppc64_elfv2_abi=yes
> > + else
> > +   libc_cv_ppc64_elfv2_abi=no
> > +@@ -188,12 +188,12 @@ else
> > +   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> > + /* end confdefs.h.  */
> > + #ifdef _CALL_ELF
> > +-                         yes
> > ++                         is_def_call_elf
> > +                        #endif
> > +
> > + _ACEOF
> > + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
> > +-  $EGREP "yes" >/dev/null 2>&1; then :
> > ++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
> > +   libc_cv_ppc64_def_call_elf=yes
> > + else
> > +   libc_cv_ppc64_def_call_elf=no
> > +Index: git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> > +===================================================================
> > +--- git.orig/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> > ++++ git/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
> > +@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
> > + # Define default-abi according to compiler flags.
> > + AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
> > +   [libc_cv_ppc64_elfv2_abi],
> > +-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
> > +-                      yes
> > ++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
> > ++                      use_ppc_elfv2_abi
> > +                      #endif
> > +   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
> > + if test $libc_cv_ppc64_elfv2_abi = yes; then
> > +@@ -19,8 +19,8 @@ else
> > +   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
> > +   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
> > +     [libc_cv_ppc64_def_call_elf],
> > +-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
> > +-                         yes
> > ++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
> > ++                         is_def_call_elf
> > +                        #endif
> > +     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
> > +   if test $libc_cv_ppc64_def_call_elf = no; then
> > diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
> > index 1ef494b..d7aab4b 100644
> > --- a/meta/recipes-core/glibc/glibc_2.21.bb
> > +++ b/meta/recipes-core/glibc/glibc_2.21.bb
> > @@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
> >             file://fix_am_rootsbindir.patch \
> >             file://0001-Add-unused-attribute.patch \
> >             file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
> > +           file://fix-yesdir.patch \
> >             ${EGLIBCPATCHES} \
> >            "
> >  EGLIBCPATCHES = "\
> > --
> > 1.8.4.5
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core




^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v3] glibc: 'yes' within the path sets wrong variables
  2015-03-02 16:02             ` [meta-oe][PATCH v2] " Benjamin Esquivel
@ 2015-03-05  8:17               ` Benjamin Esquivel
  0 siblings, 0 replies; 12+ messages in thread
From: Benjamin Esquivel @ 2015-03-05  8:17 UTC (permalink / raw)
  To: openembedded-core

The AC_EGREP_CPP macro is looking for a 'yes' string that is likely
to be found in the path where the file is stored. This false positive
match causes variables to be mistakenly set.

The fix is to use a more elaborated string instead.

This has to be done at the configure and the configure.ac files, because
a reconfigure does not happen in the regular build flow.

[YOCTO #6614]

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
---
 ...thin-the-path-sets-wrong-config-variables.patch | 245 +++++++++++++++++++++
 meta/recipes-core/glibc/glibc_2.21.bb              |   1 +
 2 files changed, 246 insertions(+)
 create mode 100644 meta/recipes-core/glibc/glibc/0001-yes-within-the-path-sets-wrong-config-variables.patch

diff --git a/meta/recipes-core/glibc/glibc/0001-yes-within-the-path-sets-wrong-config-variables.patch b/meta/recipes-core/glibc/glibc/0001-yes-within-the-path-sets-wrong-config-variables.patch
new file mode 100644
index 0000000..827e980
--- /dev/null
+++ b/meta/recipes-core/glibc/glibc/0001-yes-within-the-path-sets-wrong-config-variables.patch
@@ -0,0 +1,245 @@
+'yes' within the path sets wrong config variables
+
+It seems that the 'AC_EGREP_CPP(yes...' example is quite popular
+but being such a short word to grep it is likely to produce
+false-positive matches with the path it is configured into.
+
+The change is to use a more elaborated string to grep for.
+
+Upstream-Status: Submitted [libc-alpha@sourceware.org]
+
+Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
+---
+diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure
+index 5bd355a..3bc5537 100644
+--- a/sysdeps/aarch64/configure
++++ b/sysdeps/aarch64/configure
+@@ -148,12 +148,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __AARCH64EB__
+-                      yes
++                      is_aarch64_be
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_aarch64_be" >/dev/null 2>&1; then :
+   libc_cv_aarch64_be=yes
+ else
+   libc_cv_aarch64_be=no
+diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac
+index 7851dd4..6e92381 100644
+--- a/sysdeps/aarch64/configure.ac
++++ b/sysdeps/aarch64/configure.ac
+@@ -10,8 +10,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+ # the dynamic linker via %ifdef.
+ AC_CACHE_CHECK([for big endian],
+   [libc_cv_aarch64_be],
+-  [AC_EGREP_CPP(yes,[#ifdef __AARCH64EB__
+-                      yes
++  [AC_EGREP_CPP(is_aarch64_be,[#ifdef __AARCH64EB__
++                      is_aarch64_be
+                      #endif
+   ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
+ if test $libc_cv_aarch64_be = yes; then
+diff --git a/sysdeps/arm/configure b/sysdeps/arm/configure
+index 45667cc..0b2ef11 100644
+--- a/sysdeps/arm/configure
++++ b/sysdeps/arm/configure
+@@ -150,12 +150,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __ARM_PCS_VFP
+-		      yes
++		      use_arm_pcs_vfp
+ 		     #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_arm_pcs_vfp" >/dev/null 2>&1; then :
+   libc_cv_arm_pcs_vfp=yes
+ else
+   libc_cv_arm_pcs_vfp=no
+diff --git a/sysdeps/arm/configure.ac b/sysdeps/arm/configure.ac
+index 002b8ef..e1746a7 100644
+--- a/sysdeps/arm/configure.ac
++++ b/sysdeps/arm/configure.ac
+@@ -16,8 +16,8 @@ dnl it.  Until we do, don't define it.
+ # the dynamic linker via %ifdef.
+ AC_CACHE_CHECK([whether the compiler is using the ARM hard-float ABI],
+   [libc_cv_arm_pcs_vfp],
+-  [AC_EGREP_CPP(yes,[#ifdef __ARM_PCS_VFP
+-		      yes
++  [AC_EGREP_CPP(use_arm_pcs_vfp,[#ifdef __ARM_PCS_VFP
++		      use_arm_pcs_vfp
+ 		     #endif
+   ], libc_cv_arm_pcs_vfp=yes, libc_cv_arm_pcs_vfp=no)])
+ if test $libc_cv_arm_pcs_vfp = yes; then
+diff --git a/sysdeps/mips/configure b/sysdeps/mips/configure
+index 4e13248..f14af95 100644
+--- a/sysdeps/mips/configure
++++ b/sysdeps/mips/configure
+@@ -143,11 +143,11 @@ else
+ /* end confdefs.h.  */
+ dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
+   libc_cv_mips_nan2008=yes
+ else
+   libc_cv_mips_nan2008=no
+diff --git a/sysdeps/mips/configure.ac b/sysdeps/mips/configure.ac
+index bcbdaff..ad3057f 100644
+--- a/sysdeps/mips/configure.ac
++++ b/sysdeps/mips/configure.ac
+@@ -6,9 +6,9 @@ dnl position independent way.
+ dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
+ 
+ AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+ if test x$libc_cv_mips_nan2008 = xyes; then
+   AC_DEFINE(HAVE_MIPS_NAN2008)
+diff --git a/sysdeps/nios2/configure b/sysdeps/nios2/configure
+index 14c8a3a..dde3814 100644
+--- a/sysdeps/nios2/configure
++++ b/sysdeps/nios2/configure
+@@ -142,12 +142,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef __nios2_big_endian__
+-                      yes
++                      is_nios2_be
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_nios2_be" >/dev/null 2>&1; then :
+   libc_cv_nios2_be=yes
+ else
+   libc_cv_nios2_be=no
+diff --git a/sysdeps/nios2/configure.ac b/sysdeps/nios2/configure.ac
+index f05f438..dc86399 100644
+--- a/sysdeps/nios2/configure.ac
++++ b/sysdeps/nios2/configure.ac
+@@ -4,8 +4,8 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+ # Nios II big endian is not yet supported.
+ AC_CACHE_CHECK([for big endian],
+   [libc_cv_nios2_be],
+-  [AC_EGREP_CPP(yes,[#ifdef __nios2_big_endian__
+-                      yes
++  [AC_EGREP_CPP(is_nios2_be,[#ifdef __nios2_big_endian__
++                      is_nios2_be
+                      #endif
+   ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
+ if test $libc_cv_nios2_be = yes; then
+diff --git a/sysdeps/unix/sysv/linux/mips/configure b/sysdeps/unix/sysv/linux/mips/configure
+index 83f8b13..2b6cbee 100644
+--- a/sysdeps/unix/sysv/linux/mips/configure
++++ b/sysdeps/unix/sysv/linux/mips/configure
+@@ -387,11 +387,11 @@ else
+ /* end confdefs.h.  */
+ dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_mips_nan2008" >/dev/null 2>&1; then :
+   libc_cv_mips_nan2008=yes
+ else
+   libc_cv_mips_nan2008=no
+diff --git a/sysdeps/unix/sysv/linux/mips/configure.ac b/sysdeps/unix/sysv/linux/mips/configure.ac
+index 5039ec9..1035f76 100644
+--- a/sysdeps/unix/sysv/linux/mips/configure.ac
++++ b/sysdeps/unix/sysv/linux/mips/configure.ac
+@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
+ LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
+ 
+ AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+-  libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
++  libc_cv_mips_nan2008, [AC_EGREP_CPP(use_mips_nan2008, [dnl
+ #ifdef __mips_nan2008
+-yes
++use_mips_nan2008
+ #endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+ 
+ libc_mips_nan=
+diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
+index 70bb18a..ffd9e3e 100644
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
+@@ -155,12 +155,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #if _CALL_ELF == 2
+-                      yes
++                      use_ppc_elfv2_abi
+                      #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "use_ppc_elfv2_abi" >/dev/null 2>&1; then :
+   libc_cv_ppc64_elfv2_abi=yes
+ else
+   libc_cv_ppc64_elfv2_abi=no
+@@ -188,12 +188,12 @@ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #ifdef _CALL_ELF
+-                         yes
++                         is_def_call_elf
+                        #endif
+ 
+ _ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  $EGREP "yes" >/dev/null 2>&1; then :
++  $EGREP "is_def_call_elf" >/dev/null 2>&1; then :
+   libc_cv_ppc64_def_call_elf=yes
+ else
+   libc_cv_ppc64_def_call_elf=no
+diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
+index 0822915..9a32fdd 100644
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
+@@ -6,8 +6,8 @@ LIBC_SLIBDIR_RTLDDIR([lib64], [lib64])
+ # Define default-abi according to compiler flags.
+ AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
+   [libc_cv_ppc64_elfv2_abi],
+-  [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
+-                      yes
++  [AC_EGREP_CPP(use_ppc_elfv2_abi,[#if _CALL_ELF == 2
++                      use_ppc_elfv2_abi
+                      #endif
+   ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
+ if test $libc_cv_ppc64_elfv2_abi = yes; then
+@@ -19,8 +19,8 @@ else
+   # Compiler that do not support ELFv2 ABI does not define _CALL_ELF
+   AC_CACHE_CHECK([whether the compiler defines _CALL_ELF],
+     [libc_cv_ppc64_def_call_elf],
+-    [AC_EGREP_CPP(yes,[#ifdef _CALL_ELF
+-                         yes
++    [AC_EGREP_CPP(is_def_call_elf,[#ifdef _CALL_ELF
++                         is_def_call_elf
+                        #endif
+     ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
+   if test $libc_cv_ppc64_def_call_elf = no; then
+-- 
+1.8.4.5
+
diff --git a/meta/recipes-core/glibc/glibc_2.21.bb b/meta/recipes-core/glibc/glibc_2.21.bb
index 1ef494b..6a9e482 100644
--- a/meta/recipes-core/glibc/glibc_2.21.bb
+++ b/meta/recipes-core/glibc/glibc_2.21.bb
@@ -24,6 +24,7 @@ SRC_URI = "git://sourceware.org/git/glibc.git;branch=${BRANCH} \
            file://fix_am_rootsbindir.patch \
            file://0001-Add-unused-attribute.patch \
            file://0001-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch \
+           file://0001-yes-within-the-path-sets-wrong-config-variables.patch \
            ${EGLIBCPATCHES} \
           "
 EGLIBCPATCHES = "\
-- 
1.8.4.5



^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2015-03-05 16:23 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-23  9:54 [PATCH] glibc: 'yes' within the path sets wrong variables Benjamin Esquivel
2015-02-24 19:40 ` Saul Wold
2015-02-24 22:17   ` Benjamin Esquivel
2015-02-25 12:23     ` Burton, Ross
2015-02-25 18:14       ` Benjamin Esquivel
2015-02-26 12:22         ` Burton, Ross
2015-02-26 16:17           ` Khem Raj
2015-03-02 16:02             ` [meta-oe][PATCH v2] " Benjamin Esquivel
2015-03-05  8:17               ` [PATCH v3] " Benjamin Esquivel
2015-03-02 16:09             ` [PATCH] " Benjamin Esquivel
2015-02-26 16:18 ` Khem Raj
2015-03-02 16:10   ` Benjamin Esquivel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.