3 from distutils
.core
import setup
, Extension
8 if sys
.version_info
[0] < 3:
9 raise Exception("Python 3 required.")
11 packages
= ['glib-2.0', 'libusb-1.0', 'smf', 'sndfile']
13 if '#define USE_FLUIDSYNTH 1' in open('config.h').read():
14 packages
.append('fluidsynth')
15 if '#define USE_JACK 1' in open('config.h').read():
16 packages
.append('jack')
18 eargs
= os
.popen("pkg-config --cflags %s" % (" ".join(packages
)), "r").read().split()
19 eargs
.append("-std=c99")
20 # Workaround for Python3.4 headers
21 eargs
.append("-Wno-error=declaration-after-statement")
23 libs
= os
.popen("pkg-config --libs %s" % (" ".join(packages
)), "r").read().split()
91 if '#define USE_SSE 1' in open('config.h').read():
93 eargs
.append('-ffast-math')
94 if '#define USE_NEON 1' in open('config.h').read():
95 eargs
.append('-mfloat-abi=hard')
96 eargs
.append('-mfpu=neon')
97 eargs
.append('-ffast-math')
100 version
="0.04", description
="Assorted music-related code",
101 author
="Krzysztof Foltman", author_email
="wdev@foltman.com",
102 url
="http://repo.or.cz/w/calfbox.git",
103 packages
=["calfbox"],
104 package_dir
={'calfbox':'py'},
106 Extension('_cbox', csources
,
107 extra_compile_args
= eargs
,
109 extra_link_args
=libs
,
110 define_macros
=[("_GNU_SOURCE","1"),("_POSIX_C_SOURCE", "199309L"),("USE_PYTHON","1"),("CALFBOX_AS_MODULE", "1")],
111 undef_macros
=['NDEBUG'],
112 depends
= ['setup.py']