diff options
Diffstat (limited to 'setup.py')
| -rw-r--r-- | setup.py | 82 | 
1 files changed, 54 insertions, 28 deletions
@@ -1,5 +1,5 @@  #!/usr/bin/env python -# -*- coding: utf-8 -*- +# coding: utf-8  from __future__ import print_function @@ -8,11 +8,12 @@ import warnings  import sys  try: -    from setuptools import setup +    from setuptools import setup, Command      setuptools_available = True  except ImportError: -    from distutils.core import setup +    from distutils.core import setup, Command      setuptools_available = False +from distutils.spawn import spawn  try:      # This will create an exe that needs Microsoft Visual C++ 2008 @@ -20,25 +21,37 @@ try:      import py2exe  except ImportError:      if len(sys.argv) >= 2 and sys.argv[1] == 'py2exe': -        print("Cannot import py2exe", file=sys.stderr) +        print('Cannot import py2exe', file=sys.stderr)          exit(1)  py2exe_options = { -    "bundle_files": 1, -    "compressed": 1, -    "optimize": 2, -    "dist_dir": '.', -    "dll_excludes": ['w9xpopen.exe', 'crypt32.dll'], +    'bundle_files': 1, +    'compressed': 1, +    'optimize': 2, +    'dist_dir': '.', +    'dll_excludes': ['w9xpopen.exe', 'crypt32.dll'],  } +# 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')) + +DESCRIPTION = 'YouTube video downloader' +LONG_DESCRIPTION = 'Command-line program to download videos from YouTube.com and other video sites' +  py2exe_console = [{ -    "script": "./youtube_dl/__main__.py", -    "dest_base": "youtube-dl", +    'script': './youtube_dl/__main__.py', +    'dest_base': 'youtube-dl', +    'version': __version__, +    'description': DESCRIPTION, +    'comments': LONG_DESCRIPTION, +    'product_name': 'youtube-dl', +    'product_version': __version__,  }]  py2exe_params = {      'console': py2exe_console, -    'options': {"py2exe": py2exe_options}, +    'options': {'py2exe': py2exe_options},      'zipfile': None  } @@ -70,16 +83,27 @@ else:      else:          params['scripts'] = ['bin/youtube-dl'] -# 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')) +class build_lazy_extractors(Command): +    description = 'Build the extractor lazy loading module' +    user_options = [] + +    def initialize_options(self): +        pass + +    def finalize_options(self): +        pass + +    def run(self): +        spawn( +            [sys.executable, 'devscripts/make_lazy_extractors.py', 'youtube_dl/extractor/lazy_extractors.py'], +            dry_run=self.dry_run, +        )  setup(      name='youtube_dl',      version=__version__, -    description='YouTube video downloader', -    long_description='Small command-line program to download videos from' -    ' YouTube.com and other video sites.', +    description=DESCRIPTION, +    long_description=LONG_DESCRIPTION,      url='https://github.com/rg3/youtube-dl',      author='Ricardo Garcia',      author_email='ytdl@yt-dl.org', @@ -95,17 +119,19 @@ setup(      # test_requires = ['nosetest'],      classifiers=[ -        "Topic :: Multimedia :: Video", -        "Development Status :: 5 - Production/Stable", -        "Environment :: Console", -        "License :: Public Domain", -        "Programming Language :: Python :: 2.6", -        "Programming Language :: Python :: 2.7", -        "Programming Language :: Python :: 3", -        "Programming Language :: Python :: 3.2", -        "Programming Language :: Python :: 3.3", -        "Programming Language :: Python :: 3.4", +        'Topic :: Multimedia :: Video', +        'Development Status :: 5 - Production/Stable', +        'Environment :: Console', +        'License :: Public Domain', +        'Programming Language :: Python :: 2.6', +        'Programming Language :: Python :: 2.7', +        'Programming Language :: Python :: 3', +        'Programming Language :: Python :: 3.2', +        'Programming Language :: Python :: 3.3', +        'Programming Language :: Python :: 3.4', +        'Programming Language :: Python :: 3.5',      ], +    cmdclass={'build_lazy_extractors': build_lazy_extractors},      **params  )  | 
