src/utils_parse_json.c: Implement parse_json().
[collectd.git] / Makefile.am
1 ACLOCAL_AMFLAGS = -I m4
2 AM_YFLAGS = -d
3
4 if BUILD_WIN32
5 cpkgdatadir=$(datadir)
6 cpkglibdir=$(libdir)/plugins
7 cpkglocalstatedir=${localstatedir}
8 else
9 cpkgdatadir=$(pkgdatadir)
10 cpkglibdir=$(pkglibdir)
11 cpkglocalstatedir=${localstatedir}/lib/${PACKAGE_NAME}
12 endif
13
14 BUILT_SOURCES = \
15         src/libcollectdclient/collectd/lcc_features.h \
16         src/liboconfig/parser.h \
17         $(dist_man_MANS)
18
19
20 CLEANFILES = \
21         .perl-directory-stamp \
22         bindings/buildperl/Collectd.pm \
23         bindings/buildperl/Collectd/Plugins/OpenVZ.pm \
24         bindings/buildperl/Collectd/Unixsock.pm \
25         bindings/buildperl/Makefile.PL \
26         collectd-api.jar \
27         collectd.grpc.pb.cc \
28         collectd.grpc.pb.h \
29         collectd.pb.cc \
30         collectd.pb.h \
31         generic-jmx.jar \
32         org/collectd/api/*.class \
33         org/collectd/java/*.class \
34         prometheus.pb-c.c \
35         prometheus.pb-c.h \
36         src/pinba.pb-c.c \
37         src/pinba.pb-c.h \
38         types.pb.cc \
39         types.pb.h
40
41
42 EXTRA_DIST = \
43         bindings/perl/Makefile.PL \
44         bindings/perl/lib/Collectd.pm \
45         bindings/perl/lib/Collectd/Plugins/Monitorus.pm \
46         bindings/perl/lib/Collectd/Plugins/OpenVZ.pm \
47         bindings/perl/lib/Collectd/Unixsock.pm \
48         bindings/perl/uninstall_mod.pl \
49         contrib \
50         proto/collectd.proto \
51         proto/prometheus.proto \
52         proto/types.proto \
53         src/collectd-email.pod \
54         src/collectd-exec.pod \
55         src/collectd-java.pod \
56         src/collectd-lua.pod \
57         src/collectd-nagios.pod \
58         src/collectd-perl.pod \
59         src/collectd-python.pod \
60         src/collectd-snmp.pod \
61         src/collectd-tg.pod \
62         src/collectd-threshold.pod \
63         src/collectd-unixsock.pod \
64         src/collectd.conf.pod \
65         src/collectd.pod \
66         src/collectdctl.pod \
67         src/collectdmon.pod \
68         src/pinba.proto \
69         src/postgresql_default.conf \
70         src/types.db \
71         src/types.db.pod \
72         src/valgrind.FreeBSD.suppress \
73         src/valgrind.suppress \
74         testwrapper.sh \
75         version-gen.sh
76
77
78 dist_man_MANS = \
79         src/collectd.1 \
80         src/collectd.conf.5 \
81         src/collectd-email.5 \
82         src/collectd-exec.5 \
83         src/collectdctl.1 \
84         src/collectd-java.5 \
85         src/collectd-lua.5 \
86         src/collectdmon.1 \
87         src/collectd-nagios.1 \
88         src/collectd-perl.5 \
89         src/collectd-python.5 \
90         src/collectd-snmp.5 \
91         src/collectd-tg.1 \
92         src/collectd-threshold.5 \
93         src/collectd-unixsock.5 \
94         src/types.db.5
95
96
97 nodist_pkgconfig_DATA = \
98         src/libcollectdclient/libcollectdclient.pc
99
100 pkginclude_HEADERS = \
101         src/libcollectdclient/collectd/client.h \
102         src/libcollectdclient/collectd/lcc_features.h \
103         src/libcollectdclient/collectd/network_buffer.h \
104         src/libcollectdclient/collectd/network.h \
105         src/libcollectdclient/collectd/network_parse.h \
106         src/libcollectdclient/collectd/server.h \
107         src/libcollectdclient/collectd/types.h
108
109 lib_LTLIBRARIES = libcollectdclient.la
110
111 if BUILD_WIN32
112 # TODO: Build all executables on Windows as well.
113 sbin_PROGRAMS = \
114         collectd
115
116 bin_PROGRAMS =
117 else
118 sbin_PROGRAMS = \
119         collectd \
120         collectdmon
121
122
123 bin_PROGRAMS = \
124         collectd-nagios \
125         collectd-tg \
126         collectdctl
127 endif # BUILD_WIN32
128
129
130 EXTRA_LTLIBRARIES = \
131         libavltree.la \
132         libcmds.la \
133         libcommon.la \
134         libformat_graphite.la \
135         libformat_json.la \
136         libheap.la \
137         libignorelist.la \
138         liblatency.la \
139         liblookup.la \
140         libmetadata.la \
141         libmount.la \
142         liboconfig.la \
143         libstrbuf.la
144
145
146 check_LTLIBRARIES = \
147         libplugin_mock.la
148
149
150 check_PROGRAMS = \
151         test_common \
152         test_format_graphite \
153         test_meta_data \
154         test_utils_avltree \
155         test_utils_cmds \
156         test_utils_heap \
157         test_utils_latency \
158         test_utils_mount \
159         test_utils_subst \
160         test_utils_time \
161         test_utils_vl_lookup \
162         test_libcollectd_network_parse \
163         test_utils_config_cores
164
165
166 TESTS = $(check_PROGRAMS)
167
168 LOG_COMPILER = env VALGRIND="@VALGRIND@" $(abs_srcdir)/testwrapper.sh
169
170
171 jardir = $(cpkgdatadir)/java
172
173 pkglib_LTLIBRARIES =
174
175
176 PLUGIN_LDFLAGS = \
177         -module \
178         -avoid-version \
179         -export-symbols-regex '\<module_register\>'
180 if BUILD_WIN32
181 PLUGIN_LDFLAGS += -shared -no-undefined -lcollectd -L.
182 endif
183
184
185 AM_CPPFLAGS = \
186         -I$(top_srcdir)/src -I$(top_srcdir)/src/daemon \
187         -DPREFIX='"${prefix}"' \
188         -DCONFIGFILE='"${sysconfdir}/${PACKAGE_NAME}.conf"' \
189         -DLOCALSTATEDIR='"${localstatedir}"' \
190         -DPKGLOCALSTATEDIR='"${cpkglocalstatedir}"' \
191         -DPLUGINDIR='"${cpkglibdir}"' \
192         -DPKGDATADIR='"${cpkgdatadir}"'
193 if BUILD_WIN32
194 AM_CPPFLAGS += -DNOGDI
195 endif
196
197 COMMON_DEPS =
198 if BUILD_WIN32
199 COMMON_DEPS += collectd.exe
200 endif
201
202 # Link to these libraries..
203 COMMON_LIBS = $(PTHREAD_LIBS)
204 if BUILD_WIN32
205 COMMON_LIBS += -lws2_32
206 endif
207 if BUILD_WITH_GNULIB
208 COMMON_LIBS += -lgnu
209 endif
210 if BUILD_WITH_CAPABILITY
211 COMMON_LIBS += -lcap
212 endif
213 if BUILD_WITH_LIBRT
214 COMMON_LIBS += -lrt
215 endif
216 if BUILD_WITH_LIBPOSIX4
217 COMMON_LIBS += -lposix4
218 endif
219 if BUILD_WITH_LIBSOCKET
220 COMMON_LIBS += -lsocket
221 endif
222 if BUILD_WITH_LIBKSTAT
223 COMMON_LIBS += -lkstat
224 endif
225 if BUILD_WITH_LIBDEVINFO
226 COMMON_LIBS += -ldevinfo
227 endif
228
229
230 collectd_SOURCES = \
231         src/daemon/cmd.h \
232         src/daemon/collectd.c \
233         src/daemon/collectd.h \
234         src/daemon/configfile.c \
235         src/daemon/configfile.h \
236         src/daemon/filter_chain.c \
237         src/daemon/filter_chain.h \
238         src/daemon/globals.c \
239         src/daemon/globals.h \
240         src/daemon/meta_data.c \
241         src/daemon/meta_data.h \
242         src/daemon/plugin.c \
243         src/daemon/plugin.h \
244         src/daemon/utils_cache.c \
245         src/daemon/utils_cache.h \
246         src/daemon/utils_complain.c \
247         src/daemon/utils_complain.h \
248         src/daemon/utils_llist.c \
249         src/daemon/utils_llist.h \
250         src/daemon/utils_random.c \
251         src/daemon/utils_random.h \
252         src/daemon/utils_subst.c \
253         src/daemon/utils_subst.h \
254         src/daemon/utils_time.c \
255         src/daemon/utils_time.h \
256         src/daemon/types_list.c \
257         src/daemon/types_list.h \
258         src/daemon/utils_threshold.c \
259         src/daemon/utils_threshold.h
260
261
262 collectd_CFLAGS = $(AM_CFLAGS)
263 collectd_CPPFLAGS = $(AM_CPPFLAGS)
264 collectd_LDFLAGS = -export-dynamic
265 collectd_LDADD = \
266         libavltree.la \
267         libcommon.la \
268         libheap.la \
269         liboconfig.la \
270         -lm \
271         $(COMMON_LIBS) \
272         $(DLOPEN_LIBS)
273
274 if BUILD_WIN32
275 collectd_SOURCES += src/daemon/cmd_windows.c
276 collectd_LDFLAGS += -ldl -Wl,--out-implib,libcollectd.a
277 else
278 collectd_SOURCES += src/daemon/cmd.c
279 endif
280         
281 if BUILD_FEATURE_DAEMON
282 collectd_CPPFLAGS += -DPIDFILE='"${localstatedir}/run/${PACKAGE_NAME}.pid"'
283 endif
284
285 # The daemon needs to call sg_init, so we need to link it against libstatgrab,
286 # too. -octo
287 if BUILD_WITH_LIBSTATGRAB
288 collectd_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
289 collectd_LDADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
290 endif
291
292 if BUILD_WIN32
293 collectd_LDFLAGS += -Wl,--out-implib,libcollectd.a
294 endif
295
296 collectdmon_SOURCES = src/collectdmon.c
297
298
299 collectd_nagios_SOURCES = src/collectd-nagios.c
300 collectd_nagios_CPPFLAGS = $(AM_CPPFLAGS) \
301         -I$(srcdir)/src/libcollectdclient \
302         -I$(top_builddir)/src/libcollectdclient
303 collectd_nagios_LDADD = libcollectdclient.la
304 if BUILD_WITH_LIBSOCKET
305 collectd_nagios_LDADD += -lsocket
306 endif
307 if BUILD_AIX
308 collectd_nagios_LDADD += -lm
309 endif
310
311
312 collectdctl_SOURCES = src/collectdctl.c
313 collectdctl_CPPFLAGS = $(AM_CPPFLAGS) \
314         -I$(srcdir)/src/libcollectdclient \
315         -I$(top_builddir)/src/libcollectdclient
316 collectdctl_LDADD = libcollectdclient.la
317 if BUILD_WITH_LIBSOCKET
318 collectdctl_LDADD += -lsocket
319 endif
320 if BUILD_AIX
321 collectdctl_LDADD += -lm
322 endif
323
324
325 collectd_tg_SOURCES = src/collectd-tg.c
326 collectd_tg_CPPFLAGS = $(AM_CPPFLAGS) \
327         -I$(srcdir)/src/libcollectdclient \
328         -I$(top_builddir)/src/libcollectdclient
329 collectd_tg_LDADD = \
330         $(PTHREAD_LIBS) \
331         libheap.la \
332         libcollectdclient.la
333 if BUILD_WITH_LIBSOCKET
334 collectd_tg_LDADD += -lsocket
335 endif
336 if BUILD_WITH_LIBRT
337 collectd_tg_LDADD += -lrt
338 endif
339 if BUILD_AIX
340 collectd_tg_LDADD += -lm
341 endif
342
343
344 test_common_SOURCES = \
345         src/daemon/common_test.c \
346         src/testing.h
347 test_common_LDADD = libplugin_mock.la
348
349 test_meta_data_SOURCES = \
350         src/daemon/meta_data_test.c \
351         src/testing.h
352 test_meta_data_LDADD = libmetadata.la libplugin_mock.la
353
354 test_utils_avltree_SOURCES = \
355         src/daemon/utils_avltree_test.c \
356         src/testing.h
357 test_utils_avltree_LDADD = libavltree.la $(COMMON_LIBS)
358
359 test_utils_heap_SOURCES = \
360         src/daemon/utils_heap_test.c \
361         src/testing.h
362 test_utils_heap_LDADD = libheap.la $(COMMON_LIBS)
363
364 test_utils_time_SOURCES = \
365         src/daemon/utils_time_test.c \
366         src/testing.h
367
368 test_utils_subst_SOURCES = \
369         src/daemon/utils_subst_test.c \
370         src/testing.h \
371         src/daemon/utils_subst.c \
372         src/daemon/utils_subst.h
373 test_utils_subst_LDADD = libplugin_mock.la
374
375 test_utils_config_cores_SOURCES = \
376         src/utils_config_cores_test.c \
377         src/testing.h
378 test_utils_config_cores_LDADD = libplugin_mock.la
379
380 libavltree_la_SOURCES = \
381         src/daemon/utils_avltree.c \
382         src/daemon/utils_avltree.h
383
384 libcommon_la_SOURCES = \
385         src/daemon/common.c \
386         src/daemon/common.h
387 libcommon_la_LIBADD = $(COMMON_LIBS)
388
389 libheap_la_SOURCES = \
390         src/daemon/utils_heap.c \
391         src/daemon/utils_heap.h
392
393 libignorelist_la_SOURCES = \
394         src/utils_ignorelist.c \
395         src/utils_ignorelist.h
396
397 libmetadata_la_SOURCES = \
398         src/daemon/meta_data.c \
399         src/daemon/meta_data.h
400
401 libplugin_mock_la_SOURCES = \
402         src/daemon/plugin_mock.c \
403         src/daemon/utils_cache_mock.c \
404         src/daemon/utils_complain.c \
405         src/daemon/utils_complain.h \
406         src/daemon/utils_time.c \
407         src/daemon/utils_time.h
408
409 libplugin_mock_la_CPPFLAGS = $(AM_CPPFLAGS) -DMOCK_TIME
410 libplugin_mock_la_LIBADD = libcommon.la libignorelist.la $(COMMON_LIBS)
411
412 libformat_graphite_la_SOURCES = \
413         src/utils_format_graphite.c \
414         src/utils_format_graphite.h
415
416 test_format_graphite_SOURCES = \
417         src/utils_format_graphite_test.c \
418         src/testing.h
419 test_format_graphite_LDADD = \
420         libformat_graphite.la \
421         libmetadata.la \
422         libplugin_mock.la \
423         -lm
424
425 libformat_json_la_SOURCES = \
426         src/utils_format_json.c \
427         src/utils_format_json.h
428 libformat_json_la_CPPFLAGS  = $(AM_CPPFLAGS)
429 libformat_json_la_LDFLAGS   = $(AM_LDFLAGS)
430 libformat_json_la_LIBADD    =
431 if BUILD_WITH_LIBYAJL
432 libformat_json_la_CPPFLAGS += $(BUILD_WITH_LIBYAJL_CPPFLAGS)
433 libformat_json_la_LDFLAGS  += $(BUILD_WITH_LIBYAJL_LDFLAGS)
434 libformat_json_la_LIBADD   += $(BUILD_WITH_LIBYAJL_LIBS)
435
436 check_PROGRAMS += test_format_json
437
438 test_format_json_SOURCES = \
439         src/utils_format_json_test.c \
440         src/testing.h
441 test_format_json_LDADD = \
442         libformat_json.la \
443         libmetadata.la \
444         libplugin_mock.la \
445         -lm
446 endif
447
448 if BUILD_WITH_LIBYAJL2
449 EXTRA_LTLIBRARIES += libparse_json.la
450 libparse_json_la_SOURCES = \
451         src/utils_parse_json.c \
452         src/utils_parse_json.h
453 libparse_json_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
454 libparse_json_la_LDFLAGS  = $(AM_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
455 libparse_json_la_LIBADD   = $(BUILD_WITH_LIBYAJL_LIBS)
456
457 check_PROGRAMS += test_parse_json
458
459 test_parse_json_SOURCES = \
460         src/utils_parse_json_test.c \
461         src/testing.h
462 test_parse_json_LDADD = \
463         libparse_json.la \
464         libplugin_mock.la
465 endif
466
467 libstrbuf_la_SOURCES = \
468         src/utils_strbuf.c \
469         src/utils_strbuf.h
470
471 if BUILD_PLUGIN_CEPH
472 test_plugin_ceph_SOURCES = src/ceph_test.c
473 test_plugin_ceph_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
474 test_plugin_ceph_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
475 test_plugin_ceph_LDADD = libplugin_mock.la $(BUILD_WITH_LIBYAJL_LIBS)
476 check_PROGRAMS += test_plugin_ceph
477 endif
478
479 liblatency_la_SOURCES = \
480         src/utils_latency.c \
481         src/utils_latency.h \
482         src/utils_latency_config.c \
483         src/utils_latency_config.h
484 liblatency_la_LIBADD = \
485         libcommon.la \
486         -lm
487
488 test_utils_latency_SOURCES = \
489         src/utils_latency_test.c \
490         src/testing.h
491 test_utils_latency_LDADD = \
492         liblatency.la \
493         libplugin_mock.la \
494         -lm
495
496 libcmds_la_SOURCES = \
497         src/utils_cmds.c \
498         src/utils_cmds.h \
499         src/utils_cmd_flush.c \
500         src/utils_cmd_flush.h \
501         src/utils_cmd_getthreshold.c \
502         src/utils_cmd_getthreshold.h \
503         src/utils_cmd_getval.c \
504         src/utils_cmd_getval.h \
505         src/utils_cmd_listval.c \
506         src/utils_cmd_listval.h \
507         src/utils_cmd_putnotif.c \
508         src/utils_cmd_putnotif.h \
509         src/utils_cmd_putval.c \
510         src/utils_cmd_putval.h \
511         src/utils_parse_option.c \
512         src/utils_parse_option.h
513 libcmds_la_LIBADD = \
514         libcommon.la \
515         libmetadata.la \
516         -lm
517
518 test_utils_cmds_SOURCES = \
519         src/utils_cmds_test.c \
520         src/testing.h
521 test_utils_cmds_LDADD = \
522         libcmds.la \
523         libplugin_mock.la
524
525 liblookup_la_SOURCES = \
526         src/utils_vl_lookup.c \
527         src/utils_vl_lookup.h
528 liblookup_la_LIBADD = libavltree.la
529
530 test_utils_vl_lookup_SOURCES = \
531         src/utils_vl_lookup_test.c \
532         src/testing.h
533 test_utils_vl_lookup_LDADD = \
534         liblookup.la \
535         libplugin_mock.la
536 if BUILD_WITH_LIBKSTAT
537 test_utils_vl_lookup_LDADD += -lkstat
538 endif
539
540 libmount_la_SOURCES = \
541         src/utils_mount.c \
542         src/utils_mount.h
543
544 test_utils_mount_SOURCES = \
545         src/utils_mount_test.c \
546         src/testing.h
547 test_utils_mount_LDADD = \
548         libmount.la \
549         libplugin_mock.la
550 if BUILD_WITH_LIBKSTAT
551 test_utils_mount_LDADD += -lkstat
552 endif
553
554
555 libcollectdclient_la_SOURCES = \
556         src/libcollectdclient/client.c \
557         src/libcollectdclient/network.c \
558         src/libcollectdclient/network_buffer.c \
559         src/libcollectdclient/network_parse.c \
560         src/libcollectdclient/server.c \
561         src/libcollectdclient/collectd/stdendian.h
562 libcollectdclient_la_CPPFLAGS = \
563         $(AM_CPPFLAGS) \
564         -I$(srcdir)/src/libcollectdclient \
565         -I$(top_builddir)/src/libcollectdclient \
566         -I$(srcdir)/src/daemon
567 libcollectdclient_la_LDFLAGS = -version-info 2:0:1
568 libcollectdclient_la_LIBADD = -lm
569 if BUILD_WIN32
570 libcollectdclient_la_LDFLAGS += -shared -no-undefined
571 libcollectdclient_la_LIBADD += -lgnu -lws2_32 -liphlpapi
572 endif
573 if BUILD_WITH_LIBGCRYPT
574 libcollectdclient_la_CPPFLAGS += $(GCRYPT_CPPFLAGS)
575 libcollectdclient_la_LDFLAGS += $(GCRYPT_LDFLAGS)
576 libcollectdclient_la_LIBADD += $(GCRYPT_LIBS)
577 endif
578
579 # network_parse_test.c includes network_parse.c, so no need to link with
580 # libcollectdclient.so.
581 test_libcollectd_network_parse_SOURCES = src/libcollectdclient/network_parse_test.c
582 test_libcollectd_network_parse_CPPFLAGS = \
583         $(AM_CPPFLAGS) \
584         -I$(srcdir)/src/libcollectdclient \
585         -I$(top_builddir)/src/libcollectdclient
586 if BUILD_WITH_LIBGCRYPT
587 test_libcollectd_network_parse_CPPFLAGS += $(GCRYPT_CPPFLAGS)
588 test_libcollectd_network_parse_LDFLAGS = $(GCRYPT_LDFLAGS)
589 test_libcollectd_network_parse_LDADD = $(GCRYPT_LIBS)
590 endif
591
592 liboconfig_la_SOURCES = \
593         src/liboconfig/oconfig.c \
594         src/liboconfig/oconfig.h \
595         src/liboconfig/aux_types.h \
596         src/liboconfig/scanner.l \
597         src/liboconfig/parser.y
598 liboconfig_la_CPPFLAGS = -I$(srcdir)/src/liboconfig $(AM_CPPFLAGS)
599 liboconfig_la_LDFLAGS = -avoid-version $(LEXLIB)
600
601 if BUILD_WITH_LIBCURL
602 if BUILD_WITH_LIBSSL
603 if BUILD_WITH_LIBYAJL2
604 EXTRA_LTLIBRARIES += liboauth.la
605 liboauth_la_SOURCES = \
606         src/utils_oauth.c \
607         src/utils_oauth.h
608 liboauth_la_CPPFLAGS = \
609         $(AM_CPPFLAGS) \
610         $(BUILD_WITH_LIBCURL_CFLAGS) \
611         $(BUILD_WITH_LIBSSL_CFLAGS) \
612         $(BUILD_WITH_LIBYAJL_CPPFLAGS)
613 liboauth_la_LIBADD = \
614         $(BUILD_WITH_LIBCURL_LIBS) \
615         $(BUILD_WITH_LIBSSL_LIBS) \
616         $(BUILD_WITH_LIBYAJL_LIBS)
617
618 check_PROGRAMS += test_utils_oauth
619 TESTS += test_utils_oauth
620 test_utils_oauth_SOURCES = \
621         src/utils_oauth_test.c
622 test_utils_oauth_LDADD = \
623         liboauth.la \
624         libcommon.la \
625         libplugin_mock.la
626
627 EXTRA_LTLIBRARIES += libgce.la
628 libgce_la_SOURCES = \
629         src/utils_gce.c \
630         src/utils_gce.h
631 libgce_la_CPPFLAGS = \
632         $(AM_CPPFLAGS) \
633         $(BUILD_WITH_LIBCURL_CFLAGS)
634 libgce_la_LIBADD = \
635         $(BUILD_WITH_LIBCURL_LIBS)
636 endif
637 endif
638 endif
639
640 if BUILD_WITH_LIBYAJL2
641 EXTRA_LTLIBRARIES += libformat_stackdriver.la
642 libformat_stackdriver_la_SOURCES = \
643         src/utils_format_stackdriver.c \
644         src/utils_format_stackdriver.h
645 libformat_stackdriver_la_CPPFLAGS = \
646         $(AM_CPPFLAGS) \
647         $(BUILD_WITH_LIBYAJL_CPPFLAGS)
648 libformat_stackdriver_la_LIBADD = \
649         libavltree.la \
650         $(BUILD_WITH_LIBSSL_LIBS) \
651         $(BUILD_WITH_LIBYAJL_LIBS)
652
653 check_PROGRAMS += test_format_stackdriver
654 TESTS += test_format_stackdriver
655 test_format_stackdriver_SOURCES = \
656         src/utils_format_stackdriver_test.c \
657         src/testing.h
658 test_format_stackdriver_LDADD = \
659         libformat_stackdriver.la \
660         libplugin_mock.la \
661         -lm
662 endif
663
664 if BUILD_PLUGIN_AGGREGATION
665 pkglib_LTLIBRARIES += aggregation.la
666 aggregation_la_SOURCES = \
667         src/aggregation.c \
668         src/utils_vl_lookup.c \
669         src/utils_vl_lookup.h
670 aggregation_la_LDFLAGS = $(PLUGIN_LDFLAGS)
671 aggregation_la_LIBADD = -lm
672 endif
673
674 if BUILD_PLUGIN_AMQP
675 pkglib_LTLIBRARIES += amqp.la
676 amqp_la_SOURCES = src/amqp.c
677 amqp_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBRABBITMQ_CPPFLAGS)
678 amqp_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBRABBITMQ_LDFLAGS)
679 amqp_la_LIBADD = \
680         $(BUILD_WITH_LIBRABBITMQ_LIBS) \
681         libcmds.la \
682         libformat_graphite.la \
683         libformat_json.la
684 endif
685
686 if BUILD_PLUGIN_AMQP1
687 pkglib_LTLIBRARIES += amqp1.la
688 amqp1_la_SOURCES = \
689         src/amqp1.c \
690         src/utils_deq.h
691 amqp1_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBQPIDPROTON_CPPFLAGS)
692 amqp1_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBQPIDPROTON_LDFLAGS)
693 amqp1_la_LIBADD = \
694         $(BUILD_WITH_LIBQPIDPROTON_LIBS) \
695         libcmds.la \
696         libformat_graphite.la \
697         libformat_json.la
698 endif
699
700 if BUILD_PLUGIN_APACHE
701 pkglib_LTLIBRARIES += apache.la
702 apache_la_SOURCES = src/apache.c
703 apache_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBCURL_CFLAGS)
704 apache_la_LDFLAGS = $(PLUGIN_LDFLAGS)
705 apache_la_LIBADD = $(BUILD_WITH_LIBCURL_LIBS)
706 endif
707
708
709 if BUILD_PLUGIN_APCUPS
710 pkglib_LTLIBRARIES += apcups.la
711 apcups_la_SOURCES = src/apcups.c
712 apcups_la_LDFLAGS = $(PLUGIN_LDFLAGS)
713 apcups_la_LIBADD =
714 if BUILD_WITH_LIBSOCKET
715 apcups_la_LIBADD += -lsocket
716 endif
717 endif
718
719 if BUILD_PLUGIN_APPLE_SENSORS
720 pkglib_LTLIBRARIES += apple_sensors.la
721 apple_sensors_la_SOURCES = src/apple_sensors.c
722 apple_sensors_la_LDFLAGS = $(PLUGIN_LDFLAGS) -framework IOKit
723 endif
724
725 if BUILD_PLUGIN_AQUAERO
726 pkglib_LTLIBRARIES += aquaero.la
727 aquaero_la_SOURCES = src/aquaero.c
728 aquaero_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBAQUAERO5_CFLAGS)
729 aquaero_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBAQUAERO5_LDFLAGS)
730 aquaero_la_LIBADD = -laquaero5
731 endif
732
733 if BUILD_PLUGIN_ASCENT
734 pkglib_LTLIBRARIES += ascent.la
735 ascent_la_SOURCES = src/ascent.c
736 ascent_la_CFLAGS = \
737         $(AM_CFLAGS) \
738         $(BUILD_WITH_LIBCURL_CFLAGS) \
739         $(BUILD_WITH_LIBXML2_CFLAGS)
740 ascent_la_LDFLAGS = $(PLUGIN_LDFLAGS)
741 ascent_la_LIBADD = \
742         $(BUILD_WITH_LIBCURL_LIBS) \
743         $(BUILD_WITH_LIBXML2_LIBS)
744 endif
745
746 if BUILD_PLUGIN_BAROMETER
747 pkglib_LTLIBRARIES += barometer.la
748 barometer_la_SOURCES = src/barometer.c
749 barometer_la_LDFLAGS = $(PLUGIN_LDFLAGS)
750 barometer_la_LIBADD = -lm $(BUILD_WITH_LIBI2C_LIBS)
751 endif
752
753 if BUILD_PLUGIN_BATTERY
754 pkglib_LTLIBRARIES += battery.la
755 battery_la_SOURCES = \
756         src/battery.c \
757         src/battery_statefs.c
758 battery_la_LDFLAGS = $(PLUGIN_LDFLAGS)
759 if BUILD_WITH_LIBIOKIT
760 battery_la_LDFLAGS += -framework IOKit
761 endif
762 endif
763
764 if BUILD_PLUGIN_BIND
765 pkglib_LTLIBRARIES += bind.la
766 bind_la_SOURCES = src/bind.c
767 bind_la_CFLAGS = $(AM_CFLAGS) \
768         $(BUILD_WITH_LIBCURL_CFLAGS) $(BUILD_WITH_LIBXML2_CFLAGS)
769 bind_la_LDFLAGS = $(PLUGIN_LDFLAGS)
770 bind_la_LIBADD = $(BUILD_WITH_LIBCURL_LIBS) $(BUILD_WITH_LIBXML2_LIBS)
771 endif
772
773 if BUILD_PLUGIN_CEPH
774 pkglib_LTLIBRARIES += ceph.la
775 ceph_la_SOURCES = src/ceph.c
776 ceph_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
777 ceph_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
778 ceph_la_LIBADD = $(BUILD_WITH_LIBYAJL_LIBS)
779 endif
780
781 if BUILD_PLUGIN_CGROUPS
782 pkglib_LTLIBRARIES += cgroups.la
783 cgroups_la_SOURCES = src/cgroups.c
784 cgroups_la_LDFLAGS = $(PLUGIN_LDFLAGS)
785 cgroups_la_LIBADD = libignorelist.la libmount.la
786 endif
787
788 if BUILD_PLUGIN_CHRONY
789 pkglib_LTLIBRARIES += chrony.la
790 chrony_la_SOURCES = src/chrony.c
791 chrony_la_LDFLAGS = $(PLUGIN_LDFLAGS)
792 chrony_la_LIBADD = -lm
793 endif
794
795 if BUILD_PLUGIN_CONNTRACK
796 pkglib_LTLIBRARIES += conntrack.la
797 conntrack_la_SOURCES = src/conntrack.c
798 conntrack_la_LDFLAGS = $(PLUGIN_LDFLAGS)
799 endif
800
801 if BUILD_PLUGIN_CONTEXTSWITCH
802 pkglib_LTLIBRARIES += contextswitch.la
803 contextswitch_la_SOURCES = src/contextswitch.c
804 contextswitch_la_LDFLAGS = $(PLUGIN_LDFLAGS)
805 contextswitch_la_LIBADD =
806 if BUILD_WITH_PERFSTAT
807 contextswitch_la_LIBADD += -lperfstat
808 endif
809 endif
810
811 if BUILD_PLUGIN_CPU
812 pkglib_LTLIBRARIES += cpu.la
813 cpu_la_SOURCES = src/cpu.c
814 cpu_la_CFLAGS = $(AM_CFLAGS)
815 cpu_la_LDFLAGS = $(PLUGIN_LDFLAGS)
816 cpu_la_LIBADD =
817 if BUILD_WITH_LIBKSTAT
818 cpu_la_LIBADD += -lkstat
819 endif
820 if BUILD_WITH_LIBDEVINFO
821 cpu_la_LIBADD += -ldevinfo
822 endif
823 if BUILD_WITH_LIBSTATGRAB
824 cpu_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
825 cpu_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
826 endif
827 if BUILD_WITH_PERFSTAT
828 cpu_la_LIBADD += -lperfstat
829 endif
830 endif
831
832 if BUILD_PLUGIN_CPUFREQ
833 pkglib_LTLIBRARIES += cpufreq.la
834 cpufreq_la_SOURCES = src/cpufreq.c
835 cpufreq_la_LDFLAGS = $(PLUGIN_LDFLAGS)
836 endif
837
838 if BUILD_PLUGIN_CPUSLEEP
839 pkglib_LTLIBRARIES += cpusleep.la
840 cpusleep_la_SOURCES = src/cpusleep.c
841 cpusleep_la_LDFLAGS = $(PLUGIN_LDFLAGS)
842 endif
843
844 if BUILD_PLUGIN_CSV
845 pkglib_LTLIBRARIES += csv.la
846 csv_la_SOURCES = src/csv.c
847 csv_la_LDFLAGS = $(PLUGIN_LDFLAGS)
848 endif
849
850 if BUILD_PLUGIN_CURL
851 pkglib_LTLIBRARIES += curl.la
852 curl_la_SOURCES = \
853         src/curl.c \
854         src/utils_curl_stats.c \
855         src/utils_curl_stats.h \
856         src/utils_match.c \
857         src/utils_match.h
858 curl_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBCURL_CFLAGS)
859 curl_la_LDFLAGS = $(PLUGIN_LDFLAGS)
860 curl_la_LIBADD = liblatency.la $(BUILD_WITH_LIBCURL_LIBS)
861 endif
862
863 if BUILD_PLUGIN_CURL_JSON
864 pkglib_LTLIBRARIES += curl_json.la
865 curl_json_la_SOURCES = \
866         src/curl_json.c \
867         src/utils_curl_stats.c \
868         src/utils_curl_stats.h
869 curl_json_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBCURL_CFLAGS)
870 curl_json_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
871 curl_json_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
872 curl_json_la_LIBADD = $(BUILD_WITH_LIBCURL_LIBS) $(BUILD_WITH_LIBYAJL_LIBS)
873
874 test_plugin_curl_json_SOURCES = src/curl_json_test.c \
875                                 src/utils_curl_stats.c \
876                                 src/daemon/configfile.c \
877                                 src/daemon/types_list.c
878 test_plugin_curl_json_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
879 test_plugin_curl_json_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
880 test_plugin_curl_json_LDADD = libavltree.la liboconfig.la libplugin_mock.la $(BUILD_WITH_LIBCURL_LIBS) $(BUILD_WITH_LIBYAJL_LIBS)
881 check_PROGRAMS += test_plugin_curl_json
882 endif
883
884 if BUILD_PLUGIN_CURL_XML
885 pkglib_LTLIBRARIES += curl_xml.la
886 curl_xml_la_SOURCES = \
887         src/curl_xml.c \
888         src/utils_curl_stats.c \
889         src/utils_curl_stats.h
890 curl_xml_la_CFLAGS = $(AM_CFLAGS) \
891                 $(BUILD_WITH_LIBCURL_CFLAGS) $(BUILD_WITH_LIBXML2_CFLAGS)
892 curl_xml_la_LDFLAGS = $(PLUGIN_LDFLAGS)
893 curl_xml_la_LIBADD = $(BUILD_WITH_LIBCURL_LIBS) $(BUILD_WITH_LIBXML2_LIBS)
894 endif
895
896 if BUILD_PLUGIN_DBI
897 pkglib_LTLIBRARIES += dbi.la
898 dbi_la_SOURCES = \
899         src/dbi.c \
900         src/utils_db_query.c \
901         src/utils_db_query.h
902 dbi_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBDBI_CPPFLAGS)
903 dbi_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBDBI_LDFLAGS)
904 dbi_la_LIBADD = $(BUILD_WITH_LIBDBI_LIBS)
905 endif
906
907 if BUILD_PLUGIN_DF
908 pkglib_LTLIBRARIES += df.la
909 df_la_SOURCES = src/df.c
910 df_la_LDFLAGS = $(PLUGIN_LDFLAGS)
911 df_la_LIBADD = libignorelist.la libmount.la
912 endif
913
914 if BUILD_PLUGIN_DISK
915 pkglib_LTLIBRARIES += disk.la
916 disk_la_SOURCES = src/disk.c
917 disk_la_CFLAGS = $(AM_CFLAGS)
918 disk_la_CPPFLAGS = $(AM_CPPFLAGS)
919 disk_la_LDFLAGS = $(PLUGIN_LDFLAGS)
920 disk_la_LIBADD = libignorelist.la
921 if BUILD_WITH_LIBKSTAT
922 disk_la_LIBADD += -lkstat
923 endif
924 if BUILD_WITH_LIBDEVINFO
925 disk_la_LIBADD += -ldevinfo
926 endif
927 if BUILD_WITH_LIBIOKIT
928 disk_la_LDFLAGS += -framework IOKit
929 endif
930 if BUILD_WITH_LIBSTATGRAB
931 disk_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
932 disk_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
933 endif
934 if BUILD_WITH_LIBUDEV
935 disk_la_CPPFLAGS += $(BUILD_WITH_LIBUDEV_CPPFLAGS)
936 disk_la_LDFLAGS += $(BUILD_WITH_LIBUDEV_LDFLAGS)
937 disk_la_LIBADD += $(BUILD_WITH_LIBUDEV_LIBS)
938 endif
939 if BUILD_FREEBSD
940 disk_la_LIBADD += -ldevstat -lgeom
941 endif
942 if BUILD_WITH_PERFSTAT
943 disk_la_LIBADD += -lperfstat
944 endif
945 endif
946
947 if BUILD_PLUGIN_DNS
948 pkglib_LTLIBRARIES += dns.la
949 dns_la_SOURCES = \
950         src/dns.c \
951         src/utils_dns.c \
952         src/utils_dns.h
953 dns_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBPCAP_CPPFLAGS)
954 dns_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBPCAP_LDFLAGS)
955 dns_la_LIBADD = $(BUILD_WITH_LIBPCAP_LIBS)
956 endif
957
958 if BUILD_PLUGIN_DPDKEVENTS
959 pkglib_LTLIBRARIES += dpdkevents.la
960 dpdkevents_la_SOURCES = src/dpdkevents.c src/utils_dpdk.c src/utils_dpdk.h
961 dpdkevents_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBDPDK_CPPFLAGS)
962 dpdkevents_la_CFLAGS = $(AM_CFLAGS) $(LIBDPDK_CFLAGS)
963 dpdkevents_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(LIBDPDK_LDFLAGS)
964 dpdkevents_la_LIBADD = $(LIBDPDK_LIBS)
965 endif
966
967 if BUILD_PLUGIN_DPDKSTAT
968 pkglib_LTLIBRARIES += dpdkstat.la
969 dpdkstat_la_SOURCES = src/dpdkstat.c src/utils_dpdk.c src/utils_dpdk.h
970 dpdkstat_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBDPDK_CPPFLAGS)
971 dpdkstat_la_CFLAGS = $(AM_CFLAGS) $(LIBDPDK_CFLAGS)
972 dpdkstat_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(LIBDPDK_LDFLAGS)
973 dpdkstat_la_LIBADD = $(LIBDPDK_LIBS)
974 endif
975
976 if BUILD_PLUGIN_DRBD
977 pkglib_LTLIBRARIES += drbd.la
978 drbd_la_SOURCES = src/drbd.c
979 drbd_la_LDFLAGS = $(PLUGIN_LDFLAGS)
980 endif
981
982 if BUILD_PLUGIN_EMAIL
983 pkglib_LTLIBRARIES += email.la
984 email_la_SOURCES = src/email.c
985 email_la_LDFLAGS = $(PLUGIN_LDFLAGS)
986 endif
987
988 if BUILD_PLUGIN_ENTROPY
989 pkglib_LTLIBRARIES += entropy.la
990 entropy_la_SOURCES = src/entropy.c
991 entropy_la_LDFLAGS = $(PLUGIN_LDFLAGS)
992 endif
993
994 if BUILD_PLUGIN_EXEC
995 pkglib_LTLIBRARIES += exec.la
996 exec_la_SOURCES = src/exec.c
997 exec_la_LDFLAGS = $(PLUGIN_LDFLAGS)
998 exec_la_LIBADD = libcmds.la
999 endif
1000
1001 if BUILD_PLUGIN_ETHSTAT
1002 pkglib_LTLIBRARIES += ethstat.la
1003 ethstat_la_SOURCES = src/ethstat.c
1004 ethstat_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1005 endif
1006
1007 if BUILD_PLUGIN_FHCOUNT
1008 pkglib_LTLIBRARIES += fhcount.la
1009 fhcount_la_SOURCES = src/fhcount.c
1010 fhcount_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1011 endif
1012
1013 if BUILD_PLUGIN_FILECOUNT
1014 pkglib_LTLIBRARIES += filecount.la
1015 filecount_la_SOURCES = src/filecount.c
1016 filecount_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1017 endif
1018
1019 if BUILD_PLUGIN_FSCACHE
1020 pkglib_LTLIBRARIES += fscache.la
1021 fscache_la_SOURCES = src/fscache.c
1022 fscache_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1023 endif
1024
1025 if BUILD_PLUGIN_GMOND
1026 pkglib_LTLIBRARIES += gmond.la
1027 gmond_la_SOURCES = src/gmond.c
1028 gmond_la_CPPFLAGS = $(AM_CPPFLAGS) $(GANGLIA_CPPFLAGS)
1029 gmond_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(GANGLIA_LDFLAGS)
1030 gmond_la_LIBADD = $(GANGLIA_LIBS)
1031 endif
1032
1033 if BUILD_PLUGIN_GPS
1034 pkglib_LTLIBRARIES += gps.la
1035 gps_la_SOURCES = src/gps.c
1036 gps_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBGPS_CFLAGS)
1037 gps_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBGPS_LDFLAGS)
1038 gps_la_LIBADD = -lpthread $(BUILD_WITH_LIBGPS_LIBS)
1039 endif
1040
1041 if BUILD_PLUGIN_GRPC
1042 pkglib_LTLIBRARIES += grpc.la
1043 grpc_la_SOURCES = src/grpc.cc
1044 nodist_grpc_la_SOURCES = \
1045         collectd.grpc.pb.cc \
1046         collectd.pb.cc \
1047         types.pb.cc
1048 grpc_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBGRPCPP_CPPFLAGS) $(BUILD_WITH_LIBPROTOBUF_CPPFLAGS)
1049 grpc_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBGRPCPP_LDFLAGS) $(BUILD_WITH_LIBPROTOBUF_LDFLAGS)
1050 grpc_la_LIBADD = $(BUILD_WITH_LIBGRPCPP_LIBS) $(BUILD_WITH_LIBPROTOBUF_LIBS)
1051 endif
1052
1053 if BUILD_PLUGIN_HDDTEMP
1054 pkglib_LTLIBRARIES += hddtemp.la
1055 hddtemp_la_SOURCES = src/hddtemp.c
1056 hddtemp_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1057 hddtemp_la_LIBADD =
1058 if BUILD_WITH_LIBSOCKET
1059 hddtemp_la_LIBADD += -lsocket
1060 endif
1061 endif
1062
1063 if BUILD_PLUGIN_HUGEPAGES
1064 pkglib_LTLIBRARIES += hugepages.la
1065 hugepages_la_SOURCES = src/hugepages.c
1066 hugepages_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1067 endif
1068
1069 if BUILD_PLUGIN_INTEL_PMU
1070 pkglib_LTLIBRARIES += intel_pmu.la
1071 intel_pmu_la_SOURCES = \
1072         src/intel_pmu.c \
1073         src/utils_config_cores.h \
1074         src/utils_config_cores.c
1075 intel_pmu_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBJEVENTS_CPPFLAGS)
1076 intel_pmu_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBJEVENTS_LDFLAGS)
1077 intel_pmu_la_LIBADD = $(BUILD_WITH_LIBJEVENTS_LIBS)
1078 endif
1079
1080 if BUILD_PLUGIN_INTEL_RDT
1081 pkglib_LTLIBRARIES += intel_rdt.la
1082 intel_rdt_la_SOURCES = \
1083         src/intel_rdt.c \
1084         src/utils_config_cores.h \
1085         src/utils_config_cores.c
1086 intel_rdt_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBPQOS_CPPFLAGS)
1087 intel_rdt_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBPQOS_LDFLAGS)
1088 intel_rdt_la_LIBADD = $(BUILD_WITH_LIBPQOS_LIBS)
1089 endif
1090
1091 if BUILD_PLUGIN_INTERFACE
1092 pkglib_LTLIBRARIES += interface.la
1093 interface_la_SOURCES = src/interface.c
1094 interface_la_CFLAGS = $(AM_CFLAGS)
1095 interface_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1096 interface_la_LIBADD = libignorelist.la
1097 if BUILD_WITH_LIBSTATGRAB
1098 interface_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
1099 interface_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
1100 else
1101 if BUILD_WITH_LIBKSTAT
1102 interface_la_LIBADD += -lkstat
1103 endif
1104 if BUILD_WITH_LIBDEVINFO
1105 interface_la_LIBADD += -ldevinfo
1106 endif # BUILD_WITH_LIBDEVINFO
1107 endif # !BUILD_WITH_LIBSTATGRAB
1108 if BUILD_WITH_PERFSTAT
1109 interface_la_LIBADD += -lperfstat
1110 endif
1111 endif # BUILD_PLUGIN_INTERFACE
1112
1113 if BUILD_PLUGIN_IPC
1114 pkglib_LTLIBRARIES += ipc.la
1115 ipc_la_SOURCES = src/ipc.c
1116 ipc_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1117 endif
1118
1119 if BUILD_PLUGIN_IPTABLES
1120 pkglib_LTLIBRARIES += iptables.la
1121 iptables_la_SOURCES = src/iptables.c
1122 iptables_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBIPTC_CPPFLAGS)
1123 iptables_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1124 iptables_la_LIBADD = $(BUILD_WITH_LIBIPTC_LDFLAGS)
1125 endif
1126
1127 if BUILD_PLUGIN_IPMI
1128 pkglib_LTLIBRARIES += ipmi.la
1129 ipmi_la_SOURCES = src/ipmi.c
1130 ipmi_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_OPENIPMI_CFLAGS)
1131 ipmi_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1132 ipmi_la_LIBADD = libignorelist.la $(BUILD_WITH_OPENIPMI_LIBS)
1133 endif
1134
1135 if BUILD_PLUGIN_IPVS
1136 pkglib_LTLIBRARIES += ipvs.la
1137 ipvs_la_SOURCES = src/ipvs.c
1138 ipvs_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1139 endif
1140
1141 if BUILD_PLUGIN_IRQ
1142 pkglib_LTLIBRARIES += irq.la
1143 irq_la_SOURCES = src/irq.c
1144 irq_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1145 irq_la_LIBADD = libignorelist.la
1146 endif
1147
1148 if BUILD_PLUGIN_JAVA
1149 pkglib_LTLIBRARIES += java.la
1150 java_la_SOURCES = src/java.c
1151 java_la_CPPFLAGS = $(AM_CPPFLAGS) $(JAVA_CPPFLAGS)
1152 java_la_CFLAGS = $(AM_CFLAGS) $(JAVA_CFLAGS)
1153 java_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(JAVA_LDFLAGS)
1154 java_la_LIBADD = $(JAVA_LIBS)
1155 endif
1156
1157 if BUILD_PLUGIN_LOAD
1158 pkglib_LTLIBRARIES += load.la
1159 load_la_SOURCES = src/load.c
1160 load_la_CFLAGS = $(AM_CFLAGS)
1161 load_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1162 load_la_LIBADD =
1163 if BUILD_WITH_LIBSTATGRAB
1164 load_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
1165 load_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
1166 endif # BUILD_WITH_LIBSTATGRAB
1167 if BUILD_WITH_PERFSTAT
1168 load_la_LIBADD += -lperfstat
1169 endif
1170 endif # BUILD_PLUGIN_LOAD
1171
1172 if BUILD_PLUGIN_LOGFILE
1173 pkglib_LTLIBRARIES += logfile.la
1174 logfile_la_SOURCES = src/logfile.c
1175 logfile_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1176 logfile_la_DEPENDENCIES = $(COMMON_DEPS)
1177 endif
1178
1179 if BUILD_PLUGIN_LOG_LOGSTASH
1180 pkglib_LTLIBRARIES += log_logstash.la
1181 log_logstash_la_SOURCES = src/log_logstash.c
1182 log_logstash_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
1183 log_logstash_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
1184 log_logstash_la_LIBADD = $(BUILD_WITH_LIBYAJL_LIBS)
1185 endif
1186
1187 if BUILD_PLUGIN_LPAR
1188 pkglib_LTLIBRARIES += lpar.la
1189 lpar_la_SOURCES = src/lpar.c
1190 lpar_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1191 lpar_la_LIBADD = -lperfstat
1192 endif
1193
1194 if BUILD_PLUGIN_LUA
1195 pkglib_LTLIBRARIES += lua.la
1196 lua_la_SOURCES = \
1197         src/lua.c \
1198         src/utils_lua.c \
1199         src/utils_lua.h
1200 lua_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBLUA_CFLAGS)
1201 lua_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1202 lua_la_LIBADD = $(BUILD_WITH_LIBLUA_LIBS)
1203 endif
1204
1205 if BUILD_PLUGIN_LVM
1206 pkglib_LTLIBRARIES += lvm.la
1207 lvm_la_SOURCES = src/lvm.c
1208 lvm_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBLVM2APP_CPPFLAGS)
1209 lvm_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBLVM2APP_LDFLAGS)
1210 lvm_la_LIBADD = $(BUILD_WITH_LIBLVM2APP_LIBS)
1211 endif
1212
1213 if BUILD_PLUGIN_MADWIFI
1214 pkglib_LTLIBRARIES += madwifi.la
1215 madwifi_la_SOURCES = \
1216         src/madwifi.c \
1217         src/madwifi.h
1218 madwifi_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1219 madwifi_la_LIBADD = libignorelist.la
1220 endif
1221
1222 if BUILD_PLUGIN_MATCH_EMPTY_COUNTER
1223 pkglib_LTLIBRARIES += match_empty_counter.la
1224 match_empty_counter_la_SOURCES = src/match_empty_counter.c
1225 match_empty_counter_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1226 endif
1227
1228 if BUILD_PLUGIN_MATCH_HASHED
1229 pkglib_LTLIBRARIES += match_hashed.la
1230 match_hashed_la_SOURCES = src/match_hashed.c
1231 match_hashed_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1232 endif
1233
1234 if BUILD_PLUGIN_MATCH_REGEX
1235 pkglib_LTLIBRARIES += match_regex.la
1236 match_regex_la_SOURCES = src/match_regex.c
1237 match_regex_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1238 endif
1239
1240 if BUILD_PLUGIN_MATCH_TIMEDIFF
1241 pkglib_LTLIBRARIES += match_timediff.la
1242 match_timediff_la_SOURCES = src/match_timediff.c
1243 match_timediff_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1244 endif
1245
1246 if BUILD_PLUGIN_MATCH_VALUE
1247 pkglib_LTLIBRARIES += match_value.la
1248 match_value_la_SOURCES = src/match_value.c
1249 match_value_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1250 endif
1251
1252 if BUILD_PLUGIN_MBMON
1253 pkglib_LTLIBRARIES += mbmon.la
1254 mbmon_la_SOURCES = src/mbmon.c
1255 mbmon_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1256 mbmon_la_LIBADD =
1257 if BUILD_WITH_LIBSOCKET
1258 mbmon_la_LIBADD += -lsocket
1259 endif
1260 endif
1261
1262 if BUILD_PLUGIN_MCELOG
1263 pkglib_LTLIBRARIES += mcelog.la
1264 mcelog_la_SOURCES = src/mcelog.c
1265 mcelog_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1266 endif
1267
1268 if BUILD_PLUGIN_MD
1269 pkglib_LTLIBRARIES += md.la
1270 md_la_SOURCES = src/md.c
1271 md_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1272 md_la_LIBADD = libignorelist.la
1273 endif
1274
1275 if BUILD_PLUGIN_MEMCACHEC
1276 pkglib_LTLIBRARIES += memcachec.la
1277 memcachec_la_SOURCES = \
1278         src/memcachec.c \
1279         src/utils_match.c \
1280         src/utils_match.h
1281 memcachec_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBMEMCACHED_CPPFLAGS)
1282 memcachec_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBMEMCACHED_LDFLAGS)
1283 memcachec_la_LIBADD = liblatency.la $(BUILD_WITH_LIBMEMCACHED_LIBS)
1284 endif
1285
1286 if BUILD_PLUGIN_MEMCACHED
1287 pkglib_LTLIBRARIES += memcached.la
1288 memcached_la_SOURCES = src/memcached.c
1289 memcached_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1290 memcached_la_LIBADD =
1291 if BUILD_WITH_LIBSOCKET
1292 memcached_la_LIBADD += -lsocket
1293 endif
1294 endif
1295
1296 if BUILD_PLUGIN_MEMORY
1297 pkglib_LTLIBRARIES += memory.la
1298 memory_la_SOURCES = src/memory.c
1299 memory_la_CFLAGS = $(AM_CFLAGS)
1300 memory_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1301 memory_la_LIBADD =
1302 if BUILD_WITH_LIBKSTAT
1303 memory_la_LIBADD += -lkstat
1304 endif
1305 if BUILD_WITH_LIBDEVINFO
1306 memory_la_LIBADD += -ldevinfo
1307 endif
1308 if BUILD_WITH_LIBSTATGRAB
1309 memory_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
1310 memory_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
1311 endif
1312 if BUILD_WITH_PERFSTAT
1313 memory_la_LIBADD += -lperfstat
1314 endif
1315 endif
1316
1317 if BUILD_PLUGIN_MIC
1318 pkglib_LTLIBRARIES += mic.la
1319 mic_la_SOURCES = src/mic.c
1320 mic_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_MIC_CPPFLAGS)
1321 mic_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_MIC_LDFLAGS)
1322 mic_la_LIBADD = libignorelist.la $(BUILD_WITH_MIC_LIBS)
1323 endif
1324
1325 if BUILD_PLUGIN_MODBUS
1326 pkglib_LTLIBRARIES += modbus.la
1327 modbus_la_SOURCES = src/modbus.c
1328 modbus_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBMODBUS_CFLAGS)
1329 modbus_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1330 modbus_la_LIBADD = $(BUILD_WITH_LIBMODBUS_LIBS)
1331 endif
1332
1333 if BUILD_PLUGIN_MQTT
1334 pkglib_LTLIBRARIES += mqtt.la
1335 mqtt_la_SOURCES = src/mqtt.c
1336 mqtt_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBMOSQUITTO_CPPFLAGS)
1337 mqtt_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBMOSQUITTO_LDFLAGS)
1338 mqtt_la_LIBADD = $(BUILD_WITH_LIBMOSQUITTO_LIBS)
1339 endif
1340
1341 if BUILD_PLUGIN_MULTIMETER
1342 pkglib_LTLIBRARIES += multimeter.la
1343 multimeter_la_SOURCES = src/multimeter.c
1344 multimeter_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1345 endif
1346
1347 if BUILD_PLUGIN_MYSQL
1348 pkglib_LTLIBRARIES += mysql.la
1349 mysql_la_SOURCES = src/mysql.c
1350 mysql_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBMYSQL_CFLAGS)
1351 mysql_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1352 mysql_la_LIBADD = $(BUILD_WITH_LIBMYSQL_LIBS)
1353 endif
1354
1355 if BUILD_PLUGIN_NETAPP
1356 pkglib_LTLIBRARIES += netapp.la
1357 netapp_la_SOURCES = src/netapp.c
1358 netapp_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBNETAPP_CPPFLAGS)
1359 netapp_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(LIBNETAPP_LDFLAGS)
1360 netapp_la_LIBADD = libignorelist.la $(LIBNETAPP_LIBS)
1361 endif
1362
1363 if BUILD_PLUGIN_NETLINK
1364 pkglib_LTLIBRARIES += netlink.la
1365 netlink_la_SOURCES = src/netlink.c
1366 netlink_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBMNL_CFLAGS)
1367 netlink_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1368 netlink_la_LIBADD = $(BUILD_WITH_LIBMNL_LIBS)
1369 endif
1370
1371 if BUILD_PLUGIN_NETWORK
1372 pkglib_LTLIBRARIES += network.la
1373 network_la_SOURCES = \
1374         src/network.c \
1375         src/network.h \
1376         src/utils_fbhash.c \
1377         src/utils_fbhash.h
1378 network_la_CPPFLAGS = $(AM_CPPFLAGS)
1379 network_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1380 network_la_LIBADD =
1381 if BUILD_WITH_LIBSOCKET
1382 network_la_LIBADD += -lsocket
1383 endif
1384 if BUILD_WITH_LIBGCRYPT
1385 network_la_CPPFLAGS += $(GCRYPT_CPPFLAGS)
1386 network_la_LDFLAGS += $(GCRYPT_LDFLAGS)
1387 network_la_LIBADD += $(GCRYPT_LIBS)
1388 endif
1389 endif
1390
1391 if BUILD_PLUGIN_NFS
1392 pkglib_LTLIBRARIES += nfs.la
1393 nfs_la_SOURCES = src/nfs.c
1394 nfs_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1395 endif
1396
1397 if BUILD_PLUGIN_NGINX
1398 pkglib_LTLIBRARIES += nginx.la
1399 nginx_la_SOURCES = src/nginx.c
1400 nginx_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBCURL_CFLAGS)
1401 nginx_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1402 nginx_la_LIBADD = $(BUILD_WITH_LIBCURL_LIBS)
1403 endif
1404
1405 if BUILD_PLUGIN_NOTIFY_DESKTOP
1406 pkglib_LTLIBRARIES += notify_desktop.la
1407 notify_desktop_la_SOURCES = src/notify_desktop.c
1408 notify_desktop_la_CFLAGS = $(AM_CFLAGS) $(LIBNOTIFY_CFLAGS)
1409 notify_desktop_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1410 notify_desktop_la_LIBADD = $(LIBNOTIFY_LIBS)
1411 endif
1412
1413 if BUILD_PLUGIN_NOTIFY_EMAIL
1414 pkglib_LTLIBRARIES += notify_email.la
1415 notify_email_la_SOURCES = src/notify_email.c
1416 notify_email_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBESMTP_CPPFLAGS)
1417 notify_email_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBESMTP_LDFLAGS)
1418 notify_email_la_LIBADD = $(BUILD_WITH_LIBESMTP_LIBS)
1419 endif
1420
1421 if BUILD_PLUGIN_NOTIFY_NAGIOS
1422 pkglib_LTLIBRARIES += notify_nagios.la
1423 notify_nagios_la_SOURCES = src/notify_nagios.c
1424 notify_nagios_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1425 endif
1426
1427 if BUILD_PLUGIN_NTPD
1428 pkglib_LTLIBRARIES += ntpd.la
1429 ntpd_la_SOURCES = src/ntpd.c
1430 ntpd_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1431 ntpd_la_LIBADD =
1432 if BUILD_WITH_LIBSOCKET
1433 ntpd_la_LIBADD += -lsocket
1434 endif
1435 endif
1436
1437 if BUILD_PLUGIN_NUMA
1438 pkglib_LTLIBRARIES += numa.la
1439 numa_la_SOURCES = src/numa.c
1440 numa_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1441 endif
1442
1443 if BUILD_PLUGIN_NUT
1444 pkglib_LTLIBRARIES += nut.la
1445 nut_la_SOURCES = src/nut.c
1446 nut_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBUPSCLIENT_CFLAGS)
1447 nut_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1448 nut_la_LIBADD = $(BUILD_WITH_LIBUPSCLIENT_LIBS)
1449 endif
1450
1451 if BUILD_PLUGIN_OLSRD
1452 pkglib_LTLIBRARIES += olsrd.la
1453 olsrd_la_SOURCES = src/olsrd.c
1454 olsrd_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1455 olsrd_la_LIBADD =
1456 if BUILD_WITH_LIBSOCKET
1457 olsrd_la_LIBADD += -lsocket
1458 endif
1459 endif
1460
1461 if BUILD_PLUGIN_ONEWIRE
1462 pkglib_LTLIBRARIES += onewire.la
1463 onewire_la_SOURCES = src/onewire.c
1464 onewire_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBOWCAPI_CPPFLAGS)
1465 onewire_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBOWCAPI_LDFLAGS)
1466 onewire_la_LIBADD = libignorelist.la $(BUILD_WITH_LIBOWCAPI_LIBS)
1467 endif
1468
1469 if BUILD_PLUGIN_OPENLDAP
1470 pkglib_LTLIBRARIES += openldap.la
1471 openldap_la_SOURCES = src/openldap.c
1472 openldap_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBLDAP_CPPFLAGS)
1473 openldap_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBLDAP_LDFLAGS)
1474 openldap_la_LIBADD = -lldap
1475 endif
1476
1477 if BUILD_PLUGIN_OPENVPN
1478 pkglib_LTLIBRARIES += openvpn.la
1479 openvpn_la_SOURCES = src/openvpn.c
1480 openvpn_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1481 endif
1482
1483 if BUILD_PLUGIN_ORACLE
1484 pkglib_LTLIBRARIES += oracle.la
1485 oracle_la_SOURCES = \
1486         src/oracle.c \
1487         src/utils_db_query.c \
1488         src/utils_db_query.h
1489 oracle_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_ORACLE_CPPFLAGS)
1490 oracle_la_LIBADD = $(BUILD_WITH_ORACLE_LIBS)
1491 oracle_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1492 endif
1493
1494 if BUILD_PLUGIN_OVS_EVENTS
1495 pkglib_LTLIBRARIES += ovs_events.la
1496 ovs_events_la_SOURCES = \
1497         src/ovs_events.c \
1498         src/utils_ovs.c \
1499         src/utils_ovs.h
1500 ovs_events_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
1501 ovs_events_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
1502 ovs_events_la_LIBADD = $(BUILD_WITH_LIBYAJL_LIBS)
1503 endif
1504
1505 if BUILD_PLUGIN_OVS_STATS
1506 pkglib_LTLIBRARIES += ovs_stats.la
1507 ovs_stats_la_SOURCES = \
1508         src/ovs_stats.c \
1509         src/utils_ovs.c \
1510         src/utils_ovs.h
1511 ovs_stats_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBYAJL_CPPFLAGS)
1512 ovs_stats_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBYAJL_LDFLAGS)
1513 ovs_stats_la_LIBADD = $(BUILD_WITH_LIBYAJL_LIBS)
1514 endif
1515
1516 if BUILD_PLUGIN_PCIE_ERRORS
1517 pkglib_LTLIBRARIES += pcie_errors.la
1518 pcie_errors_la_SOURCES = src/pcie_errors.c
1519 pcie_errors_la_CPPFLAGS = $(AM_CPPFLAGS)
1520 pcie_errors_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1521
1522 test_plugin_pcie_errors_SOURCES = \
1523         src/pcie_errors_test.c \
1524         src/daemon/utils_llist.c \
1525         src/daemon/configfile.c \
1526         src/daemon/types_list.c
1527 test_plugin_pcie_errors_CPPFLAGS = $(AM_CPPFLAGS)
1528 test_plugin_pcie_errors_LDFLAGS = $(PLUGIN_LDFLAGS)
1529 test_plugin_pcie_errors_LDADD = liboconfig.la libplugin_mock.la
1530 check_PROGRAMS += test_plugin_pcie_errors
1531 TESTS += test_plugin_pcie_errors
1532 endif
1533
1534 if BUILD_PLUGIN_PERL
1535 pkglib_LTLIBRARIES += perl.la
1536 perl_la_SOURCES = src/perl.c
1537 # Despite C99 providing the "bool" type thru stdbool.h, Perl defines its own
1538 # version of that type if HAS_BOOL is not defined... *sigh*
1539 perl_la_CPPFLAGS = $(AM_CPPFLAGS) -DHAS_BOOL=1
1540 # Despite off_t being 64 bit wide on 64 bit platforms, Perl insist on using
1541 # off64_t which is only exposed when _LARGEFILE64_SOURCE is defined... *sigh*
1542 # On older platforms we also need _REENTRANT. _GNU_SOURCE sets both of these.
1543 perl_la_CPPFLAGS += -D_GNU_SOURCE
1544 perl_la_CFLAGS = $(AM_CFLAGS) \
1545         $(PERL_CFLAGS) \
1546         -DXS_VERSION=\"$(VERSION)\" -DVERSION=\"$(VERSION)\"
1547 perl_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(PERL_LDFLAGS)
1548 perl_la_LIBADD = $(PERL_LIBS)
1549 endif
1550
1551 if BUILD_PLUGIN_PF
1552 pkglib_LTLIBRARIES += pf.la
1553 pf_la_SOURCES = src/pf.c
1554 pf_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1555 endif
1556
1557 if BUILD_PLUGIN_PINBA
1558 pkglib_LTLIBRARIES += pinba.la
1559 pinba_la_SOURCES = src/pinba.c
1560 nodist_pinba_la_SOURCES = \
1561         src/pinba.pb-c.c \
1562         src/pinba.pb-c.h
1563 pinba_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBPROTOBUF_C_CPPFLAGS)
1564 pinba_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBPROTOBUF_C_LDFLAGS)
1565 pinba_la_LIBADD = $(BUILD_WITH_LIBPROTOBUF_C_LIBS)
1566 endif
1567
1568 if BUILD_PLUGIN_PING
1569 pkglib_LTLIBRARIES += ping.la
1570 ping_la_SOURCES = src/ping.c
1571 ping_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBOPING_CPPFLAGS)
1572 ping_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBOPING_LDFLAGS)
1573 ping_la_LIBADD = -loping -lm
1574 endif
1575
1576 if BUILD_PLUGIN_POSTGRESQL
1577 pkglib_LTLIBRARIES += postgresql.la
1578 postgresql_la_SOURCES = \
1579         src/postgresql.c \
1580         src/utils_db_query.c \
1581         src/utils_db_query.h
1582 postgresql_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBPQ_CPPFLAGS)
1583 postgresql_la_LDFLAGS = $(PLUGIN_LDFLAGS) \
1584         $(BUILD_WITH_LIBPQ_LDFLAGS)
1585 postgresql_la_LIBADD = $(BUILD_WITH_LIBPQ_LIBS)
1586 endif
1587
1588 if BUILD_PLUGIN_POWERDNS
1589 pkglib_LTLIBRARIES += powerdns.la
1590 powerdns_la_SOURCES = src/powerdns.c
1591 powerdns_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1592 endif
1593
1594 if BUILD_PLUGIN_PYTHON
1595 pkglib_LTLIBRARIES += python.la
1596 python_la_SOURCES = \
1597         src/python.c \
1598         src/pyconfig.c \
1599         src/pyvalues.c \
1600         src/cpython.h
1601 python_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBPYTHON_CPPFLAGS)
1602 python_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(LIBPYTHON_LDFLAGS)
1603 endif
1604
1605 if HAVE_LIBMNL
1606 EXTRA_LTLIBRARIES += libtaskstats.la
1607 libtaskstats_la_SOURCES = \
1608         src/utils_taskstats.c \
1609         src/utils_taskstats.h
1610 libtaskstats_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBMNL_CFLAGS)
1611 libtaskstats_la_LIBADD = $(BUILD_WITH_LIBMNL_LIBS)
1612 endif
1613
1614 if BUILD_PLUGIN_PROCESSES
1615 pkglib_LTLIBRARIES += processes.la
1616 processes_la_SOURCES = src/processes.c
1617 processes_la_CPPFLAGS = $(AM_CPPFLAGS)
1618 processes_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1619 processes_la_LIBADD =
1620 if BUILD_WITH_LIBKVM_GETPROCS
1621 processes_la_LIBADD += -lkvm
1622 endif
1623 if HAVE_LIBMNL
1624 processes_la_CPPFLAGS += -DHAVE_LIBTASKSTATS=1
1625 processes_la_LIBADD += libtaskstats.la
1626 endif
1627 endif
1628
1629 if BUILD_PLUGIN_PROTOCOLS
1630 pkglib_LTLIBRARIES += protocols.la
1631 protocols_la_SOURCES = src/protocols.c
1632 protocols_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1633 protocols_la_LIBADD = libignorelist.la
1634 endif
1635
1636 if BUILD_PLUGIN_REDIS
1637 pkglib_LTLIBRARIES += redis.la
1638 redis_la_SOURCES = src/redis.c
1639 redis_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBHIREDIS_CPPFLAGS)
1640 redis_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBHIREDIS_LDFLAGS)
1641 redis_la_LIBADD = -lhiredis
1642 endif
1643
1644 if BUILD_PLUGIN_ROUTEROS
1645 pkglib_LTLIBRARIES += routeros.la
1646 routeros_la_SOURCES = src/routeros.c
1647 routeros_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBROUTEROS_CPPFLAGS)
1648 routeros_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBROUTEROS_LDFLAGS)
1649 routeros_la_LIBADD = -lrouteros
1650 endif
1651
1652 if BUILD_PLUGIN_RRDCACHED
1653 pkglib_LTLIBRARIES += rrdcached.la
1654 rrdcached_la_SOURCES = \
1655         src/rrdcached.c \
1656         src/utils_rrdcreate.c \
1657         src/utils_rrdcreate.h
1658 rrdcached_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBRRD_CFLAGS)
1659 rrdcached_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBRRD_LDFLAGS)
1660 rrdcached_la_LIBADD = $(BUILD_WITH_LIBRRD_LIBS)
1661 endif
1662
1663 if BUILD_PLUGIN_RRDTOOL
1664 pkglib_LTLIBRARIES += rrdtool.la
1665 rrdtool_la_SOURCES = \
1666         src/rrdtool.c \
1667         src/utils_rrdcreate.c \
1668         src/utils_rrdcreate.h
1669 rrdtool_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBRRD_CFLAGS)
1670 rrdtool_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBRRD_LDFLAGS)
1671 rrdtool_la_LIBADD = $(BUILD_WITH_LIBRRD_LIBS)
1672 endif
1673
1674 if BUILD_PLUGIN_SENSORS
1675 pkglib_LTLIBRARIES += sensors.la
1676 sensors_la_SOURCES = src/sensors.c
1677 sensors_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBSENSORS_CPPFLAGS)
1678 sensors_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBSENSORS_LDFLAGS)
1679 sensors_la_LIBADD = libignorelist.la $(BUILD_WITH_LIBSENSORS_LIBS)
1680 endif
1681
1682 if BUILD_PLUGIN_SERIAL
1683 pkglib_LTLIBRARIES += serial.la
1684 serial_la_SOURCES = src/serial.c
1685 serial_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1686 endif
1687
1688 if BUILD_PLUGIN_SIGROK
1689 pkglib_LTLIBRARIES += sigrok.la
1690 sigrok_la_SOURCES = src/sigrok.c
1691 sigrok_la_CFLAGS = $(AM_CFLAGS) $(LIBSIGROK_CFLAGS)
1692 sigrok_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1693 sigrok_la_LIBADD = $(LIBSIGROK_LIBS)
1694 endif
1695
1696 if BUILD_PLUGIN_SMART
1697 if BUILD_WITH_LIBUDEV
1698 pkglib_LTLIBRARIES += smart.la
1699 smart_la_SOURCES = src/smart.c
1700 smart_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBATASMART_CPPFLAGS) $(BUILD_WITH_LIBUDEV_CPPFLAGS)
1701 smart_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBATASMART_LDFLAGS) $(BUILD_WITH_LIBUDEV_LDFLAGS)
1702 smart_la_LIBADD = libignorelist.la $(BUILD_WITH_LIBATASMART_LIBS) $(BUILD_WITH_LIBUDEV_LIBS)
1703 endif
1704 endif
1705
1706 if BUILD_PLUGIN_SNMP
1707 pkglib_LTLIBRARIES += snmp.la
1708 snmp_la_SOURCES = src/snmp.c
1709 snmp_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBNETSNMP_CPPFLAGS)
1710 snmp_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBNETSNMP_LDFLAGS)
1711 snmp_la_LIBADD = libignorelist.la $(BUILD_WITH_LIBNETSNMP_LIBS)
1712 endif
1713
1714 if BUILD_PLUGIN_SNMP_AGENT
1715 pkglib_LTLIBRARIES += snmp_agent.la
1716 snmp_agent_la_SOURCES = src/snmp_agent.c
1717 snmp_agent_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBNETSNMPAGENT_CPPFLAGS)
1718 snmp_agent_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBNETSNMPAGENT_LDFLAGS)
1719 snmp_agent_la_LIBADD = $(BUILD_WITH_LIBNETSNMPAGENT_LIBS)
1720
1721 test_plugin_snmp_agent_SOURCES = src/snmp_agent_test.c \
1722                                  src/daemon/utils_avltree.c \
1723                                  src/daemon/utils_llist.c \
1724                                  src/daemon/configfile.c \
1725                                  src/daemon/types_list.c
1726 test_plugin_snmp_agent_CPPFLAGS = $(AM_CPPFLAGS) \
1727         $(BUILD_WITH_LIBNETSNMPAGENT_CPPFLAGS)
1728 test_plugin_snmp_agent_LDFLAGS = $(PLUGIN_LDFLAGS) \
1729         $(BUILD_WITH_LIBNETSNMPAGENT_LDFLAGS)
1730 test_plugin_snmp_agent_LDADD = liboconfig.la libplugin_mock.la \
1731         $(BUILD_WITH_LIBNETSNMPAGENT_LIBS) $(BUILD_WITH_LIBNETSNMP_LIBS)
1732
1733 check_PROGRAMS += test_plugin_snmp_agent
1734 TESTS += test_plugin_snmp_agent
1735
1736
1737 endif
1738
1739 if BUILD_PLUGIN_STATSD
1740 pkglib_LTLIBRARIES += statsd.la
1741 statsd_la_SOURCES = src/statsd.c
1742 statsd_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1743 statsd_la_LIBADD = liblatency.la
1744 endif
1745
1746 if BUILD_PLUGIN_SWAP
1747 pkglib_LTLIBRARIES += swap.la
1748 swap_la_SOURCES = src/swap.c
1749 swap_la_CFLAGS = $(AM_CFLAGS)
1750 swap_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1751 swap_la_LIBADD =
1752 if BUILD_WITH_LIBKSTAT
1753 swap_la_LIBADD += -lkstat
1754 endif
1755 if BUILD_WITH_LIBDEVINFO
1756 swap_la_LIBADD += -ldevinfo
1757 endif
1758 if BUILD_WITH_LIBKVM_GETSWAPINFO
1759 swap_la_LIBADD += -lkvm
1760 endif
1761 if BUILD_WITH_LIBSTATGRAB
1762 swap_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
1763 swap_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
1764 endif
1765 if BUILD_WITH_PERFSTAT
1766 swap_la_LIBADD += -lperfstat
1767 endif
1768
1769 endif
1770
1771 if BUILD_PLUGIN_SYNPROXY
1772 pkglib_LTLIBRARIES += synproxy.la
1773 synproxy_la_SOURCES = src/synproxy.c
1774 synproxy_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1775 endif
1776
1777 if BUILD_PLUGIN_SYSLOG
1778 pkglib_LTLIBRARIES += syslog.la
1779 syslog_la_SOURCES = src/syslog.c
1780 syslog_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1781 endif
1782
1783 if BUILD_PLUGIN_TABLE
1784 pkglib_LTLIBRARIES += table.la
1785 table_la_SOURCES = src/table.c
1786 table_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1787 endif
1788
1789 if BUILD_PLUGIN_TAIL
1790 pkglib_LTLIBRARIES += tail.la
1791 tail_la_SOURCES = \
1792         src/tail.c \
1793         src/utils_match.c \
1794         src/utils_match.h \
1795         src/utils_tail.c \
1796         src/utils_tail.h \
1797         src/utils_tail_match.c \
1798         src/utils_tail_match.h
1799 tail_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1800 tail_la_LIBADD = liblatency.la
1801 endif
1802
1803 if BUILD_PLUGIN_TAIL_CSV
1804 pkglib_LTLIBRARIES += tail_csv.la
1805 tail_csv_la_SOURCES = \
1806         src/tail_csv.c \
1807         src/utils_tail.c \
1808         src/utils_tail.h
1809 tail_csv_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1810 endif
1811
1812 if BUILD_PLUGIN_TAPE
1813 pkglib_LTLIBRARIES += tape.la
1814 tape_la_SOURCES = src/tape.c
1815 tape_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1816 tape_la_LIBADD = -lkstat -ldevinfo
1817 endif
1818
1819 if BUILD_PLUGIN_TARGET_NOTIFICATION
1820 pkglib_LTLIBRARIES += target_notification.la
1821 target_notification_la_SOURCES = src/target_notification.c
1822 target_notification_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1823 endif
1824
1825 if BUILD_PLUGIN_TARGET_REPLACE
1826 pkglib_LTLIBRARIES += target_replace.la
1827 target_replace_la_SOURCES = src/target_replace.c
1828 target_replace_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1829 endif
1830
1831 if BUILD_PLUGIN_TARGET_SCALE
1832 pkglib_LTLIBRARIES += target_scale.la
1833 target_scale_la_SOURCES = src/target_scale.c
1834 target_scale_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1835 endif
1836
1837 if BUILD_PLUGIN_TARGET_SET
1838 pkglib_LTLIBRARIES += target_set.la
1839 target_set_la_SOURCES = src/target_set.c
1840 target_set_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1841 endif
1842
1843 if BUILD_PLUGIN_TARGET_V5UPGRADE
1844 pkglib_LTLIBRARIES += target_v5upgrade.la
1845 target_v5upgrade_la_SOURCES = src/target_v5upgrade.c
1846 target_v5upgrade_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1847 endif
1848
1849 if BUILD_PLUGIN_TCPCONNS
1850 pkglib_LTLIBRARIES += tcpconns.la
1851 tcpconns_la_SOURCES = src/tcpconns.c
1852 tcpconns_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1853 tcpconns_la_LIBADD =
1854 if BUILD_WITH_LIBKVM_NLIST
1855 tcpconns_la_LIBADD += -lkvm
1856 endif
1857 endif
1858
1859 if BUILD_PLUGIN_TEAMSPEAK2
1860 pkglib_LTLIBRARIES += teamspeak2.la
1861 teamspeak2_la_SOURCES = src/teamspeak2.c
1862 teamspeak2_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1863 endif
1864
1865 if BUILD_PLUGIN_TED
1866 pkglib_LTLIBRARIES += ted.la
1867 ted_la_SOURCES = src/ted.c
1868 ted_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1869 endif
1870
1871 if BUILD_PLUGIN_THERMAL
1872 pkglib_LTLIBRARIES += thermal.la
1873 thermal_la_SOURCES = src/thermal.c
1874 thermal_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1875 thermal_la_LIBADD = libignorelist.la
1876 endif
1877
1878 if BUILD_PLUGIN_THRESHOLD
1879 pkglib_LTLIBRARIES += threshold.la
1880 threshold_la_SOURCES = src/threshold.c
1881 threshold_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1882 endif
1883
1884 if BUILD_PLUGIN_TOKYOTYRANT
1885 pkglib_LTLIBRARIES += tokyotyrant.la
1886 tokyotyrant_la_SOURCES = src/tokyotyrant.c
1887 tokyotyrant_la_CPPFLAGS  = $(AM_CPPFLAGS) $(BUILD_WITH_LIBTOKYOTYRANT_CPPFLAGS)
1888 tokyotyrant_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBTOKYOTYRANT_LDFLAGS)
1889 tokyotyrant_la_LIBADD  = $(BUILD_WITH_LIBTOKYOTYRANT_LIBS)
1890 if BUILD_WITH_LIBSOCKET
1891 tokyotyrant_la_LIBADD += -lsocket
1892 endif
1893 endif
1894
1895 if BUILD_PLUGIN_TURBOSTAT
1896 pkglib_LTLIBRARIES += turbostat.la
1897 turbostat_la_SOURCES = \
1898         src/turbostat.c \
1899         src/msr-index.h
1900 turbostat_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1901 endif
1902
1903 if BUILD_PLUGIN_UNIXSOCK
1904 pkglib_LTLIBRARIES += unixsock.la
1905 unixsock_la_SOURCES = src/unixsock.c
1906 unixsock_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1907 unixsock_la_LIBADD = libcmds.la
1908 endif
1909
1910 if BUILD_PLUGIN_UPTIME
1911 pkglib_LTLIBRARIES += uptime.la
1912 uptime_la_SOURCES = src/uptime.c
1913 uptime_la_CFLAGS = $(AM_CFLAGS)
1914 uptime_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1915 uptime_la_LIBADD =
1916 if BUILD_WITH_LIBKSTAT
1917 uptime_la_LIBADD += -lkstat
1918 endif
1919 if BUILD_WITH_PERFSTAT
1920 uptime_la_LIBADD += -lperfstat
1921 endif
1922 endif
1923
1924 if BUILD_PLUGIN_USERS
1925 pkglib_LTLIBRARIES += users.la
1926 users_la_SOURCES = src/users.c
1927 users_la_CFLAGS = $(AM_CFLAGS)
1928 users_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1929 users_la_LIBADD =
1930 if BUILD_WITH_LIBSTATGRAB
1931 users_la_CFLAGS += $(BUILD_WITH_LIBSTATGRAB_CFLAGS)
1932 users_la_LIBADD += $(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
1933 endif
1934 endif
1935
1936 if BUILD_PLUGIN_UUID
1937 pkglib_LTLIBRARIES += uuid.la
1938 uuid_la_SOURCES = src/uuid.c
1939 uuid_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1940 endif
1941
1942 if BUILD_PLUGIN_VARNISH
1943 pkglib_LTLIBRARIES += varnish.la
1944 varnish_la_SOURCES = src/varnish.c
1945 varnish_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBVARNISH_CFLAGS)
1946 varnish_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1947 varnish_la_LIBADD = $(BUILD_WITH_LIBVARNISH_LIBS)
1948 endif
1949
1950 if BUILD_PLUGIN_VIRT
1951 pkglib_LTLIBRARIES += virt.la
1952 virt_la_SOURCES = src/virt.c
1953 virt_la_CFLAGS = $(AM_CFLAGS) \
1954         $(BUILD_WITH_LIBVIRT_CFLAGS) $(BUILD_WITH_LIBXML2_CFLAGS)
1955 virt_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1956 virt_la_LIBADD = libignorelist.la $(BUILD_WITH_LIBVIRT_LIBS) $(BUILD_WITH_LIBXML2_LIBS)
1957
1958 test_plugin_virt_SOURCES = src/virt_test.c
1959 test_plugin_virt_CPPFLAGS = $(AM_CPPFLAGS) \
1960         $(BUILD_WITH_LIBVIRT_CPPFLAGS) $(BUILD_WITH_LIBXML2_CFLAGS)
1961 test_plugin_virt_LDFLAGS = $(PLUGIN_LDFLAGS) \
1962         $(BUILD_WITH_LIBVIRT_LDFLAGS) $(BUILD_WITH_LIBXML2_LDFLAGS)
1963 test_plugin_virt_LDADD = libplugin_mock.la \
1964         $(BUILD_WITH_LIBVIRT_LIBS) $(BUILD_WITH_LIBXML2_LIBS)
1965 check_PROGRAMS += test_plugin_virt
1966 TESTS += test_plugin_virt
1967 endif
1968
1969 if BUILD_PLUGIN_VMEM
1970 pkglib_LTLIBRARIES += vmem.la
1971 vmem_la_SOURCES = src/vmem.c
1972 vmem_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1973 endif
1974
1975 if BUILD_PLUGIN_VSERVER
1976 pkglib_LTLIBRARIES += vserver.la
1977 vserver_la_SOURCES = src/vserver.c
1978 vserver_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1979 endif
1980
1981 if BUILD_PLUGIN_WIRELESS
1982 pkglib_LTLIBRARIES += wireless.la
1983 wireless_la_SOURCES = src/wireless.c
1984 wireless_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1985 endif
1986
1987 if BUILD_PLUGIN_WRITE_GRAPHITE
1988 pkglib_LTLIBRARIES += write_graphite.la
1989 write_graphite_la_SOURCES = src/write_graphite.c
1990 write_graphite_la_LDFLAGS = $(PLUGIN_LDFLAGS)
1991 write_graphite_la_LIBADD = libformat_graphite.la
1992 endif
1993
1994 if BUILD_PLUGIN_WRITE_HTTP
1995 pkglib_LTLIBRARIES += write_http.la
1996 write_http_la_SOURCES = \
1997         src/write_http.c \
1998         src/utils_format_kairosdb.c \
1999         src/utils_format_kairosdb.h
2000 write_http_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBCURL_CFLAGS)
2001 write_http_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2002 write_http_la_LIBADD = libformat_json.la $(BUILD_WITH_LIBCURL_LIBS)
2003 endif
2004
2005 if BUILD_PLUGIN_WRITE_KAFKA
2006 pkglib_LTLIBRARIES += write_kafka.la
2007 write_kafka_la_SOURCES = src/write_kafka.c
2008 write_kafka_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBRDKAFKA_CPPFLAGS)
2009 write_kafka_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBRDKAFKA_LDFLAGS)
2010 write_kafka_la_LIBADD = \
2011         libcmds.la \
2012         libformat_graphite.la \
2013         libformat_json.la \
2014         $(BUILD_WITH_LIBRDKAFKA_LIBS)
2015 endif
2016
2017 if BUILD_PLUGIN_WRITE_LOG
2018 pkglib_LTLIBRARIES += write_log.la
2019 write_log_la_SOURCES = src/write_log.c
2020 write_log_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2021 write_log_la_LIBADD = libformat_graphite.la libformat_json.la
2022 endif
2023
2024 if BUILD_PLUGIN_WRITE_MONGODB
2025 pkglib_LTLIBRARIES += write_mongodb.la
2026 write_mongodb_la_SOURCES = src/write_mongodb.c
2027 write_mongodb_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBMONGOC_CFLAGS)
2028 write_mongodb_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBMONGOC_LDFLAGS)
2029 endif
2030
2031 if BUILD_PLUGIN_WRITE_PROMETHEUS
2032 pkglib_LTLIBRARIES += write_prometheus.la
2033 write_prometheus_la_SOURCES = src/write_prometheus.c
2034 nodist_write_prometheus_la_SOURCES = \
2035         prometheus.pb-c.c \
2036         prometheus.pb-c.h
2037 write_prometheus_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBPROTOBUF_C_CPPFLAGS) $(BUILD_WITH_LIBMICROHTTPD_CPPFLAGS)
2038 write_prometheus_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBPROTOBUF_C_LDFLAGS) $(BUILD_WITH_LIBMICROHTTPD_LDFLAGS)
2039 write_prometheus_la_LIBADD = $(BUILD_WITH_LIBPROTOBUF_C_LIBS) $(BUILD_WITH_LIBMICROHTTPD_LIBS)
2040 endif
2041
2042 if BUILD_PLUGIN_WRITE_REDIS
2043 pkglib_LTLIBRARIES += write_redis.la
2044 write_redis_la_SOURCES = src/write_redis.c
2045 write_redis_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBHIREDIS_CPPFLAGS)
2046 write_redis_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(BUILD_WITH_LIBHIREDIS_LDFLAGS)
2047 write_redis_la_LIBADD = -lhiredis
2048 endif
2049
2050 if BUILD_PLUGIN_WRITE_RIEMANN
2051 pkglib_LTLIBRARIES += write_riemann.la
2052 write_riemann_la_SOURCES = \
2053         src/write_riemann.c \
2054         src/write_riemann_threshold.c \
2055         src/write_riemann_threshold.h
2056 write_riemann_la_CFLAGS = $(AM_CFLAGS) $(LIBRIEMANN_CLIENT_CFLAGS)
2057 write_riemann_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(LIBRIEMANN_CLIENT_LIBS)
2058 endif
2059
2060 if BUILD_PLUGIN_WRITE_SENSU
2061 pkglib_LTLIBRARIES += write_sensu.la
2062 write_sensu_la_SOURCES = src/write_sensu.c
2063 write_sensu_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2064 endif
2065
2066 if BUILD_PLUGIN_WRITE_STACKDRIVER
2067 pkglib_LTLIBRARIES += write_stackdriver.la
2068 write_stackdriver_la_SOURCES = src/write_stackdriver.c
2069 write_stackdriver_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2070 write_stackdriver_la_CPPFLAGS = $(AM_CPPFLAGS) $(BUILD_WITH_LIBCURL_CFLAGS)
2071 write_stackdriver_la_LIBADD = libformat_stackdriver.la libgce.la liboauth.la \
2072                      $(BUILD_WITH_LIBCURL_LIBS)
2073 endif
2074
2075 if BUILD_PLUGIN_WRITE_TSDB
2076 pkglib_LTLIBRARIES += write_tsdb.la
2077 write_tsdb_la_SOURCES = src/write_tsdb.c
2078 write_tsdb_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2079 endif
2080
2081 if BUILD_PLUGIN_XENCPU
2082 pkglib_LTLIBRARIES += xencpu.la
2083 xencpu_la_SOURCES = src/xencpu.c
2084 xencpu_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBXENCTL_CPPFLAGS)
2085 xencpu_la_LDFLAGS = $(PLUGIN_LDFLAGS) $(LIBXENCTL_LDFLAGS)
2086 xencpu_la_LIBADD = -lxenctrl
2087 endif
2088
2089 if BUILD_PLUGIN_XMMS
2090 pkglib_LTLIBRARIES += xmms.la
2091 xmms_la_SOURCES = src/xmms.c
2092 xmms_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBXMMS_CFLAGS)
2093 xmms_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2094 xmms_la_LIBADD = $(BUILD_WITH_LIBXMMS_LIBS)
2095 endif
2096
2097 if BUILD_PLUGIN_ZFS_ARC
2098 pkglib_LTLIBRARIES += zfs_arc.la
2099 zfs_arc_la_SOURCES = src/zfs_arc.c
2100 zfs_arc_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2101 if BUILD_FREEBSD
2102 zfs_arc_la_LIBADD = -lm
2103 endif
2104 if BUILD_SOLARIS
2105 zfs_arc_la_LIBADD = -lkstat
2106 endif
2107 endif
2108
2109 if BUILD_PLUGIN_ZOOKEEPER
2110 pkglib_LTLIBRARIES += zookeeper.la
2111 zookeeper_la_SOURCES = src/zookeeper.c
2112 zookeeper_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2113 endif
2114
2115 if BUILD_PLUGIN_ZONE
2116 pkglib_LTLIBRARIES += zone.la
2117 zone_la_SOURCES = src/zone.c
2118 zone_la_LDFLAGS = $(PLUGIN_LDFLAGS)
2119 endif
2120
2121 AM_V_POD2MAN_C = $(am__v_POD2MAN_C_@AM_V@)
2122 am__v_POD2MAN_C_ = $(am__v_POD2MAN_C_@AM_DEFAULT_V@)
2123 am__v_POD2MAN_C_0 = @echo "  POD2MAN " $@;
2124 am__v_POD2MAN_C_1 =
2125
2126 .pod.1:
2127         $(AM_V_POD2MAN_C)pod2man --release=$(VERSION) --center=$(PACKAGE) $< \
2128                 >.pod2man.tmp.$$$$ 2>/dev/null && mv -f .pod2man.tmp.$$$$ $@ || true
2129         @if grep '\<POD ERRORS\>' $@ >/dev/null 2>&1; \
2130         then \
2131                 echo "$@ has some POD errors!"; false; \
2132         fi
2133
2134 .pod.5:
2135         $(AM_V_POD2MAN_C)pod2man --section=5 --release=$(VERSION) --center=$(PACKAGE) $< \
2136                 >.pod2man.tmp.$$$$ 2>/dev/null && mv -f .pod2man.tmp.$$$$ $@ || true
2137         @if grep '\<POD ERRORS\>' $@ >/dev/null 2>&1; \
2138         then \
2139                 echo "$@ has some POD errors!"; false; \
2140         fi
2141
2142 V_PROTOC = $(v_protoc_@AM_V@)
2143 v_protoc_ = $(v_protoc_@AM_DEFAULT_V@)
2144 v_protoc_0 = @echo "  PROTOC  " $@;
2145
2146 AM_V_PROTOC_C = $(am__v_PROTOC_C_@AM_V@)
2147 am__v_PROTOC_C_ = $(am__v_PROTOC_C_@AM_DEFAULT_V@)
2148 am__v_PROTOC_C_0 = @echo "  PROTOC-C" $@;
2149 am__v_PROTOC_C_1 =
2150
2151 # Protocol buffer for the "pinba" plugin.
2152 if BUILD_PLUGIN_PINBA
2153 BUILT_SOURCES += src/pinba.pb-c.c src/pinba.pb-c.h
2154
2155 src/pinba.pb-c.c src/pinba.pb-c.h: $(srcdir)/src/pinba.proto
2156         $(AM_V_PROTOC_C)$(PROTOC_C) -I$(srcdir) --c_out . $(srcdir)/src/pinba.proto
2157 endif
2158
2159 # Protocol buffer for the "write_prometheus" plugin.
2160 if BUILD_PLUGIN_WRITE_PROMETHEUS
2161 BUILT_SOURCES += prometheus.pb-c.c prometheus.pb-c.h
2162
2163 prometheus.pb-c.c prometheus.pb-c.h: $(srcdir)/proto/prometheus.proto
2164         $(AM_V_PROTOC_C)$(PROTOC_C) -I$(srcdir)/proto --c_out=$(builddir) $(srcdir)/proto/prometheus.proto
2165 endif
2166
2167 if HAVE_PROTOC3
2168 if HAVE_GRPC_CPP
2169 BUILT_SOURCES += collectd.grpc.pb.cc collectd.pb.cc types.pb.cc
2170
2171 collectd.grpc.pb.cc: $(srcdir)/proto/collectd.proto $(srcdir)/proto/types.proto
2172         $(V_PROTOC)$(PROTOC) -I$(srcdir)/proto \
2173                 --grpc_out=$(builddir) --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN) $<
2174
2175 collectd.pb.cc: $(srcdir)/proto/collectd.proto $(srcdir)/proto/types.proto
2176         $(V_PROTOC)$(PROTOC) -I$(srcdir)/proto --cpp_out=$(builddir) $<
2177
2178 types.pb.cc: $(srcdir)/proto/types.proto
2179         $(V_PROTOC)$(PROTOC) -I$(srcdir)/proto --cpp_out=$(builddir) $<
2180 endif
2181 endif
2182
2183 install-exec-hook:
2184         $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run
2185         $(mkinstalldirs) $(DESTDIR)$(localstatedir)/lib/$(PACKAGE_NAME)
2186         $(mkinstalldirs) $(DESTDIR)$(localstatedir)/log
2187         $(mkinstalldirs) $(DESTDIR)$(sysconfdir)
2188         if test -e $(DESTDIR)$(sysconfdir)/collectd.conf; \
2189         then \
2190                 $(INSTALL) -m 0640 $(builddir)/src/collectd.conf $(DESTDIR)$(sysconfdir)/collectd.conf.pkg-orig; \
2191         else \
2192                 $(INSTALL) -m 0640 $(builddir)/src/collectd.conf $(DESTDIR)$(sysconfdir)/collectd.conf; \
2193         fi; \
2194         $(mkinstalldirs) $(DESTDIR)$(cpkgdatadir)
2195         $(INSTALL) -m 0644 $(srcdir)/src/types.db $(DESTDIR)$(cpkgdatadir)/types.db;
2196         $(INSTALL) -m 0644 $(srcdir)/src/postgresql_default.conf \
2197                 $(DESTDIR)$(cpkgdatadir)/postgresql_default.conf;
2198
2199 uninstall-hook:
2200         rm -f $(DESTDIR)$(cpkgdatadir)/types.db;
2201         rm -f $(DESTDIR)$(sysconfdir)/collectd.conf
2202         rm -f $(DESTDIR)$(cpkgdatadir)/postgresql_default.conf;
2203
2204 all-local: @PERL_BINDINGS@
2205
2206 install-exec-local:
2207         [ ! -f buildperl/Makefile ] || ( cd buildperl && $(MAKE) install )
2208
2209 # Perl 'make uninstall' does not work as well as wanted.
2210 # So we do the work here.
2211 uninstall-local:
2212         @PERL@ -I$(DESTDIR)$(prefix) $(srcdir)/bindings/perl/uninstall_mod.pl Collectd
2213         find $(DESTDIR)$(prefix) -name "perllocal.pod" -exec rm {} \;
2214
2215 clean-local:
2216         rm -rf buildperl
2217
2218 perl: buildperl/Makefile
2219         cd buildperl && $(MAKE)
2220
2221 buildperl/Makefile: .perl-directory-stamp buildperl/Makefile.PL \
2222         $(top_builddir)/config.status
2223         @# beautify the output a bit
2224         @echo 'cd buildperl && @PERL@ Makefile.PL @PERL_BINDINGS_OPTIONS@'
2225         @cd buildperl && ( if ! @PERL@ Makefile.PL @PERL_BINDINGS_OPTIONS@; then \
2226                         echo ""; \
2227                         echo 'Check whether you have set $$PERL_MM_OPT in your environment and try using ./configure --with-perl-bindings=""'; \
2228                         echo ""; \
2229                 fi )
2230
2231 buildperl/Makefile.PL: .perl-directory-stamp $(top_builddir)/config.status
2232
2233 .perl-directory-stamp:
2234         if test ! -d buildperl; then \
2235           mkdir -p buildperl/Collectd/Plugins; \
2236           cp $(srcdir)/bindings/perl/lib/Collectd.pm buildperl/; \
2237           cp $(srcdir)/bindings/perl/Makefile.PL buildperl/; \
2238           cp $(srcdir)/bindings/perl/lib/Collectd/Unixsock.pm buildperl/Collectd/; \
2239           cp $(srcdir)/bindings/perl/lib/Collectd/Plugins/OpenVZ.pm buildperl/Collectd/Plugins/; \
2240         fi
2241         touch $@
2242
2243 .PHONY: perl
2244
2245
2246 if BUILD_WITH_JAVA
2247 dist_noinst_JAVA = \
2248         bindings/java/org/collectd/api/Collectd.java \
2249         bindings/java/org/collectd/api/CollectdConfigInterface.java \
2250         bindings/java/org/collectd/api/CollectdFlushInterface.java \
2251         bindings/java/org/collectd/api/CollectdInitInterface.java \
2252         bindings/java/org/collectd/api/CollectdLogInterface.java \
2253         bindings/java/org/collectd/api/CollectdMatchFactoryInterface.java \
2254         bindings/java/org/collectd/api/CollectdMatchInterface.java \
2255         bindings/java/org/collectd/api/CollectdNotificationInterface.java \
2256         bindings/java/org/collectd/api/CollectdReadInterface.java \
2257         bindings/java/org/collectd/api/CollectdShutdownInterface.java \
2258         bindings/java/org/collectd/api/CollectdTargetFactoryInterface.java \
2259         bindings/java/org/collectd/api/CollectdTargetInterface.java \
2260         bindings/java/org/collectd/api/CollectdWriteInterface.java \
2261         bindings/java/org/collectd/api/DataSet.java \
2262         bindings/java/org/collectd/api/DataSource.java \
2263         bindings/java/org/collectd/api/Notification.java \
2264         bindings/java/org/collectd/api/OConfigItem.java \
2265         bindings/java/org/collectd/api/OConfigValue.java \
2266         bindings/java/org/collectd/api/PluginData.java \
2267         bindings/java/org/collectd/api/ValueList.java \
2268         bindings/java/org/collectd/java/GenericJMX.java \
2269         bindings/java/org/collectd/java/GenericJMXConfConnection.java \
2270         bindings/java/org/collectd/java/GenericJMXConfMBean.java \
2271         bindings/java/org/collectd/java/GenericJMXConfValue.java \
2272         bindings/java/org/collectd/java/JMXMemory.java
2273
2274 collectd-api.jar: $(JAVA_TIMESTAMP_FILE)
2275         $(JAR) cf $(JARFLAGS) $@ org/collectd/api/*.class
2276
2277 generic-jmx.jar: $(JAVA_TIMESTAMP_FILE)
2278         $(JAR) cf $(JARFLAGS) $@ org/collectd/java/*.class
2279
2280 jar_DATA = collectd-api.jar generic-jmx.jar
2281 endif
2282