Code

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