]>
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 autostuff | |
22 | ||
23 | AM_CPPFLAGS = -I$(srcdir)/src -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"' | |
24 | ||
25 | lib_LTLIBRARIES = libsigrok.la | |
26 | ||
27 | # Backend files | |
28 | libsigrok_la_SOURCES = \ | |
29 | src/backend.c \ | |
30 | src/device.c \ | |
31 | src/session.c \ | |
32 | src/session_file.c \ | |
33 | src/session_driver.c \ | |
34 | src/drivers.c \ | |
35 | src/hwdriver.c \ | |
36 | src/trigger.c \ | |
37 | src/soft-trigger.c \ | |
38 | src/analog.c \ | |
39 | src/fallback.c \ | |
40 | src/strutil.c \ | |
41 | src/log.c \ | |
42 | src/version.c \ | |
43 | src/error.c \ | |
44 | src/std.c | |
45 | ||
46 | # Input modules | |
47 | libsigrok_la_SOURCES += \ | |
48 | src/input/input.c \ | |
49 | src/input/binary.c \ | |
50 | src/input/chronovu_la8.c \ | |
51 | src/input/csv.c \ | |
52 | src/input/vcd.c \ | |
53 | src/input/wav.c | |
54 | ||
55 | # Output modules | |
56 | libsigrok_la_SOURCES += \ | |
57 | src/output/output.c \ | |
58 | src/output/analog.c \ | |
59 | src/output/ascii.c \ | |
60 | src/output/bits.c \ | |
61 | src/output/binary.c \ | |
62 | src/output/csv.c \ | |
63 | src/output/chronovu_la8.c \ | |
64 | src/output/wav.c \ | |
65 | src/output/gnuplot.c \ | |
66 | src/output/hex.c \ | |
67 | src/output/ols.c \ | |
68 | src/output/srzip.c \ | |
69 | src/output/vcd.c | |
70 | ||
71 | # Transform modules | |
72 | libsigrok_la_SOURCES += \ | |
73 | src/transform/transform.c \ | |
74 | src/transform/nop.c \ | |
75 | src/transform/scale.c \ | |
76 | src/transform/invert.c | |
77 | ||
78 | # SCPI support | |
79 | libsigrok_la_SOURCES += \ | |
80 | src/scpi/scpi.c \ | |
81 | src/scpi/scpi_tcp.c | |
82 | if NEED_RPC | |
83 | libsigrok_la_SOURCES += \ | |
84 | src/scpi/scpi_vxi.c \ | |
85 | src/scpi/vxi_clnt.c \ | |
86 | src/scpi/vxi_xdr.c \ | |
87 | src/scpi/vxi.h | |
88 | endif | |
89 | if NEED_SERIAL | |
90 | libsigrok_la_SOURCES += \ | |
91 | src/serial.c \ | |
92 | src/scpi/scpi_serial.c | |
93 | endif | |
94 | if NEED_USB | |
95 | libsigrok_la_SOURCES += \ | |
96 | src/ezusb.c \ | |
97 | src/usb.c \ | |
98 | src/scpi/scpi_usbtmc_libusb.c | |
99 | endif | |
100 | if NEED_VISA | |
101 | libsigrok_la_SOURCES += \ | |
102 | src/scpi/scpi_visa.c | |
103 | endif | |
104 | if NEED_GPIB | |
105 | libsigrok_la_SOURCES += \ | |
106 | src/scpi/scpi_libgpib.c | |
107 | endif | |
108 | ||
109 | # Hardware (DMM chip parsers) | |
110 | libsigrok_la_SOURCES += \ | |
111 | src/dmm/es519xx.c \ | |
112 | src/dmm/fs9721.c \ | |
113 | src/dmm/fs9922.c \ | |
114 | src/dmm/m2110.c \ | |
115 | src/dmm/metex14.c \ | |
116 | src/dmm/rs9lcd.c \ | |
117 | src/dmm/bm25x.c \ | |
118 | src/dmm/ut71x.c | |
119 | ||
120 | # Hardware (LCR chip parsers) | |
121 | if NEED_SERIAL | |
122 | libsigrok_la_SOURCES += \ | |
123 | src/lcr/es51919.c | |
124 | endif | |
125 | ||
126 | # Hardware drivers | |
127 | if HW_AGILENT_DMM | |
128 | libsigrok_la_SOURCES += \ | |
129 | src/hardware/agilent-dmm/api.c \ | |
130 | src/hardware/agilent-dmm/agilent-dmm.h \ | |
131 | src/hardware/agilent-dmm/sched.c | |
132 | endif | |
133 | if HW_APPA_55II | |
134 | libsigrok_la_SOURCES += \ | |
135 | src/hardware/appa-55ii/protocol.h \ | |
136 | src/hardware/appa-55ii/protocol.c \ | |
137 | src/hardware/appa-55ii/api.c | |
138 | endif | |
139 | if HW_ASIX_SIGMA | |
140 | libsigrok_la_SOURCES += \ | |
141 | src/hardware/asix-sigma/asix-sigma.h \ | |
142 | src/hardware/asix-sigma/asix-sigma.c | |
143 | endif | |
144 | if HW_ATTEN_PPS3XXX | |
145 | libsigrok_la_SOURCES += \ | |
146 | src/hardware/atten-pps3xxx/protocol.h \ | |
147 | src/hardware/atten-pps3xxx/protocol.c \ | |
148 | src/hardware/atten-pps3xxx/api.c | |
149 | endif | |
150 | if HW_BAYLIBRE_ACME | |
151 | libsigrok_la_SOURCES += \ | |
152 | src/hardware/baylibre-acme/protocol.h \ | |
153 | src/hardware/baylibre-acme/protocol.c \ | |
154 | src/hardware/baylibre-acme/api.c \ | |
155 | src/hardware/baylibre-acme/gpio.h \ | |
156 | src/hardware/baylibre-acme/gpio.c | |
157 | endif | |
158 | if HW_BEAGLELOGIC | |
159 | libsigrok_la_SOURCES += \ | |
160 | src/hardware/beaglelogic/beaglelogic.h \ | |
161 | src/hardware/beaglelogic/protocol.h \ | |
162 | src/hardware/beaglelogic/protocol.c \ | |
163 | src/hardware/beaglelogic/api.c | |
164 | endif | |
165 | if HW_BRYMEN_BM86X | |
166 | libsigrok_la_SOURCES += \ | |
167 | src/hardware/brymen-bm86x/protocol.h \ | |
168 | src/hardware/brymen-bm86x/protocol.c \ | |
169 | src/hardware/brymen-bm86x/api.c | |
170 | endif | |
171 | if HW_BRYMEN_DMM | |
172 | libsigrok_la_SOURCES += \ | |
173 | src/hardware/brymen-dmm/parser.c \ | |
174 | src/hardware/brymen-dmm/protocol.h \ | |
175 | src/hardware/brymen-dmm/protocol.c \ | |
176 | src/hardware/brymen-dmm/api.c | |
177 | endif | |
178 | if HW_CEM_DT_885X | |
179 | libsigrok_la_SOURCES += \ | |
180 | src/hardware/cem-dt-885x/protocol.h \ | |
181 | src/hardware/cem-dt-885x/protocol.c \ | |
182 | src/hardware/cem-dt-885x/api.c | |
183 | endif | |
184 | if HW_CENTER_3XX | |
185 | libsigrok_la_SOURCES += \ | |
186 | src/hardware/center-3xx/protocol.h \ | |
187 | src/hardware/center-3xx/protocol.c \ | |
188 | src/hardware/center-3xx/api.c | |
189 | endif | |
190 | if HW_CHRONOVU_LA | |
191 | libsigrok_la_SOURCES += \ | |
192 | src/hardware/chronovu-la/protocol.h \ | |
193 | src/hardware/chronovu-la/protocol.c \ | |
194 | src/hardware/chronovu-la/api.c | |
195 | endif | |
196 | if HW_COLEAD_SLM | |
197 | libsigrok_la_SOURCES += \ | |
198 | src/hardware/colead-slm/protocol.h \ | |
199 | src/hardware/colead-slm/protocol.c \ | |
200 | src/hardware/colead-slm/api.c | |
201 | endif | |
202 | if HW_CONRAD_DIGI_35_CPU | |
203 | libsigrok_la_SOURCES += \ | |
204 | src/hardware/conrad-digi-35-cpu/protocol.h \ | |
205 | src/hardware/conrad-digi-35-cpu/protocol.c \ | |
206 | src/hardware/conrad-digi-35-cpu/api.c | |
207 | endif | |
208 | if HW_DEMO | |
209 | libsigrok_la_SOURCES += \ | |
210 | src/hardware/demo/demo.c | |
211 | endif | |
212 | if HW_DEREE_DE5000 | |
213 | libsigrok_la_SOURCES += \ | |
214 | src/hardware/deree-de5000/api.c | |
215 | endif | |
216 | if HW_FLUKE_DMM | |
217 | libsigrok_la_SOURCES += \ | |
218 | src/hardware/fluke-dmm/fluke-dmm.h \ | |
219 | src/hardware/fluke-dmm/fluke.c \ | |
220 | src/hardware/fluke-dmm/api.c | |
221 | endif | |
222 | if HW_FX2LAFW | |
223 | libsigrok_la_SOURCES += \ | |
224 | src/hardware/fx2lafw/protocol.h \ | |
225 | src/hardware/fx2lafw/protocol.c \ | |
226 | src/hardware/fx2lafw/api.c | |
227 | endif | |
228 | if HW_GMC_MH_1X_2X | |
229 | libsigrok_la_SOURCES += \ | |
230 | src/hardware/gmc-mh-1x-2x/protocol.h \ | |
231 | src/hardware/gmc-mh-1x-2x/protocol.c \ | |
232 | src/hardware/gmc-mh-1x-2x/api.c | |
233 | endif | |
234 | if HW_HAMEG_HMO | |
235 | libsigrok_la_SOURCES += \ | |
236 | src/hardware/hameg-hmo/protocol.h \ | |
237 | src/hardware/hameg-hmo/protocol.c \ | |
238 | src/hardware/hameg-hmo/api.c | |
239 | endif | |
240 | if HW_HANTEK_DSO | |
241 | libsigrok_la_SOURCES += \ | |
242 | src/hardware/hantek-dso/dso.h \ | |
243 | src/hardware/hantek-dso/dso.c \ | |
244 | src/hardware/hantek-dso/api.c | |
245 | endif | |
246 | if HW_IKALOGIC_SCANALOGIC2 | |
247 | libsigrok_la_SOURCES += \ | |
248 | src/hardware/ikalogic-scanalogic2/protocol.h \ | |
249 | src/hardware/ikalogic-scanalogic2/protocol.c \ | |
250 | src/hardware/ikalogic-scanalogic2/api.c | |
251 | endif | |
252 | if HW_IKALOGIC_SCANAPLUS | |
253 | libsigrok_la_SOURCES += \ | |
254 | src/hardware/ikalogic-scanaplus/protocol.h \ | |
255 | src/hardware/ikalogic-scanaplus/protocol.c \ | |
256 | src/hardware/ikalogic-scanaplus/api.c | |
257 | endif | |
258 | if HW_KECHENG_KC_330B | |
259 | libsigrok_la_SOURCES += \ | |
260 | src/hardware/kecheng-kc-330b/protocol.h \ | |
261 | src/hardware/kecheng-kc-330b/protocol.c \ | |
262 | src/hardware/kecheng-kc-330b/api.c | |
263 | endif | |
264 | if HW_LASCAR_EL_USB | |
265 | libsigrok_la_SOURCES += \ | |
266 | src/hardware/lascar-el-usb/protocol.h \ | |
267 | src/hardware/lascar-el-usb/protocol.c \ | |
268 | src/hardware/lascar-el-usb/api.c | |
269 | endif | |
270 | if HW_MANSON_HCS_3XXX | |
271 | libsigrok_la_SOURCES += \ | |
272 | src/hardware/manson-hcs-3xxx/protocol.h \ | |
273 | src/hardware/manson-hcs-3xxx/protocol.c \ | |
274 | src/hardware/manson-hcs-3xxx/api.c | |
275 | endif | |
276 | if HW_MIC_985XX | |
277 | libsigrok_la_SOURCES += \ | |
278 | src/hardware/mic-985xx/protocol.h \ | |
279 | src/hardware/mic-985xx/protocol.c \ | |
280 | src/hardware/mic-985xx/api.c | |
281 | endif | |
282 | if HW_MOTECH_LPS_30X | |
283 | libsigrok_la_SOURCES += \ | |
284 | src/hardware/motech-lps-30x/protocol.h \ | |
285 | src/hardware/motech-lps-30x/protocol.c \ | |
286 | src/hardware/motech-lps-30x/api.c | |
287 | endif | |
288 | if HW_NORMA_DMM | |
289 | libsigrok_la_SOURCES += \ | |
290 | src/hardware/norma-dmm/protocol.h \ | |
291 | src/hardware/norma-dmm/protocol.c \ | |
292 | src/hardware/norma-dmm/api.c | |
293 | endif | |
294 | if HW_OPENBENCH_LOGIC_SNIFFER | |
295 | libsigrok_la_SOURCES += \ | |
296 | src/hardware/openbench-logic-sniffer/protocol.h \ | |
297 | src/hardware/openbench-logic-sniffer/protocol.c \ | |
298 | src/hardware/openbench-logic-sniffer/api.c | |
299 | endif | |
300 | if HW_PIPISTRELLO_OLS | |
301 | libsigrok_la_SOURCES += \ | |
302 | src/hardware/pipistrello-ols/protocol.h \ | |
303 | src/hardware/pipistrello-ols/protocol.c \ | |
304 | src/hardware/pipistrello-ols/api.c | |
305 | endif | |
306 | if HW_RIGOL_DS | |
307 | libsigrok_la_SOURCES += \ | |
308 | src/hardware/rigol-ds/protocol.h \ | |
309 | src/hardware/rigol-ds/protocol.c \ | |
310 | src/hardware/rigol-ds/api.c | |
311 | endif | |
312 | if HW_SALEAE_LOGIC16 | |
313 | libsigrok_la_SOURCES += \ | |
314 | src/hardware/saleae-logic16/protocol.h \ | |
315 | src/hardware/saleae-logic16/protocol.c \ | |
316 | src/hardware/saleae-logic16/api.c | |
317 | endif | |
318 | if HW_SCPI_PPS | |
319 | libsigrok_la_SOURCES += \ | |
320 | src/hardware/scpi-pps/protocol.h \ | |
321 | src/hardware/scpi-pps/protocol.c \ | |
322 | src/hardware/scpi-pps/profiles.c \ | |
323 | src/hardware/scpi-pps/api.c | |
324 | endif | |
325 | if HW_SERIAL_DMM | |
326 | libsigrok_la_SOURCES += \ | |
327 | src/hardware/serial-dmm/protocol.h \ | |
328 | src/hardware/serial-dmm/protocol.c \ | |
329 | src/hardware/serial-dmm/api.c | |
330 | endif | |
331 | if HW_SYSCLK_LWLA | |
332 | libsigrok_la_SOURCES += \ | |
333 | src/hardware/sysclk-lwla/lwla.h \ | |
334 | src/hardware/sysclk-lwla/lwla.c \ | |
335 | src/hardware/sysclk-lwla/protocol.h \ | |
336 | src/hardware/sysclk-lwla/protocol.c \ | |
337 | src/hardware/sysclk-lwla/api.c | |
338 | endif | |
339 | if HW_TELEINFO | |
340 | libsigrok_la_SOURCES += \ | |
341 | src/hardware/teleinfo/protocol.h \ | |
342 | src/hardware/teleinfo/protocol.c \ | |
343 | src/hardware/teleinfo/api.c | |
344 | endif | |
345 | if HW_TESTO | |
346 | libsigrok_la_SOURCES += \ | |
347 | src/hardware/testo/protocol.h \ | |
348 | src/hardware/testo/protocol.c \ | |
349 | src/hardware/testo/api.c | |
350 | endif | |
351 | if HW_TONDAJ_SL_814 | |
352 | libsigrok_la_SOURCES += \ | |
353 | src/hardware/tondaj-sl-814/protocol.h \ | |
354 | src/hardware/tondaj-sl-814/protocol.c \ | |
355 | src/hardware/tondaj-sl-814/api.c | |
356 | endif | |
357 | if HW_UNI_T_DMM | |
358 | libsigrok_la_SOURCES += \ | |
359 | src/hardware/uni-t-dmm/protocol.h \ | |
360 | src/hardware/uni-t-dmm/protocol.c \ | |
361 | src/hardware/uni-t-dmm/api.c | |
362 | endif | |
363 | if HW_UNI_T_UT32X | |
364 | libsigrok_la_SOURCES += \ | |
365 | src/hardware/uni-t-ut32x/protocol.h \ | |
366 | src/hardware/uni-t-ut32x/protocol.c \ | |
367 | src/hardware/uni-t-ut32x/api.c | |
368 | endif | |
369 | if HW_VICTOR_DMM | |
370 | libsigrok_la_SOURCES += \ | |
371 | src/hardware/victor-dmm/protocol.h \ | |
372 | src/hardware/victor-dmm/protocol.c \ | |
373 | src/hardware/victor-dmm/api.c | |
374 | endif | |
375 | if HW_YOKOGAWA_DLM | |
376 | libsigrok_la_SOURCES += \ | |
377 | src/hardware/yokogawa-dlm/protocol.h \ | |
378 | src/hardware/yokogawa-dlm/protocol.c \ | |
379 | src/hardware/yokogawa-dlm/protocol_wrappers.h \ | |
380 | src/hardware/yokogawa-dlm/protocol_wrappers.c \ | |
381 | src/hardware/yokogawa-dlm/api.c | |
382 | endif | |
383 | if HW_ZEROPLUS_LOGIC_CUBE | |
384 | libsigrok_la_SOURCES += \ | |
385 | src/hardware/zeroplus-logic-cube/analyzer.c \ | |
386 | src/hardware/zeroplus-logic-cube/analyzer.h \ | |
387 | src/hardware/zeroplus-logic-cube/gl_usb.h \ | |
388 | src/hardware/zeroplus-logic-cube/gl_usb.c \ | |
389 | src/hardware/zeroplus-logic-cube/protocol.h \ | |
390 | src/hardware/zeroplus-logic-cube/protocol.c \ | |
391 | src/hardware/zeroplus-logic-cube/api.c | |
392 | endif | |
393 | ||
394 | libsigrok_la_LIBADD = $(LIBOBJS) | |
395 | ||
396 | libsigrok_la_LDFLAGS = $(SR_LIB_LDFLAGS) | |
397 | ||
398 | library_includedir = $(includedir)/libsigrok | |
399 | library_include_HEADERS = \ | |
400 | include/libsigrok/libsigrok.h \ | |
401 | include/libsigrok/proto.h \ | |
402 | include/libsigrok/version.h | |
403 | noinst_HEADERS = src/libsigrok-internal.h | |
404 | ||
405 | pkgconfigdir = $(libdir)/pkgconfig | |
406 | pkgconfig_DATA = libsigrok.pc | |
407 | ||
408 | EXTRA_DIST = \ | |
409 | Doxyfile \ | |
410 | HACKING \ | |
411 | README.devices \ | |
412 | contrib/gnuplot_chronovu_la8.gpi \ | |
413 | contrib/gnuplot_rigol_ds1xx2.gpi \ | |
414 | contrib/gnuplot_usbeesx.gpi \ | |
415 | contrib/gnuplot_usbeedx8.gpi \ | |
416 | contrib/gnuplot_usbeedx16.gpi \ | |
417 | contrib/sigrok-logo-notext.png \ | |
418 | contrib/z60_libsigrok.rules | |
419 | ||
420 | if HAVE_CHECK | |
421 | ||
422 | TESTS = tests/main | |
423 | ||
424 | check_PROGRAMS = ${TESTS} | |
425 | ||
426 | tests_main_SOURCES = \ | |
427 | include/libsigrok/libsigrok.h \ | |
428 | tests/lib.c \ | |
429 | tests/lib.h \ | |
430 | tests/main.c \ | |
431 | tests/core.c \ | |
432 | tests/input_all.c \ | |
433 | tests/input_binary.c \ | |
434 | tests/output_all.c \ | |
435 | tests/transform_all.c \ | |
436 | tests/session.c \ | |
437 | tests/strutil.c \ | |
438 | tests/version.c \ | |
439 | tests/driver_all.c \ | |
440 | tests/device.c \ | |
441 | tests/trigger.c | |
442 | ||
443 | tests_main_CFLAGS = @check_CFLAGS@ | |
444 | ||
445 | tests_main_LDADD = $(top_builddir)/libsigrok.la @check_LIBS@ | |
446 | ||
447 | endif | |
448 | ||
449 | BUILD_EXTRA = | |
450 | INSTALL_EXTRA = | |
451 | CLEAN_EXTRA = | |
452 | ||
453 | if BINDINGS_CXX | |
454 | ||
455 | lib_LTLIBRARIES += bindings/cxx/libsigrokcxx.la | |
456 | ||
457 | bindings_cxx_libsigrokcxx_la_SOURCES = bindings/cxx/classes.cpp | |
458 | ||
459 | bindings_cxx_libsigrokcxx_la_LIBADD = libsigrok.la $(glibmm_LIBS) | |
460 | ||
461 | bindings_cxx_libsigrokcxx_la_LDFLAGS = $(SR_LIB_LDFLAGS) | |
462 | ||
463 | bindings_cxx_libsigrokcxx_la_includedir = $(includedir)/libsigrokcxx | |
464 | bindings_cxx_libsigrokcxx_la_include_HEADERS = \ | |
465 | bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp \ | |
466 | bindings/cxx/include/libsigrokcxx/enums.hpp | |
467 | ||
468 | pkgconfig_DATA += bindings/cxx/libsigrokcxx.pc | |
469 | ||
470 | doxy/xml/index.xml: include/libsigrok/libsigrok.h | |
471 | $(AM_V_GEN)cd $(srcdir) && BUILDDIR=$(abs_builddir)/ doxygen Doxyfile 2>/dev/null | |
472 | ||
473 | bindings/cxx/enums.cpp: bindings/cxx/enums.timestamp | |
474 | ||
475 | bindings/cxx/include/libsigrokcxx/enums.hpp: bindings/cxx/enums.timestamp | |
476 | ||
477 | bindings/cxx/enums.timestamp: $(srcdir)/bindings/cxx/enums.py doxy/xml/index.xml \ | |
478 | bindings/cxx/ConfigKey_methods.cpp bindings/cxx/QuantityFlag_methods.cpp | |
479 | $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/cxx/enums.py doxy/xml/index.xml | |
480 | $(AM_V_at)touch $@ | |
481 | ||
482 | bindings/cxx/classes.lo: bindings/cxx/classes.cpp bindings/cxx/enums.cpp \ | |
483 | $(library_include_HEADERS) | |
484 | ||
485 | cxx-clean: | |
486 | rm -rf doxy/ | |
487 | rm -rf bindings/cxx/doxy/ | |
488 | rm -f bindings/cxx/enums.cpp | |
489 | rm -f bindings/cxx/include/libsigrokcxx/enums.hpp | |
490 | rm -f bindings/cxx/enums.timestamp | |
491 | ||
492 | CLEAN_EXTRA += cxx-clean | |
493 | ||
494 | endif | |
495 | ||
496 | CPPXMLDOC = bindings/cxx/doxy/xml/index.xml | |
497 | ||
498 | $(CPPXMLDOC): bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp \ | |
499 | bindings/cxx/enums.timestamp | |
500 | $(AM_V_GEN)cd $(srcdir)/bindings/cxx && BUILDDIR=$(abs_builddir)/bindings/cxx/ doxygen Doxyfile 2>/dev/null | |
501 | ||
502 | if BINDINGS_PYTHON | |
503 | ||
504 | PDIR = bindings/python | |
505 | PDOC = bindings/python/sigrok/core/doc.i | |
506 | ||
507 | $(PDOC): bindings/swig/doc.py $(CPPXMLDOC) | |
508 | $(AM_V_at)test -d $(PDIR)/sigrok/core || $(MKDIR_P) $(PDIR)/sigrok/core | |
509 | $(AM_V_GEN)$(PYTHON) $< python $(CPPXMLDOC) > $@ | |
510 | ||
511 | python-build: $(PDIR)/timestamp | |
512 | ||
513 | python-quietclean: | |
514 | $(AM_V_at)cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet clean --all 3>&1 1>&2 2>&3 \ | |
515 | | grep -v "can.t clean it"; true | |
516 | ||
517 | $(PDIR)/timestamp: bindings/cxx/libsigrokcxx.la $(PDIR)/sigrok/core/classes.i \ | |
518 | bindings/swig/classes.i $(PDOC) $(library_include_HEADERS) | |
519 | $(AM_V_at)$(MAKE) python-quietclean | |
520 | $(AM_V_GEN)cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet build 3>&1 1>&2 2>&3 \ | |
521 | | grep -v "command line option.*Wstrict-prototypes"; true | |
522 | $(AM_V_at)touch $(PDIR)/timestamp | |
523 | ||
524 | $(DESTDIR)$(prefix): | |
525 | $(MKDIR_P) $@ | |
526 | ||
527 | python-install: $(DESTDIR)$(prefix) | |
528 | cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet install --prefix $(prefix) `test "$(DESTDIR)" && echo --root=$(DESTDIR)` | |
529 | ||
530 | python-clean: | |
531 | $(AM_V_at)$(MAKE) python-quietclean | |
532 | $(AM_V_at)rm -f $(PDIR)/timestamp | |
533 | $(AM_V_at)rm -rf $(PDIR)/doxy/ | |
534 | ||
535 | python-doc: | |
536 | $(AM_V_at)cd $(srcdir)/$(PDIR) && BUILDDIR=$(abs_builddir)/$(PDIR)/ doxygen Doxyfile 2>/dev/null | |
537 | ||
538 | BUILD_EXTRA += python-build | |
539 | INSTALL_EXTRA += python-install | |
540 | CLEAN_EXTRA += python-clean | |
541 | ||
542 | endif | |
543 | ||
544 | if BINDINGS_JAVA | |
545 | ||
546 | JDIR = bindings/java | |
547 | JPKG = org/sigrok/core | |
548 | JCLS = $(JDIR)/$(JPKG)/classes | |
549 | JINT = $(JDIR)/$(JPKG)/interfaces | |
550 | JSRC = $(JCLS)/*.java $(srcdir)/$(JINT)/*.java | |
551 | JSWG = $(JCLS)/classes.i | |
552 | JDOC = $(JCLS)/doc.i | |
553 | JCXX = $(JCLS)/classes_wrap.cxx | |
554 | JLIB = $(JDIR)/libsigrok_java_core_classes.so | |
555 | JJAR = $(JDIR)/sigrok-core.jar | |
556 | ||
557 | java-build: $(JJAR) $(JLIB) | |
558 | ||
559 | $(JDOC): bindings/swig/doc.py $(CPPXMLDOC) | |
560 | $(AM_V_at)test -d $(JCLS) || $(MKDIR_P) $(JCLS) | |
561 | $(AM_V_GEN)python $< java $(CPPXMLDOC) > $@ | |
562 | ||
563 | $(JCXX): $(JSWG) $(JDOC) bindings/swig/classes.i $(library_include_HEADERS) | |
564 | $(AM_V_at)make java-clean | |
565 | $(AM_V_GEN)swig -c++ -java -package org.sigrok.core.classes \ | |
566 | -I$(srcdir)/include -I$(srcdir)/bindings/cxx/include -I$(srcdir) -I$(JCLS) -Ibindings/cxx/include -outdir $(JCLS) -o $@ $< | |
567 | ||
568 | $(JJAR): $(JCXX) | |
569 | $(AM_V_GEN)$(JAVAC) -sourcepath $(JDIR) -d $(JDIR) $(JSRC) | |
570 | $(AM_V_at)jar cf $(JJAR) -C $(JDIR) $(JPKG) | |
571 | ||
572 | $(JLIB): $(JCXX) bindings/cxx/libsigrokcxx.la $(library_include_HEADERS) | |
573 | $(AM_V_GEN)$(CXXCOMPILE) -L.libs -Lbindings/cxx/.libs \ | |
574 | -fno-strict-aliasing -fPIC -shared $(JCLS)/classes_wrap.cxx \ | |
575 | -lsigrokcxx -o $(JLIB) | |
576 | ||
577 | java-install: | |
578 | $(INSTALL) -d $(libdir)/jni | |
579 | $(INSTALL) $(JLIB) -t $(libdir)/jni | |
580 | $(INSTALL) -d $(datadir)/java | |
581 | $(INSTALL) $(JJAR) -t $(datadir)/java | |
582 | ||
583 | java-clean: | |
584 | $(AM_V_at)rm -f $(JCXX) | |
585 | $(AM_V_at)rm -f $(JCLS)/*.java | |
586 | $(AM_V_at)rm -f $(JCLS)/*.class | |
587 | $(AM_V_at)rm -f $(JINT)/*.class | |
588 | $(AM_V_at)rm -f $(JJAR) | |
589 | $(AM_V_at)rm -f $(JLIB) | |
590 | $(AM_V_at)rm -rf $(JDIR)/doxy/ | |
591 | ||
592 | java-doc: | |
593 | $(AM_V_at)cd $(srcdir)/$(JDIR) && BUILDDIR=$(abs_builddir)/$(JDIR)/ doxygen Doxyfile 2>/dev/null | |
594 | ||
595 | BUILD_EXTRA += java-build | |
596 | INSTALL_EXTRA += java-install | |
597 | CLEAN_EXTRA += java-clean | |
598 | ||
599 | endif | |
600 | ||
601 | all-local: $(BUILD_EXTRA) | |
602 | install-exec-local: $(INSTALL_EXTRA) | |
603 | clean-local: $(CLEAN_EXTRA) | |
604 | ||
605 | MAINTAINERCLEANFILES = ChangeLog | |
606 | ||
607 | .PHONY: ChangeLog | |
608 | ChangeLog: | |
609 | git --git-dir $(top_srcdir)/.git log > ChangeLog || touch ChangeLog | |
610 | ||
611 | dist-hook: ChangeLog | |
612 |