]> arthur.barton.de Git - netdata.git/blob - src/Makefile.am
b5694fcaf4eb75892a6f24488d8c8da1117bc39d
[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         adaptive_resortable_list.c adaptive_resortable_list.h \
34         avl.c avl.h \
35         backends.c backends.h \
36         clocks.c clocks.h \
37         common.c common.h \
38         daemon.c daemon.h \
39         dictionary.c dictionary.h \
40         eval.c eval.h \
41         global_statistics.c global_statistics.h \
42         health.c health.h health_log.c health_config.c health_json.c \
43         inlined.h \
44         log.c log.h \
45         main.c main.h \
46         plugin_checks.c plugin_checks.h \
47         plugin_idlejitter.c plugin_idlejitter.h \
48         plugin_nfacct.c plugin_nfacct.h \
49         plugin_tc.c plugin_tc.h \
50         plugins_d.c plugins_d.h \
51         popen.c popen.h \
52         socket.c socket.h \
53         simple_pattern.c simple_pattern.h \
54         sys_fs_cgroup.c \
55         sys_devices_system_edac_mc.c \
56         sys_devices_system_node.c \
57         procfile.c procfile.h \
58         proc_self_mountinfo.c proc_self_mountinfo.h \
59         registry.c registry.h \
60         registry_internals.c registry_internals.h \
61         registry_url.c registry_url.h \
62         registry_person.c registry_person.h \
63         registry_machine.c registry_machine.h \
64         registry_init.c \
65         registry_db.c \
66         registry_log.c \
67         rrd.c rrd.h \
68         rrddim.c \
69         rrdfamily.c \
70         rrdhost.c \
71         rrdset.c \
72         rrd2json.c rrd2json.h \
73         storage_number.c storage_number.h \
74         unit_test.c unit_test.h \
75         url.c url.h \
76         web_buffer.c web_buffer.h \
77         web_buffer_svg.c web_buffer_svg.h \
78         web_client.c web_client.h \
79         web_server.c web_server.h \
80         $(NULL)
81
82 if FREEBSD
83 netdata_SOURCES += \
84         plugin_freebsd.c plugin_freebsd.h \
85         freebsd_sysctl.c \
86         $(NULL)
87 else
88 if MACOS
89 netdata_SOURCES += \
90         plugin_macos.c plugin_macos.h \
91         macos_sysctl.c \
92         macos_mach_smi.c \
93         macos_fw.c \
94         $(NULL)
95 else
96 netdata_SOURCES += \
97         ipc.c ipc.h \
98         plugin_proc.c plugin_proc.h \
99         plugin_proc_diskspace.c plugin_proc_diskspace.h \
100         proc_diskstats.c \
101         proc_interrupts.c \
102         proc_softirqs.c \
103         proc_loadavg.c \
104         proc_meminfo.c \
105         proc_net_dev.c \
106         proc_net_ip_vs_stats.c \
107         proc_net_netstat.c \
108         proc_net_rpc_nfs.c \
109         proc_net_rpc_nfsd.c \
110         proc_net_snmp.c \
111         proc_net_snmp6.c \
112         proc_net_softnet_stat.c \
113         proc_net_stat_conntrack.c \
114         proc_net_stat_synproxy.c \
115         proc_stat.c \
116         proc_sys_kernel_random_entropy_avail.c \
117         proc_vmstat.c \
118         proc_uptime.c \
119         sys_kernel_mm_ksm.c \
120         $(NULL)
121 endif
122 endif
123
124 netdata_LDADD = \
125         $(OPTIONAL_MATH_LIBS) \
126         $(OPTIONAL_NFACCT_LIBS) \
127         $(OPTIONAL_ZLIB_LIBS) \
128         $(OPTIONAL_UUID_LIBS) \
129         $(NULL)
130
131 apps_plugin_SOURCES = \
132         apps_plugin.c \
133         avl.c avl.h \
134         clocks.c clocks.h \
135         common.c common.h \
136         inlined.h \
137         log.c log.h \
138         procfile.c procfile.h \
139         web_buffer.c web_buffer.h \
140         $(NULL)
141
142 if FREEBSD
143 apps_plugin_SOURCES += \
144        plugin_freebsd.h \
145        $(NULL)
146 endif
147
148 apps_plugin_LDADD = \
149         $(OPTIONAL_MATH_LIBS) \
150         $(OPTIONAL_CAP_LIBS) \
151         $(NULL)
152
153 install-data-hook:
154         if [ `id -u` == 0 ]; then \
155                 chown root '$(DESTDIR)$(pluginsdir)/apps.plugin' && \
156                 chmod 0755 '$(DESTDIR)$(pluginsdir)/apps.plugin' && \
157                 ( setcap cap_dac_read_search,cap_sys_ptrace+ep '$(DESTDIR)$(pluginsdir)/apps.plugin' || \
158                   chmod 4755 '$(DESTDIR)$(pluginsdir)/apps.plugin' ); \
159         else \
160                 echo; \
161                 echo "ATTENTION"; \
162                 echo; \
163                 echo "$(pluginsdir)/apps.plugin requires escalated capabilities:"; \
164                 echo "sudo chown root '$(DESTDIR)$(pluginsdir)/apps.plugin'"; \
165                 echo "sudo chmod 0755 '$(DESTDIR)$(pluginsdir)/apps.plugin'"; \
166                 echo "sudo setcap cap_dac_read_search,cap_sys_ptrace+ep '$(DESTDIR)$(pluginsdir)/apps.plugin'"; \
167                 echo; \
168         fi