-all: youtube-dl README.md youtube-dl.1 youtube-dl.bash-completion LATEST_VERSION
+all: youtube-dl README.md README.txt youtube-dl.1 youtube-dl.bash-completion
# TODO: re-add youtube-dl.exe, and make sure it's 1. safe and 2. doesn't need sudo
clean:
- rm -f youtube-dl youtube-dl.exe youtube-dl.1 LATEST_VERSION
+ rm -rf youtube-dl youtube-dl.exe youtube-dl.1 youtube-dl.bash-completion README.txt MANIFEST build/ dist/
PREFIX=/usr/local
BINDIR=$(PREFIX)/bin
test:
nosetests2 --nocapture test
-.PHONY: all clean install test README.md youtube-dl.bash-completion
-# TODO un-phony README.md and youtube-dl.bash_completion by reading from .in files and generating from them
+.PHONY: all clean install test
youtube-dl: youtube_dl/*.py
zip --quiet youtube-dl youtube_dl/*.py
echo '# CONFIGURATION' >> README.md && \
echo "$${footer}" >> README.md
+README.txt: README.md
+ pandoc -f markdown -t plain README.md -o README.txt
+
youtube-dl.1: README.md
- pandoc -s -w man README.md -o youtube-dl.1
+ pandoc -f markdown -t man README.md -o youtube-dl.1
-youtube-dl.bash-completion: README.md
+youtube-dl.bash-completion: README.md youtube-dl.bash-completion.in
@options=`egrep -o '(--[a-z-]+) ' README.md | sort -u | xargs echo` && \
- content=`sed "s/opts=\"[^\"]*\"/opts=\"$${options}\"/g" youtube-dl.bash-completion` && \
+ content=`sed "s/opts=\"[^\"]*\"/opts=\"$${options}\"/g" youtube-dl.bash-completion.in` && \
echo "$${content}" > youtube-dl.bash-completion
-
-LATEST_VERSION: youtube_dl/__init__.py
- python -m youtube_dl --version > LATEST_VERSION
-from distutils.core import setup, Command
+from distutils.core import setup
+import pkg_resources
import sys
+
try:
import py2exe
except ImportError:
- sys.stderr.write("Cannot import py2exe")
-import subprocess
-
-"""The p2exe option will create an exe that needs Microsoft Visual C++ 2008 Redistributable Package.
- python setup.py py2exe
- You can also build a zip executable with
- python setup.py bdist --format=zip
-
- The test suite can be run with
- python setup.py test
-
-
- The actual version is defined by the last git tag
-"""
+ print >> sys.stderr, "Cannot import py2exe"
-# If run without args, build executables
-#if len(sys.argv) == 1:
-# sys.argv.append("py2exe")
-
-# os.chdir(os.path.dirname(os.path.abspath(sys.argv[0]))) # conflict with wine-py2exe.sh
-#sys.path.append('./youtube_dl')
-
-options = {
+py2exe_options = {
"bundle_files": 1,
"compressed": 1,
"optimize": 2,
"dll_excludes": ['w9xpopen.exe']
}
-console = [{
+py2exe_console = [{
"script":"./youtube_dl/__main__.py",
"dest_base": "youtube-dl",
}]
-init_file = open('./youtube_dl/__init__.py')
+execfile('youtube_dl/version.py')
-try:
- #return the last tag name
- version = subprocess.checkoutput(["git", "describe", "--abbrev=0", "--tags"])
-except:
- version = ''
+setup(
+ name = 'youtube_dl',
+ version = __version__,
+ description = 'Small command-line program to download videos from YouTube.com and other video sites',
+ url = 'https://github.com/rg3/youtube-dl',
+ author = 'Ricardo Garcia',
+ maintainer = 'Philipp Hagemeister',
+ maintainer_email = 'phihag@phihag.de',
+ packages = ['youtube_dl'],
-setup(name='youtube-dl',
- version=version,
- long_description='Small command-line program to download videos from YouTube.com and other video sites',
- url='https://github.com/rg3/youtube-dl',
- packages=['youtube_dl'],
- #test suite
- test_suite='nose.collector',
- test_requires=['nosetest'],
- console=console,
- options={"py2exe": options},
- scripts=['bin/youtube-dl'],
- zipfile=None,
-)
+ test_suite = 'nose.collector',
+ test_requires = ['nosetest'],
-#import shutil
-#shutil.rmtree("build")
+ console = py2exe_console,
+ options = { "py2exe": py2exe_options },
+ scripts = ['bin/youtube-dl'],
+ zipfile = None,
+)