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 <svenne@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