# The tests CFLAGS are a superset of the libsigrok CFLAGS, and the
# python bindings CFLAGS are a superset of the C++ bindings CFLAGS.
AM_CFLAGS = $(SR_EXTRA_CFLAGS) $(SR_WFLAGS) $(TESTS_CFLAGS)
-AM_CXXFLAGS = $(SR_WXXFLAGS) $(PYSIGROK_CFLAGS)
+AM_CXXFLAGS = $(SR_WXXFLAGS) $(LIBSIGROKCXX_CFLAGS)
lib_LTLIBRARIES = libsigrok.la
src/input/binary.c \
src/input/chronovu_la8.c \
src/input/csv.c \
+ src/input/raw_analog.c \
+ src/input/trace32_ad.c \
src/input/vcd.c \
src/input/wav.c
src/hardware/appa-55ii/protocol.c \
src/hardware/appa-55ii/api.c
endif
+if HW_ARACHNID_LABS_RE_LOAD_PRO
+libsigrok_la_SOURCES += \
+ src/hardware/arachnid-labs-re-load-pro/protocol.h \
+ src/hardware/arachnid-labs-re-load-pro/protocol.c \
+ src/hardware/arachnid-labs-re-load-pro/api.c
+endif
if HW_ASIX_SIGMA
libsigrok_la_SOURCES += \
src/hardware/asix-sigma/protocol.h \
src/hardware/hameg-hmo/protocol.c \
src/hardware/hameg-hmo/api.c
endif
+if HW_HANTEK_6XXX
+libsigrok_la_SOURCES += \
+ src/hardware/hantek-6xxx/protocol.h \
+ src/hardware/hantek-6xxx/protocol.c \
+ src/hardware/hantek-6xxx/api.c
+endif
if HW_HANTEK_DSO
libsigrok_la_SOURCES += \
src/hardware/hantek-dso/dso.h \
src/hardware/lascar-el-usb/protocol.c \
src/hardware/lascar-el-usb/api.c
endif
+if HW_LECROY_LOGICSTUDIO
+libsigrok_la_SOURCES += \
+ src/hardware/lecroy-logicstudio/protocol.h \
+ src/hardware/lecroy-logicstudio/protocol.c \
+ src/hardware/lecroy-logicstudio/api.c
+endif
if HW_MANSON_HCS_3XXX
libsigrok_la_SOURCES += \
src/hardware/manson-hcs-3xxx/protocol.h \
PDOC_START = bindings/python/sigrok/core/doc_start.i
PDOC_END = bindings/python/sigrok/core/doc_end.i
-setup_vars = VERSION='$(PACKAGE_VERSION)' CC='$(CXX)' CFLAGS='$(AM_CXXFLAGS) $(CXXFLAGS)' CXXFLAGS='$(AM_CXXFLAGS) $(CXXFLAGS)' LDADD='$(PYSIGROK_LIBS)'
+setup_vars = VERSION='$(PACKAGE_VERSION)' CC='$(CXX)' CFLAGS='$(CXXFLAGS) $(SR_WXXFLAGS) $(PYSIGROK_CFLAGS)' CXXFLAGS='$(CXXFLAGS) $(SR_WXXFLAGS) $(PYSIGROK_CFLAGS)' LDADD='$(PYSIGROK_LIBS)'
setup_quiet = --quiet
setup_py = $(PYTHON) $(srcdir)/$(PDIR)/setup.py $(setup_vars) $(setup_quiet)
endif
+if BINDINGS_RUBY
+
+RDIR = bindings/ruby
+RDOC = $(RDIR)/doc.i
+RWRAP = $(RDIR)/classes_wrap.cpp
+ROBJ = $(RWRAP:.cpp=.o)
+REXT = $(RDIR)/sigrok.$(RUBY_DLEXT)
+
+$(RDOC): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC)
+ $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/swig/doc.py ruby $(CPPXMLDOC) > $@
+
+$(RWRAP): $(RDIR)/classes.i $(RDOC) \
+ bindings/swig/classes.i bindings/swig/templates.i \
+ bindings/swig/enums.i
+ $(AM_V_GEN)$(SWIG) -ruby -c++ -Ibindings -Ibindings/cxx/include $(swig_defs) -o $@ $<
+
+$(ROBJ): $(RWRAP) \
+ $(library_include_HEADERS) \
+ $(nodist_library_include_HEADERS) \
+ $(bindings_cxx_libsigrokcxx_la_include_HEADERS) \
+ $(nodist_bindings_cxx_libsigrokcxx_la_include_HEADERS)
+ $(AM_V_CXX)$(CXX) $(RBSIGROK_CFLAGS) -I. -Iinclude -Ibindings/cxx/include -fPIC -o $@ -c $<
+
+$(REXT): $(ROBJ) @ORDER@ bindings/cxx/libsigrokcxx.la
+ $(AM_V_CXXLD)$(CXX) -shared -std=c++11 -o $@ $< -lsigrokcxx -Lbindings/cxx/.libs $(RBSIGROK_LIBS)
+
+ruby-build: $(REXT)
+
+ruby-install: $(REXT)
+ $(INSTALL) -d $(DESTDIR)$(prefix)/$(RBSIGROK_EXTDIR)
+ $(INSTALL) $< $(DESTDIR)$(prefix)/$(RBSIGROK_EXTDIR)
+
+ruby-clean:
+ -$(AM_V_at)rm -fr $(RDIR)/doc
+ -$(AM_V_at)rm $(REXT) $(ROBJ) $(RWRAP) $(RDOC)
+
+ruby-doc: $(RWRAP)
+ $(AM_V_at)yard doc -o $(RDIR)/doc $<
+
+BUILD_EXTRA += ruby-build
+INSTALL_EXTRA += ruby-install
+CLEAN_EXTRA += ruby-clean
+
+endif
+
if BINDINGS_JAVA
JDIR = bindings/java