Code

Make everything buildable out-of-tree.
[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@
5 AM_LDFLAGS = @COVERAGE_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 BUILT_SOURCES = include/client/sysdb.h include/sysdb.h
13 pkginclude_HEADERS = include/sysdb.h
14 pkgcoreincludedir = $(pkgincludedir)/core
15 pkgcoreinclude_HEADERS = \
16                 include/core/data.h \
17                 include/core/object.h \
18                 include/core/plugin.h \
19                 include/core/store.h \
20                 include/core/time.h
21 pkgfeincludedir = $(pkgincludedir)/frontend
22 pkgfeinclude_HEADERS = \
23                 include/frontend/connection.h \
24                 include/frontend/proto.h \
25                 include/frontend/sock.h
26 pkgutilsincludedir = $(pkgincludedir)/utils
27 pkgutilsinclude_HEADERS = \
28                 include/utils/channel.h \
29                 include/utils/dbi.h \
30                 include/utils/error.h \
31                 include/utils/llist.h \
32                 include/utils/proto.h \
33                 include/utils/strbuf.h \
34                 include/utils/unixsock.h
36 pkgclientincludedir = $(pkgincludedir)/client
37 pkgclientinclude_HEADERS = \
38                 include/client/sock.h \
39                 include/client/sysdb.h
41 lib_LTLIBRARIES = libsysdbclient.la libsysdb.la
43 libsysdbclient_la_SOURCES = \
44                 client/client.c include/client/sysdb.h \
45                 client/sock.c include/client/sock.h \
46                 utils/error.c include/utils/error.h \
47                 utils/proto.c include/utils/proto.h \
48                 utils/strbuf.c include/utils/strbuf.h
49 libsysdbclient_la_CFLAGS = $(AM_CFLAGS)
50 libsysdbclient_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
51 libsysdbclient_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 -pthread
52 libsysdbclient_la_LIBADD = $(LIBLTDL)
54 libsysdb_la_SOURCES = \
55                 sysdb.c include/sysdb.h \
56                 core/object.c include/core/object.h \
57                 core/plugin.c include/core/plugin.h \
58                 core/store.c include/core/store.h \
59                 include/core/data.h \
60                 frontend/connection.c include/frontend/connection.h \
61                 include/frontend/connection-private.h \
62                 frontend/sock.c include/frontend/sock.h \
63                 frontend/session.c \
64                 frontend/query.c \
65                 utils/channel.c include/utils/channel.h \
66                 utils/error.c include/utils/error.h \
67                 utils/llist.c include/utils/llist.h \
68                 utils/proto.c include/utils/proto.h \
69                 utils/strbuf.c include/utils/strbuf.h \
70                 core/time.c include/core/time.h \
71                 utils/unixsock.c include/utils/unixsock.h
72 libsysdb_la_CFLAGS = $(AM_CFLAGS)
73 libsysdb_la_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
74 libsysdb_la_LDFLAGS = $(AM_LDFLAGS) -version-info 0:0:0 -pthread
75 libsysdb_la_LIBADD = $(LIBLTDL) -lrt liboconfig/liboconfig.la
76 libsysdb_la_DEPENDENCIES = liboconfig/liboconfig.la
78 if BUILD_WITH_LIBDBI
79 libsysdb_la_SOURCES += \
80                 utils/dbi.c include/utils/dbi.h
81 libsysdb_la_LIBADD += -ldbi
82 endif
84 bin_PROGRAMS = sysdbd
85 if BUILD_CLIENT
86 bin_PROGRAMS += sysdb
88 # don't use strict CFLAGS for flex code
89 noinst_LIBRARIES = libsysdb_scanner.a
90 libsysdb_scanner_a_SOURCES = tools/sysdb/scanner.l
91 libsysdb_scanner_a_CFLAGS = -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
92 sysdb_SOURCES = tools/sysdb/main.c include/client/sysdb.h \
93                 tools/sysdb/input.c tools/sysdb/input.h
94 sysdb_CFLAGS = -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\"" \
95                 $(AM_CFLAGS) @READLINE_CFLAGS@
96 sysdb_LDADD = libsysdb_scanner.a libsysdbclient.la @READLINE_LIBS@
97 endif
99 sysdbd_SOURCES = tools/sysdbd/main.c include/sysdb.h \
100                 tools/sysdbd/configfile.c tools/sysdbd/configfile.h
101 sysdbd_CFLAGS = $(AM_CFLAGS) -DBUILD_DATE="\"$$( date --utc '+%F %T' ) (UTC)\""
102 sysdbd_LDADD = libsysdb.la liboconfig/liboconfig.la
103 sysdbd_DEPENDENCIES = liboconfig/liboconfig.la
105 sdbconfdir = $(sysconfdir)/sysdb
106 dist_sdbconf_DATA = tools/sysdbd/sysdbd.conf.sample
108 pkgbackendlibdir = $(pkglibdir)/backend
109 pkgbackendcollectdlibdir = $(pkgbackendlibdir)/collectd
110 pkgbackendpuppetlibdir = $(pkgbackendlibdir)/puppet
111 pkgcnamelibdir = $(pkglibdir)/cname
113 pkglib_LTLIBRARIES =
114 pkgbackendlib_LTLIBRARIES =
115 pkgbackendcollectdlib_LTLIBRARIES =
116 pkgbackendpuppetlib_LTLIBRARIES =
117 pkgcnamelib_LTLIBRARIES =
119 if BUILD_PLUGIN_COLLECTD
120 pkgbackendcollectdlib_LTLIBRARIES += backend/collectd/unixsock.la
121 backend_collectd_unixsock_la_SOURCES = backend/collectd/unixsock.c
122 backend_collectd_unixsock_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
123 libsysdb_la_LIBADD += -dlopen backend/collectd/unixsock.la
124 libsysdb_la_DEPENDENCIES += backend/collectd/unixsock.la
125 endif
127 if BUILD_PLUGIN_MKLIVESTATUS
128 pkgbackendlib_LTLIBRARIES += backend/mk-livestatus.la
129 backend_mk_livestatus_la_SOURCES = backend/mk-livestatus.c
130 backend_mk_livestatus_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
131 libsysdb_la_LIBADD += -dlopen backend/mk-livestatus.la
132 libsysdb_la_DEPENDENCIES += backend/mk-livestatus.la
133 endif
135 if BUILD_PLUGIN_PUPPETSTORECONFIGS
136 pkgbackendpuppetlib_LTLIBRARIES += backend/puppet/store-configs.la
137 backend_puppet_store_configs_la_SOURCES = backend/puppet/store-configs.c
138 backend_puppet_store_configs_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
139 libsysdb_la_LIBADD += -dlopen backend/puppet/store-configs.la
140 libsysdb_la_DEPENDENCIES += backend/puppet/store-configs.la
141 endif
143 if BUILD_PLUGIN_SYSLOG
144 pkglib_LTLIBRARIES += plugins/syslog.la
145 plugins_syslog_la_SOURCE = plugins/syslog.c
146 plugins_syslog_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version
147 libsysdb_la_LIBADD += -dlopen plugins/syslog.la
148 libsysdb_la_DEPENDENCIES += plugins/syslog.la
149 endif
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 libsysdb_la_LIBADD += -dlopen plugins/cname/dns.la
156 libsysdb_la_DEPENDENCIES += plugins/cname/dns.la
157 endif
159 include/client/sysdb.h: include/client/sysdb.h.in ../version
160         source ../version; sed \
161             -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
162             -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
163             -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
164             -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
165             -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
166             include/client/sysdb.h.in > include/client/sysdb.h
168 include/sysdb.h: include/sysdb.h.in ../version
169         source ../version; sed \
170             -e "s/@SDB_VERSION_MAJOR@/$$VERSION_MAJOR/g" \
171             -e "s/@SDB_VERSION_MINOR@/$$VERSION_MINOR/g" \
172             -e "s/@SDB_VERSION_PATCH@/$$VERSION_PATCH/g" \
173             -e "s/@SDB_VERSION_EXTRA@/$$VERSION_EXTRA/g" \
174             -e "s/@SDB_VERSION_STRING@/$$VERSION_STRING/g" \
175             include/sysdb.h.in > include/sysdb.h