Re: [Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.
On 7 December 2011 20:06, andrzej zaborowski wrote: > On 7 December 2011 19:57, Stefan Weil wrote: >> Am 07.12.2011 08:47, schrieb Andrzej Zaborowski: >>> +#ifdef NCURSES_VERSION >>> +# if NCURSES_VERSION_PATCH < 20040117 >>> +# error Old ncurses contain dangerous typedefs, break qemu build (and are >>> old) >>> +# endif >>> +#endif >>> int main(void) { resize_term(0, 0); return curses_version(); } >>> EOF >>> for curses_lib in $curses_list; do >> >> >> Is NCURSES_VERSION_PATCH always defined when NCURSES_VERSION is? > > I'm not sure, will try to find out. If it isn't then we should check > that NCURSES_VERSION_MINOR < 4 perhaps. At least since 4.2 (19980211) both are defined, I'll apply a version of the patch similar to what you proposed. Cheers
Re: [Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.
Am 07.12.2011 20:06, schrieb andrzej zaborowski: On 7 December 2011 19:57, Stefan Weil wrote: Am 07.12.2011 08:47, schrieb Andrzej Zaborowski: +#ifdef NCURSES_VERSION +# if NCURSES_VERSION_PATCH < 20040117 +# error Old ncurses contain dangerous typedefs, break qemu build (and are old) +# endif +#endif int main(void) { resize_term(0, 0); return curses_version(); } EOF for curses_lib in $curses_list; do Is NCURSES_VERSION_PATCH always defined when NCURSES_VERSION is? I'm not sure, will try to find out. If it isn't then we should check that NCURSES_VERSION_MINOR < 4 perhaps. The intent of checking defined(NCURSES_VERSION) is to detect ncurses because qemu should also build with other implementations of curses (in theory). Cheers Yes, that's right. W32 for example supports pdcurses. So the check might look like this: #if defined(NCURSES_VERSION_PATCH) && NCURSES_VERSION_PATCH < 20040117 # error Old ncurses contain dangerous typedefs, break qemu build (and are old) #endif Cheers, Stefan
Re: [Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.
On 7 December 2011 19:57, Stefan Weil wrote: > Am 07.12.2011 08:47, schrieb Andrzej Zaborowski: >> +#ifdef NCURSES_VERSION >> +# if NCURSES_VERSION_PATCH < 20040117 >> +# error Old ncurses contain dangerous typedefs, break qemu build (and are >> old) >> +# endif >> +#endif >> int main(void) { resize_term(0, 0); return curses_version(); } >> EOF >> for curses_lib in $curses_list; do > > > Is NCURSES_VERSION_PATCH always defined when NCURSES_VERSION is? I'm not sure, will try to find out. If it isn't then we should check that NCURSES_VERSION_MINOR < 4 perhaps. The intent of checking defined(NCURSES_VERSION) is to detect ncurses because qemu should also build with other implementations of curses (in theory). Cheers
Re: [Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.
Am 07.12.2011 08:47, schrieb Andrzej Zaborowski: This should resolve a problem noted by Caraman Mihai Claudiu. Signed-off-by: Andrzej Zaborowski --- configure | 5 + 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/configure b/configure index 61c43b9..678b982 100755 --- a/configure +++ b/configure @@ -1846,6 +1846,11 @@ if test "$curses" != "no" ; then #ifdef __OpenBSD__ #define resize_term resizeterm #endif +#ifdef NCURSES_VERSION +# if NCURSES_VERSION_PATCH < 20040117 +# error Old ncurses contain dangerous typedefs, break qemu build (and are old) +# endif +#endif int main(void) { resize_term(0, 0); return curses_version(); } EOF for curses_lib in $curses_list; do Is NCURSES_VERSION_PATCH always defined when NCURSES_VERSION is? If not, code like the following is more robust: #if !defined(NCURSES_VERSION_PATCH) || NCURSES_VERSION_PATCH < 20040117 # error Old ncurses contain dangerous typedefs, break qemu build (and are old) #endif Otherwise the patch is good. Reviewed-by: Stefan Weil
[Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.
This should resolve a problem noted by Caraman Mihai Claudiu. Signed-off-by: Andrzej Zaborowski --- configure |5 + 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/configure b/configure index 61c43b9..678b982 100755 --- a/configure +++ b/configure @@ -1846,6 +1846,11 @@ if test "$curses" != "no" ; then #ifdef __OpenBSD__ #define resize_term resizeterm #endif +#ifdef NCURSES_VERSION +# if NCURSES_VERSION_PATCH < 20040117 +# error Old ncurses contain dangerous typedefs, break qemu build (and are old) +# endif +#endif int main(void) { resize_term(0, 0); return curses_version(); } EOF for curses_lib in $curses_list; do -- 1.7.4.4