parallel: flush accumulated data when input data is exhausted
[libsigrokdecode.git] / Makefile.am
1 ##
2 ## This file is part of the libsigrokdecode project.
3 ##
4 ## Copyright (C) 2010 Uwe Hermann <uwe@hermann-uwe.de>
5 ##
6 ## This program is free software; you can redistribute it and/or modify
7 ## it under the terms of the GNU General Public License as published by
8 ## the Free Software Foundation; either version 2 of the License, or
9 ## (at your option) any later version.
10 ##
11 ## This program is distributed in the hope that it will be useful,
12 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 ## GNU General Public License for more details.
15 ##
16 ## You should have received a copy of the GNU General Public License
17 ## along with this program; if not, see <http://www.gnu.org/licenses/>.
18 ##
19
20 ACLOCAL_AMFLAGS = -I m4
21 AM_LIBTOOLFLAGS = --silent
22 GNUMAKEFLAGS = --no-print-directory
23
24 DECODERS_DIR = $(pkgdatadir)/decoders
25 # Do not hard-code the decoders location on Windows.
26 if WIN32
27 AM_CPPFLAGS =
28 else
29 AM_CPPFLAGS = -DDECODERS_DIR='"$(DECODERS_DIR)"'
30 endif
31
32 # The tests CFLAGS are a superset of the libsigrokdecode CFLAGS.
33 AM_CFLAGS = $(SRD_EXTRA_CFLAGS) $(SRD_WFLAGS) $(TESTS_CFLAGS)
34
35 lib_LTLIBRARIES = libsigrokdecode.la
36
37 libsigrokdecode_la_SOURCES = \
38         srd.c \
39         session.c \
40         decoder.c \
41         instance.c \
42         log.c \
43         util.c \
44         exception.c \
45         module_sigrokdecode.c \
46         type_decoder.c \
47         error.c \
48         version.c
49
50 libsigrokdecode_la_LIBADD = $(SRD_EXTRA_LIBS) $(LIBSIGROKDECODE_LIBS)
51 libsigrokdecode_la_LDFLAGS = -version-info $(SRD_LIB_VERSION) -no-undefined
52
53 pkginclude_HEADERS = libsigrokdecode.h
54 nodist_pkginclude_HEADERS = version.h
55 noinst_HEADERS = libsigrokdecode-internal.h
56
57 if WITH_IRMP
58 lib_LTLIBRARIES += libirmp.la
59 libirmp_la_SOURCES = \
60         irmp/irmp-main-sharedlib.c \
61         irmp/irmp-main-sharedlib.h \
62         irmp/irmp.h \
63         irmp/irmpconfig.h \
64         irmp/irmpsystem.h \
65         irmp/irmpprotocols.h
66 noinst_HEADERS += irmp/irmp.c
67 libirmp_la_CFLAGS = $(LIBIRMP_CFLAGS)
68 libirmp_la_LIBADD = $(LIBIRMP_LIBS)
69 libirmp_la_LDFLAGS = -no-undefined -version-info 0:0:0
70 endif
71
72 pkgconfigdir = $(libdir)/pkgconfig
73 pkgconfig_DATA = libsigrokdecode.pc
74
75 EXTRA_DIST = Doxyfile HACKING contrib/sigrok-logo-notext.png
76
77 if HAVE_CHECK
78 TESTS = tests/main
79 check_PROGRAMS = ${TESTS}
80 endif
81
82 tests_main_SOURCES = \
83         libsigrokdecode.h \
84         tests/lib.h \
85         tests/main.c \
86         tests/core.c \
87         tests/decoder.c \
88         tests/inst.c \
89         tests/session.c
90
91 tests_main_CPPFLAGS = -DDECODERS_TESTDIR='"$(abs_top_srcdir)/decoders"'
92 tests_main_LDADD = libsigrokdecode.la $(SRD_EXTRA_LIBS) $(TESTS_LIBS)
93
94 MAINTAINERCLEANFILES = ChangeLog
95
96 .PHONY: ChangeLog install-decoders
97
98 ChangeLog:
99         git --git-dir '$(top_srcdir)/.git' log >$@ || touch $@
100
101 dist-hook: ChangeLog
102         $(MKDIR_P) $(distdir)/tools
103         cp ${top_srcdir}/tools/install-decoders $(distdir)/tools
104         $(MKDIR_P) $(distdir)/decoders
105         ${top_srcdir}/tools/install-decoders -i ${top_srcdir}/decoders \
106                 -o $(distdir)/decoders
107
108 install-decoders:
109         $(MKDIR_P) $(DESTDIR)$(DECODERS_DIR)
110         $(PYTHON3) ${top_srcdir}/tools/install-decoders \
111                 -i ${top_srcdir}/decoders -o $(DESTDIR)$(DECODERS_DIR)
112
113 install-data-hook: install-decoders
114