Hi, Here is a revision of the patch, so that py-compile-en.sh test passes. I leave to you to decide if a test dedicated to "PYTHON=:" is truly necessary.
Fred. -- 8< -- Subject: [PATCH v2] py-compile: Allow user to disable python Common practice is to set PYTHON=: to disable python support, which breaks the current version of this script. --- lib/py-compile | 8 ++++++++ t/py-compile-env.sh | 20 ++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/lib/py-compile b/lib/py-compile index c9d4fde94..332cb4b79 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -33,6 +33,14 @@ fi me=py-compile +case "$PYTHON" in + *python*) ;; + *) + echo "$me: Invalid python executable ${PYTHON}"; + echo "$me: Python support disabled"; + exit 0;; +esac + usage_error () { echo "$me: $*" >&2 diff --git a/t/py-compile-env.sh b/t/py-compile-env.sh index b4ba6dcbe..7d8766b30 100644 --- a/t/py-compile-env.sh +++ b/t/py-compile-env.sh @@ -21,17 +21,17 @@ cp "$am_scriptdir/py-compile" . \ || fatal_ "failed to fetch auxiliary script py-compile" -cat > my-py <<'END' +cat > my-python <<'END' #!/bin/sh echo 2 -: > my-py.run +: > my-python.run END -chmod a+x my-py +chmod a+x my-python mkdir sub1 cd sub1 -PYTHON=false ../py-compile foo.py && exit 1 +! PYTHON=false ../py-compile foo.py && exit 1 ls | grep . && exit 1 PYTHON='echo GrEpMe AndMeToo' ../py-compile foo.py @@ -42,16 +42,16 @@ cd .. mkdir sub2 cd sub2 -PYTHON=../my-py ../py-compile foo.py -test -f my-py.run -ls | grep -v '^my-py\.run$' | grep . && exit 1 +PYTHON=../my-python ../py-compile foo.py +test -f my-python.run +ls | grep -v '^my-python\.run$' | grep . && exit 1 cd .. mkdir sub3 cd sub3 PATH=..$PATH_SEPARATOR$PATH; export PATH -PYTHON=my-py py-compile foo.py -test -f my-py.run -ls | grep -v '^my-py\.run$' | grep . && exit 1 +PYTHON=my-python py-compile foo.py +test -f my-python.run +ls | grep -v '^my-python\.run$' | grep . && exit 1 : -- 2.47.0