[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb
From: |
Daniel P. Berrange |
Subject: |
Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb |
Date: |
Tue, 19 Sep 2017 15:43:31 +0100 |
User-agent: |
Mutt/1.8.3 (2017-05-23) |
On Tue, Sep 19, 2017 at 04:26:22PM +0200, Gerd Hoffmann wrote:
> Hi,
>
> > > The Makefile checks the output of this script, and if it indicates
> > > that an submodule update is required, it uses an ifeq() to add a
> > > dependancy between "Makefile" and a phony target that re-runs
> > > configure (which in turns updates the submodules). If no update was
> > > required, then no dependancy from Makefile gets added, so build
> > > runs
> > > normally.
>
> Neat trick. I think re-running configure should not be needed though.
> Touching the Makefile should be enough to make make re-evaluating
> things after updating submodules ...
Yeah, re-running configure would only be needed if one of the submodules
had code that needed to be run by configure (eg before we removed pixman
we could re-run pixman/configure).
Since we killed pixman though, we might as well stick with doing it
all in the Makefile and ignore configure.
> diff --git a/Makefile b/Makefile
> index b53fc69a60..a9a0cea6d9 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -31,6 +31,27 @@ CONFIG_ALL=y
> -include config-all-devices.mak
> -include config-all-disas.mak
>
> +ifeq (0,$(MAKELEVEL))
> + git_module_status := $(shell \
> + cd '$(SRC_PATH)'; \
> + test -d .git || { echo 0; exit; }; \
> + ./scripts/git-submodule.sh status; \
> + echo $$?; \
> + )
> +
> +ifeq (1,$(git_module_status))
> +Makefile: git-submodule-update
> +
> +.PHONY: git-submodule-update
> +
> +git-submodule-update:
> + @echo "GIT submodules out of date, updating."
> + (cd $(SRC_PATH); ./scripts/git-submodule.sh update)
> + @touch Makefile
> +endif
> +endif
> +
> +
> config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-bios
> @echo $@ is out-of-date, running configure
> @# TODO: The next lines include code which supports a smooth
> diff --git a/.gitignore b/.gitignore
> index cf65316863..0c5fda2fdb 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -111,6 +111,7 @@
> /docs/version.texi
> *.tps
> .stgit-*
> +.git-submodule-status
> cscope.*
> tags
> TAGS
> diff --git a/scripts/git-submodule.sh b/scripts/git-submodule.sh
> new file mode 100755
> index 0000000000..07d36c2b82
> --- /dev/null
> +++ b/scripts/git-submodule.sh
> @@ -0,0 +1,22 @@
> +#!/bin/bash
> +
> +# config
> +modules="dtc"
> +substat=".git-submodule-status"
> +
> +# drop modules not checked out
> +modules="$(git submodule status $modules | awk '/^[^-]/ { print $2
> }')"
> +
> +case "$1" in
> +status)
> + test -f "$substat" || exit 1
> + git submodule status $modules > "${substat}.tmp"
> + trap "rm -f ${substat}.tmp" EXIT
> + diff "${substat}" "${substat}.tmp" >/dev/null
> + exit $?
> + ;;
> +update)
> + git submodule update $modules
> + git submodule status $modules > "${substat}"
> + ;;
> +esac
Yep, this looks reasonable. I'll incorporate this in my keycodemapdb
patch series & repost later this week.
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 :|
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, (continued)
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Gerd Hoffmann, 2017/09/14
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Peter Maydell, 2017/09/14
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Daniel P. Berrange, 2017/09/14
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Gerd Hoffmann, 2017/09/18
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Daniel P. Berrange, 2017/09/19
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Gerd Hoffmann, 2017/09/19
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Peter Maydell, 2017/09/19
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Daniel P. Berrange, 2017/09/19
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Daniel P. Berrange, 2017/09/19
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb, Gerd Hoffmann, 2017/09/19
- Re: [Qemu-devel] [PATCH v5 00/12] Convert over to use keycodemapdb,
Daniel P. Berrange <=