mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-11-20 10:39:49 +01:00
54 lines
1.4 KiB
Python
54 lines
1.4 KiB
Python
|
from setuptools import setup
|
||
|
import io
|
||
|
import os
|
||
|
|
||
|
base = os.path.dirname(__file__)
|
||
|
with io.open(os.path.join(base, 'requirements.txt'), encoding='utf-8') as f:
|
||
|
requirements = [r for r in f.read().split('\n') if len(r)]
|
||
|
|
||
|
|
||
|
def bolt_meta(bolt_num):
|
||
|
ctx = {}
|
||
|
pkg_dir = os.path.join(base, 'pyln', 'spec', 'bolt{}'.format(bolt_num))
|
||
|
|
||
|
files = ['gen_version.py', 'gen_csv_version.py', 'text.py']
|
||
|
|
||
|
for f in files:
|
||
|
f = os.path.join(pkg_dir, f)
|
||
|
with open(f, 'r') as fd:
|
||
|
exec(fd.read(), ctx)
|
||
|
|
||
|
__version__ = '{__base_version__}.{__csv_version__}.{__post_version__}'.format(**ctx)
|
||
|
return {
|
||
|
'description': ctx['desc'],
|
||
|
'version': __version__,
|
||
|
}
|
||
|
|
||
|
|
||
|
def bolt_num():
|
||
|
"""Look into the pyln/spec/ directory to see which subpackages we provide.
|
||
|
"""
|
||
|
dirlist = os.listdir(os.path.join('pyln', 'spec'))
|
||
|
assert(len(dirlist) == 1) # Should only be the boltX directory
|
||
|
b = dirlist[0]
|
||
|
assert(b[:4] == 'bolt')
|
||
|
return int(b[4])
|
||
|
|
||
|
|
||
|
boltnum = bolt_num()
|
||
|
meta = bolt_meta(boltnum)
|
||
|
|
||
|
setup(
|
||
|
**meta,
|
||
|
name='pyln-bolt{}'.format(boltnum),
|
||
|
url='http://github.com/ElementsProject/lightning',
|
||
|
author='Rusty Russell',
|
||
|
author_email='rusty@rustcorp.com.au',
|
||
|
license='MIT',
|
||
|
packages=['pyln.spec.bolt{}'.format(boltnum)],
|
||
|
package_data={'pyln.proto.message': ['py.typed']},
|
||
|
scripts=[],
|
||
|
zip_safe=True,
|
||
|
install_requires=requirements
|
||
|
)
|