diff options
author | Guido van Rossum <guido@python.org> | 1998-03-05 04:05:38 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1998-03-05 04:05:38 (GMT) |
commit | 1e07403bbf47e7198a735a901598cbc1eedd607f (patch) | |
tree | 6582d4e79e4b6e156140e646a03d3e935ca0f2f8 | |
parent | a5568d349bd0a2f4ca427e97f19d237ba4c0925a (diff) | |
download | cpython-1e07403bbf47e7198a735a901598cbc1eedd607f.zip cpython-1e07403bbf47e7198a735a901598cbc1eedd607f.tar.gz cpython-1e07403bbf47e7198a735a901598cbc1eedd607f.tar.bz2 |
Some nits...
Add the script directory to the path.
Fix the sanity checks on the arguments so they don't mess up the -m
option; remove the requirement that the script must have a .py
extension.
-rwxr-xr-x | Tools/freeze/freeze.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/Tools/freeze/freeze.py b/Tools/freeze/freeze.py index b6f2d4a..ca16654 100755 --- a/Tools/freeze/freeze.py +++ b/Tools/freeze/freeze.py @@ -2,7 +2,7 @@ """Freeze a Python script into a binary. -usage: freeze [options...] script.py [module]... +usage: freeze [options...] script [module]... Options: @@ -43,8 +43,7 @@ Options: Arguments: -script.py: The Python script to be executed by the resulting binary. - It *must* end with a .py suffix! +script: The Python script to be executed by the resulting binary. module ...: Additional Python modules (referenced by pathname) that will be included in the resulting binary. These @@ -88,7 +87,7 @@ def main(): prefix = None # settable with -p option exec_prefix = None # settable with -P option extensions = [] - path = sys.path + path = sys.path[:] modargs = 0 debug = 1 odir = '' @@ -195,16 +194,16 @@ def main(): if not args: usage('at least one filename argument required') - # check that the script name ends in ".py" - if args[0][-3:] != ".py": - usage('the script name must have a .py suffix') - # check that file arguments exist for arg in args: + if arg == '-m': + break if not os.path.exists(arg): usage('argument %s not found' % arg) if not os.path.isfile(arg): usage('%s: not a plain file' % arg) + if modargs: + break # process non-option arguments scriptfile = args[0] @@ -238,6 +237,8 @@ def main(): # Actual work starts here... # collect all modules of the program + dir = os.path.dirname(scriptfile) + path[0] = dir mf = modulefinder.ModuleFinder(path, debug) for mod in implicits: mf.import_hook(mod) |