Re: [PATCH] menuconfig: use config scripts to detect ncurses libs

From: Yann E. MORIN
Date: Thu Feb 28 2013 - 13:16:15 EST


Justin, All,

On Thursday 28 February 2013 jlec@xxxxxxxxxx wrote:
> When building ncurses with --with-termlib several symbols get moved from
> libncurses.so to libtinfo.so. Thus when linking with libncurses.so, one
> additionally needs to link with libtinfo.so. Ncurses provides a config script
> (ncurses5-config) to assist finding ncurses.
>
> This patch replaces the old heuristic for detection of ncurses libs for
> linking the ncurses menuconfig dialog by the use of the config scripts.
> This results in the requirement of ncurses version 5.6 or newer for menuconfig.

As you said, ncurses started bundling these files with ncurses-5.6,
which was released in 2006.

OTOH, RHEL4 is still a widely used distro, and was released in 2005,
so is using an ncurses older than 5.6, so I'm afraid we can't drop
the legacy code like that.

Of course, I'm no authority on the subject, so I'd suggest that you
split this patch in two, and re-submit:
- one patch to add usage of ncurses{w,}5-config;
- one patch to drop legacy code.

That way, it is easy to apply the *-config part, and get more people
involved in commenting the legacy drop without further delaying use
of the *-config scripts.

And, sorry, I should have been more explicit in my previous mail that
the legacy drop should be in its own patch. I thought that was obvious,
following the "one single change per patch" philosophy.

Thanks you! :-)

Regards,
Yann E. MORIN.

> Signed-off-by: Justin Lecher <jlec@xxxxxxxxxx>
> ---
> scripts/kconfig/lxdialog/check-lxdialog.sh | 11 ++---------
> 1 file changed, 2 insertions(+), 9 deletions(-)
>
> diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh b/scripts/kconfig/lxdialog/check-lxdialog.sh
> index c8e8a71..10df55b 100644
> --- a/scripts/kconfig/lxdialog/check-lxdialog.sh
> +++ b/scripts/kconfig/lxdialog/check-lxdialog.sh
> @@ -4,15 +4,8 @@
> # What library to link
> ldflags()
> {
> - for ext in so a dll.a dylib ; do
> - for lib in ncursesw ncurses curses ; do
> - $cc -print-file-name=lib${lib}.${ext} | grep -q /
> - if [ $? -eq 0 ]; then
> - echo "-l${lib}"
> - exit
> - fi
> - done
> - done
> + ncursesw5-config --libs 2>/dev/null && exit
> + ncurses5-config --libs 2>/dev/null && exit
> exit 1
> }
>
> --
> 1.8.1.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>

--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/