[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Changeset / commit id not incorporated in build after switch to git
Tuesday, February 26, 2013, 11:20:07 AM, you wrote: > On Mon, 2013-02-25 at 23:00 +0000, Sander Eikelenboom wrote: >> Hello Sander, > Talking to yourself is a sign of something or other I think ;-) primarily hitting the send button a bit before my thoughts actually ended :-p (at least i hope) >> Monday, February 25, 2013, 11:28:53 PM, you wrote: >> >> > Date: Mon, 25 Feb 2013 23:28:53 +0100 >> > From: Sander Eikelenboom <linux@xxxxxxxxxxxxxx> >> > Organization: Eikelenboom IT services >> > X-Priority: 3 (Normal) >> > Message-ID: <1208255021.20130225232853@xxxxxxxxxxxxxx> >> > To: xen-devel <xen-devel@xxxxxxxxxxxxx> >> > Subject: Changeset / commit id not incorporated in build after switch to >> > git >> > MIME-Version: 1.0 >> > Content-Type: text/plain; charset=us-ascii >> > Content-Transfer-Encoding: 7bit >> >> > Hi All, >> >> > After the switching from mercurial to git, the changeset isn't >> > incorporated anymore in the build. >> > This makes error reports possibly a bit less verbose (xl dmesg, serial >> > logs and xl info now omit the changeset (or commit) info) >> >> > Git doesn't have the concept of changesets afaik and mercurial is, while >> > deprecated, still used as mirror. >> >> > So what would be wise: >> > - just replace the changeset with the git commit sha-1 hash (always) >> > - use changeset when a mercurial tree is detected or the last git >> > commit sha-1 (and date ?) when a git tree is detected >> > - make a separate "commit" entry besides the changeset and leave one >> > undefined >> >> > xen/Makefile currently has: >> >> > # compile.h contains dynamic build info. Rebuilt on every 'make' >> > invocation. >> > include/xen/compile.h: include/xen/compile.h.in .banner >> > @sed -e 's/@@date@@/$(shell LC_ALL=C date)/g' \ >> > -e 's/@@time@@/$(shell LC_ALL=C date +%T)/g' \ >> > -e 's/@@whoami@@/$(XEN_WHOAMI)/g' \ >> > -e 's/@@domain@@/$(XEN_DOMAIN)/g' \ >> > -e 's/@@hostname@@/$(shell hostname)/g' \ >> > -e 's!@@compiler@@!$(shell $(CC) $(CFLAGS) --version 2>&1 | >> > head -1)!g' \ >> > -e 's/@@version@@/$(XEN_VERSION)/g' \ >> > -e 's/@@subversion@@/$(XEN_SUBVERSION)/g' \ >> > -e 's/@@extraversion@@/$(XEN_EXTRAVERSION)/g' \ >> > -e 's!@@changeset@@!$(shell ((hg parents --template >> > "{date|date} {rev}:{node|short}" >/dev/null && hg parents --template >> > "{date|date} {rev}:{node|short}") || echo "unavailable") 2>/dev/null)!g' \ >> > < include/xen/compile.h.in > $@.new >> > @grep \" .banner >> $@.new >> > @grep -v \" .banner >> > @mv -f $@.new $@ >> >> > -- >> > Sander >> >> >> >> Perhaps use about the same as linux has in scripts/setlocalversion ? > This is what I was going to suggest. Actually, I had it in mind we > already did something like! > Anyway, I think including whatever information the VCS we are building > from supplied is the right answer and the way Linux does it seems useful > and appropriate (e.g. using the tag name, appending -dirty etc). > If we can also extend that to do something sensible in the tarball case > then even better! Not much info to get form a extracted tarball i'm afraid ? Or one should include some extra versioning in the tarball itself and in that case you don't know if its "dirty" or not, just a "based on tarball with changeset/commit" Since in that case it will describe something more/else than a mecurial changeset, question is should the name "changeset" also be replaced by some more general naming ? > Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |