1 SUBDIRS = liboconfig
3 # coverage related flags are only set when gcov is enabled
4 AM_CFLAGS = @STRICT_CFLAGS@ @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@
5 AM_LDFLAGS = @COVERAGE_LDFLAGS@ @PROFILING_LDFLAGS@
6 AM_CPPFLAGS = -I"${top_srcdir}/src/include"
7 AM_CPPFLAGS += -DSYSCONFDIR='"${sysconfdir}"'
8 AM_CPPFLAGS += -DLOCALSTATEDIR='"${localstatedir}"'
9 AM_CPPFLAGS += -DPKGLIBDIR='"${pkglibdir}"'
11 AM_YFLAGS = -d
13 BUILT_SOURCES = include/client/sysdb.h include/sysdb.h \
14 frontend/grammar.h
15 EXTRA_DIST = include/client/sysdb.h.in include/sysdb.h.in
17 pkginclude_HEADERS = include/sysdb.h
18 pkgcoreincludedir = $(pkgincludedir)/core
19 pkgcoreinclude_HEADERS = \
20 include/core/data.h \
21 include/core/object.h \
22 include/core/plugin.h \
23 include/core/store.h \
24 include/core/time.h \
25 include/core/timeseries.h
26 pkgfeincludedir = $(pkgincludedir)/frontend
27 pkgfeinclude_HEADERS = \
28 include/frontend/connection.h \
29 include/frontend/parser.h \
30 include/frontend/proto.h \
31 include/frontend/sock.h
32 pkgutilsincludedir = $(pkgincludedir)/utils
33 pkgutilsinclude_HEADERS = \
34 include/utils/avltree.h \
35 include/utils/channel.h \
36 include/utils/dbi.h \
37 include/utils/error.h \
38 include/utils/llist.h \
39 include/utils/os.h \
40 include/utils/proto.h \
41 include/utils/strbuf.h \
42 include/utils/unixsock.h
44 pkgclientincludedir = $(pkgincludedir)/client
45 pkgclientinclude_HEADERS = \
46 include/client/sock.h \
47 include/client/sysdb.h
49 noinst_LTLIBRARIES = libsysdbclient.la libsysdb.la
51 libsysdbclient_la_SOURCES = \
52 client/client.c include/client/sysdb.h \
53 client/sock.c include/client/sock.h \
54 utils/error.c include/utils/error.h \
55 utils/proto.c include/utils/proto.h \
56 utils/strbuf.c include/utils/strbuf.h
57 libsysdbclient_la_CFLAGS = $(AM_CFLAGS)
58 libsysdbclient_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
59 libsysdbclient_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 -pthread
60 libsysdbclient_la_LIBADD = $(LIBLTDL)
62 # don't use strict CFLAGS for flex code
63 noinst_LTLIBRARIES += libsysdb_fe_parser.la
64 libsysdb_fe_parser_la_SOURCES = \
65 frontend/grammar.y frontend/scanner.l
66 libsysdb_fe_parser_la_CFLAGS = @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@ \
67 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
68 libsysdb_la_SOURCES = \
69 sysdb.c include/sysdb.h \
70 core/object.c include/core/object.h \
71 core/plugin.c include/core/plugin.h \
72 core/store.c include/core/store.h \
73 core/store-private.h \
74 core/store_expr.c \
75 core/store_lookup.c \
76 core/data.c include/core/data.h \
77 core/timeseries.c include/core/timeseries.h \
78 frontend/analyzer.c \
79 frontend/connection.c include/frontend/connection.h \
80 frontend/connection-private.h \
81 frontend/parser.c include/frontend/parser.h \
82 frontend/sock.c include/frontend/sock.h \
83 frontend/session.c \
84 frontend/query.c \
85 utils/avltree.c include/utils/avltree.h \
86 utils/channel.c include/utils/channel.h \
87 utils/error.c include/utils/error.h \
88 utils/llist.c include/utils/llist.h \
89 utils/os.c include/utils/os.h \
90 utils/proto.c include/utils/proto.h \
91 utils/strbuf.c include/utils/strbuf.h \
92 core/time.c include/core/time.h \
93 utils/unixsock.c include/utils/unixsock.h
94 libsysdb_la_CFLAGS = $(AM_CFLAGS)
95 libsysdb_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
96 libsysdb_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 -pthread -lm
97 libsysdb_la_LIBADD = libsysdb_fe_parser.la \
98 $(LIBLTDL) -lrt liboconfig/liboconfig.la
99 libsysdb_la_DEPENDENCIES = libsysdb_fe_parser.la liboconfig/liboconfig.la
101 if BUILD_WITH_LIBDBI
102 libsysdb_la_SOURCES += \
103 utils/dbi.c include/utils/dbi.h
104 libsysdb_la_LIBADD += -ldbi
105 endif
107 bin_PROGRAMS = sysdbd
108 if BUILD_CLIENT
109 bin_PROGRAMS += sysdb
111 # don't use strict CFLAGS for flex code
112 noinst_LTLIBRARIES += libsysdb_scanner.la
113 libsysdb_scanner_la_SOURCES = tools/sysdb/scanner.l
114 libsysdb_scanner_la_CFLAGS = @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@ \
115 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
116 sysdb_SOURCES = tools/sysdb/main.c include/client/sysdb.h \
117 tools/sysdb/command.c tools/sysdb/command.h \
118 tools/sysdb/input.c tools/sysdb/input.h \
119 core/object.c include/core/object.h \
120 utils/llist.c include/utils/llist.h
121 sysdb_CFLAGS = -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\"" \
122 $(AM_CFLAGS) @READLINE_CFLAGS@
123 sysdb_LDADD = libsysdb_scanner.la libsysdbclient.la @READLINE_LIBS@
124 endif
126 sysdbd_SOURCES = tools/sysdbd/main.c include/sysdb.h \
127 tools/sysdbd/configfile.c tools/sysdbd/configfile.h \
128 $(libsysdb_la_SOURCES)
129 sysdbd_CFLAGS = $(AM_CFLAGS) -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
130 sysdbd_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
131 sysdbd_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -pthread -lm
132 sysdbd_LDADD = libsysdb_fe_parser.la liboconfig/liboconfig.la \
133 $(LIBLTDL) -lrt
134 sysdbd_DEPENDENCIES = libsysdb_fe_parser.la liboconfig/liboconfig.la
136 if BUILD_WITH_LIBDBI
137 sysdbd_LDADD += -ldbi
138 endif
140 sdbconfdir = $(sysconfdir)/sysdb
141 dist_sdbconf_DATA = tools/sysdbd/sysdbd.conf.sample
143 pkgbackendlibdir = $(pkglibdir)/backend
144 pkgbackendcollectdlibdir = $(pkgbackendlibdir)/collectd
145 pkgbackendpuppetlibdir = $(pkgbackendlibdir)/puppet
146 pkgcnamelibdir = $(pkglibdir)/cname
147 pkgtimeserieslibdir = $(pkglibdir)/timeseries
149 pkglib_LTLIBRARIES =
150 pkgbackendlib_LTLIBRARIES =
151 pkgbackendcollectdlib_LTLIBRARIES =
152 pkgbackendpuppetlib_LTLIBRARIES =
153 pkgcnamelib_LTLIBRARIES =
154 pkgtimeserieslib_LTLIBRARIES =
156 if BUILD_PLUGIN_CNAMEDNS
157 pkgcnamelib_LTLIBRARIES += plugins/cname/dns.la
158 plugins_cname_dns_la_SOURCE = plugins/cname/dns.c
159 plugins_cname_dns_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
160 sysdbd_LDADD += -dlopen plugins/cname/dns.la
161 sysdbd_DEPENDENCIES += plugins/cname/dns.la
162 endif
164 if BUILD_PLUGIN_COLLECTDUNIXSOCK
165 pkgbackendcollectdlib_LTLIBRARIES += plugins/backend/collectd/unixsock.la
166 plugins_backend_collectd_unixsock_la_SOURCES = plugins/backend/collectd/unixsock.c
167 plugins_backend_collectd_unixsock_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
168 sysdbd_LDADD += -dlopen plugins/backend/collectd/unixsock.la
169 sysdbd_DEPENDENCIES += plugins/backend/collectd/unixsock.la
170 endif
172 if BUILD_PLUGIN_MKLIVESTATUS
173 pkgbackendlib_LTLIBRARIES += plugins/backend/mk-livestatus.la
174 plugins_backend_mk_livestatus_la_SOURCES = plugins/backend/mk-livestatus.c
175 plugins_backend_mk_livestatus_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
176 sysdbd_LDADD += -dlopen plugins/backend/mk-livestatus.la
177 sysdbd_DEPENDENCIES += plugins/backend/mk-livestatus.la
178 endif
180 if BUILD_PLUGIN_PUPPETSTORECONFIGS
181 pkgbackendpuppetlib_LTLIBRARIES += plugins/backend/puppet/store-configs.la
182 plugins_backend_puppet_store_configs_la_SOURCES = plugins/backend/puppet/store-configs.c
183 plugins_backend_puppet_store_configs_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
184 sysdbd_LDADD += -dlopen plugins/backend/puppet/store-configs.la
185 sysdbd_DEPENDENCIES += plugins/backend/puppet/store-configs.la
186 endif
188 if BUILD_PLUGIN_SYSLOG
189 pkglib_LTLIBRARIES += plugins/syslog.la
190 plugins_syslog_la_SOURCE = plugins/syslog.c
191 plugins_syslog_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
192 sysdbd_LDADD += -dlopen plugins/syslog.la
193 sysdbd_DEPENDENCIES += plugins/syslog.la
194 endif
196 if BUILD_PLUGIN_TIMESERIESRRDTOOL
197 pkgtimeserieslib_LTLIBRARIES += plugins/timeseries/rrdtool.la
198 plugins_timeseries_rrdtool_la_SOURCES = plugins/timeseries/rrdtool.c
199 plugins_timeseries_rrdtool_la_CFLAGS = $(AM_CFLAGS) @RRD_CFLAGS@
200 plugins_timeseries_rrdtool_la_LDFLAGS = $(AM_LDFLAGS) @RRD_LIBS@ -module -avoid-version
201 sysdbd_LDADD += -dlopen plugins/timeseries/rrdtool.la
202 sysdbd_DEPENDENCIES += plugins/timeseries/rrdtool.la
203 endif
205 include/client/sysdb.h: include/client/sysdb.h.in ../version
206 source ../version; sed \
207 -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
208 -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
209 -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
210 -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
211 -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
212 include/client/sysdb.h.in > include/client/sysdb.h
214 include/sysdb.h: include/sysdb.h.in ../version
215 source ../version; sed \
216 -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
217 -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
218 -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
219 -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
220 -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
221 include/sysdb.h.in > include/sysdb.h
223 ../version:
224 cd .. && make version