and now, also py2exe compiles fine :) (on Windows)

This commit is contained in:
Filippo Valsorda 2012-12-07 12:04:52 +01:00
parent a5741a3f5e
commit fec89790b1
2 changed files with 23 additions and 20 deletions

View File

@ -6,6 +6,14 @@ from distutils.core import setup
import pkg_resources import pkg_resources
import sys import sys
try:
import py2exe
"""This will create an exe that needs Microsoft Visual C++ 2008 Redistributable Package"""
except ImportError:
if len(sys.argv) >= 2 and sys.argv[1] == 'py2exe':
print("Cannot import py2exe", file=sys.stderr)
exit(1)
py2exe_options = { py2exe_options = {
"bundle_files": 1, "bundle_files": 1,
"compressed": 1, "compressed": 1,
@ -13,25 +21,25 @@ py2exe_options = {
"dist_dir": '.', "dist_dir": '.',
"dll_excludes": ['w9xpopen.exe'] "dll_excludes": ['w9xpopen.exe']
} }
py2exe_console = [{ py2exe_console = [{
"script": "./youtube_dl/__main__.py", "script": "./youtube_dl/__main__.py",
"dest_base": "youtube-dl", "dest_base": "youtube-dl",
}] }]
py2exe_params = {
'console': py2exe_console,
'options': { "py2exe": py2exe_options },
'zipfile': None
}
try: if len(sys.argv) >= 2 and sys.argv[1] == 'py2exe':
import py2exe params = py2exe_params
"""This will create an exe that needs Microsoft Visual C++ 2008 Redistributable Package""" else:
py2exe_params = { params = {
'console': py2exe_console, 'scripts': ['bin/youtube-dl'],
'options': { "py2exe": py2exe_options }, 'data_files': [('etc/bash_completion.d', ['youtube-dl.bash-completion']), # Installing system-wide would require sudo...
'zipfile': None ('share/doc/youtube_dl', ['README.txt']),
('share/man/man1/', ['youtube-dl.1'])]
} }
except ImportError:
if 'py2exe' in sys.argv:
print("Cannot import py2exe", file=sys.stderr)
exit(1)
py2exe_params = {}
# Get the version from youtube_dl/version.py without importing the package # Get the version from youtube_dl/version.py without importing the package
exec(compile(open('youtube_dl/version.py').read(), 'youtube_dl/version.py', 'exec')) exec(compile(open('youtube_dl/version.py').read(), 'youtube_dl/version.py', 'exec'))
@ -51,11 +59,6 @@ setup(
#test_suite = 'nose.collector', #test_suite = 'nose.collector',
#test_requires = ['nosetest'], #test_requires = ['nosetest'],
scripts = ['bin/youtube-dl'],
data_files = [('etc/bash_completion.d', ['youtube-dl.bash-completion']), # Installing system-wide would require sudo...
('share/doc/youtube_dl', ['README.txt']),
('share/man/man1/', ['youtube-dl.1']) ],
classifiers = [ classifiers = [
"Topic :: Multimedia :: Video", "Topic :: Multimedia :: Video",
"Development Status :: 5 - Production/Stable", "Development Status :: 5 - Production/Stable",
@ -67,5 +70,5 @@ setup(
"Programming Language :: Python :: 3.3" "Programming Language :: Python :: 3.3"
], ],
**py2exe_params **params
) )

View File

@ -6,7 +6,7 @@
import sys import sys
if __package__ is None: if __package__ is None and not hasattr(sys, "frozen"):
import os.path import os.path
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))