I just thought of what if git is missing. Then it returns 127 and not 128.
So maybe the test should be "-gt 0" instead of "-eq 128". Svenne On Thursday, 24 April 2025 at 11:05:37 +02:00, Svenne Krap <sve...@kracon.dk> wrote: > > Hi all, > > I stumbled over, that Bird 3.1.0 in Arch Linux is missing all version > information. > > Having peeked at the PKGBUILD it seems to do nothing weird, so I have > reproduced it by hand. > > Steps: > > $ wget <https://gitlab.nic.cz/labs/bird/-/archive/v3.1.0/bird-v3.1.0.tar.gz> > $ tar axvf bird-v3.1.0.tar.gz > $ cd bird-v3.1.0 > $ autoreconf -vif > $ ./configure > $ make > $ ./bird --version > > The latter shows (like "show status" on the real Arch package) > > BIRD version +detached. > > It seems like the error is in tools/version, that only works in a git repo. > > The following patch is a suggestion for a fix > > --- ../bird-v3.1.0-failed/tools/version 2025-04-03 20:39:22.000000000 > +0200 > +++ tools/version 2025-04-24 11:02:58.276023973 +0200 > @@ -1,5 +1,12 @@ > #!/bin/bash > > +# Are we in a release tarball? > +git status >& /dev/null > +if [ $? -eq 128 ]; then > + realpath . | awk -F/ '{print $NF}' | cut -dv -f 2 > + exit 0 > +fi > + > # Aren't we directly at version? > TAG=$(git tag | grep -F $(git describe)) > if [ -n "$TAG" ]; then > > Otherwise, the Arch package seems to work fine. > > Regards, > > Svenne > >