From: Wayne Davison Date: Sun, 16 Oct 2022 18:14:15 +0000 (-0700) Subject: Fix version verification when "\|" doesn't work in sed. X-Git-Tag: v3.2.7~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=677aa0dc911a452399e35e2c2b5bd18b25f5b55a;p=thirdparty%2Frsync.git Fix version verification when "\|" doesn't work in sed. --- diff --git a/mkgitver b/mkgitver index 75c9fe1e..0102b089 100755 --- a/mkgitver +++ b/mkgitver @@ -7,8 +7,10 @@ if [ ! -f git-version.h ]; then fi if test -d "$srcdir/.git" || test -f "$srcdir/.git"; then - gitver=`git describe --abbrev=8 2>/dev/null | sed -n '/^v3\.[0-9][0-9]*\.[0-9][0-9]*\(pre[0-9]*\)*\(-\|$\)/p'` - if [ -n "$gitver" ]; then + gitver=`git describe --abbrev=8 2>/dev/null` + # NOTE: I'm avoiding "|" in sed since I'm not sure if sed -r is portable and "\|" fails on some OSes. + verchk=`echo "$gitver-" | sed -n '/^v3\.[0-9][0-9]*\.[0-9][0-9]*\(pre[0-9]*\)*-/p'` + if [ -n "$verchk" ]; then echo "#define RSYNC_GITVER \"$gitver\"" >git-version.h.new if ! diff git-version.h.new git-version.h >/dev/null; then echo "Updating git-version.h"