diff options
Diffstat (limited to 'gtk-recordmydesktop/m4/py-compile-destdir')
-rwxr-xr-x | gtk-recordmydesktop/m4/py-compile-destdir | 153 |
1 files changed, 153 insertions, 0 deletions
diff --git a/gtk-recordmydesktop/m4/py-compile-destdir b/gtk-recordmydesktop/m4/py-compile-destdir new file mode 100755 index 0000000..e85695e --- /dev/null +++ b/gtk-recordmydesktop/m4/py-compile-destdir @@ -0,0 +1,153 @@ +#!/bin/sh +# py-compile - Compile a Python program + +# modified by thomasvs to have DESTDIR support so rpm packages have correct +# compiled-in paths + +scriptversion=2004-01-12.23 + +# Copyright (C) 2000, 2001, 2003, 2004 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to <bug-automake@gnu.org> or send patches to +# <automake-patches@gnu.org>. + +if [ -z "$PYTHON" ]; then + PYTHON=python +fi + +basedir= + +#echo "THOMAS: args: $*" +loop=true +while test "x$loop" = "xtrue" +do + case "$1" in + --basedir) + basedir=$2 + if test -z "$basedir"; then + echo "$0: Missing argument to --basedir." 1>&2 + exit 1 + fi + shift 2 + ;; + --destdir) + destdir=$2 + if test -z "$destdir"; then + echo "$0: Missing argument to --destdir." 1>&2 + exit 1 + fi + shift 2 + ;; + -h|--h*) + cat <<\EOF +Usage: py-compile [--help] [--version] [--basedir DIR] FILES..." + +Byte compile some python scripts FILES. This should be performed +after they have been moved to the final installation location + +Report bugs to <bug-automake@gnu.org>. +EOF + exit 0 + ;; + -v|--v*) + echo "py-compile $scriptversion" + exit 0 + ;; + *) + loop=false + ;; + esac +done + +if [ $# = 0 ]; then + echo "$0: No files given. Try \`$0 --help' for more information." 1>&2 + exit 1 +fi + +# if basedir was given, then it should be prepended to filenames before +# byte compilation. +if [ -z "$basedir" ]; then + trans=" path = file" +else + trans=" path = os.path.join('$basedir', file)" +fi + +# if destdir was given, then it should be stripped from path when storing +# the intended file name +if [ -z "$destdir" ]; then + transdfile=" dfile = path" +else + transdfile=" + if path.startswith('$destdir'): + dfile = path.split('$destdir')[1] + else: + dfile = path + " +fi +#echo "THOMAS: args after parse: $*" +#echo THOMAS: transdfile: $transdfile + +$PYTHON -c " +import sys, os, string, py_compile + +files = '''$*''' +# print 'THOMAS: files: %s' % files +print 'Byte-compiling python modules...' +for file in string.split(files): +$trans + # print 'THOMAS: looking at file %s for path %s' % (file, path) +$transdfile + # print 'THOMAS: dfile: %s' % dfile + if not os.path.exists(path) or not (len(path) >= 3 and path[-3:] == '.py'): + continue + print file, + sys.stdout.flush() + # print 'THOMAS: compiling path %s' % path + py_compile.compile(path, dfile=dfile) +print" || exit $? + +# this will fail for python < 1.5, but that doesn't matter ... +$PYTHON -O -c " +import sys, os, string, py_compile + +files = '''$*''' +print 'Byte-compiling python modules (optimized versions) ...' +for file in string.split(files): +$trans +$transdfile + if not os.path.exists(path) or not (len(path) >= 3 and path[-3:] == '.py'): + continue + print file, + sys.stdout.flush() + py_compile.compile(path, dfile=dfile) +print" 2>/dev/null || : + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-end: "$" +# End: |