-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
64 lines (57 loc) · 2.16 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import re
from distutils.core import setup
def parse_requirements(file_name):
"""
Simple requirements parsing, only works for reqs of form:
genshi==0.6
genshi
git://github.com/footley/epubbuilder.git#egg=epubbuilder
etc.
"""
requirements = []
with open(file_name) as _file:
for line in _file.readlines():
line = line.strip()
if re.match(r'(\s*#)|(\s*$)', line): # skip comments/empty lines
continue
elif re.match(r'.*#egg=', line):
requirements.append(re.sub(r'.*#egg=', '', line))
else:
requirements.append(line)
return requirements
def parse_dependency_links(file_name):
"""
retrives the dependancies in the form of
git://github.com/footley/epubbuilder.git#egg=epubbuilder
"""
dependency_links = []
with open(file_name) as _file:
for line in _file.readlines():
line = line.strip()
if re.match(r'.*#egg=', line):
dependency_links.append(line)
return dependency_links
with open('README.md') as _file:
long_desc = _file.read()
setup(name='md2ebook',
version='0.1',
description='Convert markdown to the popular ebook formats in a simple way',
long_description = long_desc,
author='Jonathan Butcher',
author_email='footley@gmail.com',
url='https://github.com/footley/md2ebook',
install_requires=parse_requirements('requirements.txt'),
dependency_links=parse_dependency_links('requirements.txt'),
scripts=['scripts/md2ebook'],
packages=['md2ebook'],
package_data={'md2ebook': [
'templates/html-boilerplate.html',
'kindlegen_linux_2.6_i386_v2_4/EULA.txt',
'kindlegen_linux_2.6_i386_v2_4/kindlegen',
'kindlegen_linux_2.6_i386_v2_4/KindleGen Legal Notices 2009-11-10 Linux.txt',
'test-files/multiple-chapters.md',
'test-files/one-chapter.md',
'test-files/treasure-island.md',
],
},
)