irmp: Fix a build issue with xtensa cross toolchains.
[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_LDFLAGS = -no-undefined -version-info 0:0:0
68 endif
69
70 pkgconfigdir = $(libdir)/pkgconfig
71 pkgconfig_DATA = libsigrokdecode.pc
72
73 EXTRA_DIST = Doxyfile HACKING contrib/sigrok-logo-notext.png
74
75 if HAVE_CHECK
76 TESTS = tests/main
77 check_PROGRAMS = ${TESTS}
78 endif
79
80 tests_main_SOURCES = \
81         libsigrokdecode.h \
82         tests/lib.h \
83         tests/main.c \
84         tests/core.c \
85         tests/decoder.c \
86         tests/inst.c \
87         tests/session.c
88
89 tests_main_CPPFLAGS = -DDECODERS_TESTDIR='"$(abs_top_srcdir)/decoders"'
90 tests_main_LDADD = libsigrokdecode.la $(SRD_EXTRA_LIBS) $(TESTS_LIBS)
91
92 MAINTAINERCLEANFILES = ChangeLog
93
94 .PHONY: ChangeLog install-decoders
95
96 ChangeLog:
97         git --git-dir '$(top_srcdir)/.git' log >$@ || touch $@
98
99 dist-hook: ChangeLog
100         $(MKDIR_P) $(distdir)/tools
101         cp ${top_srcdir}/tools/install-decoders $(distdir)/tools
102         $(MKDIR_P) $(distdir)/decoders
103         ${top_srcdir}/tools/install-decoders -i ${top_srcdir}/decoders \
104                 -o $(distdir)/decoders
105
106 install-decoders:
107         $(MKDIR_P) $(DESTDIR)$(DECODERS_DIR)
108         $(PYTHON3) ${top_srcdir}/tools/install-decoders \
109                 -i ${top_srcdir}/decoders -o $(DESTDIR)$(DECODERS_DIR)
110
111 install-data-hook: install-decoders
112