#!/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] 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@' setup( name='python-@PACKAGE_NAME@', 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'))], )