[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] updating to a u-boot without the case-sensitive filenam
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] updating to a u-boot without the case-sensitive filename clash |
Date: |
Tue, 10 Oct 2017 10:06:35 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 |
On 10/10/2017 09:22 AM, Peter Maydell wrote:
> Hi; we currently have an issue with the u-boot we're using where it
> has a file and a directory that differ only in case (scripts/Kconfig
> and scripts/kconfig/). This means that QEMU's release tarballs won't
> unpack on a case-insensitive filesystem (OSX, Windows).
>
> u-boot have now fixed this upstream:
> http://git.denx.de/?p=u-boot.git;a=commitdiff;h=610eec7f0593574c034054ba54fc1c934755e208
>
> but we need to decide how best to get this fix into QEMU so that
> our tarballs will unpack, both for the upcoming QEMU 2.11 and
> ideally for future point releases based on 2.10.
>
> I can see a couple of options:
> (1) wait for next u-boot release (scheduled for Nov 13, 2017),
> and move to that
> [downsides: would be in the middle of QEMU's own release cycle,
> pretty late to fix any problems with the new version;
> rather a big change to put into stable]
> (2) move to u-boot current head-of-unstable
> [downsides: would mean running some random git commit version,
> also not really very suitable for stable]
> (3) backport the upstream fix to sit on top of the u-boot version
> we're currently using (I think the patch should apply as-is)
> [downsides: would need to figure out how to get that commit into
> the mirror of the u-boot repo that we use; would a build of it
> claim a misleading u-boot version number?]
> (4) suggest your better idea here!
>
> Thoughts?
half-and-half? Use option (1) for 2.11 (that is, wait for November's
release there), but option (3) for 2.10.2 (that is, backport just the
fix onto the u-boot version uses in 2.10.x right now)? (I'm not sure
I'm a fan of the idea of split maintenance like that, but am throwing it
out as a possible (4) since you asked).
>
> (Proposals for automated tests to ensure we don't run into the
> case-sensitivity problem again in future also welcome.)
Would it be as simple as using
LC_ALL=C
filelist=$(... )
diff <(printf '%s\n' $filelist | sort -f) \
<(printf '%s\n' $filelist | sort -f -u)
where filelist is determined by 'tar tf tarball' or by some invocation
of 'git ls-files'? Perhaps something we can even add to checkpatch.pl,
although my perl is not strong enough to write that.
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature