[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lmi] Building wx from trunk

From: Greg Chicares
Subject: Re: [lmi] Building wx from trunk
Date: Sat, 25 Oct 2014 00:39:22 +0000
User-agent: Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Thunderbird/24.6.0

On 2014-10-24 17:34Z, Vadim Zeitlin wrote:
> On Fri, 24 Oct 2014 16:19:35 +0000 Greg Chicares <address@hidden> wrote:
> GC> On 2014-10-20 20:01Z, Vadim Zeitlin wrote:
> GC> > On Mon, 20 Oct 2014 15:48:06 +0000 Greg Chicares <address@hidden> wrote:
> GC> >  Now for the promised answer: the canonical way to identify a commit it 
> git
> GC> > is indeed by using its SHA1. To find the SHA1 you want to use, you can
> GC> > use "git log" (to see just the latest commit, "git log -1")
> GC> 
> GC> Great. That's easy enough.
>  Most people still prefer symbolic names, which my other suggestions would
> allow you to use. But if 40 digit hex numbers don't bother you, this will
> definitely work.

Cut them once; paste them forever; and they'll work longer than the solar 
Symbolic names are less robust because they might be reused due to human folly.

> GC> I'm surprised that a truncated SHA1 is apparently accepted. I see
> GC> it on the console when I 'pull', e.g.:
> GC>   Updating e897361..9650c5b
> GC> The part on the right, "9650c5b", seems to be the first seven hex
> GC> digits of the new SHA1:
>  Yes, git abbreviates SHA1s to the shortest unambiguous (in the scope of
> this repository) prefix, but not less than 7 or 6 (depending on the
> command...) characters long.

That seems flawed: 9650c5b is unambiguous today, but may become ambiguous later.
The flaw is tiny, but making it vast orders of magnitude smaller costs nothing,
because pasting is just as convenient when it contains forty hex characters.

Therefore, hoping that we're allowed https access to github, let me update
for reference, so that we're all using the same tarball on this shore
(set your secret decoder ring to the latest recommended SHA1, today's being

(0) Clone the wx repository (only need to do this once):

cd /opt/lmi
git clone https://github.com/wxWidgets/wxWidgets.git

(1) Synchronize the clone with the latest online repository:

cd /opt/lmi/wxWidgets
git pull

[Here, I myself will do this:
  git log -1 | head -n1
and announce the resulting 40-character SHA1 sum when I want to declare a
new wx "release candidate"]

(2) Make a wx tarball as of a given moment specified by its SHA1:

cd /opt/lmi/wxWidgets
git archive --prefix=wxWidgets-3.1.0/ COPY_SHA1_HERE | bzip2 > 

(3) Build wx from that tarball:

cd /lmi/src/lmi
md5sum /cache_for_lmi/downloads/wxWidgets-3.1.0.tar.bz2
[...copy the 32-character md5sum where indicated...]
make wx_version=3.1.0 wx-3.1.0-md5=COPY_MD5_HERE $coefficiency -f 
install_wx.make >../log 2>&1

reply via email to

[Prev in Thread] Current Thread [Next in Thread]