Re: [Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.

2011-12-14 Thread andrzej zaborowski
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.

2011-12-07 Thread Stefan Weil

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.

2011-12-07 Thread 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



Re: [Qemu-devel] [PATCH] configure: don't try to compile against known broken curses.

2011-12-07 Thread Stefan Weil

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.

2011-12-07 Thread 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
-- 
1.7.4.4