+# SCPI support
+libsigrok_la_SOURCES += \
+ src/scpi/scpi.c \
+ src/scpi/scpi_tcp.c
+if NEED_RPC
+libsigrok_la_SOURCES += \
+ src/scpi/scpi_vxi.c \
+ src/scpi/vxi_clnt.c \
+ src/scpi/vxi_xdr.c \
+ src/scpi/vxi.h
+endif
+if NEED_SERIAL
+libsigrok_la_SOURCES += \
+ src/serial.c \
+ src/scpi/scpi_serial.c
+endif
+if NEED_USB
+libsigrok_la_SOURCES += \
+ src/ezusb.c \
+ src/usb.c \
+ src/scpi/scpi_usbtmc_libusb.c
+endif
+if NEED_VISA
+libsigrok_la_SOURCES += \
+ src/scpi/scpi_visa.c
+endif
+
+# Hardware (DMM chip parsers)
+libsigrok_la_SOURCES += \
+ src/dmm/es519xx.c \
+ src/dmm/fs9721.c \
+ src/dmm/fs9922.c \
+ src/dmm/m2110.c \
+ src/dmm/metex14.c \
+ src/dmm/rs9lcd.c
+
+# Hardware drivers
+if HW_AGILENT_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/agilent-dmm/api.c \
+ src/hardware/agilent-dmm/agilent-dmm.h \
+ src/hardware/agilent-dmm/sched.c
+endif
+if HW_APPA_55II
+libsigrok_la_SOURCES += \
+ src/hardware/appa-55ii/protocol.h \
+ src/hardware/appa-55ii/protocol.c \
+ src/hardware/appa-55ii/api.c
+endif
+if HW_ASIX_SIGMA
+libsigrok_la_SOURCES += \
+ src/hardware/asix-sigma/asix-sigma.h \
+ src/hardware/asix-sigma/asix-sigma.c
+endif
+if HW_ATTEN_PPS3XXX
+libsigrok_la_SOURCES += \
+ src/hardware/atten-pps3xxx/protocol.h \
+ src/hardware/atten-pps3xxx/protocol.c \
+ src/hardware/atten-pps3xxx/api.c
+endif
+if HW_BEAGLELOGIC
+libsigrok_la_SOURCES += \
+ src/hardware/beaglelogic/protocol.h \
+ src/hardware/beaglelogic/protocol.c \
+ src/hardware/beaglelogic/api.c
+endif
+if HW_BRYMEN_BM86X
+libsigrok_la_SOURCES += \
+ src/hardware/brymen-bm86x/protocol.h \
+ src/hardware/brymen-bm86x/protocol.c \
+ src/hardware/brymen-bm86x/api.c
+endif
+if HW_BRYMEN_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/brymen-dmm/parser.c \
+ src/hardware/brymen-dmm/protocol.h \
+ src/hardware/brymen-dmm/protocol.c \
+ src/hardware/brymen-dmm/api.c
+endif
+if HW_CEM_DT_885X
+libsigrok_la_SOURCES += \
+ src/hardware/cem-dt-885x/protocol.h \
+ src/hardware/cem-dt-885x/protocol.c \
+ src/hardware/cem-dt-885x/api.c
+endif
+if HW_CENTER_3XX
+libsigrok_la_SOURCES += \
+ src/hardware/center-3xx/protocol.h \
+ src/hardware/center-3xx/protocol.c \
+ src/hardware/center-3xx/api.c
+endif
+if HW_CHRONOVU_LA
+libsigrok_la_SOURCES += \
+ src/hardware/chronovu-la/protocol.h \
+ src/hardware/chronovu-la/protocol.c \
+ src/hardware/chronovu-la/api.c
+endif
+if HW_COLEAD_SLM
+libsigrok_la_SOURCES += \
+ src/hardware/colead-slm/protocol.h \
+ src/hardware/colead-slm/protocol.c \
+ src/hardware/colead-slm/api.c
+endif
+if HW_CONRAD_DIGI_35_CPU
+libsigrok_la_SOURCES += \
+ src/hardware/conrad-digi-35-cpu/protocol.h \
+ src/hardware/conrad-digi-35-cpu/protocol.c \
+ src/hardware/conrad-digi-35-cpu/api.c
+endif
+if HW_DEMO
+libsigrok_la_SOURCES += \
+ src/hardware/demo/demo.c
+endif
+if HW_FLUKE_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/fluke-dmm/fluke-dmm.h \
+ src/hardware/fluke-dmm/fluke.c \
+ src/hardware/fluke-dmm/api.c
+endif
+if HW_FX2LAFW
+libsigrok_la_SOURCES += \
+ src/hardware/fx2lafw/protocol.h \
+ src/hardware/fx2lafw/protocol.c \
+ src/hardware/fx2lafw/api.c
+endif
+if HW_GMC_MH_1X_2X
+libsigrok_la_SOURCES += \
+ src/hardware/gmc-mh-1x-2x/protocol.h \
+ src/hardware/gmc-mh-1x-2x/protocol.c \
+ src/hardware/gmc-mh-1x-2x/api.c
+endif
+if HW_HAMEG_HMO
+libsigrok_la_SOURCES += \
+ src/hardware/hameg-hmo/protocol.h \
+ src/hardware/hameg-hmo/protocol.c \
+ src/hardware/hameg-hmo/api.c
+endif
+if HW_HANTEK_DSO
+libsigrok_la_SOURCES += \
+ src/hardware/hantek-dso/dso.h \
+ src/hardware/hantek-dso/dso.c \
+ src/hardware/hantek-dso/api.c
+endif
+if HW_IKALOGIC_SCANALOGIC2
+libsigrok_la_SOURCES += \
+ src/hardware/ikalogic-scanalogic2/protocol.h \
+ src/hardware/ikalogic-scanalogic2/protocol.c \
+ src/hardware/ikalogic-scanalogic2/api.c
+endif
+if HW_IKALOGIC_SCANAPLUS
+libsigrok_la_SOURCES += \
+ src/hardware/ikalogic-scanaplus/protocol.h \
+ src/hardware/ikalogic-scanaplus/protocol.c \
+ src/hardware/ikalogic-scanaplus/api.c
+endif
+if HW_KECHENG_KC_330B
+libsigrok_la_SOURCES += \
+ src/hardware/kecheng-kc-330b/protocol.h \
+ src/hardware/kecheng-kc-330b/protocol.c \
+ src/hardware/kecheng-kc-330b/api.c
+endif
+if HW_LASCAR_EL_USB
+libsigrok_la_SOURCES += \
+ src/hardware/lascar-el-usb/protocol.h \
+ src/hardware/lascar-el-usb/protocol.c \
+ src/hardware/lascar-el-usb/api.c
+endif
+if HW_MANSON_HCS_3XXX
+libsigrok_la_SOURCES += \
+ src/hardware/manson-hcs-3xxx/protocol.h \
+ src/hardware/manson-hcs-3xxx/protocol.c \
+ src/hardware/manson-hcs-3xxx/api.c
+endif
+if HW_MIC_985XX
+libsigrok_la_SOURCES += \
+ src/hardware/mic-985xx/protocol.h \
+ src/hardware/mic-985xx/protocol.c \
+ src/hardware/mic-985xx/api.c
+endif
+if HW_MOTECH_LPS_30X
+libsigrok_la_SOURCES += \
+ src/hardware/motech-lps-30x/protocol.h \
+ src/hardware/motech-lps-30x/protocol.c \
+ src/hardware/motech-lps-30x/api.c
+endif
+if HW_NORMA_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/norma-dmm/protocol.h \
+ src/hardware/norma-dmm/protocol.c \
+ src/hardware/norma-dmm/api.c
+endif
+if HW_OPENBENCH_LOGIC_SNIFFER
+libsigrok_la_SOURCES += \
+ src/hardware/openbench-logic-sniffer/protocol.h \
+ src/hardware/openbench-logic-sniffer/protocol.c \
+ src/hardware/openbench-logic-sniffer/api.c
+endif
+if HW_RIGOL_DS
+libsigrok_la_SOURCES += \
+ src/hardware/rigol-ds/protocol.h \
+ src/hardware/rigol-ds/protocol.c \
+ src/hardware/rigol-ds/api.c
+endif
+if HW_SALEAE_LOGIC16
+libsigrok_la_SOURCES += \
+ src/hardware/saleae-logic16/protocol.h \
+ src/hardware/saleae-logic16/protocol.c \
+ src/hardware/saleae-logic16/api.c
+endif
+if HW_SERIAL_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/serial-dmm/protocol.h \
+ src/hardware/serial-dmm/protocol.c \
+ src/hardware/serial-dmm/api.c
+endif
+if HW_SYSCLK_LWLA
+libsigrok_la_SOURCES += \
+ src/hardware/sysclk-lwla/lwla.h \
+ src/hardware/sysclk-lwla/lwla.c \
+ src/hardware/sysclk-lwla/protocol.h \
+ src/hardware/sysclk-lwla/protocol.c \
+ src/hardware/sysclk-lwla/api.c
+endif
+if HW_TELEINFO
+libsigrok_la_SOURCES += \
+ src/hardware/teleinfo/protocol.h \
+ src/hardware/teleinfo/protocol.c \
+ src/hardware/teleinfo/api.c
+endif
+if HW_TESTO
+libsigrok_la_SOURCES += \
+ src/hardware/testo/protocol.h \
+ src/hardware/testo/protocol.c \
+ src/hardware/testo/api.c
+endif
+if HW_TONDAJ_SL_814
+libsigrok_la_SOURCES += \
+ src/hardware/tondaj-sl-814/protocol.h \
+ src/hardware/tondaj-sl-814/protocol.c \
+ src/hardware/tondaj-sl-814/api.c
+endif
+if HW_UNI_T_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/uni-t-dmm/protocol.h \
+ src/hardware/uni-t-dmm/protocol.c \
+ src/hardware/uni-t-dmm/api.c
+endif
+if HW_UNI_T_UT32X
+libsigrok_la_SOURCES += \
+ src/hardware/uni-t-ut32x/protocol.h \
+ src/hardware/uni-t-ut32x/protocol.c \
+ src/hardware/uni-t-ut32x/api.c
+endif
+if HW_VICTOR_DMM
+libsigrok_la_SOURCES += \
+ src/hardware/victor-dmm/protocol.h \
+ src/hardware/victor-dmm/protocol.c \
+ src/hardware/victor-dmm/api.c
+endif
+if HW_ZEROPLUS_LOGIC_CUBE
+libsigrok_la_SOURCES += \
+ src/hardware/zeroplus-logic-cube/analyzer.c \
+ src/hardware/zeroplus-logic-cube/analyzer.h \
+ src/hardware/zeroplus-logic-cube/gl_usb.h \
+ src/hardware/zeroplus-logic-cube/gl_usb.c \
+ src/hardware/zeroplus-logic-cube/protocol.h \
+ src/hardware/zeroplus-logic-cube/protocol.c \
+ src/hardware/zeroplus-logic-cube/api.c
+endif
+
+libsigrok_la_LIBADD = $(LIBOBJS)
+
+libsigrok_la_LDFLAGS = $(SR_LIB_LDFLAGS)
+
+library_includedir = $(includedir)/libsigrok
+library_include_HEADERS = \
+ include/libsigrok/libsigrok.h \
+ include/libsigrok/proto.h \
+ include/libsigrok/version.h
+noinst_HEADERS = src/libsigrok-internal.h