build system: Do dependency checking in the configure script.
[collectd.git] / src / Makefile.am
1 SUBDIRS =
2 if BUILD_WITH_OWN_LIBOCONFIG
3 SUBDIRS += liboconfig
4 endif
5 if BUILD_WITH_OWN_LIBOPING
6 SUBDIRS += liboping
7 endif
8
9 if COMPILER_IS_GCC
10 AM_CFLAGS = -Wall -Werror
11 endif
12
13 sbin_PROGRAMS = collectd
14 bin_PROGRAMS = collectd-nagios
15
16 collectd_SOURCES = collectd.c collectd.h \
17                    utils_avltree.c utils_avltree.h \
18                    utils_mount.c utils_mount.h \
19                    utils_llist.c utils_llist.h \
20                    utils_ignorelist.c utils_ignorelist.h \
21                    common.c common.h \
22                    plugin.c plugin.h \
23                    configfile.c configfile.h \
24                    types_list.c types_list.h
25 collectd_CPPFLAGS = $(LTDLINCL)
26 collectd_CPPFLAGS += -DPREFIX='"${prefix}"'
27 collectd_CPPFLAGS += -DCONFIGFILE='"${sysconfdir}/${PACKAGE_NAME}.conf"'
28 collectd_CPPFLAGS += -DLOCALSTATEDIR='"${localstatedir}"'
29 collectd_CPPFLAGS += -DPKGLOCALSTATEDIR='"${localstatedir}/lib/${PACKAGE_NAME}"'
30 if BUILD_FEATURE_DAEMON
31 collectd_CPPFLAGS += -DPIDFILE='"${localstatedir}/run/${PACKAGE_NAME}.pid"'
32 endif
33 collectd_CPPFLAGS += -DPLUGINDIR='"${pkglibdir}"'
34
35 # Link to these libraries..
36 collectd_LDFLAGS = -export-dynamic
37 if BUILD_WITH_LIBRT
38 collectd_LDFLAGS += -lrt
39 endif
40 if BUILD_WITH_LIBSOCKET
41 collectd_LDFLAGS += -lsocket
42 endif
43 if BUILD_WITH_LIBRESOLV
44 collectd_LDFLAGS += -lresolv
45 endif
46 if BUILD_WITH_LIBPTHREAD
47 collectd_LDFLAGS += -lpthread
48 endif
49 if BUILD_WITH_LIBKSTAT
50 collectd_LDFLAGS += -lkstat
51 endif
52 if BUILD_WITH_LIBDEVINFO
53 collectd_LDFLAGS += -ldevinfo
54 endif
55
56 if BUILD_WITH_LIBSTATGRAB
57 if BUILD_WITH_LIBKVM
58 collectd_LDFLAGS += -lkvm
59 endif
60 if BUILD_WITH_LIBDEVSTAT
61 collectd_LDFLAGS += -ldevstat
62 endif
63 collectd_LDFLAGS += -lstatgrab
64 endif
65
66
67 collectd_LDADD =
68 collectd_DEPENDENCIES =
69 if BUILD_WITH_OWN_LIBOCONFIG
70 collectd_LDADD += $(LIBLTDL) liboconfig/liboconfig.la
71 collectd_DEPENDENCIES += $(LIBLTDL) liboconfig/liboconfig.la
72 else
73 collectd_LDFLAGS += -loconfig
74 endif
75
76 collectd_nagios_SOURCES = collectd-nagios.c
77 collectd_nagios_LDFLAGS =
78 if BUILD_WITH_LIBSOCKET
79 collectd_nagios_LDFLAGS += -lsocket
80 endif
81
82 pkglib_LTLIBRARIES = 
83
84 if BUILD_PLUGIN_APACHE
85 pkglib_LTLIBRARIES += apache.la
86 apache_la_SOURCES = apache.c
87 apache_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBCURL_LIBS)
88 collectd_LDADD += "-dlopen" apache.la
89 collectd_DEPENDENCIES += apache.la
90 endif
91
92 if BUILD_PLUGIN_APCUPS
93 pkglib_LTLIBRARIES += apcups.la
94 apcups_la_SOURCES = apcups.c
95 apcups_la_LDFLAGS = -module -avoid-version
96 if BUILD_WITH_LIBSOCKET
97 apcups_la_LDFLAGS += -lsocket
98 endif
99 collectd_LDADD += "-dlopen" apcups.la
100 collectd_DEPENDENCIES += apcups.la
101 endif
102
103 if BUILD_PLUGIN_APPLE_SENSORS
104 pkglib_LTLIBRARIES += apple_sensors.la
105 apple_sensors_la_SOURCES = apple_sensors.c
106 apple_sensors_la_LDFLAGS = -module -avoid-version -lIOKit
107 collectd_LDADD += "-dlopen" apple_sensors.la
108 collectd_DEPENDENCIES += apple_sensors.la
109 endif
110
111 if BUILD_PLUGIN_BATTERY
112 pkglib_LTLIBRARIES += battery.la
113 battery_la_SOURCES = battery.c
114 battery_la_LDFLAGS = -module -avoid-version
115 if BUILD_WITH_LIBIOKIT
116 battery_la_LDFLAGS += -lIOKit
117 endif
118 collectd_LDADD += "-dlopen" battery.la
119 collectd_DEPENDENCIES += battery.la
120 endif
121
122 if BUILD_PLUGIN_CPU
123 pkglib_LTLIBRARIES += cpu.la
124 cpu_la_SOURCES = cpu.c
125 cpu_la_LDFLAGS = -module -avoid-version
126 if BUILD_WITH_LIBKSTAT
127 cpu_la_LDFLAGS += -lkstat
128 endif
129 if BUILD_WITH_LIBDEVINFO
130 cpu_la_LDFLAGS += -ldevinfo
131 endif
132 collectd_LDADD += "-dlopen" cpu.la
133 collectd_DEPENDENCIES += cpu.la
134 endif
135
136 if BUILD_PLUGIN_CPUFREQ
137 pkglib_LTLIBRARIES += cpufreq.la
138 cpufreq_la_SOURCES = cpufreq.c
139 cpufreq_la_LDFLAGS = -module -avoid-version
140 collectd_LDADD += "-dlopen" cpufreq.la
141 collectd_DEPENDENCIES += cpufreq.la
142 endif
143
144 if BUILD_PLUGIN_CSV
145 pkglib_LTLIBRARIES += csv.la
146 csv_la_SOURCES = csv.c
147 csv_la_LDFLAGS = -module -avoid-version
148 collectd_LDADD += "-dlopen" csv.la
149 collectd_DEPENDENCIES += csv.la
150 endif
151
152 if BUILD_PLUGIN_DF
153 pkglib_LTLIBRARIES += df.la
154 df_la_SOURCES = df.c
155 df_la_LDFLAGS = -module -avoid-version
156 collectd_LDADD += "-dlopen" df.la
157 collectd_DEPENDENCIES += df.la
158 endif
159
160 if BUILD_PLUGIN_DISK
161 pkglib_LTLIBRARIES += disk.la
162 disk_la_SOURCES = disk.c
163 disk_la_LDFLAGS = -module -avoid-version
164 if BUILD_WITH_LIBKSTAT
165 disk_la_LDFLAGS += -lkstat
166 endif
167 if BUILD_WITH_LIBDEVINFO
168 disk_la_LDFLAGS += -ldevinfo
169 endif
170 if BUILD_WITH_LIBIOKIT
171 disk_la_LDFLAGS += -lIOKit
172 endif
173 collectd_LDADD += "-dlopen" disk.la
174 collectd_DEPENDENCIES += disk.la
175 endif
176
177 if BUILD_PLUGIN_DNS
178 pkglib_LTLIBRARIES += dns.la
179 dns_la_SOURCES = dns.c utils_dns.c utils_dns.h
180 dns_la_LDFLAGS = -module -avoid-version -lpcap -lpthread
181 collectd_LDADD += "-dlopen" dns.la
182 collectd_DEPENDENCIES += dns.la
183 endif
184
185 if BUILD_PLUGIN_EMAIL
186 pkglib_LTLIBRARIES += email.la
187 email_la_SOURCES = email.c
188 email_la_LDFLAGS = -module -avoid-version
189 if BUILD_WITH_LIBPTHREAD
190 email_la_LDFLAGS += -lpthread
191 endif
192 collectd_LDADD += "-dlopen" email.la
193 collectd_DEPENDENCIES += email.la
194 endif
195
196 if BUILD_PLUGIN_ENTROPY
197 pkglib_LTLIBRARIES += entropy.la
198 entropy_la_SOURCES = entropy.c
199 entropy_la_LDFLAGS = -module -avoid-version
200 collectd_LDADD += "-dlopen" entropy.la
201 collectd_DEPENDENCIES += entropy.la
202 endif
203
204 if BUILD_PLUGIN_EXEC
205 pkglib_LTLIBRARIES += exec.la
206 exec_la_SOURCES = exec.c
207 exec_la_LDFLAGS = -module -avoid-version
208 if BUILD_WITH_LIBPTHREAD
209 exec_la_LDFLAGS += -lpthread
210 endif
211 collectd_LDADD += "-dlopen" exec.la
212 collectd_DEPENDENCIES += exec.la
213 endif
214
215 if BUILD_PLUGIN_HDDTEMP
216 pkglib_LTLIBRARIES += hddtemp.la
217 hddtemp_la_SOURCES = hddtemp.c
218 hddtemp_la_LDFLAGS = -module -avoid-version
219 if BUILD_WITH_LIBSOCKET
220 hddtemp_la_LDFLAGS += -lsocket
221 endif
222 collectd_LDADD += "-dlopen" hddtemp.la
223 collectd_DEPENDENCIES += hddtemp.la
224 endif
225
226 if BUILD_PLUGIN_INTERFACE
227 pkglib_LTLIBRARIES += interface.la
228 interface_la_SOURCES = interface.c
229 interface_la_LDFLAGS = -module -avoid-version
230 collectd_LDADD += "-dlopen" interface.la
231 collectd_DEPENDENCIES += interface.la
232 if BUILD_WITH_LIBKSTAT
233 interface_la_LDFLAGS += -lkstat
234 endif
235 if BUILD_WITH_LIBDEVINFO
236 interface_la_LDFLAGS += -ldevinfo
237 endif
238 if BUILD_WITH_LIBSTATGRAB
239 if BUILD_WITH_LIBKVM
240 interface_la_LDFLAGS += -lkvm
241 endif
242 if BUILD_WITH_LIBDEVSTAT
243 interface_la_LDFLAGS += -ldevstat
244 endif
245 interface_la_LDFLAGS += -lstatgrab
246 endif
247 endif
248
249 if BUILD_PLUGIN_IPTABLES
250 pkglib_LTLIBRARIES += iptables.la
251 iptables_la_SOURCES = iptables.c
252 iptables_la_LDFLAGS = -module -avoid-version -liptc
253 collectd_LDADD += "-dlopen" iptables.la
254 collectd_DEPENDENCIES += iptables.la
255 endif
256
257 if BUILD_PLUGIN_IRQ
258 pkglib_LTLIBRARIES += irq.la
259 irq_la_SOURCES = irq.c
260 irq_la_LDFLAGS = -module -avoid-version
261 collectd_LDADD += "-dlopen" irq.la
262 collectd_DEPENDENCIES += irq.la
263 endif
264
265 if BUILD_PLUGIN_LOAD
266 pkglib_LTLIBRARIES += load.la
267 load_la_SOURCES = load.c
268 load_la_LDFLAGS = -module -avoid-version
269 collectd_LDADD += "-dlopen" load.la
270 collectd_DEPENDENCIES += load.la
271 if BUILD_WITH_LIBSTATGRAB
272 if BUILD_WITH_LIBKVM
273 load_la_LDFLAGS += -lkvm
274 endif
275 if BUILD_WITH_LIBDEVSTAT
276 load_la_LDFLAGS += -ldevstat
277 endif
278 load_la_LDFLAGS += -lstatgrab
279 endif
280 endif
281
282 if BUILD_PLUGIN_LOGFILE
283 pkglib_LTLIBRARIES += logfile.la
284 logfile_la_SOURCES = logfile.c
285 logfile_la_LDFLAGS = -module -avoid-version
286 collectd_LDADD += "-dlopen" logfile.la
287 collectd_DEPENDENCIES += logfile.la
288 endif
289
290 if BUILD_PLUGIN_MBMON
291 pkglib_LTLIBRARIES += mbmon.la
292 mbmon_la_SOURCES = mbmon.c
293 mbmon_la_LDFLAGS = -module -avoid-version
294 if BUILD_WITH_LIBSOCKET
295 mbmon_la_LDFLAGS += -lsocket
296 endif
297 collectd_LDADD += "-dlopen" mbmon.la
298 collectd_DEPENDENCIES += mbmon.la
299 endif
300
301 if BUILD_PLUGIN_MEMORY
302 pkglib_LTLIBRARIES += memory.la
303 memory_la_SOURCES = memory.c
304 memory_la_LDFLAGS = -module -avoid-version
305 collectd_LDADD += "-dlopen" memory.la
306 collectd_DEPENDENCIES += memory.la
307 if BUILD_WITH_LIBKSTAT
308 memory_la_LDFLAGS += -lkstat
309 endif
310 if BUILD_WITH_LIBDEVINFO
311 memory_la_LDFLAGS += -ldevinfo
312 endif
313 if BUILD_WITH_LIBSTATGRAB
314 if BUILD_WITH_LIBKVM
315 memory_la_LDFLAGS += -lkvm
316 endif
317 if BUILD_WITH_LIBDEVSTAT
318 memory_la_LDFLAGS += -ldevstat
319 endif
320 memory_la_LDFLAGS += -lstatgrab
321 endif
322 endif
323
324 if BUILD_PLUGIN_MULTIMETER
325 pkglib_LTLIBRARIES += multimeter.la
326 multimeter_la_SOURCES = multimeter.c
327 multimeter_la_LDFLAGS = -module -avoid-version
328 collectd_LDADD += "-dlopen" multimeter.la
329 collectd_DEPENDENCIES += multimeter.la
330 endif
331
332 if BUILD_PLUGIN_MYSQL
333 pkglib_LTLIBRARIES += mysql.la
334 mysql_la_SOURCES = mysql.c
335 mysql_la_LDFLAGS = -module -avoid-version -lmysqlclient
336 collectd_LDADD += "-dlopen" mysql.la
337 collectd_DEPENDENCIES += mysql.la
338 endif
339
340 if BUILD_PLUGIN_NETWORK
341 pkglib_LTLIBRARIES += network.la
342 network_la_SOURCES = network.c network.h
343 network_la_LDFLAGS = -module -avoid-version
344 if BUILD_WITH_LIBSOCKET
345 network_la_LDFLAGS += -lsocket
346 endif
347 if BUILD_WITH_LIBPTHREAD
348 network_la_LDFLAGS += -lpthread
349 endif
350 collectd_LDADD += "-dlopen" network.la
351 collectd_DEPENDENCIES += network.la
352 endif
353
354 if BUILD_PLUGIN_NFS
355 pkglib_LTLIBRARIES += nfs.la
356 nfs_la_SOURCES = nfs.c
357 nfs_la_LDFLAGS = -module -avoid-version
358 collectd_LDADD += "-dlopen" nfs.la
359 collectd_DEPENDENCIES += nfs.la
360 endif
361
362 if BUILD_PLUGIN_NTPD
363 pkglib_LTLIBRARIES += ntpd.la
364 ntpd_la_SOURCES = ntpd.c
365 ntpd_la_LDFLAGS = -module -avoid-version
366 if BUILD_WITH_LIBSOCKET
367 ntpd_la_LDFLAGS += -lsocket
368 endif
369 collectd_LDADD += "-dlopen" ntpd.la
370 collectd_DEPENDENCIES += ntpd.la
371 endif
372
373 if BUILD_PLUGIN_NUT
374 pkglib_LTLIBRARIES += nut.la
375 nut_la_SOURCES = nut.c
376 nut_la_LDFLAGS = -module -avoid-version -lupsclient -lpthread
377 collectd_LDADD += "-dlopen" nut.la
378 collectd_DEPENDENCIES += nut.la
379 endif
380
381 if BUILD_PLUGIN_PERL
382 pkglib_LTLIBRARIES += perl.la
383 perl_la_SOURCES = perl.c
384 perl_la_CFLAGS  = $(AM_CFLAGS) \
385                   $(PERL_CFLAGS) \
386                   -DXS_VERSION=\"$(VERSION)\" -DVERSION=\"$(VERSION)\"
387 perl_la_LDFLAGS = -module -avoid-version \
388                   $(PERL_LDFLAGS)
389 collectd_LDADD += "-dlopen" perl.la
390 collectd_DEPENDENCIES += perl.la
391 endif
392
393 if BUILD_PLUGIN_PING
394 pkglib_LTLIBRARIES += ping.la
395 ping_la_SOURCES = ping.c
396 ping_la_LDFLAGS = -module -avoid-version
397 if BUILD_WITH_OWN_LIBOPING
398 ping_la_LIBADD  = liboping/liboping.la
399 ping_la_DEPENDENCIES = liboping/liboping.la
400 else
401 ping_la_LDFLAGS += -loping
402 endif
403 collectd_LDADD += "-dlopen" ping.la
404 collectd_DEPENDENCIES += ping.la
405 endif
406
407 if BUILD_PLUGIN_PROCESSES
408 pkglib_LTLIBRARIES += processes.la
409 processes_la_SOURCES = processes.c
410 processes_la_LDFLAGS = -module -avoid-version
411 collectd_LDADD += "-dlopen" processes.la
412 collectd_DEPENDENCIES += processes.la
413 endif
414
415 if BUILD_PLUGIN_RRDTOOL
416 pkglib_LTLIBRARIES += rrdtool.la
417 rrdtool_la_SOURCES = rrdtool.c
418 rrdtool_la_LDFLAGS = -module -avoid-version -lrrd
419 collectd_LDADD += "-dlopen" rrdtool.la
420 collectd_DEPENDENCIES += rrdtool.la
421 endif
422
423 if BUILD_PLUGIN_SENSORS
424 pkglib_LTLIBRARIES += sensors.la
425 sensors_la_SOURCES = sensors.c
426 sensors_la_LDFLAGS = -module -avoid-version
427 if BUILD_WITH_LM_SENSORS
428 sensors_la_LDFLAGS += -lsensors
429 endif
430 collectd_LDADD += "-dlopen" sensors.la
431 collectd_DEPENDENCIES += sensors.la
432 endif
433
434 if BUILD_PLUGIN_SERIAL
435 pkglib_LTLIBRARIES += serial.la
436 serial_la_SOURCES = serial.c
437 serial_la_LDFLAGS = -module -avoid-version
438 collectd_LDADD += "-dlopen" serial.la
439 collectd_DEPENDENCIES += serial.la
440 endif
441
442 if BUILD_PLUGIN_SNMP
443 pkglib_LTLIBRARIES += snmp.la
444 snmp_la_SOURCES = snmp.c
445 snmp_la_LDFLAGS = -module -avoid-version
446 if BUILD_WITH_LIBNETSNMP
447 snmp_la_LDFLAGS += -lnetsnmp
448 endif
449 if BUILD_WITH_LIBPTHREAD
450 snmp_la_LDFLAGS += -lpthread
451 endif
452 collectd_LDADD += "-dlopen" snmp.la
453 collectd_DEPENDENCIES += snmp.la
454 endif
455
456 if BUILD_PLUGIN_SWAP
457 pkglib_LTLIBRARIES += swap.la
458 swap_la_SOURCES = swap.c
459 swap_la_LDFLAGS = -module -avoid-version
460 collectd_LDADD += "-dlopen" swap.la
461 collectd_DEPENDENCIES += swap.la
462 if BUILD_WITH_LIBKSTAT
463 swap_la_LDFLAGS += -lkstat
464 endif
465 if BUILD_WITH_LIBDEVINFO
466 swap_la_LDFLAGS += -ldevinfo
467 endif
468 if BUILD_WITH_LIBKVM
469 swap_la_LDFLAGS += -lkvm
470 endif
471 if BUILD_WITH_LIBSTATGRAB
472 if BUILD_WITH_LIBDEVSTAT
473 swap_la_LDFLAGS += -ldevstat
474 endif
475 swap_la_LDFLAGS += -lstatgrab
476 endif
477 endif
478
479 if BUILD_PLUGIN_SYSLOG
480 pkglib_LTLIBRARIES += syslog.la
481 syslog_la_SOURCES = syslog.c
482 syslog_la_LDFLAGS = -module -avoid-version
483 collectd_LDADD += "-dlopen" syslog.la
484 collectd_DEPENDENCIES += syslog.la
485 endif
486
487 if BUILD_PLUGIN_TAPE
488 pkglib_LTLIBRARIES += tape.la
489 tape_la_SOURCES = tape.c
490 tape_la_LDFLAGS = -module -avoid-version -lkstat -ldevinfo
491 collectd_LDADD += "-dlopen" tape.la
492 collectd_DEPENDENCIES += tape.la
493 endif
494
495 if BUILD_PLUGIN_UNIXSOCK
496 pkglib_LTLIBRARIES += unixsock.la
497 unixsock_la_SOURCES = unixsock.c
498 unixsock_la_CPPFLAGS = -DLOCALSTATEDIR='"${localstatedir}"'
499 unixsock_la_LDFLAGS = -module -avoid-version -lpthread
500 collectd_LDADD += "-dlopen" unixsock.la
501 collectd_DEPENDENCIES += unixsock.la
502 endif
503
504 if BUILD_PLUGIN_USERS
505 pkglib_LTLIBRARIES += users.la
506 users_la_SOURCES = users.c
507 users_la_LDFLAGS = -module -avoid-version
508 collectd_LDADD += "-dlopen" users.la
509 collectd_DEPENDENCIES += users.la
510 endif
511
512 if BUILD_PLUGIN_VSERVER
513 pkglib_LTLIBRARIES += vserver.la
514 vserver_la_SOURCES = vserver.c
515 vserver_la_LDFLAGS = -module -avoid-version
516 collectd_LDADD += "-dlopen" vserver.la
517 collectd_DEPENDENCIES += vserver.la
518 endif
519
520 if BUILD_PLUGIN_WIRELESS
521 pkglib_LTLIBRARIES += wireless.la
522 wireless_la_SOURCES = wireless.c
523 wireless_la_LDFLAGS = -module -avoid-version
524 collectd_LDADD += "-dlopen" wireless.la
525 collectd_DEPENDENCIES += wireless.la
526 endif
527
528 if BUILD_PLUGIN_XMMS
529 pkglib_LTLIBRARIES += xmms.la
530 xmms_la_SOURCES = xmms.c
531 xmms_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBXMMS_CFLAGS)
532 xmms_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBXMMS_LIBS)
533 collectd_LDADD += "-dlopen" xmms.la
534 collectd_DEPENDENCIES += xmms.la
535 endif
536
537
538 dist_man_MANS = collectd.1 collectd-nagios.1 collectd.conf.5 \
539                 collectd-email.5 collectd-exec.5 collectd-perl.5 \
540                 collectd-snmp.5 collectd-unixsock.5
541
542 #collectd_1_SOURCES = collectd.pod
543
544 EXTRA_DIST = types.db
545
546 .pod.1:
547         pod2man --release=$(VERSION) --center=$(PACKAGE) $< >$@
548
549 .pod.5:
550         pod2man --section=5 --release=$(VERSION) --center=$(PACKAGE) $< >$@
551
552 install-exec-hook:
553         $(mkinstalldirs) $(DESTDIR)$(sysconfdir)
554         if test -e $(DESTDIR)$(sysconfdir)/collectd.conf; \
555         then \
556                 $(INSTALL) -m 0640 collectd.conf $(DESTDIR)$(sysconfdir)/collectd.conf.pkg-orig; \
557         else \
558                 $(INSTALL) -m 0640 collectd.conf $(DESTDIR)$(sysconfdir)/collectd.conf; \
559         fi; \
560         cp -f $(srcdir)/types.db $(DESTDIR)$(pkglibdir)/;