qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Fam Zheng <famz@redhat.com>
To: "Daniel P. Berrange" <berrange@redhat.com>
Cc: qemu-devel@nongnu.org, Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v4 01/12] ui: add keycodemapdb repository as a GIT submodule
Date: Tue, 15 Aug 2017 20:39:03 +0800	[thread overview]
Message-ID: <20170815123903.GC14412@lemon> (raw)
In-Reply-To: <20170815105350.GI9674@redhat.com>

On Tue, 08/15 11:53, Daniel P. Berrange wrote:
> On Tue, Aug 15, 2017 at 06:47:22PM +0800, Fam Zheng wrote:
> > On Tue, 08/15 11:04, Daniel P. Berrange wrote:
> > > On Tue, Aug 15, 2017 at 10:36:04AM +0100, Daniel P. Berrange wrote:
> > > > The https://gitlab.com/keycodemap/keycodemapdb/ repo contains a
> > > > data file mapping between all the different scancode/keycode/keysym
> > > > sets that are known, and a tool to auto-generate lookup tables for
> > > > different combinations.
> > > > 
> > > > It is used by GTK-VNC, SPICE-GTK and libvirt for mapping keys.
> > > > Using it in QEMU will let us replace many hand written lookup
> > > > tables with auto-generated tables from a master data source,
> > > > reducing bugs. Adding new QKeyCodes will now only require the
> > > > master table to be updated, all ~20 other tables will be
> > > > automatically updated to follow.
> > > > 
> > > > Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
> > > > ---
> > > >  .gitignore                    |  2 ++
> > > >  .gitmodules                   |  3 +++
> > > >  configure                     |  2 ++
> > > >  tests/docker/Makefile.include | 11 +++++++----
> > > >  tests/docker/run              |  4 +++-
> > > >  ui/Makefile.objs              | 18 ++++++++++++++++++
> > > >  ui/keycodemapdb               |  1 +
> > > >  7 files changed, 36 insertions(+), 5 deletions(-)
> > > >  create mode 160000 ui/keycodemapdb
> > > > 
> > > 
> > > > diff --git a/configure b/configure
> > > > index dd73cce62f..bd373ec2b4 100755
> > > > --- a/configure
> > > > +++ b/configure
> > > > @@ -5258,6 +5258,8 @@ echo_version() {
> > > >      fi
> > > >  }
> > > >  
> > > > +(cd $source_path && git submodule update --init ui/keycodemapdb)
> > > > +
> > > 
> > > Urgh, no, this won't work because of course you don't have to
> > > have a git checkout when running configure.
> > > 
> > > Any suggestions on the "best" way to ensure that the ui/keycodemapdb
> > > git submodule is always checked out, without requiring developers to
> > > do something manually ?
> > > 
> > > I could try
> > > 
> > >   (cd $source_path && test -d .git && git submodule update --init ui/keycodemapdb)
> > > 
> > > but wonder if there's a better way ?
> > 
> > I think the way dtc handles this is okay: probe headers/libs, if failed, hint
> > the "git submodule update" command in the error message.  This is also a
> > familiar/friendly user interface to developers.
> 
> I don't think that's acceptable in this case. Few people will ever need
> to setup the dtc submodule as distros commonly have that available.

It's not available in the case of RHEL/CentOS 7, so it is similar in a degree
which is why I mentioned it.

But certainly I'll be happy to see a way to have this automated.  FWIW I've no
objection to the "test -d .git" idea.

For docker tests to work, I'm inclined to change the Makefile rules so that
every initialized submodule under $SRC_PATH is git-archived and copied in.

Fam

  reply	other threads:[~2017-08-15 12:39 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-15  9:36 [Qemu-devel] [PATCH v4 00/12] Convert over to use keycodemapdb Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 01/12] ui: add keycodemapdb repository as a GIT submodule Daniel P. Berrange
2017-08-15 10:04   ` Daniel P. Berrange
2017-08-15 10:47     ` Fam Zheng
2017-08-15 10:53       ` Daniel P. Berrange
2017-08-15 12:39         ` Fam Zheng [this message]
2017-08-23 14:45     ` Gerd Hoffmann
2017-08-30 16:37       ` Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 02/12] ui: convert common input code to keycodemapdb Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 03/12] ui: convert key events to QKeyCodes immediately Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 04/12] ui: don't export qemu_input_event_new_key Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 05/12] input: convert virtio-input-hid device to keycodemapdb Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 06/12] input: convert ps2 " Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 07/12] input: convert the adb " Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 08/12] char: convert the escc " Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 09/12] ui: convert cocoa frontend " Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 10/12] ui: convert the SDL2 " Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 11/12] ui: convert GTK and SDL1 frontends " Daniel P. Berrange
2017-08-15  9:36 ` [Qemu-devel] [PATCH v4 12/12] display: convert XenInput keyboard " Daniel P. Berrange
2017-08-15  9:59 ` [Qemu-devel] [PATCH v4 00/12] Convert over to use keycodemapdb no-reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170815123903.GC14412@lemon \
    --to=famz@redhat.com \
    --cc=berrange@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).