Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Saul Wold <sgw@linux.intel.com>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Cc: Darren Hart <dvhart@linux.intel.com>, tom_rini@mentor.com
Subject: Re: [PATCH 1/1] ncurses: refactor configure to avoid configuring widec when disabled
Date: Wed, 09 Nov 2011 00:33:16 -0800	[thread overview]
Message-ID: <4EBA3ACC.3000907@linux.intel.com> (raw)
In-Reply-To: <6e5f3af0ae4f9f99f27bf2c909eef951599ff381.1320779076.git.dvhart@linux.intel.com>

On 11/08/2011 11:08 AM, Darren Hart wrote:
> The ENABLE_WIDEC variable can be used to disable ncurses wide character support
> when your C library doesn't support it. Currently, the do_configure step
> configures for both narrow and wide characters regardless and only checks
> ENABLE_WIDEC during compilation. This leads to QA failures with host
> contamination during configure if the C library doesn't support wide characters.
>
> Refactor do_configure with a new ncurses_configure helper function and only
> configure for wide character support if ENABLE_WIDEC is true.
>
> Ensure that configure errors are propogated back through to do_configure.
>
> Tested with ENABLE_WIDEC as true and false via an ncurses bbappend on i586,
> including basic error injection.
>
> Signed-off-by: Darren Hart<dvhart@linux.intel.com>
> ---
>   meta/recipes-core/ncurses/ncurses.inc |   64 +++++++++++++++++---------------
>   1 files changed, 34 insertions(+), 30 deletions(-)
>
> diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc
> index be7d387..d3a9b1c 100644
> --- a/meta/recipes-core/ncurses/ncurses.inc
> +++ b/meta/recipes-core/ncurses/ncurses.inc
> @@ -26,6 +26,36 @@ ENABLE_WIDEC = "true"
>   # builds.
>   BUILD_CPPFLAGS += "-D_GNU_SOURCE"
>
No PR Bump!

Sau!

> +# Helper function for do_configure to allow multiple configurations
> +# $1 the directory to run configure in
> +# $@ the arguments to pass to configure
> +ncurses_configure() {
> +	mkdir -p $1
> +	cd $1
> +	shift
> +	oe_runconf \
> +	        --disable-static \
> +	        --without-debug \
> +	        --without-ada \
> +	        --without-gpm \
> +	        --enable-hard-tabs \
> +	        --enable-xmc-glitch \
> +	        --enable-colorfgbg \
> +	        --with-termpath='${sysconfdir}/termcap:${datadir}/misc/termcap' \
> +	        --with-terminfo-dirs='${sysconfdir}/terminfo:${datadir}/terminfo' \
> +	        --with-shared \
> +	        --disable-big-core \
> +	        --program-prefix= \
> +	        --with-ticlib \
> +	        --with-termlib=tinfo \
> +	        --enable-sigwinch \
> +	        --enable-pc-files \
> +	        --disable-rpath-hack \
> +	        --with-manpage-format=normal \
> +	        "$@" || return 1
> +	cd ..
> +}
> +
>   # Override the function from the autotools class; ncurses requires a
>   # patched autoconf213 to generate the configure script. This autoconf
>   # is not available so that the shipped script will be used.
> @@ -35,36 +65,10 @@ do_configure() {
>           # not the case for /dev/null redirections)
>           export cf_cv_working_poll=yes
>
> -        for i in \
> -        'narrowc' \
> -        'widec   --enable-widec --without-progs'; do
> -                set -- $i
> -                mkdir -p $1
> -                cd $1
> -                shift
> -
> -                oe_runconf \
> -                        --disable-static \
> -                        --without-debug \
> -                        --without-ada \
> -                        --without-gpm \
> -                        --enable-hard-tabs \
> -                        --enable-xmc-glitch \
> -                        --enable-colorfgbg \
> -                        --with-termpath='${sysconfdir}/termcap:${datadir}/misc/termcap' \
> -                        --with-terminfo-dirs='${sysconfdir}/terminfo:${datadir}/terminfo' \
> -                        --with-shared \
> -                        --disable-big-core \
> -                        --program-prefix= \
> -                        --with-ticlib \
> -                        --with-termlib=tinfo \
> -                        --enable-sigwinch \
> -                        --enable-pc-files \
> -                        --disable-rpath-hack \
> -                        --with-manpage-format=normal \
> -                        "$@"
> -                cd ..
> -        done
> +	ncurses_configure "narrowc" || \
> +		return 1
> +	! ${ENABLE_WIDEC} || \
> +		ncurses_configure "widec" "--enable-widec" "--without-progs"
>   }
>
>   do_compile() {



  reply	other threads:[~2011-11-09  8:39 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-08 19:08 [PATCH 0/1] ncurses: refactor configure to avoid configuring widec when disabled Darren Hart
2011-11-08 19:08 ` [PATCH 1/1] " Darren Hart
2011-11-09  8:33   ` Saul Wold [this message]
2011-11-09 14:40     ` Darren Hart
2011-11-10 17:25 ` [PATCH 0/1] " Saul Wold

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4EBA3ACC.3000907@linux.intel.com \
    --to=sgw@linux.intel.com \
    --cc=dvhart@linux.intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=tom_rini@mentor.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox