[OE-core] [PATCH 26/46] perl_5.12.2.bb: By defualt undefine features not found in uclibc

Richard Purdie richard.purdie at linuxfoundation.org
Mon Apr 4 12:36:32 UTC 2011


On Thu, 2011-03-31 at 21:29 -0700, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem at gmail.com>
> ---
>  meta/recipes-devtools/perl/perl-5.12.2/config.sh |   14 +++++++-------
>  meta/recipes-devtools/perl/perl_5.12.2.bb        |   10 ++++++++++
>  2 files changed, 17 insertions(+), 7 deletions(-)
> 
> diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh b/meta/recipes-devtools/perl/perl-5.12.2/config.sh
> index 12d44a8..77067e1 100644
> --- a/meta/recipes-devtools/perl/perl-5.12.2/config.sh
> +++ b/meta/recipes-devtools/perl/perl-5.12.2/config.sh
> @@ -87,7 +87,7 @@ cat='cat'
>  cc='gcc'
>  cccdlflags='-fPIC'
>  ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.12.2/@ARCH at -thread-multi/CORE'
> -ccflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
> +ccflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
>  ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
>  ccname='gcc'
>  ccsymbols=''
> @@ -108,7 +108,7 @@ cpio=''
>  cpp='cpp'
>  cpp_stuff='42'
>  cppccsymbols=''
> -cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector'
> +cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe'
>  cpplast='-'
>  cppminus='-'
>  cpprun='gcc -E'

This looks like a sign that we should be putting our cc flags into here
then stack-protector is either used or not used as per the global
configuration.

> @@ -194,7 +194,7 @@ d_dosuid='undef'
>  d_drand48_r='define'
>  d_drand48proto='define'
>  d_dup2='define'
> -d_eaccess='define'
> +d_eaccess='undef'
>  d_endgrent='define'
>  d_endgrent_r='undef'
>  d_endhent='define'
> @@ -490,12 +490,12 @@ d_statfs_f_flags='undef'
>  d_statfs_s='define'
>  d_statvfs='define'
>  d_stdio_cnt_lval='undef'
> -d_stdio_ptr_lval='define'
> +d_stdio_ptr_lval='undef'
>  d_stdio_ptr_lval_nochange_cnt='undef'
> -d_stdio_ptr_lval_sets_cnt='define'
> +d_stdio_ptr_lval_sets_cnt='undef'
>  d_stdio_stream_array='undef'
> -d_stdiobase='define'
> -d_stdstdio='define'
> +d_stdiobase='undef'
> +d_stdstdio='undef'
>  d_strchr='define'
>  d_strcoll='define'
>  d_strctcpy='define'

What is the implications for a (e)glibc system of changing these?
Shouldn't these become a sed line like the target specific pieces below?

Cheers,

Richard


> diff --git a/meta/recipes-devtools/perl/perl_5.12.2.bb b/meta/recipes-devtools/perl/perl_5.12.2.bb
> index 184e1e7..0a6cf14 100644
> --- a/meta/recipes-devtools/perl/perl_5.12.2.bb
> +++ b/meta/recipes-devtools/perl/perl_5.12.2.bb
> @@ -145,6 +145,16 @@ do_configure() {
>  	       -e 's,/perl5,/perl,g' \
>              config.sh-${TARGET_ARCH}-${TARGET_OS}
>  
> +       case "${TARGET_ARCH}" in                                                                      
> +                x86_64 | powerpc | s390)                                                              
> +                        sed -i -e "s,\(need_va_copy=\)'undef',\1'define',g" \                         
> +                                config.sh-${TARGET_ARCH}-${TARGET_OS}                                 
> +                        ;;                                                                            
> +                arm)                                                                                  
> +                        sed -i -e "s,\(d_u32align=\)'undef',\1'define',g" \                           
> +                                config.sh-${TARGET_ARCH}-${TARGET_OS}                                 
> +                        ;;                                                                            
> +        esac                                                                                          
>          # These are strewn all over the source tree
>          for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":"` ; do
>              echo Fixing: $foo






More information about the Openembedded-core mailing list