]> arthur.barton.de Git - netdata.git/blob - src/Makefile.am
314f600fe2ea1539539997fcea38448e6f2e6ddf
[netdata.git] / src / Makefile.am
1 #
2 # Copyright (C) 2015 Alon Bar-Lev <alon.barlev@gmail.com>
3 #
4 MAINTAINERCLEANFILES= $(srcdir)/Makefile.in
5
6 AM_CPPFLAGS = \
7         -DVARLIB_DIR="\"$(varlibdir)\"" \
8         -DCACHE_DIR="\"$(cachedir)\"" \
9         -DCONFIG_DIR="\"$(configdir)\"" \
10         -DLOG_DIR="\"$(logdir)\"" \
11         -DPLUGINS_DIR="\"$(pluginsdir)\"" \
12         -DRUN_DIR="\"$(localstatedir)/run/netdata\"" \
13         -DWEB_DIR="\"$(webdir)\"" \
14         $(NULL)
15 AM_CFLAGS = \
16         $(OPTIONAL_MATH_CFLAGS) \
17         $(OPTIONAL_NFACCT_CLFAGS) \
18         $(OPTIONAL_ZLIB_CFLAGS) \
19         $(OPTIONAL_UUID_CFLAGS) \
20         $(NULL)
21
22 sbin_PROGRAMS = netdata
23 dist_cache_DATA = .keep
24 dist_varlib_DATA = .keep
25 dist_registry_DATA = .keep
26 dist_log_DATA = .keep
27 if !MACOS
28 plugins_PROGRAMS = apps.plugin
29 endif
30
31 netdata_SOURCES = \
32         appconfig.c appconfig.h \
33         avl.c avl.h \
34         backends.c backends.h \
35         clocks.c clocks.h \
36         common.c common.h \
37         daemon.c daemon.h \
38         dictionary.c dictionary.h \
39         eval.c eval.h \
40         global_statistics.c global_statistics.h \
41         health.c health.h \
42         inlined.h \
43         log.c log.h \
44         main.c main.h \
45         plugin_checks.c plugin_checks.h \
46         plugin_idlejitter.c plugin_idlejitter.h \
47         plugin_nfacct.c plugin_nfacct.h \
48         plugin_tc.c plugin_tc.h \
49         plugins_d.c plugins_d.h \
50         popen.c popen.h \
51         socket.c socket.h \
52         simple_pattern.c simple_pattern.h \
53         sys_fs_cgroup.c \
54         sys_devices_system_edac_mc.c \
55         sys_devices_system_node.c \
56         procfile.c procfile.h \
57         proc_self_mountinfo.c proc_self_mountinfo.h \
58         registry.c registry.h \
59         registry_internals.c registry_internals.h \
60         registry_url.c registry_url.h \
61         registry_person.c registry_person.h \
62         registry_machine.c registry_machine.h \
63         registry_init.c \
64         registry_db.c \
65         registry_log.c \
66         rrd.c rrd.h \
67         rrd2json.c rrd2json.h \
68         storage_number.c storage_number.h \
69         unit_test.c unit_test.h \
70         url.c url.h \
71         web_buffer.c web_buffer.h \
72         web_buffer_svg.c web_buffer_svg.h \
73         web_client.c web_client.h \
74         web_server.c web_server.h \
75         $(NULL)
76
77 if FREEBSD
78 netdata_SOURCES += \
79         plugin_freebsd.c plugin_freebsd.h \
80         freebsd_sysctl.c \
81         $(NULL)
82 else
83 if MACOS
84 netdata_SOURCES += \
85         plugin_macos.c plugin_macos.h \
86         macos_sysctl.c \
87         macos_mach_smi.c \
88         macos_fw.c \
89         $(NULL)
90 else
91 netdata_SOURCES += \
92         ipc.c ipc.h \
93         plugin_proc.c plugin_proc.h \
94         plugin_proc_diskspace.c plugin_proc_diskspace.h \
95         proc_diskstats.c \
96         proc_interrupts.c \
97         proc_softirqs.c \
98         proc_loadavg.c \
99         proc_meminfo.c \
100         proc_net_dev.c \
101         proc_net_ip_vs_stats.c \
102         proc_net_netstat.c \
103         proc_net_rpc_nfs.c \
104         proc_net_rpc_nfsd.c \
105         proc_net_snmp.c \
106         proc_net_snmp6.c \
107         proc_net_softnet_stat.c \
108         proc_net_stat_conntrack.c \
109         proc_net_stat_synproxy.c \
110         proc_stat.c \
111         proc_sys_kernel_random_entropy_avail.c \
112         proc_vmstat.c \
113         proc_uptime.c \
114         sys_kernel_mm_ksm.c \
115         $(NULL)
116 endif
117 endif
118
119 netdata_LDADD = \
120         $(OPTIONAL_MATH_LIBS) \
121         $(OPTIONAL_NFACCT_LIBS) \
122         $(OPTIONAL_ZLIB_LIBS) \
123         $(OPTIONAL_UUID_LIBS) \
124         $(NULL)
125
126 apps_plugin_SOURCES = \
127         apps_plugin.c \
128         avl.c avl.h \
129         clocks.c clocks.h \
130         common.c common.h \
131         inlined.h \
132         log.c log.h \
133         procfile.c procfile.h \
134         web_buffer.c web_buffer.h \
135         $(NULL)
136
137 install-data-hook:
138         if [ `id -u` == 0 ]; then \
139                 chown root '$(DESTDIR)$(pluginsdir)/apps.plugin' && \
140                 chmod 0755 '$(DESTDIR)$(pluginsdir)/apps.plugin' && \
141                 ( setcap cap_dac_read_search,cap_sys_ptrace+ep '$(DESTDIR)$(pluginsdir)/apps.plugin' || \
142                   chmod 4755 '$(DESTDIR)$(pluginsdir)/apps.plugin' ); \
143         else \
144                 echo; \
145                 echo "ATTENTION"; \
146                 echo; \
147                 echo "$(pluginsdir)/apps.plugin requires escalated capabilities:"; \
148                 echo "sudo chown root '$(DESTDIR)$(pluginsdir)/apps.plugin'"; \
149                 echo "sudo chmod 0755 '$(DESTDIR)$(pluginsdir)/apps.plugin'"; \
150                 echo "sudo setcap cap_dac_read_search,cap_sys_ptrace+ep '$(DESTDIR)$(pluginsdir)/apps.plugin'"; \
151                 echo; \
152         fi