2008-11-21 05:09:34 +01:00
|
|
|
#!/usr/bin/env python
|
|
|
|
|
|
|
|
from distutils.core import setup, Extension
|
|
|
|
import os
|
|
|
|
import platform
|
|
|
|
|
|
|
|
def parse_cmd(cmdline, prefix, keep_prefix = False):
|
|
|
|
ret = []
|
|
|
|
for token in cmdline.split():
|
|
|
|
if token[:len(prefix)] == prefix:
|
|
|
|
if keep_prefix:
|
|
|
|
ret.append(token)
|
|
|
|
else:
|
|
|
|
ret.append(token[len(prefix):])
|
|
|
|
return ret
|
|
|
|
|
|
|
|
def arch():
|
|
|
|
if platform.system() != 'Darwin': return []
|
|
|
|
a = os.uname()[4]
|
|
|
|
if a == 'Power Macintosh': a = 'ppc'
|
|
|
|
return ['-arch', a]
|
2008-11-23 21:41:24 +01:00
|
|
|
|
|
|
|
if platform.system() == 'Windows':
|
|
|
|
# on windows, build using bjam and build an installer
|
|
|
|
import shutil
|
|
|
|
os.system('bjam boost=source link=static boost-link=static release msvc-7.1')
|
|
|
|
try:
|
|
|
|
os.mkdir(r'libtorrent')
|
|
|
|
except:
|
|
|
|
pass
|
|
|
|
shutil.copyfile(r'bin\msvc-7.1\release\boost-source\link-static\threading-multi\libtorrent.pyd', r'.\libtorrent\libtorrent.pyd')
|
|
|
|
setup( name='python-libtorrent',
|
|
|
|
version='@PACKAGE_VERSION@',
|
|
|
|
author = 'Arvid Norberg',
|
|
|
|
author_email='@PACKAGE_BUGREPORT@',
|
|
|
|
description = 'Python bindings for libtorrent-rasterbar',
|
|
|
|
long_description = 'Python bindings for libtorrent-rasterbar',
|
|
|
|
url = 'http://www.rasterbar.com/products/libtorrent/index.html',
|
|
|
|
platforms = 'Windows',
|
|
|
|
license = 'Boost Software License - Version 1.0 - August 17th, 2003',
|
|
|
|
packages = ['libtorrent'],
|
|
|
|
package_data = {'.': [r'libtorrent.pyd']},
|
|
|
|
package_dir={'.': 'libtorrent'}
|
|
|
|
)
|
|
|
|
sys.exit(0)
|
2008-11-21 05:09:34 +01:00
|
|
|
|
|
|
|
source_list = os.listdir(os.path.join(os.path.dirname(__file__), "src"))
|
|
|
|
source_list = [os.path.join("src", s) for s in source_list if s.endswith(".cpp")]
|
|
|
|
|
|
|
|
extra_cmd = '@COMPILETIME_OPTIONS@ @CPPFLAGS@'
|
|
|
|
|
2008-11-23 21:41:24 +01:00
|
|
|
setup( name='python-libtorrent',
|
2008-11-21 05:09:34 +01:00
|
|
|
version='@PACKAGE_VERSION@',
|
|
|
|
author = 'Arvid Norberg',
|
|
|
|
author_email='@PACKAGE_BUGREPORT@',
|
|
|
|
description = 'Python bindings for libtorrent-rasterbar',
|
|
|
|
long_description = 'Python bindings for libtorrent-rasterbar',
|
|
|
|
url = 'http://www.rasterbar.com/products/libtorrent/index.html',
|
|
|
|
platforms = 'any',
|
|
|
|
license = 'Boost Software License - Version 1.0 - August 17th, 2003',
|
|
|
|
ext_modules = [Extension('libtorrent',
|
|
|
|
sources = source_list,
|
|
|
|
language='c++',
|
|
|
|
include_dirs = ['@top_srcdir@/include','@top_srcdir@/include/libtorrent'] + parse_cmd(extra_cmd, '-I'),
|
|
|
|
library_dirs = ['@top_builddir@/src/.libs'] + parse_cmd(extra_cmd, '-L'),
|
|
|
|
extra_link_args = '@LDFLAGS@'.split() + arch(),
|
|
|
|
extra_compile_args = parse_cmd(extra_cmd, '-D', True) + arch(),
|
|
|
|
libraries = ['torrent-rasterbar','@BOOST_PYTHON_LIB@'] + parse_cmd(extra_cmd, '-l'))],
|
|
|
|
)
|