1#!/usr/bin/python
2
3# ----------------------------------------------------------------------------
4
5#  Copyright (C) 2008-2021 Fons Adriaensen <fons@linuxaudio.org>
6#
7#  This program is free software; you can redistribute it and/or modify
8#  it under the terms of the GNU General Public License as published by
9#  the Free Software Foundation; either version 3 of the License, or
10#  (at your option) any later version.
11#
12#  This program is distributed in the hope that it will be useful,
13#  but WITHOUT ANY WARRANTY; without even the implied warranty of
14#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15#  GNU General Public License for more details.
16#
17#  You should have received a copy of the GNU General Public License
18#  along with this program.  If not, see <http:#www.gnu.org/licenses/>.
19#
20# ----------------------------------------------------------------------------
21
22
23from distutils.core import setup, Extension
24
25
26jackclient = Extension ('jacktools.jackclient_ext',
27                         ['source/jackclient_ext.cc'],
28                         libraries = ['zita-jclient', 'jack'])
29
30jackcontrol = Extension ('jacktools.jackcontrol_ext',
31                         ['source/jackcontrol_ext.cc',
32                          'source/jcontrol.cc'],
33                         libraries = ['zita-jclient', 'jack'])
34
35jackambbin = Extension ('jacktools.jackambbin_ext',
36                        ['source/jackambbin_ext.cc',
37                         'source/jambbin.cc',
38                         'source/ambbin8.cc',
39                         'source/ambrot8.cc',
40                         'source/nffilt.cc',
41                         'source/binconv.cc'],
42                        libraries = ['zita-jclient', 'jack',
43                                     'fftw3f'])
44
45jackambpan = Extension ('jacktools.jackambpan_ext',
46                        ['source/jackambpan_ext.cc',
47                         'source/jambpan.cc',
48                         'source/ambpan8.cc',
49                         'source/rspharm.cc'],
50                        libraries = ['zita-jclient', 'jack'])
51
52jackambrot = Extension ('jacktools.jackambrot_ext',
53                        ['source/jackambrot_ext.cc',
54                         'source/jambrot.cc',
55                         'source/ambrot8.cc'],
56                        libraries = ['zita-jclient', 'jack'])
57
58jackmatrix = Extension ('jacktools.jackmatrix_ext',
59                        ['source/jackmatrix_ext.cc',
60                         'source/delay.cc',
61                         'source/jmatrix.cc'],
62                        libraries = ['zita-jclient', 'jack'])
63
64jackiecfilt = Extension ('jacktools.jackiecfilt_ext',
65                        ['source/jackiecfilt_ext.cc',
66                         'source/jiecfilt.cc',
67                         'source/bp6filter.cc',
68                         'source/oct1param1.cc',
69                         'source/oct3param1.cc'],
70                        libraries = ['zita-jclient', 'jack'])
71
72jackkmeter = Extension ('jacktools.jackkmeter_ext',
73                        ['source/jackkmeter_ext.cc',
74                         'source/jkmeter.cc',
75                         'source/kmeterdsp.cc'],
76                        libraries = ['zita-jclient', 'jack'])
77
78jacklr4filt = Extension ('jacktools.jacklr4filt_ext',
79                        ['source/jacklr4filt_ext.cc',
80                         'source/jlr4filt.cc',
81                         'source/lr4filter.cc',
82                         'source/delay.cc'],
83                        libraries = ['zita-jclient', 'jack'])
84
85jacknmeter = Extension ('jacktools.jacknmeter_ext',
86                        ['source/jacknmeter_ext.cc',
87                         'source/jnmeter.cc',
88                         'source/nmeterdsp.cc'],
89                        libraries = ['zita-jclient', 'jack'])
90
91jacknoise = Extension ('jacktools.jacknoise_ext',
92                       ['source/jacknoise_ext.cc',
93                        'source/rngen.cc',
94                        'source/jnoise.cc',
95                        'source/noisegen.cc'],
96                       libraries = ['zita-jclient', 'jack'])
97
98jackplayer = Extension ('jacktools.jackplayer_ext',
99                        ['source/jackplayer_ext.cc',
100                         'source/jplayer.cc',
101                         'source/afreader.cc',
102                         'source/posixthr.cc'],
103                        libraries = ['zita-jclient', 'jack',
104                                     'sndfile', 'zita-resampler'])
105
106jacksignal = Extension ('jacktools.jacksignal_ext',
107                        ['source/jacksignal_ext.cc',
108                         'source/jsignal.cc'],
109                        libraries = ['zita-jclient', 'jack'])
110
111jackmatconv = Extension ('jacktools.jackmatconv_ext',
112                        ['source/jackmatconv_ext.cc',
113                         'source/denseconv.cc',
114                         'source/jmatconv.cc',
115                         'source/posixthr.cc'],
116                        libraries = ['zita-jclient', 'jack',
117                                     'fftw3f'])
118
119jackconvolv = Extension ('jacktools.jackconvolv_ext',
120                        ['source/jackconvolv_ext.cc',
121                         'source/jconvolv.cc'],
122                        libraries = ['zita-jclient', 'jack',
123                                     'zita-convolver', 'fftw3f'])
124
125jackgainctl = Extension ('jacktools.jackgainctl_ext',
126                        ['source/jackgainctl_ext.cc',
127                         'source/fader2.cc',
128                         'source/jgainctl.cc'],
129                        libraries = ['zita-jclient', 'jack'])
130
131jackpeaklim = Extension ('jacktools.jackpeaklim_ext',
132                        ['source/jackpeaklim_ext.cc',
133                         'source/jpeaklim.cc',
134                         'source/peaklim.cc'],
135                        libraries = ['zita-jclient', 'jack'])
136
137jackparameq = Extension ('jacktools.jackparameq_ext',
138                        ['source/jackparameq_ext.cc',
139                         'source/jparameq.cc',
140                         'source/eqgain.cc',
141                         'source/svparam2.cc'],
142                        libraries = ['zita-jclient', 'jack'])
143
144
145setup (name = 'jacktools',
146    version = '1.5.0',
147    description = 'Python audio tools running as a Jack client',
148    license = 'LGPL',
149    author = 'Fons Adriaensen',
150    author_email = 'fons@linuxaudio.org',
151    url = 'http://kokkinizita.linuxaudio.org/linuxaudio',
152    packages = ['jacktools'],
153    py_modules = ['jacktools.jackclient',
154                  'jacktools.jackcontrol',
155                  'jacktools.jackambbin',
156                  'jacktools.jackambpan',
157                  'jacktools.jackambrot',
158                  'jacktools.jackmatrix',
159                  'jacktools.jackiecfilt',
160                  'jacktools.jackkmeter',
161                  'jacktools.jacklr4filt',
162                  'jacktools.jacknmeter',
163                  'jacktools.jacknoise',
164                  'jacktools.jackplayer',
165                  'jacktools.jacksignal',
166                  'jacktools.jackmatconv',
167                  'jacktools.jackconvolv',
168                  'jacktools.jackgainctl',
169                  'jacktools.jackpeaklim',
170                  'jacktools.jackparameq'],
171    ext_modules = [jackclient,
172                   jackcontrol,
173                   jackambbin,
174                   jackambpan,
175                   jackambrot,
176                   jackmatrix,
177                   jackiecfilt,
178                   jackkmeter,
179                   jacklr4filt,
180                   jacknmeter,
181                   jacknoise,
182                   jackplayer,
183                   jacksignal,
184                   jackmatconv,
185                   jackconvolv,
186                   jackgainctl,
187                   jackpeaklim,
188                   jackparameq])
189