]>
Commit | Line | Data |
---|---|---|
1 | ## | |
2 | ## This file is part of the libsigrok project. | |
3 | ## | |
4 | ## Copyright (C) 2010-2012 Bert Vermeulen <bert@biot.com> | |
5 | ## Copyright (C) 2012 Alexandru Gagniuc <mr.nuke.me@gmail.com> | |
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 | ACLOCAL_AMFLAGS = -I m4 | |
22 | AM_LIBTOOLFLAGS = --silent | |
23 | GNUMAKEFLAGS = --no-print-directory | |
24 | ||
25 | # distutils/setuptools cause trouble on distcheck. Disable for now. | |
26 | DISTCHECK_CONFIGURE_FLAGS = --disable-python | |
27 | ||
28 | FIRMWARE_DIR = $(datadir)/sigrok-firmware | |
29 | ||
30 | local_includes = -Iinclude -I$(srcdir)/include -I$(srcdir)/src -I. | |
31 | if BINDINGS_CXX | |
32 | local_includes += -Ibindings/cxx/include -I$(srcdir)/bindings/cxx/include -Ibindings/cxx | |
33 | endif | |
34 | # Do not hard-code the firmware location on Windows. | |
35 | if WIN32 | |
36 | global_defs = | |
37 | else | |
38 | global_defs = -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"' | |
39 | endif | |
40 | # Ensure that local include directories are always searched first. | |
41 | AM_CPPFLAGS = $(local_includes) $(global_defs) | |
42 | ||
43 | # The tests CFLAGS are a superset of the libsigrok CFLAGS, and the | |
44 | # python bindings CFLAGS are a superset of the C++ bindings CFLAGS. | |
45 | AM_CFLAGS = $(SR_EXTRA_CFLAGS) $(SR_WFLAGS) $(TESTS_CFLAGS) | |
46 | AM_CXXFLAGS = $(SR_WXXFLAGS) $(LIBSIGROKCXX_CFLAGS) | |
47 | ||
48 | lib_LTLIBRARIES = libsigrok.la | |
49 | ||
50 | # Backend files | |
51 | libsigrok_la_SOURCES = \ | |
52 | src/backend.c \ | |
53 | src/device.c \ | |
54 | src/session.c \ | |
55 | src/session_file.c \ | |
56 | src/session_driver.c \ | |
57 | src/drivers.c \ | |
58 | src/hwdriver.c \ | |
59 | src/trigger.c \ | |
60 | src/soft-trigger.c \ | |
61 | src/analog.c \ | |
62 | src/fallback.c \ | |
63 | src/resource.c \ | |
64 | src/strutil.c \ | |
65 | src/log.c \ | |
66 | src/version.c \ | |
67 | src/error.c \ | |
68 | src/std.c | |
69 | ||
70 | # Input modules | |
71 | libsigrok_la_SOURCES += \ | |
72 | src/input/input.c \ | |
73 | src/input/binary.c \ | |
74 | src/input/chronovu_la8.c \ | |
75 | src/input/csv.c \ | |
76 | src/input/raw_analog.c \ | |
77 | src/input/trace32_ad.c \ | |
78 | src/input/vcd.c \ | |
79 | src/input/wav.c | |
80 | ||
81 | # Output modules | |
82 | libsigrok_la_SOURCES += \ | |
83 | src/output/output.c \ | |
84 | src/output/analog.c \ | |
85 | src/output/ascii.c \ | |
86 | src/output/bits.c \ | |
87 | src/output/binary.c \ | |
88 | src/output/csv.c \ | |
89 | src/output/chronovu_la8.c \ | |
90 | src/output/wav.c \ | |
91 | src/output/gnuplot.c \ | |
92 | src/output/hex.c \ | |
93 | src/output/ols.c \ | |
94 | src/output/srzip.c \ | |
95 | src/output/vcd.c | |
96 | ||
97 | # Transform modules | |
98 | libsigrok_la_SOURCES += \ | |
99 | src/transform/transform.c \ | |
100 | src/transform/nop.c \ | |
101 | src/transform/scale.c \ | |
102 | src/transform/invert.c | |
103 | ||
104 | # SCPI support | |
105 | libsigrok_la_SOURCES += \ | |
106 | src/scpi.h \ | |
107 | src/scpi/scpi.c \ | |
108 | src/scpi/helpers.c \ | |
109 | src/scpi/scpi_tcp.c | |
110 | if NEED_RPC | |
111 | libsigrok_la_SOURCES += \ | |
112 | src/scpi/scpi_vxi.c \ | |
113 | src/scpi/vxi_clnt.c \ | |
114 | src/scpi/vxi_xdr.c \ | |
115 | src/scpi/vxi.h | |
116 | endif | |
117 | if NEED_SERIAL | |
118 | libsigrok_la_SOURCES += \ | |
119 | src/serial.c \ | |
120 | src/scpi/scpi_serial.c | |
121 | endif | |
122 | if NEED_USB | |
123 | libsigrok_la_SOURCES += \ | |
124 | src/ezusb.c \ | |
125 | src/usb.c \ | |
126 | src/scpi/scpi_usbtmc_libusb.c | |
127 | endif | |
128 | if NEED_VISA | |
129 | libsigrok_la_SOURCES += \ | |
130 | src/scpi/scpi_visa.c | |
131 | endif | |
132 | if NEED_GPIB | |
133 | libsigrok_la_SOURCES += \ | |
134 | src/scpi/scpi_libgpib.c | |
135 | endif | |
136 | ||
137 | # Modbus support | |
138 | libsigrok_la_SOURCES += \ | |
139 | src/modbus/modbus.c | |
140 | if NEED_SERIAL | |
141 | libsigrok_la_SOURCES += \ | |
142 | src/modbus/modbus_serial_rtu.c | |
143 | endif | |
144 | ||
145 | # Hardware (DMM chip parsers) | |
146 | libsigrok_la_SOURCES += \ | |
147 | src/dmm/es519xx.c \ | |
148 | src/dmm/fs9721.c \ | |
149 | src/dmm/fs9922.c \ | |
150 | src/dmm/m2110.c \ | |
151 | src/dmm/metex14.c \ | |
152 | src/dmm/rs9lcd.c \ | |
153 | src/dmm/bm25x.c \ | |
154 | src/dmm/ut71x.c \ | |
155 | src/dmm/ut372.c \ | |
156 | src/dmm/vc870.c \ | |
157 | src/dmm/dtm0660.c | |
158 | ||
159 | # Hardware (LCR chip parsers) | |
160 | if NEED_SERIAL | |
161 | libsigrok_la_SOURCES += \ | |
162 | src/lcr/es51919.c | |
163 | endif | |
164 | ||
165 | # Hardware (Scale protocol parsers) | |
166 | libsigrok_la_SOURCES += \ | |
167 | src/scale/kern.c | |
168 | ||
169 | # Hardware drivers | |
170 | if HW_AGILENT_DMM | |
171 | libsigrok_la_SOURCES += \ | |
172 | src/hardware/agilent-dmm/api.c \ | |
173 | src/hardware/agilent-dmm/agilent-dmm.h \ | |
174 | src/hardware/agilent-dmm/sched.c | |
175 | endif | |
176 | if HW_APPA_55II | |
177 | libsigrok_la_SOURCES += \ | |
178 | src/hardware/appa-55ii/protocol.h \ | |
179 | src/hardware/appa-55ii/protocol.c \ | |
180 | src/hardware/appa-55ii/api.c | |
181 | endif | |
182 | if HW_ARACHNID_LABS_RE_LOAD_PRO | |
183 | libsigrok_la_SOURCES += \ | |
184 | src/hardware/arachnid-labs-re-load-pro/protocol.h \ | |
185 | src/hardware/arachnid-labs-re-load-pro/protocol.c \ | |
186 | src/hardware/arachnid-labs-re-load-pro/api.c | |
187 | endif | |
188 | if HW_ASIX_SIGMA | |
189 | libsigrok_la_SOURCES += \ | |
190 | src/hardware/asix-sigma/protocol.h \ | |
191 | src/hardware/asix-sigma/protocol.c \ | |
192 | src/hardware/asix-sigma/api.c | |
193 | endif | |
194 | if HW_ATTEN_PPS3XXX | |
195 | libsigrok_la_SOURCES += \ | |
196 | src/hardware/atten-pps3xxx/protocol.h \ | |
197 | src/hardware/atten-pps3xxx/protocol.c \ | |
198 | src/hardware/atten-pps3xxx/api.c | |
199 | endif | |
200 | if HW_BAYLIBRE_ACME | |
201 | libsigrok_la_SOURCES += \ | |
202 | src/hardware/baylibre-acme/protocol.h \ | |
203 | src/hardware/baylibre-acme/protocol.c \ | |
204 | src/hardware/baylibre-acme/api.c \ | |
205 | src/hardware/baylibre-acme/gpio.h \ | |
206 | src/hardware/baylibre-acme/gpio.c | |
207 | endif | |
208 | if HW_BEAGLELOGIC | |
209 | libsigrok_la_SOURCES += \ | |
210 | src/hardware/beaglelogic/beaglelogic.h \ | |
211 | src/hardware/beaglelogic/protocol.h \ | |
212 | src/hardware/beaglelogic/protocol.c \ | |
213 | src/hardware/beaglelogic/api.c | |
214 | endif | |
215 | if HW_BRYMEN_BM86X | |
216 | libsigrok_la_SOURCES += \ | |
217 | src/hardware/brymen-bm86x/protocol.h \ | |
218 | src/hardware/brymen-bm86x/protocol.c \ | |
219 | src/hardware/brymen-bm86x/api.c | |
220 | endif | |
221 | if HW_BRYMEN_DMM | |
222 | libsigrok_la_SOURCES += \ | |
223 | src/hardware/brymen-dmm/parser.c \ | |
224 | src/hardware/brymen-dmm/protocol.h \ | |
225 | src/hardware/brymen-dmm/protocol.c \ | |
226 | src/hardware/brymen-dmm/api.c | |
227 | endif | |
228 | if HW_CEM_DT_885X | |
229 | libsigrok_la_SOURCES += \ | |
230 | src/hardware/cem-dt-885x/protocol.h \ | |
231 | src/hardware/cem-dt-885x/protocol.c \ | |
232 | src/hardware/cem-dt-885x/api.c | |
233 | endif | |
234 | if HW_CENTER_3XX | |
235 | libsigrok_la_SOURCES += \ | |
236 | src/hardware/center-3xx/protocol.h \ | |
237 | src/hardware/center-3xx/protocol.c \ | |
238 | src/hardware/center-3xx/api.c | |
239 | endif | |
240 | if HW_CHRONOVU_LA | |
241 | libsigrok_la_SOURCES += \ | |
242 | src/hardware/chronovu-la/protocol.h \ | |
243 | src/hardware/chronovu-la/protocol.c \ | |
244 | src/hardware/chronovu-la/api.c | |
245 | endif | |
246 | if HW_COLEAD_SLM | |
247 | libsigrok_la_SOURCES += \ | |
248 | src/hardware/colead-slm/protocol.h \ | |
249 | src/hardware/colead-slm/protocol.c \ | |
250 | src/hardware/colead-slm/api.c | |
251 | endif | |
252 | if HW_CONRAD_DIGI_35_CPU | |
253 | libsigrok_la_SOURCES += \ | |
254 | src/hardware/conrad-digi-35-cpu/protocol.h \ | |
255 | src/hardware/conrad-digi-35-cpu/protocol.c \ | |
256 | src/hardware/conrad-digi-35-cpu/api.c | |
257 | endif | |
258 | if HW_DEMO | |
259 | libsigrok_la_SOURCES += \ | |
260 | src/hardware/demo/demo.c | |
261 | endif | |
262 | if HW_DEREE_DE5000 | |
263 | libsigrok_la_SOURCES += \ | |
264 | src/hardware/deree-de5000/api.c | |
265 | endif | |
266 | if HW_FLUKE_DMM | |
267 | libsigrok_la_SOURCES += \ | |
268 | src/hardware/fluke-dmm/fluke-dmm.h \ | |
269 | src/hardware/fluke-dmm/fluke.c \ | |
270 | src/hardware/fluke-dmm/api.c | |
271 | endif | |
272 | if HW_FX2LAFW | |
273 | libsigrok_la_SOURCES += \ | |
274 | src/hardware/fx2lafw/protocol.h \ | |
275 | src/hardware/fx2lafw/protocol.c \ | |
276 | src/hardware/fx2lafw/api.c \ | |
277 | src/hardware/fx2lafw/dslogic.c \ | |
278 | src/hardware/fx2lafw/dslogic.h | |
279 | endif | |
280 | if HW_GMC_MH_1X_2X | |
281 | libsigrok_la_SOURCES += \ | |
282 | src/hardware/gmc-mh-1x-2x/protocol.h \ | |
283 | src/hardware/gmc-mh-1x-2x/protocol.c \ | |
284 | src/hardware/gmc-mh-1x-2x/api.c | |
285 | endif | |
286 | if HW_GWINSTEK_GDS_800 | |
287 | libsigrok_la_SOURCES += \ | |
288 | src/hardware/gwinstek-gds-800/protocol.h \ | |
289 | src/hardware/gwinstek-gds-800/protocol.c \ | |
290 | src/hardware/gwinstek-gds-800/api.c | |
291 | endif | |
292 | if HW_HAMEG_HMO | |
293 | libsigrok_la_SOURCES += \ | |
294 | src/hardware/hameg-hmo/protocol.h \ | |
295 | src/hardware/hameg-hmo/protocol.c \ | |
296 | src/hardware/hameg-hmo/api.c | |
297 | endif | |
298 | if HW_HANTEK_6XXX | |
299 | libsigrok_la_SOURCES += \ | |
300 | src/hardware/hantek-6xxx/protocol.h \ | |
301 | src/hardware/hantek-6xxx/protocol.c \ | |
302 | src/hardware/hantek-6xxx/api.c | |
303 | endif | |
304 | if HW_HANTEK_DSO | |
305 | libsigrok_la_SOURCES += \ | |
306 | src/hardware/hantek-dso/dso.h \ | |
307 | src/hardware/hantek-dso/dso.c \ | |
308 | src/hardware/hantek-dso/api.c | |
309 | endif | |
310 | if HW_HUNG_CHANG_DSO_2100 | |
311 | libsigrok_la_SOURCES += \ | |
312 | src/hardware/hung-chang-dso-2100/protocol.h \ | |
313 | src/hardware/hung-chang-dso-2100/protocol.c \ | |
314 | src/hardware/hung-chang-dso-2100/api.c | |
315 | endif | |
316 | if HW_IKALOGIC_SCANALOGIC2 | |
317 | libsigrok_la_SOURCES += \ | |
318 | src/hardware/ikalogic-scanalogic2/protocol.h \ | |
319 | src/hardware/ikalogic-scanalogic2/protocol.c \ | |
320 | src/hardware/ikalogic-scanalogic2/api.c | |
321 | endif | |
322 | if HW_IKALOGIC_SCANAPLUS | |
323 | libsigrok_la_SOURCES += \ | |
324 | src/hardware/ikalogic-scanaplus/protocol.h \ | |
325 | src/hardware/ikalogic-scanaplus/protocol.c \ | |
326 | src/hardware/ikalogic-scanaplus/api.c | |
327 | endif | |
328 | if HW_KECHENG_KC_330B | |
329 | libsigrok_la_SOURCES += \ | |
330 | src/hardware/kecheng-kc-330b/protocol.h \ | |
331 | src/hardware/kecheng-kc-330b/protocol.c \ | |
332 | src/hardware/kecheng-kc-330b/api.c | |
333 | endif | |
334 | if HW_KERN_SCALE | |
335 | libsigrok_la_SOURCES += \ | |
336 | src/hardware/kern-scale/protocol.h \ | |
337 | src/hardware/kern-scale/protocol.c \ | |
338 | src/hardware/kern-scale/api.c | |
339 | endif | |
340 | if HW_KORAD_KAXXXXP | |
341 | libsigrok_la_SOURCES += \ | |
342 | src/hardware/korad-kaxxxxp/protocol.h \ | |
343 | src/hardware/korad-kaxxxxp/protocol.c \ | |
344 | src/hardware/korad-kaxxxxp/api.c | |
345 | endif | |
346 | if HW_LASCAR_EL_USB | |
347 | libsigrok_la_SOURCES += \ | |
348 | src/hardware/lascar-el-usb/protocol.h \ | |
349 | src/hardware/lascar-el-usb/protocol.c \ | |
350 | src/hardware/lascar-el-usb/api.c | |
351 | endif | |
352 | if HW_LECROY_LOGICSTUDIO | |
353 | libsigrok_la_SOURCES += \ | |
354 | src/hardware/lecroy-logicstudio/protocol.h \ | |
355 | src/hardware/lecroy-logicstudio/protocol.c \ | |
356 | src/hardware/lecroy-logicstudio/api.c | |
357 | endif | |
358 | if HW_MANSON_HCS_3XXX | |
359 | libsigrok_la_SOURCES += \ | |
360 | src/hardware/manson-hcs-3xxx/protocol.h \ | |
361 | src/hardware/manson-hcs-3xxx/protocol.c \ | |
362 | src/hardware/manson-hcs-3xxx/api.c | |
363 | endif | |
364 | if HW_MAYNUO_M97 | |
365 | libsigrok_la_SOURCES += \ | |
366 | src/hardware/maynuo-m97/protocol.h \ | |
367 | src/hardware/maynuo-m97/protocol.c \ | |
368 | src/hardware/maynuo-m97/api.c | |
369 | endif | |
370 | if HW_MIC_985XX | |
371 | libsigrok_la_SOURCES += \ | |
372 | src/hardware/mic-985xx/protocol.h \ | |
373 | src/hardware/mic-985xx/protocol.c \ | |
374 | src/hardware/mic-985xx/api.c | |
375 | endif | |
376 | if HW_MOTECH_LPS_30X | |
377 | libsigrok_la_SOURCES += \ | |
378 | src/hardware/motech-lps-30x/protocol.h \ | |
379 | src/hardware/motech-lps-30x/protocol.c \ | |
380 | src/hardware/motech-lps-30x/api.c | |
381 | endif | |
382 | if HW_NORMA_DMM | |
383 | libsigrok_la_SOURCES += \ | |
384 | src/hardware/norma-dmm/protocol.h \ | |
385 | src/hardware/norma-dmm/protocol.c \ | |
386 | src/hardware/norma-dmm/api.c | |
387 | endif | |
388 | if HW_OPENBENCH_LOGIC_SNIFFER | |
389 | libsigrok_la_SOURCES += \ | |
390 | src/hardware/openbench-logic-sniffer/protocol.h \ | |
391 | src/hardware/openbench-logic-sniffer/protocol.c \ | |
392 | src/hardware/openbench-logic-sniffer/api.c | |
393 | endif | |
394 | if HW_PIPISTRELLO_OLS | |
395 | libsigrok_la_SOURCES += \ | |
396 | src/hardware/pipistrello-ols/protocol.h \ | |
397 | src/hardware/pipistrello-ols/protocol.c \ | |
398 | src/hardware/pipistrello-ols/api.c | |
399 | endif | |
400 | if HW_RIGOL_DS | |
401 | libsigrok_la_SOURCES += \ | |
402 | src/hardware/rigol-ds/protocol.h \ | |
403 | src/hardware/rigol-ds/protocol.c \ | |
404 | src/hardware/rigol-ds/api.c | |
405 | endif | |
406 | if HW_SALEAE_LOGIC16 | |
407 | libsigrok_la_SOURCES += \ | |
408 | src/hardware/saleae-logic16/protocol.h \ | |
409 | src/hardware/saleae-logic16/protocol.c \ | |
410 | src/hardware/saleae-logic16/api.c | |
411 | endif | |
412 | if HW_SCPI_PPS | |
413 | libsigrok_la_SOURCES += \ | |
414 | src/hardware/scpi-pps/protocol.h \ | |
415 | src/hardware/scpi-pps/protocol.c \ | |
416 | src/hardware/scpi-pps/profiles.c \ | |
417 | src/hardware/scpi-pps/api.c | |
418 | endif | |
419 | if HW_SERIAL_DMM | |
420 | libsigrok_la_SOURCES += \ | |
421 | src/hardware/serial-dmm/protocol.h \ | |
422 | src/hardware/serial-dmm/protocol.c \ | |
423 | src/hardware/serial-dmm/api.c | |
424 | endif | |
425 | if HW_SYSCLK_LWLA | |
426 | libsigrok_la_SOURCES += \ | |
427 | src/hardware/sysclk-lwla/lwla.h \ | |
428 | src/hardware/sysclk-lwla/lwla.c \ | |
429 | src/hardware/sysclk-lwla/lwla1016.c \ | |
430 | src/hardware/sysclk-lwla/lwla1034.c \ | |
431 | src/hardware/sysclk-lwla/protocol.h \ | |
432 | src/hardware/sysclk-lwla/protocol.c \ | |
433 | src/hardware/sysclk-lwla/api.c | |
434 | endif | |
435 | if HW_TELEINFO | |
436 | libsigrok_la_SOURCES += \ | |
437 | src/hardware/teleinfo/protocol.h \ | |
438 | src/hardware/teleinfo/protocol.c \ | |
439 | src/hardware/teleinfo/api.c | |
440 | endif | |
441 | if HW_TESTO | |
442 | libsigrok_la_SOURCES += \ | |
443 | src/hardware/testo/protocol.h \ | |
444 | src/hardware/testo/protocol.c \ | |
445 | src/hardware/testo/api.c | |
446 | endif | |
447 | if HW_TONDAJ_SL_814 | |
448 | libsigrok_la_SOURCES += \ | |
449 | src/hardware/tondaj-sl-814/protocol.h \ | |
450 | src/hardware/tondaj-sl-814/protocol.c \ | |
451 | src/hardware/tondaj-sl-814/api.c | |
452 | endif | |
453 | if HW_UNI_T_DMM | |
454 | libsigrok_la_SOURCES += \ | |
455 | src/hardware/uni-t-dmm/protocol.h \ | |
456 | src/hardware/uni-t-dmm/protocol.c \ | |
457 | src/hardware/uni-t-dmm/api.c | |
458 | endif | |
459 | if HW_UNI_T_UT32X | |
460 | libsigrok_la_SOURCES += \ | |
461 | src/hardware/uni-t-ut32x/protocol.h \ | |
462 | src/hardware/uni-t-ut32x/protocol.c \ | |
463 | src/hardware/uni-t-ut32x/api.c | |
464 | endif | |
465 | if HW_VICTOR_DMM | |
466 | libsigrok_la_SOURCES += \ | |
467 | src/hardware/victor-dmm/protocol.h \ | |
468 | src/hardware/victor-dmm/protocol.c \ | |
469 | src/hardware/victor-dmm/api.c | |
470 | endif | |
471 | if HW_YOKOGAWA_DLM | |
472 | libsigrok_la_SOURCES += \ | |
473 | src/hardware/yokogawa-dlm/protocol.h \ | |
474 | src/hardware/yokogawa-dlm/protocol.c \ | |
475 | src/hardware/yokogawa-dlm/protocol_wrappers.h \ | |
476 | src/hardware/yokogawa-dlm/protocol_wrappers.c \ | |
477 | src/hardware/yokogawa-dlm/api.c | |
478 | endif | |
479 | if HW_ZEROPLUS_LOGIC_CUBE | |
480 | libsigrok_la_SOURCES += \ | |
481 | src/hardware/zeroplus-logic-cube/analyzer.c \ | |
482 | src/hardware/zeroplus-logic-cube/analyzer.h \ | |
483 | src/hardware/zeroplus-logic-cube/gl_usb.h \ | |
484 | src/hardware/zeroplus-logic-cube/gl_usb.c \ | |
485 | src/hardware/zeroplus-logic-cube/protocol.h \ | |
486 | src/hardware/zeroplus-logic-cube/protocol.c \ | |
487 | src/hardware/zeroplus-logic-cube/api.c | |
488 | endif | |
489 | ||
490 | libsigrok_la_LIBADD = $(SR_EXTRA_LIBS) $(LIBSIGROK_LIBS) | |
491 | libsigrok_la_LDFLAGS = -version-info $(SR_LIB_VERSION) -no-undefined | |
492 | ||
493 | library_includedir = $(includedir)/libsigrok | |
494 | library_include_HEADERS = \ | |
495 | include/libsigrok/libsigrok.h \ | |
496 | include/libsigrok/proto.h | |
497 | nodist_library_include_HEADERS = \ | |
498 | include/libsigrok/version.h | |
499 | noinst_HEADERS = src/libsigrok-internal.h | |
500 | ||
501 | pkgconfigdir = $(libdir)/pkgconfig | |
502 | pkgconfig_DATA = libsigrok.pc | |
503 | ||
504 | EXTRA_DIST = \ | |
505 | Doxyfile \ | |
506 | HACKING \ | |
507 | README.devices \ | |
508 | bindings/cxx/ConfigKey_methods.cpp \ | |
509 | bindings/cxx/ConfigKey_methods.hpp \ | |
510 | bindings/cxx/ConfigKey_methods.i \ | |
511 | bindings/cxx/Doxyfile \ | |
512 | bindings/cxx/QuantityFlag_methods.cpp \ | |
513 | bindings/cxx/QuantityFlag_methods.hpp \ | |
514 | bindings/cxx/enums.py \ | |
515 | bindings/python/Doxyfile \ | |
516 | bindings/python/setup.py \ | |
517 | bindings/python/sigrok/__init__.py \ | |
518 | bindings/python/sigrok/core/__init__.py \ | |
519 | bindings/python/sigrok/core/classes.i \ | |
520 | bindings/java/Doxyfile \ | |
521 | bindings/java/org/sigrok/core/classes/classes.i \ | |
522 | bindings/java/org/sigrok/core/interfaces/DatafeedCallback.java \ | |
523 | bindings/java/org/sigrok/core/interfaces/LogCallback.java \ | |
524 | bindings/swig/classes.i \ | |
525 | bindings/swig/doc.py \ | |
526 | bindings/swig/templates.i \ | |
527 | contrib/gnuplot_chronovu_la8.gpi \ | |
528 | contrib/gnuplot_rigol_ds1xx2.gpi \ | |
529 | contrib/gnuplot_usbeesx.gpi \ | |
530 | contrib/gnuplot_usbeedx8.gpi \ | |
531 | contrib/gnuplot_usbeedx16.gpi \ | |
532 | contrib/sigrok-logo-notext.png \ | |
533 | contrib/z60_libsigrok.rules | |
534 | ||
535 | if HAVE_CHECK | |
536 | TESTS = tests/main | |
537 | check_PROGRAMS = ${TESTS} | |
538 | endif | |
539 | ||
540 | tests_main_SOURCES = \ | |
541 | include/libsigrok/libsigrok.h \ | |
542 | tests/lib.c \ | |
543 | tests/lib.h \ | |
544 | tests/main.c \ | |
545 | tests/core.c \ | |
546 | tests/input_all.c \ | |
547 | tests/input_binary.c \ | |
548 | tests/output_all.c \ | |
549 | tests/transform_all.c \ | |
550 | tests/session.c \ | |
551 | tests/strutil.c \ | |
552 | tests/version.c \ | |
553 | tests/driver_all.c \ | |
554 | tests/device.c \ | |
555 | tests/trigger.c \ | |
556 | tests/analog.c | |
557 | ||
558 | tests_main_LDADD = libsigrok.la $(SR_EXTRA_LIBS) $(TESTS_LIBS) | |
559 | ||
560 | BUILD_EXTRA = | |
561 | INSTALL_EXTRA = | |
562 | UNINSTALL_EXTRA = | |
563 | CLEAN_EXTRA = | |
564 | ||
565 | if BINDINGS_CXX | |
566 | ||
567 | lib_LTLIBRARIES += bindings/cxx/libsigrokcxx.la | |
568 | ||
569 | bindings_cxx_libsigrokcxx_la_SOURCES = bindings/cxx/classes.cpp | |
570 | ||
571 | bindings_cxx_libsigrokcxx_la_LIBADD = libsigrok.la $(SR_EXTRA_LIBS) $(LIBSIGROKCXX_LIBS) | |
572 | bindings_cxx_libsigrokcxx_la_LDFLAGS = -version-info $(SR_LIB_VERSION) -no-undefined | |
573 | ||
574 | bindings_cxx_libsigrokcxx_la_includedir = $(includedir)/libsigrokcxx | |
575 | bindings_cxx_libsigrokcxx_la_include_HEADERS = \ | |
576 | bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp | |
577 | nodist_bindings_cxx_libsigrokcxx_la_include_HEADERS = \ | |
578 | bindings/cxx/include/libsigrokcxx/enums.hpp | |
579 | ||
580 | pkgconfig_DATA += bindings/cxx/libsigrokcxx.pc | |
581 | ||
582 | doxy/xml/index.xml: include/libsigrok/libsigrok.h | |
583 | $(AM_V_GEN)cd $(srcdir) && BUILDDIR=$(abs_builddir)/ doxygen Doxyfile 2>/dev/null | |
584 | ||
585 | bindings/swig/enums.i: bindings/cxx/enums.timestamp | |
586 | bindings/cxx/enums.cpp: bindings/cxx/enums.timestamp | |
587 | bindings/cxx/include/libsigrokcxx/enums.hpp: bindings/cxx/enums.timestamp | |
588 | ||
589 | bindings/cxx/enums.timestamp: $(srcdir)/bindings/cxx/enums.py doxy/xml/index.xml \ | |
590 | bindings/cxx/ConfigKey_methods.cpp bindings/cxx/QuantityFlag_methods.cpp | |
591 | $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/cxx/enums.py doxy/xml/index.xml | |
592 | $(AM_V_at)touch $@ | |
593 | ||
594 | bindings/cxx/classes.lo: bindings/cxx/classes.cpp bindings/cxx/enums.cpp \ | |
595 | $(library_include_HEADERS) $(nodist_library_include_HEADERS) | |
596 | ||
597 | cxx-clean: | |
598 | rm -rf doxy/ | |
599 | rm -rf bindings/cxx/doxy/ | |
600 | rm -f bindings/swig/enums.i | |
601 | rm -f bindings/cxx/enums.cpp | |
602 | rm -f bindings/cxx/include/libsigrokcxx/enums.hpp | |
603 | rm -f bindings/cxx/enums.timestamp | |
604 | ||
605 | CLEAN_EXTRA += cxx-clean | |
606 | ||
607 | endif | |
608 | ||
609 | CPPXMLDOC = bindings/cxx/doxy/xml/index.xml | |
610 | ||
611 | $(CPPXMLDOC): bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp \ | |
612 | bindings/cxx/enums.timestamp | |
613 | $(AM_V_GEN)cd $(srcdir)/bindings/cxx && BUILDDIR=$(abs_builddir)/bindings/cxx/ doxygen Doxyfile 2>/dev/null | |
614 | ||
615 | # Macro definitions to be used by the SWIG parser. | |
616 | swig_defs = -Dnoexcept= -Dprivate=protected -DG_GNUC_BEGIN_IGNORE_DEPRECATIONS= -DG_GNUC_END_IGNORE_DEPRECATIONS= | |
617 | ||
618 | if BINDINGS_PYTHON | |
619 | ||
620 | PDIR = bindings/python | |
621 | PDOC_START = bindings/python/sigrok/core/doc_start.i | |
622 | PDOC_END = bindings/python/sigrok/core/doc_end.i | |
623 | ||
624 | setup_vars = VERSION='$(PACKAGE_VERSION)' CC='$(CXX)' CFLAGS='$(CXXFLAGS) $(SR_WXXFLAGS) $(PYSIGROK_CFLAGS)' CXXFLAGS='$(CXXFLAGS) $(SR_WXXFLAGS) $(PYSIGROK_CFLAGS)' LDADD='$(PYSIGROK_LIBS)' | |
625 | setup_quiet = --quiet | |
626 | setup_py = $(PYTHON) $(srcdir)/$(PDIR)/setup.py $(setup_vars) $(setup_quiet) | |
627 | ||
628 | $(PDOC_START): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) | |
629 | $(AM_V_at)test -d $(PDIR)/sigrok/core || $(MKDIR_P) $(PDIR)/sigrok/core | |
630 | $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/swig/doc.py python $(CPPXMLDOC) start > $@ | |
631 | ||
632 | $(PDOC_END): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) | |
633 | $(AM_V_at)test -d $(PDIR)/sigrok/core || $(MKDIR_P) $(PDIR)/sigrok/core | |
634 | $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/swig/doc.py python $(CPPXMLDOC) end > $@ | |
635 | ||
636 | python-build: $(PDIR)/timestamp | |
637 | ||
638 | $(PDIR)/timestamp: $(PDIR)/sigrok/core/classes.i \ | |
639 | bindings/swig/classes.i bindings/swig/templates.i \ | |
640 | bindings/swig/enums.i $(PDOC_START) $(PDOC_END) \ | |
641 | $(library_include_HEADERS) \ | |
642 | $(nodist_library_include_HEADERS) \ | |
643 | $(bindings_cxx_libsigrokcxx_la_include_HEADERS) \ | |
644 | $(nodist_bindings_cxx_libsigrokcxx_la_include_HEADERS) \ | |
645 | @ORDER@ bindings/cxx/libsigrokcxx.la | |
646 | $(AM_V_at)$(setup_py) clean --all 2>/dev/null | |
647 | $(AM_V_GEN)$(setup_py) build_ext --swig "$(SWIG)" --swig-opts '$(swig_defs)' build_py | |
648 | $(AM_V_at): >$@ | |
649 | ||
650 | python-install: | |
651 | $(AM_V_at)$(MKDIR_P) "$(DESTDIR)$(prefix)" "$(DESTDIR)$(exec_prefix)" | |
652 | destdir='$(DESTDIR)'; $(setup_py) install $${destdir:+"--root=$$destdir"} \ | |
653 | --prefix "$(prefix)" --exec-prefix "$(exec_prefix)" | |
654 | ||
655 | python-clean: | |
656 | -$(AM_V_at)rm -f $(PDIR)/timestamp | |
657 | -$(AM_V_at)rm -fr $(PDIR)/doxy | |
658 | -$(AM_V_at)$(setup_py) clean --all 2>/dev/null | |
659 | ||
660 | python-doc: | |
661 | $(AM_V_at)cd $(srcdir)/$(PDIR) && BUILDDIR="$(abs_builddir)/$(PDIR)/" doxygen Doxyfile 2>/dev/null | |
662 | ||
663 | BUILD_EXTRA += python-build | |
664 | INSTALL_EXTRA += python-install | |
665 | CLEAN_EXTRA += python-clean | |
666 | ||
667 | endif | |
668 | ||
669 | if BINDINGS_RUBY | |
670 | ||
671 | RDIR = bindings/ruby | |
672 | RDOC = $(RDIR)/doc.i | |
673 | RWRAP = $(RDIR)/classes_wrap.cpp | |
674 | ROBJ = $(RWRAP:.cpp=.o) | |
675 | REXT = $(RDIR)/sigrok.$(RUBY_DLEXT) | |
676 | ||
677 | $(RDOC): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) | |
678 | $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/swig/doc.py ruby $(CPPXMLDOC) > $@ | |
679 | ||
680 | $(RWRAP): $(RDIR)/classes.i $(RDOC) \ | |
681 | bindings/swig/classes.i bindings/swig/templates.i \ | |
682 | bindings/swig/enums.i | |
683 | $(AM_V_GEN)$(SWIG) -ruby -c++ -Ibindings -Ibindings/cxx/include $(swig_defs) -o $@ $< | |
684 | ||
685 | $(ROBJ): $(RWRAP) \ | |
686 | $(library_include_HEADERS) \ | |
687 | $(nodist_library_include_HEADERS) \ | |
688 | $(bindings_cxx_libsigrokcxx_la_include_HEADERS) \ | |
689 | $(nodist_bindings_cxx_libsigrokcxx_la_include_HEADERS) | |
690 | $(AM_V_CXX)$(CXX) $(RBSIGROK_CFLAGS) -I. -Iinclude -Ibindings/cxx/include -fPIC -o $@ -c $< | |
691 | ||
692 | $(REXT): $(ROBJ) @ORDER@ bindings/cxx/libsigrokcxx.la | |
693 | $(AM_V_CXXLD)$(CXX) -shared -std=c++11 -o $@ $< -lsigrokcxx -Lbindings/cxx/.libs $(RBSIGROK_LIBS) | |
694 | ||
695 | ruby-build: $(REXT) | |
696 | ||
697 | ruby-install: $(REXT) | |
698 | $(INSTALL) -d $(DESTDIR)$(prefix)/$(RBSIGROK_EXTDIR) | |
699 | $(INSTALL) $< $(DESTDIR)$(prefix)/$(RBSIGROK_EXTDIR) | |
700 | ||
701 | ruby-clean: | |
702 | -$(AM_V_at)rm -fr $(RDIR)/doc | |
703 | -$(AM_V_at)rm $(REXT) $(ROBJ) $(RWRAP) $(RDOC) | |
704 | ||
705 | ruby-doc: $(RWRAP) | |
706 | $(AM_V_at)yard doc -o $(RDIR)/doc $< | |
707 | ||
708 | BUILD_EXTRA += ruby-build | |
709 | INSTALL_EXTRA += ruby-install | |
710 | CLEAN_EXTRA += ruby-clean | |
711 | ||
712 | endif | |
713 | ||
714 | if BINDINGS_JAVA | |
715 | ||
716 | JDIR = bindings/java | |
717 | JPKG = org/sigrok/core | |
718 | JCLS = $(JDIR)/$(JPKG)/classes | |
719 | JINT = $(JDIR)/$(JPKG)/interfaces | |
720 | JSRC = $(JCLS)/*.java $(srcdir)/$(JINT)/*.java | |
721 | JSWG = $(JCLS)/classes.i | |
722 | JDOC = $(JCLS)/doc.i | |
723 | JCXX = $(JCLS)/classes_wrap.cxx | |
724 | JLIB = $(JDIR)/libsigrok_java_core_classes.so | |
725 | JJAR = $(JDIR)/sigrok-core.jar | |
726 | ||
727 | java_cleanfiles = $(JCXX) $(JCLS)/*.java $(JCLS)/*.class $(JINT)/*.class $(JJAR) $(JLIB) | |
728 | ||
729 | java-build: $(JJAR) $(JLIB) | |
730 | ||
731 | $(JDOC): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) | |
732 | $(AM_V_at)test -d $(JCLS) || $(MKDIR_P) $(JCLS) | |
733 | $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/swig/doc.py java $(CPPXMLDOC) > $@ | |
734 | ||
735 | $(JCXX): $(srcdir)/$(JSWG) $(JDOC) bindings/swig/classes.i \ | |
736 | bindings/swig/templates.i bindings/swig/enums.i \ | |
737 | $(bindings_cxx_libsigrokcxx_la_include_HEADERS) \ | |
738 | $(nodist_bindings_cxx_libsigrokcxx_la_include_HEADERS) | |
739 | -$(AM_V_at)rm -f $(java_cleanfiles) | |
740 | $(AM_V_GEN)$(SWIG) -c++ $(swig_defs) \ | |
741 | -java -package org.sigrok.core.classes \ | |
742 | -Ibindings -I$(JCLS) $(local_includes) -I$(srcdir) $(JNI_CPPFLAGS) \ | |
743 | -outdir $(JCLS) -o $@ $(srcdir)/$(JSWG) | |
744 | ||
745 | $(JJAR): $(JCXX) | |
746 | $(AM_V_GEN)$(JAVAC) -d $(JDIR) $(JSRC) | |
747 | $(AM_V_at)jar cf $(JJAR) -C $(JDIR) $(JPKG) | |
748 | ||
749 | $(JLIB): $(JCXX) \ | |
750 | $(library_include_HEADERS) $(nodist_library_include_HEADERS) \ | |
751 | $(bindings_cxx_libsigrokcxx_la_include_HEADERS) \ | |
752 | $(nodist_bindings_cxx_libsigrokcxx_la_include_HEADERS) \ | |
753 | @ORDER@ bindings/cxx/libsigrokcxx.la | |
754 | $(AM_V_GEN)$(CXXCOMPILE) $(JNI_CPPFLAGS) -L.libs -Lbindings/cxx/.libs \ | |
755 | -fno-strict-aliasing -fPIC -shared $(JCLS)/classes_wrap.cxx \ | |
756 | -lsigrokcxx $(LIBSIGROKCXX_LIBS) -o $(JLIB) | |
757 | ||
758 | java-install: | |
759 | $(INSTALL) -d $(DESTDIR)$(libdir)/jni | |
760 | $(INSTALL) $(JLIB) $(DESTDIR)$(libdir)/jni | |
761 | $(INSTALL) -d $(DESTDIR)$(datadir)/java | |
762 | $(INSTALL) $(JJAR) $(DESTDIR)$(datadir)/java | |
763 | ||
764 | java-uninstall: | |
765 | -rm -f $(DESTDIR)$(datadir)/java/sigrok-core.jar | |
766 | -rm -f $(DESTDIR)$(libdir)/jni/libsigrok_java_core_classes.so | |
767 | ||
768 | java-clean: | |
769 | -$(AM_V_at)rm -f $(java_cleanfiles) $(JDOC) | |
770 | -$(AM_V_at)rm -fr $(JDIR)/doxy | |
771 | ||
772 | java-doc: | |
773 | $(AM_V_at)cd $(srcdir)/$(JDIR) && BUILDDIR="$(abs_builddir)/$(JDIR)/" doxygen Doxyfile | |
774 | ||
775 | BUILD_EXTRA += java-build | |
776 | INSTALL_EXTRA += java-install | |
777 | UNINSTALL_EXTRA += java-uninstall | |
778 | CLEAN_EXTRA += java-clean | |
779 | ||
780 | endif | |
781 | ||
782 | all-local: $(BUILD_EXTRA) | |
783 | install-exec-local: $(INSTALL_EXTRA) | |
784 | uninstall-local: $(UNINSTALL_EXTRA) | |
785 | clean-local: $(CLEAN_EXTRA) | |
786 | ||
787 | .PHONY: dist-changelog | |
788 | ||
789 | dist-hook: dist-changelog | |
790 | ||
791 | dist-changelog: | |
792 | $(AM_V_at)if test ! -d '$(top_srcdir)/.git'; then \ | |
793 | cp -f '$(top_srcdir)/ChangeLog' "$(top_distdir)/ChangeLog"; \ | |
794 | elif git -C '$(top_srcdir)' log >.ChangeLog.tmp; then \ | |
795 | mv -f .ChangeLog.tmp "$(top_distdir)/ChangeLog"; \ | |
796 | else \ | |
797 | rm -f .ChangeLog.tmp; exit 1; \ | |
798 | fi | |
799 |