X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=Makefile.am;h=c0a228656e2f2a1c190ea2808e64d7465c125163;hp=eb72a1468dafd940111fbf63463d4d8c07b6f1e5;hb=c1aae90038456a61d0f9313d34e6107c3440d3e7;hpb=33c84e81975c75b73002b038a0076f384ca13d63 diff --git a/Makefile.am b/Makefile.am index eb72a146..c0a22865 100644 --- a/Makefile.am +++ b/Makefile.am @@ -20,7 +20,10 @@ ACLOCAL_AMFLAGS = -I autostuff -AM_CPPFLAGS = -I$(srcdir)/src -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"' +local_includes = -Iinclude -I$(srcdir)/include -I$(srcdir)/src +local_includes += -Ibindings/cxx/include -I${srcdir}/bindings/cxx/include -Ibindings/cxx + +AM_CPPFLAGS = $(local_includes) -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"' lib_LTLIBRARIES = libsigrok.la @@ -35,6 +38,8 @@ libsigrok_la_SOURCES = \ src/hwdriver.c \ src/trigger.c \ src/soft-trigger.c \ + src/analog.c \ + src/fallback.c \ src/strutil.c \ src/log.c \ src/version.c \ @@ -43,10 +48,10 @@ libsigrok_la_SOURCES = \ # Input modules libsigrok_la_SOURCES += \ + src/input/input.c \ src/input/binary.c \ src/input/chronovu_la8.c \ src/input/csv.c \ - src/input/input.c \ src/input/vcd.c \ src/input/wav.c @@ -63,8 +68,16 @@ libsigrok_la_SOURCES += \ src/output/gnuplot.c \ src/output/hex.c \ src/output/ols.c \ + src/output/srzip.c \ src/output/vcd.c +# Transform modules +libsigrok_la_SOURCES += \ + src/transform/transform.c \ + src/transform/nop.c \ + src/transform/scale.c \ + src/transform/invert.c + # SCPI support libsigrok_la_SOURCES += \ src/scpi/scpi.c \ @@ -91,6 +104,18 @@ if NEED_VISA libsigrok_la_SOURCES += \ src/scpi/scpi_visa.c endif +if NEED_GPIB +libsigrok_la_SOURCES += \ + src/scpi/scpi_libgpib.c +endif + +# Modbus support +libsigrok_la_SOURCES += \ + src/modbus/modbus.c +if NEED_SERIAL +libsigrok_la_SOURCES += \ + src/modbus/modbus_serial_rtu.c +endif # Hardware (DMM chip parsers) libsigrok_la_SOURCES += \ @@ -100,7 +125,16 @@ libsigrok_la_SOURCES += \ src/dmm/m2110.c \ src/dmm/metex14.c \ src/dmm/rs9lcd.c \ - src/dmm/bm25x.c + src/dmm/bm25x.c \ + src/dmm/ut71x.c \ + src/dmm/ut372.c \ + src/dmm/vc870.c + +# Hardware (LCR chip parsers) +if NEED_SERIAL +libsigrok_la_SOURCES += \ + src/lcr/es51919.c +endif # Hardware drivers if HW_AGILENT_DMM @@ -126,6 +160,14 @@ libsigrok_la_SOURCES += \ src/hardware/atten-pps3xxx/protocol.c \ src/hardware/atten-pps3xxx/api.c endif +if HW_BAYLIBRE_ACME +libsigrok_la_SOURCES += \ + src/hardware/baylibre-acme/protocol.h \ + src/hardware/baylibre-acme/protocol.c \ + src/hardware/baylibre-acme/api.c \ + src/hardware/baylibre-acme/gpio.h \ + src/hardware/baylibre-acme/gpio.c +endif if HW_BEAGLELOGIC libsigrok_la_SOURCES += \ src/hardware/beaglelogic/beaglelogic.h \ @@ -180,6 +222,10 @@ if HW_DEMO libsigrok_la_SOURCES += \ src/hardware/demo/demo.c endif +if HW_DEREE_DE5000 +libsigrok_la_SOURCES += \ + src/hardware/deree-de5000/api.c +endif if HW_FLUKE_DMM libsigrok_la_SOURCES += \ src/hardware/fluke-dmm/fluke-dmm.h \ @@ -190,7 +236,9 @@ if HW_FX2LAFW libsigrok_la_SOURCES += \ src/hardware/fx2lafw/protocol.h \ src/hardware/fx2lafw/protocol.c \ - src/hardware/fx2lafw/api.c + src/hardware/fx2lafw/api.c \ + src/hardware/fx2lafw/dslogic.c \ + src/hardware/fx2lafw/dslogic.h endif if HW_GMC_MH_1X_2X libsigrok_la_SOURCES += \ @@ -240,6 +288,12 @@ libsigrok_la_SOURCES += \ src/hardware/manson-hcs-3xxx/protocol.c \ src/hardware/manson-hcs-3xxx/api.c endif +if HW_MAYNUO_M97 +libsigrok_la_SOURCES += \ + src/hardware/maynuo-m97/protocol.h \ + src/hardware/maynuo-m97/protocol.c \ + src/hardware/maynuo-m97/api.c +endif if HW_MIC_985XX libsigrok_la_SOURCES += \ src/hardware/mic-985xx/protocol.h \ @@ -264,6 +318,12 @@ libsigrok_la_SOURCES += \ src/hardware/openbench-logic-sniffer/protocol.c \ src/hardware/openbench-logic-sniffer/api.c endif +if HW_PIPISTRELLO_OLS +libsigrok_la_SOURCES += \ + src/hardware/pipistrello-ols/protocol.h \ + src/hardware/pipistrello-ols/protocol.c \ + src/hardware/pipistrello-ols/api.c +endif if HW_RIGOL_DS libsigrok_la_SOURCES += \ src/hardware/rigol-ds/protocol.h \ @@ -276,6 +336,13 @@ libsigrok_la_SOURCES += \ src/hardware/saleae-logic16/protocol.c \ src/hardware/saleae-logic16/api.c endif +if HW_SCPI_PPS +libsigrok_la_SOURCES += \ + src/hardware/scpi-pps/protocol.h \ + src/hardware/scpi-pps/protocol.c \ + src/hardware/scpi-pps/profiles.c \ + src/hardware/scpi-pps/api.c +endif if HW_SERIAL_DMM libsigrok_la_SOURCES += \ src/hardware/serial-dmm/protocol.h \ @@ -326,6 +393,14 @@ libsigrok_la_SOURCES += \ src/hardware/victor-dmm/protocol.c \ src/hardware/victor-dmm/api.c endif +if HW_YOKOGAWA_DLM +libsigrok_la_SOURCES += \ + src/hardware/yokogawa-dlm/protocol.h \ + src/hardware/yokogawa-dlm/protocol.c \ + src/hardware/yokogawa-dlm/protocol_wrappers.h \ + src/hardware/yokogawa-dlm/protocol_wrappers.c \ + src/hardware/yokogawa-dlm/api.c +endif if HW_ZEROPLUS_LOGIC_CUBE libsigrok_la_SOURCES += \ src/hardware/zeroplus-logic-cube/analyzer.c \ @@ -341,6 +416,8 @@ libsigrok_la_LIBADD = $(LIBOBJS) libsigrok_la_LDFLAGS = $(SR_LIB_LDFLAGS) +libsigrok_la_LDFLAGS += -no-undefined + library_includedir = $(includedir)/libsigrok library_include_HEADERS = \ include/libsigrok/libsigrok.h \ @@ -365,27 +442,30 @@ EXTRA_DIST = \ if HAVE_CHECK -TESTS = tests/check_main +TESTS = tests/main check_PROGRAMS = ${TESTS} -tests_check_main_SOURCES = \ +tests_main_SOURCES = \ include/libsigrok/libsigrok.h \ tests/lib.c \ tests/lib.h \ - tests/check_main.c \ - tests/check_core.c \ - tests/check_input_all.c \ - tests/check_input_binary.c \ - tests/check_output_all.c \ - tests/check_session.c \ - tests/check_strutil.c \ - tests/check_version.c \ - tests/check_driver_all.c + tests/main.c \ + tests/core.c \ + tests/input_all.c \ + tests/input_binary.c \ + tests/output_all.c \ + tests/transform_all.c \ + tests/session.c \ + tests/strutil.c \ + tests/version.c \ + tests/driver_all.c \ + tests/device.c \ + tests/trigger.c -tests_check_main_CFLAGS = @check_CFLAGS@ +tests_main_CFLAGS = @check_CFLAGS@ -tests_check_main_LDADD = $(top_builddir)/libsigrok.la @check_LIBS@ +tests_main_LDADD = $(top_builddir)/libsigrok.la @check_LIBS@ endif @@ -395,30 +475,33 @@ CLEAN_EXTRA = if BINDINGS_CXX -lib_LTLIBRARIES += bindings/cxx/libsigrokxx.la +lib_LTLIBRARIES += bindings/cxx/libsigrokcxx.la + +bindings_cxx_libsigrokcxx_la_SOURCES = bindings/cxx/classes.cpp -bindings_cxx_libsigrokxx_la_SOURCES = bindings/cxx/classes.cpp +bindings_cxx_libsigrokcxx_la_LIBADD = libsigrok.la $(glibmm_LIBS) -bindings_cxx_libsigrokxx_la_LIBADD = libsigrok.la $(glibmm_LIBS) +bindings_cxx_libsigrokcxx_la_LDFLAGS = $(SR_LIB_LDFLAGS) -bindings_cxx_libsigrokxx_la_LDFLAGS = $(SR_LIB_LDFLAGS) +bindings_cxx_libsigrokcxx_la_LDFLAGS += -no-undefined -library_include_HEADERS += \ - bindings/cxx/include/libsigrok/libsigrok.hpp \ - bindings/cxx/include/libsigrok/enums.hpp +bindings_cxx_libsigrokcxx_la_includedir = $(includedir)/libsigrokcxx +bindings_cxx_libsigrokcxx_la_include_HEADERS = \ + bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp \ + bindings/cxx/include/libsigrokcxx/enums.hpp -pkgconfig_DATA += bindings/cxx/libsigrokxx.pc +pkgconfig_DATA += bindings/cxx/libsigrokcxx.pc doxy/xml/index.xml: include/libsigrok/libsigrok.h $(AM_V_GEN)cd $(srcdir) && BUILDDIR=$(abs_builddir)/ doxygen Doxyfile 2>/dev/null bindings/cxx/enums.cpp: bindings/cxx/enums.timestamp -bindings/cxx/include/libsigrok/enums.hpp: bindings/cxx/enums.timestamp +bindings/cxx/include/libsigrokcxx/enums.hpp: bindings/cxx/enums.timestamp -bindings/cxx/enums.timestamp: bindings/cxx/enums.py doxy/xml/index.xml \ +bindings/cxx/enums.timestamp: $(srcdir)/bindings/cxx/enums.py doxy/xml/index.xml \ bindings/cxx/ConfigKey_methods.cpp bindings/cxx/QuantityFlag_methods.cpp - $(AM_V_GEN)python $< doxy/xml/index.xml + $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/cxx/enums.py doxy/xml/index.xml $(AM_V_at)touch $@ bindings/cxx/classes.lo: bindings/cxx/classes.cpp bindings/cxx/enums.cpp \ @@ -428,7 +511,7 @@ cxx-clean: rm -rf doxy/ rm -rf bindings/cxx/doxy/ rm -f bindings/cxx/enums.cpp - rm -f bindings/cxx/include/libsigrok/enums.hpp + rm -f bindings/cxx/include/libsigrokcxx/enums.hpp rm -f bindings/cxx/enums.timestamp CLEAN_EXTRA += cxx-clean @@ -437,7 +520,7 @@ endif CPPXMLDOC = bindings/cxx/doxy/xml/index.xml -$(CPPXMLDOC): bindings/cxx/include/libsigrok/libsigrok.hpp \ +$(CPPXMLDOC): bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp \ bindings/cxx/enums.timestamp $(AM_V_GEN)cd $(srcdir)/bindings/cxx && BUILDDIR=$(abs_builddir)/bindings/cxx/ doxygen Doxyfile 2>/dev/null @@ -447,23 +530,27 @@ PDIR = bindings/python PDOC = bindings/python/sigrok/core/doc.i $(PDOC): bindings/swig/doc.py $(CPPXMLDOC) - $(AM_V_GEN)python bindings/swig/doc.py python $(CPPXMLDOC) > $@ + $(AM_V_at)test -d $(PDIR)/sigrok/core || $(MKDIR_P) $(PDIR)/sigrok/core + $(AM_V_GEN)$(PYTHON) $< python $(CPPXMLDOC) > $@ python-build: $(PDIR)/timestamp python-quietclean: - $(AM_V_at)cd $(PDIR) && python setup.py --quiet clean --all 3>&1 1>&2 2>&3 \ + $(AM_V_at)cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet clean --all 3>&1 1>&2 2>&3 \ | grep -v "can.t clean it"; true -$(PDIR)/timestamp: bindings/cxx/libsigrokxx.la $(PDIR)/sigrok/core/classes.i \ +$(PDIR)/timestamp: bindings/cxx/libsigrokcxx.la $(PDIR)/sigrok/core/classes.i \ bindings/swig/classes.i $(PDOC) $(library_include_HEADERS) $(AM_V_at)$(MAKE) python-quietclean - $(AM_V_GEN)cd $(PDIR) && python setup.py --quiet build 3>&1 1>&2 2>&3 \ + $(AM_V_GEN)cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet build 3>&1 1>&2 2>&3 \ | grep -v "command line option.*Wstrict-prototypes"; true $(AM_V_at)touch $(PDIR)/timestamp -python-install: - cd $(PDIR) && python setup.py --quiet install --prefix $(prefix) +$(DESTDIR)$(prefix): + $(MKDIR_P) $@ + +python-install: $(DESTDIR)$(prefix) + cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet install --prefix $(prefix) `test "$(DESTDIR)" && echo --root=$(DESTDIR)` python-clean: $(AM_V_at)$(MAKE) python-quietclean @@ -471,7 +558,7 @@ python-clean: $(AM_V_at)rm -rf $(PDIR)/doxy/ python-doc: - $(AM_V_at)cd $(PDIR) && doxygen Doxyfile 2>/dev/null + $(AM_V_at)cd $(srcdir)/$(PDIR) && BUILDDIR=$(abs_builddir)/$(PDIR)/ doxygen Doxyfile 2>/dev/null BUILD_EXTRA += python-build INSTALL_EXTRA += python-install @@ -495,36 +582,37 @@ JJAR = $(JDIR)/sigrok-core.jar java-build: $(JJAR) $(JLIB) $(JDOC): bindings/swig/doc.py $(CPPXMLDOC) - $(AM_V_at)test -d $(JCLS) || mkdir -p $(JCLS) + $(AM_V_at)test -d $(JCLS) || $(MKDIR_P) $(JCLS) $(AM_V_GEN)python $< java $(CPPXMLDOC) > $@ $(JCXX): $(JSWG) $(JDOC) bindings/swig/classes.i $(library_include_HEADERS) + $(AM_V_at)make java-clean $(AM_V_GEN)swig -c++ -java -package org.sigrok.core.classes \ - -I$(srcdir)/include -I$(srcdir)/bindings/cxx/include -I$(srcdir) -I$(JCLS) -Ibindings/cxx/include -outdir $(JCLS) -o $@ $< + $(local_includes) -I$(JCLS) -I. -I$(srcdir) -outdir $(JCLS) -o $@ $< $(JJAR): $(JCXX) $(AM_V_GEN)$(JAVAC) -sourcepath $(JDIR) -d $(JDIR) $(JSRC) $(AM_V_at)jar cf $(JJAR) -C $(JDIR) $(JPKG) -$(JLIB): $(JCXX) bindings/cxx/libsigrokxx.la $(library_include_HEADERS) - $(AM_V_GEN)$(CXX) $(CXXFLAGS) -L.libs -Lbindings/cxx/.libs \ +$(JLIB): $(JCXX) bindings/cxx/libsigrokcxx.la $(library_include_HEADERS) + $(AM_V_GEN)$(CXXCOMPILE) -L.libs -Lbindings/cxx/.libs \ -fno-strict-aliasing -fPIC -shared $(JCLS)/classes_wrap.cxx \ - -lsigrokxx -o $(JLIB) + -lsigrokcxx -o $(JLIB) java-install: - $(INSTALL) -d $(libdir)/jni - $(INSTALL) $(JLIB) -t $(libdir)/jni - $(INSTALL) -d $(datadir)/java - $(INSTALL) $(JJAR) -t $(datadir)/java + $(INSTALL) -d $(DESTDIR)$(libdir)/jni + $(INSTALL) $(JLIB) -t $(DESTDIR)$(libdir)/jni + $(INSTALL) -d $(DESTDIR)$(datadir)/java + $(INSTALL) $(JJAR) -t $(DESTDIR)$(datadir)/java java-clean: - rm -f $(JCXX) - rm -f $(JCLS)/*.java - rm -f $(JCLS)/*.class - rm -f $(JINT)/*.class - rm -f $(JJAR) - rm -f $(JLIB) - rm -rf $(JDIR)/doxy/ + $(AM_V_at)rm -f $(JCXX) + $(AM_V_at)rm -f $(JCLS)/*.java + $(AM_V_at)rm -f $(JCLS)/*.class + $(AM_V_at)rm -f $(JINT)/*.class + $(AM_V_at)rm -f $(JJAR) + $(AM_V_at)rm -f $(JLIB) + $(AM_V_at)rm -rf $(JDIR)/doxy/ java-doc: $(AM_V_at)cd $(srcdir)/$(JDIR) && BUILDDIR=$(abs_builddir)/$(JDIR)/ doxygen Doxyfile 2>/dev/null