diff mbox

Fix legacy ncurses detection.

Message ID 20161107220741.GL2367@var.home
State New
Headers show

Commit Message

Samuel Thibault Nov. 7, 2016, 10:07 p.m. UTC
Hello,

On 7 November 2016 at 13:38, Michal Suchanek <msuchanek@suse.de> wrote:
> -    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):"
> +    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null)-I/usr/include/ncursesw:"

Cornelia Huck, on Mon 07 Nov 2016 17:26:56 +0100, wrote:
> +    if [ "$curses_inc_list" == ":" ]; then
> +       # some systems don't provide a proper .pc file for ncursesw
> +       curses_inc_list="-I/usr/include/ncursesw:"
> +    fi

Could you rather try the attached patch?

Samuel

Comments

Cornelia Huck Nov. 8, 2016, 11:34 a.m. UTC | #1
On Mon, 7 Nov 2016 23:07:41 +0100
Samuel Thibault <samuel.thibault@gnu.org> wrote:

> Hello,
> 
> On 7 November 2016 at 13:38, Michal Suchanek <msuchanek@suse.de> wrote:
> > -    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):"
> > +    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null)-I/usr/include/ncursesw:"
> 
> Cornelia Huck, on Mon 07 Nov 2016 17:26:56 +0100, wrote:
> > +    if [ "$curses_inc_list" == ":" ]; then
> > +       # some systems don't provide a proper .pc file for ncursesw
> > +       curses_inc_list="-I/usr/include/ncursesw:"
> > +    fi
> 
> Could you rather try the attached patch?

<cited>

> diff --git a/configure b/configure
> index fd6f898..e200aa8 100755
> --- a/configure
> +++ b/configure
> @@ -2926,7 +2926,7 @@ if test "$curses" != "no" ; then
>      curses_inc_list="$($pkg_config --cflags ncurses 2>/dev/null):"
>      curses_lib_list="$($pkg_config --libs ncurses 2>/dev/null):-lpdcurses"
>    else
> -    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):"
> +    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):-I/usr/include/ncursesw:"

This arrives at

curses_inc_list=":-I/usr/include/ncursesw:"

which causes the parser below to start with an empty curses_inc (with :
as separator).

configure fails as before (with -Werror; passes without).

>      curses_lib_list="$($pkg_config --libs ncursesw 2>/dev/null):-lncursesw:-lcursesw"
>    fi
>    curses_found=no
> @@ -2955,6 +2955,9 @@ EOF
>          break
>        fi
>      done
> +    if test "$curses_found" = yes ; then
> +      break
> +    fi

Breaking out as soon as we've found a working config seems like a good
idea, but I don't think it's related to this issue.

>    done
>    unset IFS
>    if test "$curses_found" = "yes" ; then

I still like my version best :/
diff mbox

Patch

diff --git a/configure b/configure
index fd6f898..e200aa8 100755
--- a/configure
+++ b/configure
@@ -2926,7 +2926,7 @@  if test "$curses" != "no" ; then
     curses_inc_list="$($pkg_config --cflags ncurses 2>/dev/null):"
     curses_lib_list="$($pkg_config --libs ncurses 2>/dev/null):-lpdcurses"
   else
-    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):"
+    curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):-I/usr/include/ncursesw:"
     curses_lib_list="$($pkg_config --libs ncursesw 2>/dev/null):-lncursesw:-lcursesw"
   fi
   curses_found=no
@@ -2955,6 +2955,9 @@  EOF
         break
       fi
     done
+    if test "$curses_found" = yes ; then
+      break
+    fi
   done
   unset IFS
   if test "$curses_found" = "yes" ; then