[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 0/5] Various improvements/bugfixes to submodu
From: |
Alexey Kardashevskiy |
Subject: |
Re: [Qemu-devel] [PATCH v3 0/5] Various improvements/bugfixes to submodule handling |
Date: |
Mon, 6 Nov 2017 15:44:54 +1100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 |
On 06/11/17 11:22, Alexey Kardashevskiy wrote:
> On 04/11/17 02:33, Daniel P. Berrange wrote:
>> This short series of patches improves the reliability of the submodule
>> handling to cope with various dev env scenarios that have since emerged
>>
>> v2: https://lists.gnu.org/archive/html/qemu-devel/2017-10/msg06272.html
>>
>> Changed in v3:
>>
>> - Avoid use of mktemp
>> - Use '=' instead of '==' (bashism) in conditional tests
>> - Fix problem with short-circuiting for empty submodule list
>> - Ensure help message is displayed on all errors
>>
>> Daniel P. Berrange (5):
>> build: allow setting a custom GIT binary for transparent proxying
>> build: don't create temporary files in source dir
>> build: allow automatic git submodule updates to be disabled
>> build: don't fail if given a git submodule which does not exist
>> build: delay check for empty git submodule list
>>
>> Makefile | 15 ++++++++--
>> configure | 12 ++++++++
>> scripts/git-submodule.sh | 72
>> ++++++++++++++++++++++++++++++++++++++----------
>> 3 files changed, 83 insertions(+), 16 deletions(-)
>
>
> It is getting more complicated.
>
> So, same setup,
> git checkout v2.10.0
> ./configure --target-list=ppc64-softmmu
> make
>
> All good.
> Then:
>
> git checkout git-submodule (upstream + this patchset)
> ./configure --target-list=ppc64-softmmu
>
> I see an error and educational page about --disable-git-update, good.
> ./configure --target-list=ppc64-softmmu --disable-git-update
> make
>
> Now I get:
>
> GIT submodule checkout is out of date. Please run
> scripts/git-submodule.sh update ui/keycodemapdb dtc capstone
> from the source directory checkout /home/aik/p/qemu
>
> Good, as I wanted.
> I do this on the server:
> scripts/git-submodule.sh update ui/keycodemapdb dtc capstone
>
> and repeat "make" on the build machine but get the very same error. Then I
> add "set -x" to scripts/git-submodule.sh and see:
>
> + substat=.git-submodule-status
> + command=status
> + shift
> + maybe_modules=ui/keycodemapdb dtc capstone
> + test -z git
> + modules=
> + git submodule status ui/keycodemapdb
> + test 0 = 0
> + modules= ui/keycodemapdb
> + git submodule status dtc
> + test 0 = 0
> + modules= ui/keycodemapdb dtc
> + git submodule status capstone
> + test 0 = 0
> + modules= ui/keycodemapdb dtc capstone
> + test -n ui/keycodemapdb dtc capstone
> + test -e .git
> + test -z ui/keycodemapdb dtc capstone
> + test -f .git-submodule-status
> + git submodule status ui/keycodemapdb dtc capstone
> + CURSTATUS=-22ead3e0bfdb87516656453336160e0a37b066bf capstone
> 558cd81bdd432769b59bff01240c44f82cfb1a9d dtc (v1.4.4)
> 10739aa26051a5d49d88132604539d3ed085e72e ui/keycodemapdb (heads/master)
>
> + cat .git-submodule-status
> + OLDSTATUS= 558cd81bdd432769b59bff01240c44f82cfb1a9d dtc (v1.4.4)
> 10739aa26051a5d49d88132604539d3ed085e72e ui/keycodemapdb (heads/master)
>
> + test -22ead3e0bfdb87516656453336160e0a37b066bf capstone
> 558cd81bdd432769b59bff01240c44f82cfb1a9d dtc (v1.4.4)
> 10739aa26051a5d49d88132604539d3ed085e72e ui/keycodemapdb (heads/master) =
> 558cd81bdd432769b59bff01240c44f82cfb1a9d dtc (v1.4.4)
> 10739aa26051a5d49d88132604539d3ed085e72e ui/keycodemapdb (heads/master)
>
> + exit 1
>
>
> What is that new module - capstone - about? It is not in the status file:
>
> [vpl1 qemu]$ cat .git-submodule-status
> 558cd81bdd432769b59bff01240c44f82cfb1a9d dtc (v1.4.4)
> 10739aa26051a5d49d88132604539d3ed085e72e ui/keycodemapdb (heads/master)
Ufff, that was inaccurate me, sorry for the noise. This is a real thing:
[vpl1 qemu]$ git submodule status capstone
22ead3e0bfdb87516656453336160e0a37b066bf capstone (3.0.5-rc3-14-g22ead3e0)
[vpl1 qemu]$ ssh garrison2 git -C p/qemu submodule status capstone
22ead3e0bfdb87516656453336160e0a37b066bf capstone (3.0.5-rc3-14-g22ead3e)
So now I have to add this to .gitconfig on all build machines:
[core]
abbrev=10
as "git submodule status" simply calls "git describe" which does not take
"--abbrev". Well, ok :(
--
Alexey
- Re: [Qemu-devel] [PATCH v3 5/5] build: delay check for empty git submodule list, (continued)
[Qemu-devel] [PATCH v3 4/5] build: don't fail if given a git submodule which does not exist, Daniel P. Berrange, 2017/11/03
Re: [Qemu-devel] [PATCH v3 0/5] Various improvements/bugfixes to submodule handling, Peter Maydell, 2017/11/03
Re: [Qemu-devel] [PATCH v3 0/5] Various improvements/bugfixes to submodule handling, Philippe Mathieu-Daudé, 2017/11/03
Re: [Qemu-devel] [PATCH v3 0/5] Various improvements/bugfixes to submodule handling, Alexey Kardashevskiy, 2017/11/05
- Re: [Qemu-devel] [PATCH v3 0/5] Various improvements/bugfixes to submodule handling,
Alexey Kardashevskiy <=