mirror of
https://github.com/borgbackup/borg.git
synced 2024-12-23 00:07:38 +00:00
Include Cython output in sdist
This commit is contained in:
parent
4f7f1fdbe0
commit
52c02ceda3
1 changed files with 30 additions and 4 deletions
34
setup.py
34
setup.py
|
@ -1,10 +1,35 @@
|
|||
# -*- encoding: utf-8 *-*
|
||||
#!/usr/bin/env python
|
||||
import os
|
||||
import sys
|
||||
from glob import glob
|
||||
from setuptools import setup, Extension
|
||||
from Cython.Distutils import build_ext
|
||||
from setuptools.command.sdist import sdist
|
||||
hashindex_sources = ['darc/hashindex.pyx', 'darc/_hashindex.c']
|
||||
|
||||
dependencies = ['pycrypto', 'msgpack-python', 'pbkdf2.py', 'xattr', 'paramiko', 'Pyrex', 'Cython']
|
||||
try:
|
||||
from Cython.Distutils import build_ext
|
||||
import Cython.Compiler.Main as cython_compiler
|
||||
class Sdist(sdist):
|
||||
def __init__(self, *args, **kwargs):
|
||||
for src in glob('darc/*.pyx'):
|
||||
print 'src', src
|
||||
cython_compiler.compile(glob('darc/*.pyx'),
|
||||
cython_compiler.default_options)
|
||||
sdist.__init__(self, *args, **kwargs)
|
||||
|
||||
def run(self):
|
||||
sdist.run(self)
|
||||
self.filelist.append('darc/hashindex.c', 'darc/hashindex.h')
|
||||
|
||||
except ImportError:
|
||||
hashindex_sources[0] = hashindex_sources[0].replace('.pyx', '.c')
|
||||
from setuptools.command.build_ext import build_ext
|
||||
Sdist = sdist
|
||||
if not os.path.exists('darc/hashindex.c'):
|
||||
raise ImportError('The GIT version of darc needs Cython. Install Cython or use a released version')
|
||||
|
||||
dependencies = ['pycrypto', 'msgpack-python', 'pbkdf2.py', 'xattr', 'paramiko']
|
||||
if sys.version_info < (2, 7):
|
||||
dependencies.append('argparse')
|
||||
|
||||
|
@ -13,11 +38,12 @@
|
|||
version='0.1',
|
||||
author='Jonas Borgström',
|
||||
author_email='jonas@borgstrom.se',
|
||||
url='http://github.com/jborg/darc/',
|
||||
packages=['darc'],
|
||||
cmdclass = {'build_ext': build_ext},
|
||||
cmdclass = {'build_ext': build_ext, 'sdist': Sdist},
|
||||
ext_modules=[
|
||||
Extension('darc._speedups', ['darc/_speedups.c']),
|
||||
Extension('darc.hashindex', ['darc/hashindex.pyx', 'darc/_hashindex.c'])],
|
||||
Extension('darc.hashindex', hashindex_sources)],
|
||||
install_requires=dependencies,
|
||||
entry_points = {
|
||||
'console_scripts': [
|
||||
|
|
Loading…
Reference in a new issue