As of now, git fails to build with default config if tclsh is not
available, thus requiring manual config tweaking just because of some
optimizations done at build time; this is a needless hassle when building
git on any kind of a server.
This patch makes git-gui's build process to handle this gracefully; unless
TCL_PATH is explicitly set, if tclsh cannot be executed only a warning is
printed and the build goes on. I have tested this only on that server with
no tclsh, but hopefully it shouldn't break the build process with tclsh
available either.
Signed-off-by: Petr Baudis <redacted>
---
Makefile | 8 +++++---
git-gui/Makefile | 2 +-
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
index 07411ff..ed12577 100644
--- a/Makefile
+++ b/Makefile
@@ -178,10 +178,12 @@ AR = ar
TAR = tar
INSTALL = install
RPMBUILD = rpmbuild
-TCL_PATH = tclsh
-TCLTK_PATH = wish
-export TCL_PATH TCLTK_PATH
+# If TCL_PATH is not defined here, it will default to tclsh later
+# with the exception that if tclsh cannot be executed, the optimization
+# step is skipped.
+# export TCL_PATH = tclsh
+export TCLTK_PATH = wish
# sparse is architecture-neutral, which means that we need to tell it
# explicitly what architecture to check for. Fix this up for yours..
diff --git a/git-gui/Makefile b/git-gui/Makefile
index e73b645..2b1bc18 100644
--- a/git-gui/Makefile
+++ b/git-gui/Makefile
@@ -34,7 +34,7 @@ ifndef V
QUIET_INDEX = @echo ' ' INDEX $(dir $@);
endif
-TCL_PATH ?= tclsh
+TCL_PATH ?= tclsh || echo "Warning: Cannot execute tclsh, not optimizing git-gui" >&2
TCLTK_PATH ?= wish
ifeq ($(findstring $(MAKEFLAGS),s),s)