X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=Makefile.am;h=d2447c651ea36dfff2d3c28ab6f0f7454a124724;hp=424d344490fcc780201d49c88cb81028448aa8e5;hb=55c9f09dbc7edd24b0da8dda8837aff6a932e3c5;hpb=dbde3b65133bca6a00d589b735be5f4ba0049194 diff --git a/Makefile.am b/Makefile.am index 424d3444..d2447c65 100644 --- a/Makefile.am +++ b/Makefile.am @@ -18,19 +18,23 @@ ## along with this program. If not, see . ## -ACLOCAL_AMFLAGS = -I autostuff +ACLOCAL_AMFLAGS = -I m4 +AM_LIBTOOLFLAGS = --silent +MAKEFLAGS = --no-print-directory + +FIRMWARE_DIR = $(datadir)/sigrok-firmware local_includes = -Iinclude -I$(srcdir)/include -I$(srcdir)/src -I. if BINDINGS_CXX -local_includes += -Ibindings/cxx/include -I${srcdir}/bindings/cxx/include -Ibindings/cxx +local_includes += -Ibindings/cxx/include -I$(srcdir)/bindings/cxx/include -Ibindings/cxx endif # Ensure that local include directories are always searched first. -AM_CPPFLAGS = $(local_includes) -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"' +AM_CPPFLAGS = $(local_includes) -D_DEFAULT_SOURCE -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"' -# The check CFLAGS are a superset of the libsigrok CFLAGS, and the +# 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 = $(CHECK_CFLAGS) -AM_CXXFLAGS = $(PYSIGROK_CFLAGS) +AM_CFLAGS = $(SR_EXTRA_CFLAGS) $(SR_WFLAGS) $(TESTS_CFLAGS) +AM_CXXFLAGS = $(SR_WXXFLAGS) $(PYSIGROK_CFLAGS) lib_LTLIBRARIES = libsigrok.la @@ -88,6 +92,7 @@ libsigrok_la_SOURCES += \ # SCPI support libsigrok_la_SOURCES += \ src/scpi/scpi.c \ + src/scpi/helpers.c \ src/scpi/scpi_tcp.c if NEED_RPC libsigrok_la_SOURCES += \ @@ -143,6 +148,10 @@ libsigrok_la_SOURCES += \ src/lcr/es51919.c endif +# Hardware (Scale protocol parsers) +libsigrok_la_SOURCES += \ + src/scale/kern.c + # Hardware drivers if HW_AGILENT_DMM libsigrok_la_SOURCES += \ @@ -283,6 +292,12 @@ libsigrok_la_SOURCES += \ src/hardware/kecheng-kc-330b/protocol.c \ src/hardware/kecheng-kc-330b/api.c endif +if HW_KERN_SCALE +libsigrok_la_SOURCES += \ + src/hardware/kern-scale/protocol.h \ + src/hardware/kern-scale/protocol.c \ + src/hardware/kern-scale/api.c +endif if HW_LASCAR_EL_USB libsigrok_la_SOURCES += \ src/hardware/lascar-el-usb/protocol.h \ @@ -419,7 +434,7 @@ libsigrok_la_SOURCES += \ src/hardware/zeroplus-logic-cube/api.c endif -libsigrok_la_LIBADD = $(LIBSIGROK_LIBS) +libsigrok_la_LIBADD = $(SR_EXTRA_LIBS) $(LIBSIGROK_LIBS) libsigrok_la_LDFLAGS = -version-info $(SR_LIB_VERSION) -no-undefined library_includedir = $(includedir)/libsigrok @@ -465,10 +480,9 @@ EXTRA_DIST = \ contrib/z60_libsigrok.rules if HAVE_CHECK - TESTS = tests/main - check_PROGRAMS = ${TESTS} +endif tests_main_SOURCES = \ include/libsigrok/libsigrok.h \ @@ -487,9 +501,7 @@ tests_main_SOURCES = \ tests/device.c \ tests/trigger.c -tests_main_LDADD = libsigrok.la $(CHECK_LIBS) - -endif +tests_main_LDADD = libsigrok.la $(SR_EXTRA_LIBS) $(TESTS_LIBS) BUILD_EXTRA = INSTALL_EXTRA = @@ -501,7 +513,7 @@ lib_LTLIBRARIES += bindings/cxx/libsigrokcxx.la bindings_cxx_libsigrokcxx_la_SOURCES = bindings/cxx/classes.cpp -bindings_cxx_libsigrokcxx_la_LIBADD = libsigrok.la $(LIBSIGROKCXX_LIBS) +bindings_cxx_libsigrokcxx_la_LIBADD = libsigrok.la $(SR_EXTRA_LIBS) $(LIBSIGROKCXX_LIBS) bindings_cxx_libsigrokcxx_la_LDFLAGS = -version-info $(SR_LIB_VERSION) -no-undefined bindings_cxx_libsigrokcxx_la_includedir = $(includedir)/libsigrokcxx @@ -549,37 +561,32 @@ if BINDINGS_PYTHON PDIR = bindings/python PDOC = bindings/python/sigrok/core/doc.i +setup_py = cd $(PDIR) && $(PYTHON) "$(abs_srcdir)/$(PDIR)/setup.py" --quiet + $(PDOC): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) $(AM_V_at)test -d $(PDIR)/sigrok/core || $(MKDIR_P) $(PDIR)/sigrok/core $(AM_V_GEN)$(PYTHON) $(srcdir)/bindings/swig/doc.py python $(CPPXMLDOC) > $@ python-build: $(PDIR)/timestamp -python-quietclean: - $(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/libsigrokcxx.la $(PDIR)/sigrok/core/classes.i \ bindings/swig/classes.i bindings/swig/enums.i $(PDOC) \ $(library_include_HEADERS) $(nodist_library_include_HEADERS) - $(AM_V_at)$(MAKE) python-quietclean - $(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 - -$(DESTDIR)$(prefix): - $(MKDIR_P) $@ + $(AM_V_at)$(setup_py) clean --all 2>/dev/null + $(AM_V_GEN)$(setup_py) build_ext --swig "$(SWIG)" build_py + $(AM_V_at): >$@ -python-install: $(DESTDIR)$(prefix) - cd $(PDIR) && $(PYTHON) $(abs_srcdir)/$(PDIR)/setup.py --quiet install --prefix $(prefix) `test "$(DESTDIR)" && echo --root=$(DESTDIR)` +python-install: + $(AM_V_at)$(MKDIR_P) "$(DESTDIR)$(prefix)" "$(DESTDIR)$(exec_prefix)" + $(setup_py) install --root "$(DESTDIR)/" --prefix "$(prefix)" --exec-prefix "$(exec_prefix)" python-clean: - $(AM_V_at)$(MAKE) python-quietclean - $(AM_V_at)rm -f $(PDIR)/timestamp - $(AM_V_at)rm -rf $(PDIR)/doxy/ + -$(AM_V_at)$(setup_py) clean --all 2>/dev/null + -$(AM_V_at)rm -f $(PDIR)/timestamp + -$(AM_V_at)rm -fr $(PDIR)/doxy python-doc: - $(AM_V_at)cd $(srcdir)/$(PDIR) && BUILDDIR=$(abs_builddir)/$(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 @@ -600,6 +607,8 @@ JCXX = $(JCLS)/classes_wrap.cxx JLIB = $(JDIR)/libsigrok_java_core_classes.so JJAR = $(JDIR)/sigrok-core.jar +java_cleanfiles = $(JCXX) $(JCLS)/*.java $(JCLS)/*.class $(JINT)/*.class $(JJAR) $(JLIB) + java-build: $(JJAR) $(JLIB) $(JDOC): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) @@ -608,8 +617,8 @@ $(JDOC): $(srcdir)/bindings/swig/doc.py $(CPPXMLDOC) $(JCXX): $(srcdir)/$(JSWG) $(JDOC) bindings/swig/classes.i bindings/swig/enums.i \ $(library_include_HEADERS) $(nodist_library_include_HEADERS) - $(AM_V_at)make java-clean - $(AM_V_GEN)swig -c++ -java -package org.sigrok.core.classes \ + -$(AM_V_at)rm -f $(java_cleanfiles) + $(AM_V_GEN)$(SWIG) -c++ -java -package org.sigrok.core.classes \ -Ibindings -I$(JCLS) $(local_includes) -I$(srcdir) $(JNI_CPPFLAGS) \ -outdir $(JCLS) -o $@ $(srcdir)/$(JSWG) @@ -629,16 +638,11 @@ java-install: $(INSTALL) $(JJAR) -t $(DESTDIR)$(datadir)/java java-clean: - $(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/ + -$(AM_V_at)rm -f $(java_cleanfiles) + -$(AM_V_at)rm -fr $(JDIR)/doxy java-doc: - $(AM_V_at)cd $(srcdir)/$(JDIR) && BUILDDIR=$(abs_builddir)/$(JDIR)/ doxygen Doxyfile 2>/dev/null + $(AM_V_at)cd $(srcdir)/$(JDIR) && BUILDDIR="$(abs_builddir)/$(JDIR)/" doxygen Doxyfile BUILD_EXTRA += java-build INSTALL_EXTRA += java-install