All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7 0/4] Fixes curses on msys2/mingw
@ 2020-10-02 18:08 Yonggang Luo
  2020-10-02 18:08 ` [PATCH v7 2/4] curses: Fixes compiler error that complain don't have langinfo.h " Yonggang Luo
  2020-10-05  8:22 ` [PATCH v7 0/4] Fixes curses " Daniel P. Berrangé
  0 siblings, 2 replies; 6+ messages in thread
From: Yonggang Luo @ 2020-10-02 18:08 UTC (permalink / raw)
  To: qemu-devel
  Cc: QEMU Trivial, Alex Bennée, Richard Henderson,
	Laurent Vivier, Yonggang Luo, Gerd Hoffmann, Paolo Bonzini,
	Philippe Mathieu-Daudé

V6-V7
Update the configure script for
* curses: Fixes compiler error that complain don't have langinfo.h on msys2/m=
ingw

V5-V6
Dropping configure: Fixes ncursesw detection under msys2/mingw by convert the=
m to meson first.
That need the meson 0.56 upstream to fixes the curses detection.
Add
* configure: fixes indent of $meson setup

Yonggang Luo (4):
  configure: fixes indent of $meson setup
  curses: Fixes compiler error that complain don't have langinfo.h on
    msys2/mingw
  curses: Fixes curses compiling errors.
  win32: Simplify gmtime_r detection not depends on if  _POSIX_C_SOURCE
    are defined on msys2/mingw

 configure                 | 47 +++++----------------------------------
 include/sysemu/os-win32.h |  4 ++--
 ui/curses.c               | 14 ++++++------
 util/oslib-win32.c        |  4 ++--
 4 files changed, 16 insertions(+), 53 deletions(-)

--=20
2.28.0.windows.1



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v7 2/4] curses: Fixes compiler error that complain don't have langinfo.h on msys2/mingw
  2020-10-02 18:08 [PATCH v7 0/4] Fixes curses on msys2/mingw Yonggang Luo
@ 2020-10-02 18:08 ` Yonggang Luo
  2020-10-05  8:22   ` Daniel P. Berrangé
  2020-10-05  8:22 ` [PATCH v7 0/4] Fixes curses " Daniel P. Berrangé
  1 sibling, 1 reply; 6+ messages in thread
From: Yonggang Luo @ 2020-10-02 18:08 UTC (permalink / raw)
  To: qemu-devel
  Cc: QEMU Trivial, Alex Bennée, Richard Henderson,
	Laurent Vivier, Yonggang Luo, Gerd Hoffmann, Paolo Bonzini,
	Philippe Mathieu-Daudé

msys2/mingw lacks the POSIX-required langinfo.h.

gcc test.c -DNCURSES_WIDECHAR -I/mingw64/include/ncursesw -pipe -lncursesw -lgnurx -ltre -lintl -liconv
test.c:4:10: fatal error: langinfo.h: No such file or directory
    4 | #include <langinfo.h>
      |          ^~~~~~~~~~~~
compilation terminated.

So we using g_get_codeset instead of nl_langinfo(CODESET)

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
---
 configure   |  5 +----
 ui/curses.c | 10 +++++-----
 2 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/configure b/configure
index 8f7bdbfdd3..fa53bd5c43 100755
--- a/configure
+++ b/configure
@@ -3672,17 +3672,14 @@ if test "$curses" != "no" ; then
 #include <locale.h>
 #include <curses.h>
 #include <wchar.h>
-#include <langinfo.h>
 int main(void) {
-  const char *codeset;
   wchar_t wch = L'w';
   setlocale(LC_ALL, "");
   resize_term(0, 0);
   addwstr(L"wide chars\n");
   addnwstr(&wch, 1);
   add_wch(WACS_DEGREE);
-  codeset = nl_langinfo(CODESET);
-  return codeset != 0;
+  return 0;
 }
 EOF
   IFS=:
diff --git a/ui/curses.c b/ui/curses.c
index a59b23a9cf..12bc682cf9 100644
--- a/ui/curses.c
+++ b/ui/curses.c
@@ -30,7 +30,6 @@
 #endif
 #include <locale.h>
 #include <wchar.h>
-#include <langinfo.h>
 #include <iconv.h>
 
 #include "qapi/error.h"
@@ -526,6 +525,7 @@ static void font_setup(void)
     iconv_t nativecharset_to_ucs2;
     iconv_t font_conv;
     int i;
+    g_autofree gchar *local_codeset = g_get_codeset();
 
     /*
      * Control characters are normally non-printable, but VGA does have
@@ -566,14 +566,14 @@ static void font_setup(void)
       0x25bc
     };
 
-    ucs2_to_nativecharset = iconv_open(nl_langinfo(CODESET), "UCS-2");
+    ucs2_to_nativecharset = iconv_open(local_codeset, "UCS-2");
     if (ucs2_to_nativecharset == (iconv_t) -1) {
         fprintf(stderr, "Could not convert font glyphs from UCS-2: '%s'\n",
                         strerror(errno));
         exit(1);
     }
 
-    nativecharset_to_ucs2 = iconv_open("UCS-2", nl_langinfo(CODESET));
+    nativecharset_to_ucs2 = iconv_open("UCS-2", local_codeset);
     if (nativecharset_to_ucs2 == (iconv_t) -1) {
         iconv_close(ucs2_to_nativecharset);
         fprintf(stderr, "Could not convert font glyphs to UCS-2: '%s'\n",
@@ -581,7 +581,7 @@ static void font_setup(void)
         exit(1);
     }
 
-    font_conv = iconv_open(nl_langinfo(CODESET), font_charset);
+    font_conv = iconv_open(local_codeset, font_charset);
     if (font_conv == (iconv_t) -1) {
         iconv_close(ucs2_to_nativecharset);
         iconv_close(nativecharset_to_ucs2);
@@ -602,7 +602,7 @@ static void font_setup(void)
     /* DEL */
     convert_ucs(0x7F, 0x2302, ucs2_to_nativecharset);
 
-    if (strcmp(nl_langinfo(CODESET), "UTF-8")) {
+    if (strcmp(local_codeset, "UTF-8")) {
         /* Non-Unicode capable, use termcap equivalents for those available */
         for (i = 0; i <= 0xFF; i++) {
             wchar_t wch[CCHARW_MAX];
-- 
2.28.0.windows.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v7 2/4] curses: Fixes compiler error that complain don't have langinfo.h on msys2/mingw
  2020-10-02 18:08 ` [PATCH v7 2/4] curses: Fixes compiler error that complain don't have langinfo.h " Yonggang Luo
@ 2020-10-05  8:22   ` Daniel P. Berrangé
  0 siblings, 0 replies; 6+ messages in thread
From: Daniel P. Berrangé @ 2020-10-05  8:22 UTC (permalink / raw)
  To: Yonggang Luo
  Cc: QEMU Trivial, Philippe Mathieu-Daudé,
	Richard Henderson, qemu-devel, Laurent Vivier, Gerd Hoffmann,
	Paolo Bonzini, Alex Bennée

On Sat, Oct 03, 2020 at 02:08:38AM +0800, Yonggang Luo wrote:
> msys2/mingw lacks the POSIX-required langinfo.h.
> 
> gcc test.c -DNCURSES_WIDECHAR -I/mingw64/include/ncursesw -pipe -lncursesw -lgnurx -ltre -lintl -liconv
> test.c:4:10: fatal error: langinfo.h: No such file or directory
>     4 | #include <langinfo.h>
>       |          ^~~~~~~~~~~~
> compilation terminated.
> 
> So we using g_get_codeset instead of nl_langinfo(CODESET)
> 
> Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
>  configure   |  5 +----
>  ui/curses.c | 10 +++++-----
>  2 files changed, 6 insertions(+), 9 deletions(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v7 0/4] Fixes curses on msys2/mingw
  2020-10-02 18:08 [PATCH v7 0/4] Fixes curses on msys2/mingw Yonggang Luo
  2020-10-02 18:08 ` [PATCH v7 2/4] curses: Fixes compiler error that complain don't have langinfo.h " Yonggang Luo
@ 2020-10-05  8:22 ` Daniel P. Berrangé
  2020-10-05 15:31   ` 罗勇刚(Yonggang Luo)
  1 sibling, 1 reply; 6+ messages in thread
From: Daniel P. Berrangé @ 2020-10-05  8:22 UTC (permalink / raw)
  To: Yonggang Luo
  Cc: QEMU Trivial, Philippe Mathieu-Daudé,
	Richard Henderson, qemu-devel, Laurent Vivier, Gerd Hoffmann,
	Paolo Bonzini, Alex Bennée

Only one of the 4 patches in this series appears to have been sent.

On Sat, Oct 03, 2020 at 02:08:37AM +0800, Yonggang Luo wrote:
> V6-V7
> Update the configure script for
> * curses: Fixes compiler error that complain don't have langinfo.h on msys2/m=
> ingw
> 
> V5-V6
> Dropping configure: Fixes ncursesw detection under msys2/mingw by convert the=
> m to meson first.
> That need the meson 0.56 upstream to fixes the curses detection.
> Add
> * configure: fixes indent of $meson setup
> 
> Yonggang Luo (4):
>   configure: fixes indent of $meson setup
>   curses: Fixes compiler error that complain don't have langinfo.h on
>     msys2/mingw
>   curses: Fixes curses compiling errors.
>   win32: Simplify gmtime_r detection not depends on if  _POSIX_C_SOURCE
>     are defined on msys2/mingw
> 
>  configure                 | 47 +++++----------------------------------
>  include/sysemu/os-win32.h |  4 ++--
>  ui/curses.c               | 14 ++++++------
>  util/oslib-win32.c        |  4 ++--
>  4 files changed, 16 insertions(+), 53 deletions(-)
> 
> --=20
> 2.28.0.windows.1
> 
> 

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v7 0/4] Fixes curses on msys2/mingw
  2020-10-05  8:22 ` [PATCH v7 0/4] Fixes curses " Daniel P. Berrangé
@ 2020-10-05 15:31   ` 罗勇刚(Yonggang Luo)
  2020-10-05 15:40     ` Daniel P. Berrangé
  0 siblings, 1 reply; 6+ messages in thread
From: 罗勇刚(Yonggang Luo) @ 2020-10-05 15:31 UTC (permalink / raw)
  To: Daniel P. Berrangé
  Cc: QEMU Trivial, Philippe Mathieu-Daudé,
	Richard Henderson, qemu-level, Laurent Vivier, Gerd Hoffmann,
	Paolo Bonzini, Alex Bennée

[-- Attachment #1: Type: text/plain, Size: 1738 bytes --]

On Mon, Oct 5, 2020 at 4:23 PM Daniel P. Berrangé <berrange@redhat.com>
wrote:
>
> Only one of the 4 patches in this series appears to have been sent.
All other are revied and preserve the same, I prefer not disturb by re
sending same patches
as other contributor suggested
>
> On Sat, Oct 03, 2020 at 02:08:37AM +0800, Yonggang Luo wrote:
> > V6-V7
> > Update the configure script for
> > * curses: Fixes compiler error that complain don't have langinfo.h on
msys2/m=
> > ingw
> >
> > V5-V6
> > Dropping configure: Fixes ncursesw detection under msys2/mingw by
convert the=
> > m to meson first.
> > That need the meson 0.56 upstream to fixes the curses detection.
> > Add
> > * configure: fixes indent of $meson setup
> >
> > Yonggang Luo (4):
> >   configure: fixes indent of $meson setup
> >   curses: Fixes compiler error that complain don't have langinfo.h on
> >     msys2/mingw
> >   curses: Fixes curses compiling errors.
> >   win32: Simplify gmtime_r detection not depends on if  _POSIX_C_SOURCE
> >     are defined on msys2/mingw
> >
> >  configure                 | 47 +++++----------------------------------
> >  include/sysemu/os-win32.h |  4 ++--
> >  ui/curses.c               | 14 ++++++------
> >  util/oslib-win32.c        |  4 ++--
> >  4 files changed, 16 insertions(+), 53 deletions(-)
> >
> > --=20
> > 2.28.0.windows.1
> >
> >
>
> Regards,
> Daniel
> --
> |: https://berrange.com      -o-
https://www.flickr.com/photos/dberrange :|
> |: https://libvirt.org         -o-
https://fstop138.berrange.com :|
> |: https://entangle-photo.org    -o-
https://www.instagram.com/dberrange :|
>


--
         此致
礼
罗勇刚
Yours
    sincerely,
Yonggang Luo

[-- Attachment #2: Type: text/html, Size: 2488 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v7 0/4] Fixes curses on msys2/mingw
  2020-10-05 15:31   ` 罗勇刚(Yonggang Luo)
@ 2020-10-05 15:40     ` Daniel P. Berrangé
  0 siblings, 0 replies; 6+ messages in thread
From: Daniel P. Berrangé @ 2020-10-05 15:40 UTC (permalink / raw)
  To: 罗勇刚(Yonggang Luo)
  Cc: QEMU Trivial, Philippe Mathieu-Daudé,
	Richard Henderson, qemu-level, Laurent Vivier, Gerd Hoffmann,
	Paolo Bonzini, Alex Bennée

On Mon, Oct 05, 2020 at 11:31:28PM +0800, 罗勇刚(Yonggang Luo) wrote:
> On Mon, Oct 5, 2020 at 4:23 PM Daniel P. Berrangé <berrange@redhat.com>
> wrote:
> >
> > Only one of the 4 patches in this series appears to have been sent.
> All other are revied and preserve the same, I prefer not disturb by re
> sending same patches as other contributor suggested

I don't know where that is suggested, but I think that is very
unhelpful.

It breaks any kind of automation around fetching patch series.

I don't want to have to fetch some patches from version 6 and
some patches from version 7 to test the combined work.

Every patch series posted should be complete, so contributors
arent left wondering which are the correct versions for each
patch.

> >
> > On Sat, Oct 03, 2020 at 02:08:37AM +0800, Yonggang Luo wrote:
> > > V6-V7
> > > Update the configure script for
> > > * curses: Fixes compiler error that complain don't have langinfo.h on
> msys2/m=
> > > ingw
> > >
> > > V5-V6
> > > Dropping configure: Fixes ncursesw detection under msys2/mingw by
> convert the=
> > > m to meson first.
> > > That need the meson 0.56 upstream to fixes the curses detection.
> > > Add
> > > * configure: fixes indent of $meson setup
> > >
> > > Yonggang Luo (4):
> > >   configure: fixes indent of $meson setup
> > >   curses: Fixes compiler error that complain don't have langinfo.h on
> > >     msys2/mingw
> > >   curses: Fixes curses compiling errors.
> > >   win32: Simplify gmtime_r detection not depends on if  _POSIX_C_SOURCE
> > >     are defined on msys2/mingw
> > >
> > >  configure                 | 47 +++++----------------------------------
> > >  include/sysemu/os-win32.h |  4 ++--
> > >  ui/curses.c               | 14 ++++++------
> > >  util/oslib-win32.c        |  4 ++--
> > >  4 files changed, 16 insertions(+), 53 deletions(-)
> > >
> > > --=20
> > > 2.28.0.windows.1
> > >
> > >
> >
> > Regards,
> > Daniel
> > --
> > |: https://berrange.com      -o-
> https://www.flickr.com/photos/dberrange :|
> > |: https://libvirt.org         -o-
> https://fstop138.berrange.com :|
> > |: https://entangle-photo.org    -o-
> https://www.instagram.com/dberrange :|
> >
> 
> 
> --
>          此致
> 礼
> 罗勇刚
> Yours
>     sincerely,
> Yonggang Luo

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-10-05 15:43 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-02 18:08 [PATCH v7 0/4] Fixes curses on msys2/mingw Yonggang Luo
2020-10-02 18:08 ` [PATCH v7 2/4] curses: Fixes compiler error that complain don't have langinfo.h " Yonggang Luo
2020-10-05  8:22   ` Daniel P. Berrangé
2020-10-05  8:22 ` [PATCH v7 0/4] Fixes curses " Daniel P. Berrangé
2020-10-05 15:31   ` 罗勇刚(Yonggang Luo)
2020-10-05 15:40     ` Daniel P. Berrangé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.