setup.py: add command for building the lazy_extractors module

This commit is contained in:
Jaime Marquínez Ferrándiz 2016-03-06 19:36:39 +01:00
parent 8a5dc1c1e1
commit 5a9858bfa9

View file

@ -8,11 +8,12 @@ import warnings
import sys import sys
try: try:
from setuptools import setup from setuptools import setup, Command
setuptools_available = True setuptools_available = True
except ImportError: except ImportError:
from distutils.core import setup from distutils.core import setup, Command
setuptools_available = False setuptools_available = False
from distutils.spawn import spawn
try: try:
# This will create an exe that needs Microsoft Visual C++ 2008 # This will create an exe that needs Microsoft Visual C++ 2008
@ -70,6 +71,22 @@ else:
else: else:
params['scripts'] = ['bin/youtube-dl'] params['scripts'] = ['bin/youtube-dl']
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,
)
# 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(), exec(compile(open('youtube_dl/version.py').read(),
'youtube_dl/version.py', 'exec')) 'youtube_dl/version.py', 'exec'))
@ -107,5 +124,6 @@ setup(
"Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.4",
], ],
cmdclass={'build_lazy_extractors': build_lazy_extractors},
**params **params
) )