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_CXXFLAGS = @STRICT_CXXFLAGS@ @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@
6 AM_LDFLAGS = @COVERAGE_LDFLAGS@ @PROFILING_LDFLAGS@
7 AM_CPPFLAGS = -I"${top_srcdir}/src/include"
8 AM_CPPFLAGS += -DSYSCONFDIR='"${sysconfdir}"'
9 AM_CPPFLAGS += -DLOCALSTATEDIR='"${localstatedir}"'
10 AM_CPPFLAGS += -DPKGLIBDIR='"${pkglibdir}"'
12 AM_YFLAGS = -d
14 BUILT_SOURCES = include/client/sysdb.h include/sysdb.h \
15 frontend/grammar.h
16 EXTRA_DIST = include/client/sysdb.h.in include/sysdb.h.in
18 pkginclude_HEADERS = include/sysdb.h
19 pkgcoreincludedir = $(pkgincludedir)/core
20 pkgcoreinclude_HEADERS = \
21 include/core/data.h \
22 include/core/object.h \
23 include/core/plugin.h \
24 include/core/store.h \
25 include/core/time.h \
26 include/core/timeseries.h
27 pkgfeincludedir = $(pkgincludedir)/frontend
28 pkgfeinclude_HEADERS = \
29 include/frontend/connection.h \
30 include/frontend/parser.h \
31 include/frontend/proto.h \
32 include/frontend/sock.h
33 pkgutilsincludedir = $(pkgincludedir)/utils
34 pkgutilsinclude_HEADERS = \
35 include/utils/avltree.h \
36 include/utils/channel.h \
37 include/utils/dbi.h \
38 include/utils/error.h \
39 include/utils/llist.h \
40 include/utils/os.h \
41 include/utils/proto.h \
42 include/utils/ssl.h \
43 include/utils/strbuf.h \
44 include/utils/unixsock.h
46 pkgclientincludedir = $(pkgincludedir)/client
47 pkgclientinclude_HEADERS = \
48 include/client/sock.h \
49 include/client/sysdb.h
51 noinst_LTLIBRARIES = libsysdbclient.la libsysdb.la
53 libsysdbclient_la_SOURCES = \
54 core/data.c include/core/data.h \
55 core/time.c include/core/time.h \
56 client/client.c include/client/sysdb.h \
57 client/sock.c include/client/sock.h \
58 utils/error.c include/utils/error.h \
59 utils/proto.c include/utils/proto.h \
60 utils/ssl.c include/utils/ssl.h \
61 utils/strbuf.c include/utils/strbuf.h
62 libsysdbclient_la_CFLAGS = $(AM_CFLAGS) @OPENSSL_CFLAGS@
63 libsysdbclient_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
64 libsysdbclient_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 \
65 -pthread -lm -lrt
66 libsysdbclient_la_LIBADD = $(LIBLTDL) @OPENSSL_LIBS@
68 # don't use strict CFLAGS for flex code
69 noinst_LTLIBRARIES += libsysdb_fe_parser.la
70 libsysdb_fe_parser_la_SOURCES = \
71 frontend/grammar.y frontend/scanner.l
72 libsysdb_fe_parser_la_CFLAGS = @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@ \
73 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
74 libsysdb_la_SOURCES = \
75 sysdb.c include/sysdb.h \
76 core/object.c include/core/object.h \
77 core/plugin.c include/core/plugin.h \
78 core/store.c include/core/store.h \
79 core/store-private.h \
80 core/store_expr.c \
81 core/store_json.c \
82 core/store_lookup.c \
83 core/data.c include/core/data.h \
84 core/time.c include/core/time.h \
85 core/timeseries.c include/core/timeseries.h \
86 frontend/analyzer.c \
87 frontend/connection.c include/frontend/connection.h \
88 frontend/connection-private.h \
89 frontend/parser.c include/frontend/parser.h \
90 frontend/sock.c include/frontend/sock.h \
91 frontend/session.c \
92 frontend/store.c \
93 frontend/query.c \
94 utils/avltree.c include/utils/avltree.h \
95 utils/channel.c include/utils/channel.h \
96 utils/error.c include/utils/error.h \
97 utils/llist.c include/utils/llist.h \
98 utils/os.c include/utils/os.h \
99 utils/proto.c include/utils/proto.h \
100 utils/ssl.c include/utils/ssl.h \
101 utils/strbuf.c include/utils/strbuf.h \
102 utils/unixsock.c include/utils/unixsock.h
103 libsysdb_la_CFLAGS = $(AM_CFLAGS) @OPENSSL_CFLAGS@
104 libsysdb_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
105 libsysdb_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 \
106 -pthread -lm -lrt
107 libsysdb_la_LIBADD = libsysdb_fe_parser.la \
108 $(LIBLTDL) liboconfig/liboconfig.la @OPENSSL_LIBS@
109 libsysdb_la_DEPENDENCIES = libsysdb_fe_parser.la liboconfig/liboconfig.la
111 if BUILD_WITH_LIBDBI
112 libsysdb_la_SOURCES += \
113 utils/dbi.c include/utils/dbi.h
114 libsysdb_la_LIBADD += -ldbi
115 endif
117 bin_PROGRAMS = sysdbd
118 if BUILD_CLIENT
119 bin_PROGRAMS += sysdb
121 # don't use strict CFLAGS for flex code
122 noinst_LTLIBRARIES += libsysdb_scanner.la
123 libsysdb_scanner_la_SOURCES = tools/sysdb/scanner.l
124 libsysdb_scanner_la_CFLAGS = @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@ \
125 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
126 sysdb_SOURCES = tools/sysdb/main.c include/client/sysdb.h \
127 tools/sysdb/command.c tools/sysdb/command.h \
128 tools/sysdb/input.c tools/sysdb/input.h \
129 core/object.c include/core/object.h \
130 utils/llist.c include/utils/llist.h \
131 utils/os.c include/utils/os.h
132 sysdb_CFLAGS = -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\"" \
133 $(AM_CFLAGS) @READLINE_CFLAGS@
134 sysdb_LDADD = libsysdb_scanner.la libsysdbclient.la @READLINE_LIBS@ -lm
135 endif
137 sysdbd_SOURCES = tools/sysdbd/main.c include/sysdb.h \
138 tools/sysdbd/configfile.c tools/sysdbd/configfile.h \
139 $(libsysdb_la_SOURCES)
140 sysdbd_CFLAGS = $(AM_CFLAGS) @OPENSSL_CFLAGS@ \
141 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
142 sysdbd_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
143 sysdbd_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -pthread -lm
144 sysdbd_LDADD = libsysdb_fe_parser.la liboconfig/liboconfig.la \
145 $(LIBLTDL) -lrt @OPENSSL_LIBS@
146 sysdbd_DEPENDENCIES = libsysdb_fe_parser.la liboconfig/liboconfig.la
148 if BUILD_WITH_LIBDBI
149 sysdbd_LDADD += -ldbi
150 endif
152 sdbconfdir = $(sysconfdir)/sysdb
153 dist_sdbconf_DATA = tools/sysdbd/sysdbd.conf.sample
155 pkgbackendlibdir = $(pkglibdir)/backend
156 pkgbackendcollectdlibdir = $(pkgbackendlibdir)/collectd
157 pkgbackendpuppetlibdir = $(pkgbackendlibdir)/puppet
158 pkgcnamelibdir = $(pkglibdir)/cname
159 pkgtimeserieslibdir = $(pkglibdir)/timeseries
160 pkgstorelibdir = $(pkglibdir)/store
162 pkglib_LTLIBRARIES =
163 pkgbackendlib_LTLIBRARIES =
164 pkgbackendcollectdlib_LTLIBRARIES =
165 pkgbackendpuppetlib_LTLIBRARIES =
166 pkgcnamelib_LTLIBRARIES =
167 pkgtimeserieslib_LTLIBRARIES =
168 pkgstorelib_LTLIBRARIES =
170 if BUILD_PLUGIN_CNAMEDNS
171 pkgcnamelib_LTLIBRARIES += plugins/cname/dns.la
172 plugins_cname_dns_la_SOURCE = plugins/cname/dns.c
173 plugins_cname_dns_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
174 sysdbd_LDADD += -dlopen plugins/cname/dns.la
175 sysdbd_DEPENDENCIES += plugins/cname/dns.la
176 endif
178 if BUILD_PLUGIN_COLLECTDUNIXSOCK
179 pkgbackendcollectdlib_LTLIBRARIES += plugins/backend/collectd/unixsock.la
180 plugins_backend_collectd_unixsock_la_SOURCES = plugins/backend/collectd/unixsock.c
181 plugins_backend_collectd_unixsock_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
182 sysdbd_LDADD += -dlopen plugins/backend/collectd/unixsock.la
183 sysdbd_DEPENDENCIES += plugins/backend/collectd/unixsock.la
184 endif
186 if BUILD_PLUGIN_FACTER
187 pkgbackendlib_LTLIBRARIES += plugins/backend/facter.la
188 plugins_backend_facter_la_SOURCES = plugins/backend/facter.cc
189 plugins_backend_facter_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version -lfacter
190 sysdbd_LDADD += -dlopen plugins/backend/facter.la
191 sysdbd_DEPENDENCIES += plugins/backend/facter.la
192 endif
194 if BUILD_PLUGIN_MKLIVESTATUS
195 pkgbackendlib_LTLIBRARIES += plugins/backend/mk-livestatus.la
196 plugins_backend_mk_livestatus_la_SOURCES = plugins/backend/mk-livestatus.c
197 plugins_backend_mk_livestatus_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
198 sysdbd_LDADD += -dlopen plugins/backend/mk-livestatus.la
199 sysdbd_DEPENDENCIES += plugins/backend/mk-livestatus.la
200 endif
202 if BUILD_PLUGIN_PUPPETSTORECONFIGS
203 pkgbackendpuppetlib_LTLIBRARIES += plugins/backend/puppet/store-configs.la
204 plugins_backend_puppet_store_configs_la_SOURCES = plugins/backend/puppet/store-configs.c
205 plugins_backend_puppet_store_configs_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
206 sysdbd_LDADD += -dlopen plugins/backend/puppet/store-configs.la
207 sysdbd_DEPENDENCIES += plugins/backend/puppet/store-configs.la
208 endif
210 if BUILD_PLUGIN_SYSLOG
211 pkglib_LTLIBRARIES += plugins/syslog.la
212 plugins_syslog_la_SOURCE = plugins/syslog.c
213 plugins_syslog_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
214 sysdbd_LDADD += -dlopen plugins/syslog.la
215 sysdbd_DEPENDENCIES += plugins/syslog.la
216 endif
218 if BUILD_PLUGIN_TIMESERIESRRDTOOL
219 pkgtimeserieslib_LTLIBRARIES += plugins/timeseries/rrdtool.la
220 plugins_timeseries_rrdtool_la_SOURCES = plugins/timeseries/rrdtool.c
221 plugins_timeseries_rrdtool_la_CFLAGS = $(AM_CFLAGS) @RRD_CFLAGS@
222 plugins_timeseries_rrdtool_la_LDFLAGS = $(AM_LDFLAGS) @RRD_LIBS@ -module -avoid-version
223 sysdbd_LDADD += -dlopen plugins/timeseries/rrdtool.la
224 sysdbd_DEPENDENCIES += plugins/timeseries/rrdtool.la
225 endif
227 if BUILD_PLUGIN_STORENETWORK
228 pkgstorelib_LTLIBRARIES += plugins/store/network.la
229 plugins_store_network_la_SOURCES = plugins/store/network.c
230 plugins_store_network_la_LDFLAGS = $(AM_LDFLAGS) libsysdbclient.la -module -avoid-version
231 sysdbd_LDADD += -dlopen plugins/store/network.la
232 sysdbd_DEPENDENCIES += plugins/store/network.la
233 endif
235 include/client/sysdb.h: include/client/sysdb.h.in ../version
236 source ../version; sed \
237 -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
238 -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
239 -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
240 -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
241 -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
242 include/client/sysdb.h.in > include/client/sysdb.h
244 include/sysdb.h: include/sysdb.h.in ../version
245 source ../version; sed \
246 -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
247 -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
248 -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
249 -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
250 -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
251 include/sysdb.h.in > include/sysdb.h
253 ../version:
254 cd .. && make version