blob: 95d370074928841b096a37076040834b8c45cdc9 [file] [log] [blame]
Arnaldo Carvalho de Melo877108e2011-01-29 15:44:29 -02001#!/usr/bin/python2
2
3from distutils.core import setup, Extension
Robert Richter1b7155f2011-03-29 20:02:57 +02004from os import getenv
5
Jiri Olsa9941c962011-07-22 13:33:07 +02006from distutils.command.build_ext import build_ext as _build_ext
7from distutils.command.install_lib import install_lib as _install_lib
8
9class build_ext(_build_ext):
10 def finalize_options(self):
11 _build_ext.finalize_options(self)
12 self.build_lib = build_lib
13 self.build_temp = build_tmp
14
15class install_lib(_install_lib):
16 def finalize_options(self):
17 _install_lib.finalize_options(self)
18 self.build_dir = build_lib
19
20
Robert Richter1b7155f2011-03-29 20:02:57 +020021cflags = ['-fno-strict-aliasing', '-Wno-write-strings']
22cflags += getenv('CFLAGS', '').split()
Arnaldo Carvalho de Melo877108e2011-01-29 15:44:29 -020023
Jiri Olsa9941c962011-07-22 13:33:07 +020024build_lib = getenv('PYTHON_EXTBUILD_LIB')
25build_tmp = getenv('PYTHON_EXTBUILD_TMP')
26
Arnaldo Carvalho de Melo877108e2011-01-29 15:44:29 -020027perf = Extension('perf',
28 sources = ['util/python.c', 'util/ctype.c', 'util/evlist.c',
29 'util/evsel.c', 'util/cpumap.c', 'util/thread_map.c',
Arnaldo Carvalho de Melo44980622011-02-17 10:07:42 -020030 'util/util.c', 'util/xyarray.c', 'util/cgroup.c'],
Arnaldo Carvalho de Melof6bbc1d2011-01-31 20:56:27 -020031 include_dirs = ['util/include'],
Robert Richter1b7155f2011-03-29 20:02:57 +020032 extra_compile_args = cflags,
33 )
Arnaldo Carvalho de Melo877108e2011-01-29 15:44:29 -020034
35setup(name='perf',
36 version='0.1',
37 description='Interface with the Linux profiling infrastructure',
38 author='Arnaldo Carvalho de Melo',
39 author_email='acme@redhat.com',
40 license='GPLv2',
41 url='http://perf.wiki.kernel.org',
Jiri Olsa9941c962011-07-22 13:33:07 +020042 ext_modules=[perf],
43 cmdclass={'build_ext': build_ext, 'install_lib': install_lib})