From b4ba4d03690069a068f1a7b7852524655ac743af Mon Sep 17 00:00:00 2001 From: midipix Date: Tue, 4 Dec 2018 14:36:15 -0500 Subject: project: added the pycopy.sh and pycgen.sh build-time utility scripts. --- project/pycopy.sh | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 project/pycopy.sh (limited to 'project/pycopy.sh') diff --git a/project/pycopy.sh b/project/pycopy.sh new file mode 100755 index 0000000..2a55b7a --- /dev/null +++ b/project/pycopy.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +# pyccopy: a build-time utiltiy script +# objective: copy one or more source python (.py) scripts +# to the destination directory specified via the +# environment variable PYCOPY_DSTDIR, replacing +# the original shebang line, should the script +# contain one, with a program interpreter based +# on the PYCOPY_PREFIX and PYCOPY_PYTHON +# environment variables. + +if [ -z "$PYCOPY_PYTHON" ]; then + python='python' +else + python="$PYCOPY_PYTHON" +fi + +if [ -z "$PYCOPY_PREFIX" ]; then + prefix='/usr' +else + prefix="$PYCOPY_PREFIX" +fi + +if [ -z "$PYCOPY_DSTDIR" ]; then + dstdir='.' +else + dstdir="$PYCOPY_DSTDIR" +fi + +for pysrc in $@; do + basename=$(basename "$pysrc"); + + sed -e '1s@^#!.*@#!'" $prefix/bin/$python"'@g' \ + "$pysrc" > "$dstdir/$basename" || exit 2 + + if [ "$(head -n1 "$dstdir/$basename")" = "#! $prefix/bin/$python" ]; then + chmod +x "$dstdir/$basename" || exit 2 + fi +done + +exit 0 -- cgit v1.2.3