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 pkgfeincludedir = $(pkgincludedir)/frontend
26 pkgfeinclude_HEADERS = \
27 include/frontend/connection.h \
28 include/frontend/parser.h \
29 include/frontend/proto.h \
30 include/frontend/sock.h
31 pkgutilsincludedir = $(pkgincludedir)/utils
32 pkgutilsinclude_HEADERS = \
33 include/utils/avltree.h \
34 include/utils/channel.h \
35 include/utils/dbi.h \
36 include/utils/error.h \
37 include/utils/llist.h \
38 include/utils/os.h \
39 include/utils/proto.h \
40 include/utils/strbuf.h \
41 include/utils/unixsock.h
43 pkgclientincludedir = $(pkgincludedir)/client
44 pkgclientinclude_HEADERS = \
45 include/client/sock.h \
46 include/client/sysdb.h
48 noinst_LTLIBRARIES = libsysdbclient.la libsysdb.la
50 libsysdbclient_la_SOURCES = \
51 client/client.c include/client/sysdb.h \
52 client/sock.c include/client/sock.h \
53 utils/error.c include/utils/error.h \
54 utils/proto.c include/utils/proto.h \
55 utils/strbuf.c include/utils/strbuf.h
56 libsysdbclient_la_CFLAGS = $(AM_CFLAGS)
57 libsysdbclient_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
58 libsysdbclient_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 -pthread
59 libsysdbclient_la_LIBADD = $(LIBLTDL)
61 # don't use strict CFLAGS for flex code
62 noinst_LTLIBRARIES += libsysdb_fe_parser.la
63 libsysdb_fe_parser_la_SOURCES = \
64 frontend/grammar.y frontend/scanner.l
65 libsysdb_fe_parser_la_CFLAGS = @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@ \
66 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
67 libsysdb_la_SOURCES = \
68 sysdb.c include/sysdb.h \
69 core/object.c include/core/object.h \
70 core/plugin.c include/core/plugin.h \
71 core/store.c include/core/store.h \
72 core/store-private.h \
73 core/store_expr.c \
74 core/store_lookup.c \
75 core/data.c include/core/data.h \
76 frontend/connection.c include/frontend/connection.h \
77 frontend/connection-private.h \
78 frontend/parser.c include/frontend/parser.h \
79 frontend/sock.c include/frontend/sock.h \
80 frontend/session.c \
81 frontend/query.c \
82 utils/avltree.c include/utils/avltree.h \
83 utils/channel.c include/utils/channel.h \
84 utils/error.c include/utils/error.h \
85 utils/llist.c include/utils/llist.h \
86 utils/os.c include/utils/os.h \
87 utils/proto.c include/utils/proto.h \
88 utils/strbuf.c include/utils/strbuf.h \
89 core/time.c include/core/time.h \
90 utils/unixsock.c include/utils/unixsock.h
91 libsysdb_la_CFLAGS = $(AM_CFLAGS)
92 libsysdb_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
93 libsysdb_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 -pthread -lm
94 libsysdb_la_LIBADD = libsysdb_fe_parser.la \
95 $(LIBLTDL) -lrt liboconfig/liboconfig.la
96 libsysdb_la_DEPENDENCIES = libsysdb_fe_parser.la liboconfig/liboconfig.la
98 if BUILD_WITH_LIBDBI
99 libsysdb_la_SOURCES += \
100 utils/dbi.c include/utils/dbi.h
101 libsysdb_la_LIBADD += -ldbi
102 endif
104 bin_PROGRAMS = sysdbd
105 if BUILD_CLIENT
106 bin_PROGRAMS += sysdb
108 # don't use strict CFLAGS for flex code
109 noinst_LTLIBRARIES += libsysdb_scanner.la
110 libsysdb_scanner_la_SOURCES = tools/sysdb/scanner.l
111 libsysdb_scanner_la_CFLAGS = @COVERAGE_CFLAGS@ @PROFILING_CFLAGS@ \
112 -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
113 sysdb_SOURCES = tools/sysdb/main.c include/client/sysdb.h \
114 tools/sysdb/command.c tools/sysdb/command.h \
115 tools/sysdb/input.c tools/sysdb/input.h \
116 core/object.c include/core/object.h \
117 utils/llist.c include/utils/llist.h
118 sysdb_CFLAGS = -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\"" \
119 $(AM_CFLAGS) @READLINE_CFLAGS@
120 sysdb_LDADD = libsysdb_scanner.la libsysdbclient.la @READLINE_LIBS@
121 endif
123 sysdbd_SOURCES = tools/sysdbd/main.c include/sysdb.h \
124 tools/sysdbd/configfile.c tools/sysdbd/configfile.h \
125 $(libsysdb_la_SOURCES)
126 sysdbd_CFLAGS = $(AM_CFLAGS) -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
127 sysdbd_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
128 sysdbd_LDFLAGS = $(AM_LDFLAGS) -export-dynamic -pthread -lm
129 sysdbd_LDADD = libsysdb_fe_parser.la liboconfig/liboconfig.la \
130 $(LIBLTDL) -lrt
131 sysdbd_DEPENDENCIES = libsysdb_fe_parser.la liboconfig/liboconfig.la
133 if BUILD_WITH_LIBDBI
134 sysdbd_LDADD += -ldbi
135 endif
137 sdbconfdir = $(sysconfdir)/sysdb
138 dist_sdbconf_DATA = tools/sysdbd/sysdbd.conf.sample
140 pkgbackendlibdir = $(pkglibdir)/backend
141 pkgbackendcollectdlibdir = $(pkgbackendlibdir)/collectd
142 pkgbackendpuppetlibdir = $(pkgbackendlibdir)/puppet
143 pkgcnamelibdir = $(pkglibdir)/cname
145 pkglib_LTLIBRARIES =
146 pkgbackendlib_LTLIBRARIES =
147 pkgbackendcollectdlib_LTLIBRARIES =
148 pkgbackendpuppetlib_LTLIBRARIES =
149 pkgcnamelib_LTLIBRARIES =
151 if BUILD_PLUGIN_CNAMEDNS
152 pkgcnamelib_LTLIBRARIES += plugins/cname/dns.la
153 plugins_cname_dns_la_SOURCE = plugins/cname/dns.c
154 plugins_cname_dns_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
155 sysdbd_LDADD += -dlopen plugins/cname/dns.la
156 sysdbd_DEPENDENCIES += plugins/cname/dns.la
157 endif
159 if BUILD_PLUGIN_COLLECTD
160 pkgbackendcollectdlib_LTLIBRARIES += backend/collectd/unixsock.la
161 backend_collectd_unixsock_la_SOURCES = backend/collectd/unixsock.c
162 backend_collectd_unixsock_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
163 sysdbd_LDADD += -dlopen backend/collectd/unixsock.la
164 sysdbd_DEPENDENCIES += backend/collectd/unixsock.la
165 endif
167 if BUILD_PLUGIN_MKLIVESTATUS
168 pkgbackendlib_LTLIBRARIES += backend/mk-livestatus.la
169 backend_mk_livestatus_la_SOURCES = backend/mk-livestatus.c
170 backend_mk_livestatus_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
171 sysdbd_LDADD += -dlopen backend/mk-livestatus.la
172 sysdbd_DEPENDENCIES += backend/mk-livestatus.la
173 endif
175 if BUILD_PLUGIN_PUPPETSTORECONFIGS
176 pkgbackendpuppetlib_LTLIBRARIES += backend/puppet/store-configs.la
177 backend_puppet_store_configs_la_SOURCES = backend/puppet/store-configs.c
178 backend_puppet_store_configs_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
179 sysdbd_LDADD += -dlopen backend/puppet/store-configs.la
180 sysdbd_DEPENDENCIES += backend/puppet/store-configs.la
181 endif
183 if BUILD_PLUGIN_SYSLOG
184 pkglib_LTLIBRARIES += plugins/syslog.la
185 plugins_syslog_la_SOURCE = plugins/syslog.c
186 plugins_syslog_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
187 sysdbd_LDADD += -dlopen plugins/syslog.la
188 sysdbd_DEPENDENCIES += plugins/syslog.la
189 endif
191 include/client/sysdb.h: include/client/sysdb.h.in ../version
192 source ../version; sed \
193 -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
194 -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
195 -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
196 -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
197 -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
198 include/client/sysdb.h.in > include/client/sysdb.h
200 include/sysdb.h: include/sysdb.h.in ../version
201 source ../version; sed \
202 -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
203 -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
204 -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
205 -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
206 -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
207 include/sysdb.h.in > include/sysdb.h
209 ../version:
210 cd .. && make version