X-Git-Url: https://jfr.im/git/yt-dlp.git/blobdiff_plain/c11c64f318c6b9361eb8d8c855697499f7a1cba7..96a134dea6397a5f2131947c427aac52c8b4e677:/setup.py diff --git a/setup.py b/setup.py old mode 100644 new mode 100755 index f5f0bae62..8d1e6d10b --- a/setup.py +++ b/setup.py @@ -1,103 +1,36 @@ -#!/usr/bin/env python -# coding: utf-8 +#!/usr/bin/env python3 -from setuptools import setup, Command, find_packages -import os.path -import warnings +# Allow execution from anywhere +import os import sys -from distutils.spawn import spawn -# Get the version from youtube_dlc/version.py without importing the package -exec(compile(open('youtube_dlc/version.py').read(), - 'youtube_dlc/version.py', 'exec')) +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) -DESCRIPTION = 'Media downloader supporting various sites such as youtube' -LONG_DESCRIPTION = 'Command-line program to download videos from YouTube.com and other video sites. Based on a more active community fork.' +import warnings -if len(sys.argv) >= 2 and sys.argv[1] == 'py2exe': - print("inv") -else: - files_spec = [ - ('etc/bash_completion.d', ['youtube-dlc.bash-completion']), - ('etc/fish/completions', ['youtube-dlc.fish']), - ('share/doc/youtube_dlc', ['README.txt']), - ('share/man/man1', ['youtube-dlc.1']) - ] - root = os.path.dirname(os.path.abspath(__file__)) - data_files = [] - for dirname, files in files_spec: - resfiles = [] - for fn in files: - if not os.path.exists(fn): - warnings.warn('Skipping file %s since it is not present. Type make to build all automatically generated files.' % fn) - else: - resfiles.append(fn) - data_files.append((dirname, resfiles)) - params = { - 'data_files': data_files, - } - #if setuptools_available: - params['entry_points'] = {'console_scripts': ['youtube-dlc = youtube_dlc:main']} - #else: - # params['scripts'] = ['bin/youtube-dlc'] +if sys.argv[1:2] == ['py2exe']: + warnings.warn(DeprecationWarning('`setup.py py2exe` is deprecated and will be removed in a future version. ' + 'Use `bundle.py2exe` instead')) -class build_lazy_extractors(Command): - description = 'Build the extractor lazy loading module' - user_options = [] + import bundle.py2exe - def initialize_options(self): - pass + bundle.py2exe.main() - def finalize_options(self): - pass +elif 'build_lazy_extractors' in sys.argv: + warnings.warn(DeprecationWarning('`setup.py build_lazy_extractors` is deprecated and will be removed in a future version. ' + 'Use `devscripts.make_lazy_extractors` instead')) - def run(self): - spawn( - [sys.executable, 'devscripts/make_lazy_extractors.py', 'youtube_dlc/extractor/lazy_extractors.py'], - dry_run=self.dry_run, - ) + import subprocess + + os.chdir(sys.path[0]) + print('running build_lazy_extractors') + subprocess.run([sys.executable, 'devscripts/make_lazy_extractors.py']) + +else: -setup( - name="youtube_dlc", - version=__version__, - maintainer="Tom-Oliver Heidel", - maintainer_email="theidel@uni-bremen.de", - description=DESCRIPTION, - long_description=LONG_DESCRIPTION, - # long_description_content_type="text/markdown", - url="https://github.com/blackjack4494/youtube-dlc", - packages=find_packages(exclude=("youtube_dl",)), - #packages=[ - # 'youtube_dlc', - # 'youtube_dlc.extractor', 'youtube_dlc.downloader', - # 'youtube_dlc.postprocessor'], - classifiers=[ - "Topic :: Multimedia :: Video", - "Development Status :: 5 - Production/Stable", - "Environment :: Console", - "Programming Language :: Python", - "Programming Language :: Python :: 2", - "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", - "Programming Language :: Python :: 3.6", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: Implementation", - "Programming Language :: Python :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: IronPython", - "Programming Language :: Python :: Implementation :: Jython", - "Programming Language :: Python :: Implementation :: PyPy", - "License :: Public Domain", - "Operating System :: OS Independent", - ], - python_requires='>=2.6', - - cmdclass={'build_lazy_extractors': build_lazy_extractors}, - **params -) \ No newline at end of file + print( + 'ERROR: Building by calling `setup.py` is deprecated. ' + 'Use a build frontend like `build` instead. ', + 'Refer to https://build.pypa.io for more info', file=sys.stderr) + sys.exit(1)