User Details
- User Since
- Mar 27 2017, 4:48 PM (399 w, 5 d)
- Availability
- Available
Aug 11 2016
Can you please test if the following patch that has been committed recently
fixes your problem?
Cloning the git repository (commit id 2227f67af53f38d3d7f97760f2553d2c9ed05969)
followed by
autogen.sh
./configure --enable-maintainer-mode
make
works, i.e. the warning/error is not present any more.
So this patch seems to fix the issue.
The command line for gcc backs this observation (note the includes):
gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/ncursesw -I../pinentry -Wall -g
-O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes -Wformat -Wno-format-y2k
-Wformat-security -W -Wno-sign-compare -Wno-missing-field-initializers -Wdeclaratio
n-after-statement -Wno-pointer-sign -Wpointer-arith -MT pinentry-curses.o -MD
-MP -MF .deps/pinentry-curses.Tpo -c -o pinentry-curses.o pinentry-curses.c
Aug 7 2016
What operating system are you using?
I'm using Gentoo.
(referring to the discussion you linked):
pkg-config ncursesw --cflags returns "-I/usr/include/ncursesw", which is the
correct path. However, this include is not listed in the gcc command line (see
initial message).
I'm no expert in make nor autotools, but looking at pinentry/Makefile $COMPILE
uses $INCLUDES and $AM_CPPFLAGS. However $INCLUDES is not defined and
$AM_CPPFLAGS only adds -I../secmem. Also, nothing seems to use the variable
$NCURSES_INCLUDE (which is set to the pkg-config value "-I/usr/include/ncursesw").
This leads me to the wild guess that the pkg-config definitions for ncurses are
ignored by configure (or however sets up the Makefile). Instead the default
include directory /usr/include is used which has the wrong curses.h header. I
would like to submit a patch, but I sadly have no knowledge about make and automake.