git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[RFCv3 1/4] Basic build infrastructure for Python scripts

From
Johan Herland <johan@herland.net>
Date
Aug 12, 2009, 00:13 UTC
Message-ID
<1250036031-32272-2-git-send-email-johan@herland.net>
In-Reply-To
<1250036031-32272-1-git-send-email-johan@herland.net>

This patch adds basic boilerplate support (based on corresponding Perl sections) for enabling the building and installation Python scripts.

There are currently no Python scripts being built, and when Python scripts are added in future patches, their building and installation can be disabled by defining NO_PYTHON.

Signed-off-by: Johan Herland <johan@herland.net>
---
 Makefile      |   13 +++++++++++++
 configure.ac  |    3 +++
 t/test-lib.sh |    1 +
 3 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/Makefile b/Makefile
index 189aee5..969cef5 100644
--- a/Makefile
+++ b/Makefile
@@ -166,6 +166,8 @@ all::
 #
 # Define NO_PERL if you do not want Perl scripts or libraries at all.
 #
+# Define NO_PYTHON if you do not want Python scripts or libraries at all.
+#
 # Define NO_TCLTK if you do not want Tcl/Tk GUI.
 #
 # The TCL_PATH variable governs the location of the Tcl interpreter
@@ -311,6 +313,7 @@ LIB_H =
 LIB_OBJS =
 PROGRAMS =
 SCRIPT_PERL =
+SCRIPT_PYTHON =
 SCRIPT_SH =
 TEST_PROGRAMS =
 
@@ -349,6 +352,7 @@ SCRIPT_PERL += git-svn.perl
 
 SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \
 	  $(patsubst %.perl,%,$(SCRIPT_PERL)) \
+	  $(patsubst %.py,%,$(SCRIPT_PYTHON)) \
 	  git-instaweb
 
 # Empty...
@@ -404,8 +408,12 @@ endif
 ifndef PERL_PATH
 	PERL_PATH = /usr/bin/perl
 endif
+ifndef PYTHON_PATH
+	PYTHON_PATH = /usr/bin/python
+endif
 
 export PERL_PATH
+export PYTHON_PATH
 
 LIB_FILE=libgit.a
 XDIFF_LIB=xdiff/lib.a
@@ -1259,6 +1267,10 @@ ifeq ($(PERL_PATH),)
 NO_PERL=NoThanks
 endif
 
+ifeq ($(PYTHON_PATH),)
+NO_PYTHON=NoThanks
+endif
+
 QUIET_SUBDIR0  = +$(MAKE) -C # space to separate -C and subdir
 QUIET_SUBDIR1  =
 
@@ -1306,6 +1318,7 @@ prefix_SQ = $(subst ','\'',$(prefix))
 
 SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
 PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
+PYTHON_PATH_SQ = $(subst ','\'',$(PYTHON_PATH))
 TCLTK_PATH_SQ = $(subst ','\'',$(TCLTK_PATH))
 
 LIBS = $(GITLIBS) $(EXTLIBS)
diff --git a/configure.ac b/configure.ac
index 3f1922d..3749e5c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -241,6 +241,9 @@ GIT_ARG_SET_PATH(shell)
 # Define PERL_PATH to provide path to Perl.
 GIT_ARG_SET_PATH(perl)
 #
+# Define PYTHON_PATH to provide path to Python.
+GIT_ARG_SET_PATH(python)
+#
 # Define ZLIB_PATH to provide path to zlib.
 GIT_ARG_SET_PATH(zlib)
 #
diff --git a/t/test-lib.sh b/t/test-lib.sh
index a5b8d03..01ea386 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -714,6 +714,7 @@ case $(uname -s) in
 esac
 
 test -z "$NO_PERL" && test_set_prereq PERL
+test -z "$NO_PYTHON" && test_set_prereq PYTHON
 
 # test whether the filesystem supports symbolic links
 ln -s x y 2>/dev/null && test -h y 2>/dev/null && test_set_prereq SYMLINKS
-- 
1.6.4.rc3.138.ga6b98.dirty
Previous: Johan HerlandNext: Johan Herland
Message 2 of 22 in “[RFCv3 0/4] CVS remote helper”
  1. Johan HerlandAug 12, 2009
  2. 1/4 Basic build infrastructure for Python scriptsJohan Herland, Aug 12, 2009
  3. 2/4 Add Python support library for CVS remote helperJohan Herland, Aug 12, 2009
  4. David AguilarAug 12, 2009
  5. Johan HerlandAug 12, 2009
  6. Sverre RabbelierAug 12, 2009
  7. Michael HaggertyAug 13, 2009
  8. Johan HerlandAug 13, 2009
  9. Junio C HamanoAug 13, 2009
  10. Johan HerlandAug 13, 2009
  11. Junio C HamanoAug 16, 2009
  12. 1/2 git_remote_cvs: Honor DESTDIR in the MakefileDavid Aguilar, Aug 16, 2009
  13. 2/2 git_remote_cvs: Use $(shell) in the MakefileDavid Aguilar, Aug 16, 2009
  14. David AguilarAug 16, 2009
  15. Johannes SchindelinAug 16, 2009
  16. David AguilarAug 16, 2009
  17. Johannes SchindelinAug 16, 2009
  18. Johan HerlandAug 17, 2009
  19. 1/2 git_remote_cvs: Honor DESTDIR in the MakefileDavid Aguilar, Aug 16, 2009
  20. 2/2 git_remote_cvs: Use $(shell) in the MakefileDavid Aguilar, Aug 16, 2009
  21. 3/4 Third draft of CVS remote helper programJohan Herland, Aug 12, 2009
  22. 4/4 Add simple selftests of git-remote-cvs functionalityJohan Herland, Aug 12, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.