1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
--- a/setup.py
+++ b/setup.py
@@ -102,7 +102,7 @@
# Set up options for compiling the _rtmidi Extension
if cythonize:
- sources = [join(SRC_DIR, "_rtmidi.pyx"), join(SRC_DIR, "rtmidi", "RtMidi.cpp")]
+ sources = [join(SRC_DIR, "_rtmidi.pyx")]
elif exists(join(SRC_DIR, "_rtmidi.cpp")):
cythonize = lambda x: x # noqa
sources = [join(SRC_DIR, "_rtmidi.cpp"), join(SRC_DIR, "rtmidi", "RtMidi.cpp")]
@@ -145,18 +145,13 @@
if sys.platform.startswith('linux'):
- if alsa and find_library('asound'):
- define_macros.append(("__LINUX_ALSA__", None))
- libraries.append('asound')
+ if not find_library('rtmidi'):
+ sys.exit("Failed to find librtmidi")
- if jack:
- check_for_jack(define_macros, libraries)
-
- if not find_library('pthread'):
- sys.exit("The 'pthread' library is required to build python-rtmidi on"
- "Linux. Please install the libc6 development package.")
-
- libraries.append("pthread")
+ res = subprocess.check_output(['pkg-config', '--variable', 'includedir', 'rtmidi'])
+ rtmidi_include_dir = res.decode().strip()
+ include_dirs.append(rtmidi_include_dir)
+ libraries.append('rtmidi')
elif sys.platform.startswith('darwin'):
if jack:
check_for_jack(define_macros, libraries)
@@ -197,7 +192,7 @@
# Finally, set up our distribution
setup(
packages=['rtmidi'],
- ext_modules=cythonize(extensions),
+ ext_modules=cythonize(extensions, include_path=[ rtmidi_include_dir ]),
tests_require=[], # Test dependencies are handled by tox
# On systems without a RTC (e.g. Raspberry Pi), system time will be the
# Unix epoch when booted without network connection, which makes zip fail,
--- a/tests/test_rtmidi.py
+++ b/tests/test_rtmidi.py
@@ -54,11 +54,6 @@
else:
self.assertEqual(res, rtmidi.API_UNSPECIFIED)
- def test_get_rtmidi_version(self):
- version = rtmidi.get_rtmidi_version()
- self.assertTrue(isinstance(version, string_types))
- self.assertEqual(version, '4.0.0')
-
class BaseTests:
NOTE_ON = [0x90, 48, 100]
|