Two non-portable shell constructs have been long present in libcody's
build rule for revision.stamp: $() instead of ``, and += to append to
a shell variable.  The former seems to work even when bash is
operating as /bin/sh, but += doesn't, and it ends up trying to run
revision+=M as a command name, and issuing an error as that command is
(hopefully) not found.

This patch replaces both constructs with more portable ones.

Regstrapped on x86_64-linux-gnu.  Checking in.


for  libcody/ChangeLog

        * Makefile.in (revision.stamp): Replace $() and += with more
        portable shell constructs.
---
 libcody/Makefile.in |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libcody/Makefile.in b/libcody/Makefile.in
index 7eaf8ace8cebf..bb87468cb9a33 100644
--- a/libcody/Makefile.in
+++ b/libcody/Makefile.in
@@ -66,11 +66,11 @@ clean:: Makefile
 
 # FIXME: Delete
 revision.stamp: $(srcdir)/.
-       @revision=$$(git -C $(srcdir) rev-parse HEAD 2>/dev/null) ;\
+       @revision=`git -C $(srcdir) rev-parse HEAD 2>/dev/null` ;\
        if test -n "$$revision" ;\
        then revision=git-$$revision ;\
          if git -C $(srcdir) status --porcelain 2>/dev/null | grep -vq '^  ' ;\
-         then revision+=M ;\
+         then revision=$${revision}M ;\
          fi ;\
        else revision=unknown ;\
        fi ;\


-- 
Alexandre Oliva, happy hacker                https://FSFLA.org/blogs/lxo/
   Free Software Activist                       GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts.  Ask me about <https://stallmansupport.org>

Reply via email to