Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 29 Oct 2013 10:30:09 +0200
From: Georgi Chorbadzhiyski <gf@...xsol.org>
To: musl@...ts.openwall.com
Subject: Re: Feature request

Around 10/29/2013 07:06 AM, Luca Barbato scribbled:
> On 29/10/13 05:54, Rich Felker wrote:
>> On Tue, Oct 29, 2013 at 03:48:21AM +0100, Luca Barbato wrote:
>>> On 29/10/13 03:33, Rich Felker wrote:
>>>> On Mon, Oct 28, 2013 at 08:13:09PM +0000, Paul Schutte wrote:
>>>>> Hi Guys,
>>>>>
>>>>> Would it be possible for you to add the version of musl to the output of
>>>>> libc.so ?
>>>>>
>>>>> root@...otage:~# /lib/libc.so
>>>>> musl libc/dynamic program loader
>>>>> usage: /lib/libc.so pathname [args]
>>>>>
>>>>> I have several machines with musl on it and it will be very helpful to see
>>>>> which version is installed.
>>>>
>>>> Indeed, this has been something I've wanted to add for a while, and
>>>> which should definitely be in for 1.0. It's just a matter of doing the
>>>> right thing in the build and release system to get the version in
>>>> there, and it's not clear what the version should read for git builds
>>>> between versions. I think this is a good chance to discuss that.
>>>
>>> git describe short signature might be the best option.
>>
>> Thanks for the git-fu help. I'm assuming you mean using something like
>> "git describe --tags"? Use of this could be contingent on either a
>> .git dir, or lack of a version file added to release tarballs. The
>> only thing that's not clear is how to handle non-release source trees
>> present on a build system that lacks a working git installation.
> 
>     if [ -d .git ]; then
> 	VER=$(git describe --always | sed -e "s:v::")
> 	if [ x"$(git diff-index --name-only HEAD)" != x ]; then
>             VER="${VER}-dirty"
>         fi
>     elif [ -f .version ]; then
>         VER=$(< .version)
>     else
>         VER="Unknown"
>     fi
> 
> Or something along the lines.

I'm using this in a Makefile.

VERSION = $(shell cat RELEASE)
GIT_VER = $(shell git describe --tags --dirty --always 2>/dev/null)
ifeq "$(GIT_VER)" ""
GIT_VER = "release"
endif

-- 
Georgi Chorbadzhiyski | http://georgi.unixsol.org/ | http://github.com/gfto/

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.