Makefile.am 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984
  1. # SPDX-License-Identifier: GPL-3.0-or-later
  2. AUTOMAKE_OPTIONS = foreign subdir-objects 1.11
  3. ACLOCAL_AMFLAGS = -I build/m4
  4. MAINTAINERCLEANFILES = \
  5. config.log config.status \
  6. $(srcdir)/Makefile.in \
  7. $(srcdir)/config.h.in $(srcdir)/config.h.in~ $(srcdir)/configure \
  8. $(srcdir)/install-sh $(srcdir)/ltmain.sh $(srcdir)/missing \
  9. $(srcdir)/compile $(srcdir)/depcomp $(srcdir)/aclocal.m4 \
  10. $(srcdir)/config.guess $(srcdir)/config.sub \
  11. $(srcdir)/m4/ltsugar.m4 $(srcdir)/m4/libtool.m4 \
  12. $(srcdir)/m4/ltversion.m4 $(srcdir)/m4/lt~obsolete.m4 \
  13. $(srcdir)/m4/ltoptions.m4 \
  14. $(srcdir)/pkcs11-helper.spec $(srcdir)/config-w32-vc.h
  15. CLEANFILES = \
  16. $(srcdir)/$(distdir).tar.gz
  17. EXTRA_DIST = \
  18. .gitignore \
  19. .csslintrc \
  20. .eslintignore \
  21. .eslintrc \
  22. .github/CODEOWNERS \
  23. build/m4/jemalloc.m4 \
  24. build/m4/ax_c___atomic.m4 \
  25. build/m4/ax_check_enable_debug.m4 \
  26. build/m4/ax_c_mallinfo.m4 \
  27. build/m4/ax_gcc_func_attribute.m4 \
  28. build/m4/ax_check_compile_flag.m4 \
  29. build/m4/ax_c_statement_expressions.m4 \
  30. build/m4/ax_pthread.m4 \
  31. build/m4/ax_c_lto.m4 \
  32. build/m4/ax_c_mallopt.m4 \
  33. build/m4/tcmalloc.m4 \
  34. build/m4/ax_c__generic.m4 \
  35. README.md \
  36. CONTRIBUTORS.md \
  37. CODE_OF_CONDUCT.md \
  38. LICENSE \
  39. REDISTRIBUTED.md \
  40. CONTRIBUTING.md \
  41. $(NULL)
  42. SUBDIRS = \
  43. diagrams \
  44. system \
  45. tests \
  46. $(NULL)
  47. dist_noinst_DATA = \
  48. CHANGELOG.md \
  49. cppcheck.sh \
  50. configs.signatures \
  51. contrib \
  52. netdata.cppcheck \
  53. netdata.spec \
  54. package.json \
  55. docs \
  56. packaging/version \
  57. packaging/dashboard.version \
  58. packaging/dashboard.checksums \
  59. packaging/go.d.version \
  60. packaging/go.d.checksums \
  61. packaging/jsonc.version \
  62. packaging/jsonc.checksums \
  63. packaging/libwebsockets.version \
  64. packaging/libwebsockets.checksums \
  65. packaging/mosquitto.version \
  66. packaging/mosquitto.checksums \
  67. packaging/bundle-dashboard.sh \
  68. packaging/bundle-mosquitto.sh \
  69. packaging/check-kernel-config.sh \
  70. packaging/ebpf.checksums \
  71. packaging/ebpf.version \
  72. packaging/bundle-lws.sh \
  73. packaging/installer/README.md \
  74. packaging/installer/UNINSTALL.md \
  75. packaging/installer/UPDATE.md \
  76. $(NULL)
  77. # until integrated within build
  78. # should be proper init.d/openrc/systemd usable
  79. dist_noinst_SCRIPTS = \
  80. coverity-scan.sh \
  81. packaging/installer/netdata-updater.sh \
  82. packaging/installer/netdata-uninstaller.sh \
  83. packaging/installer/kickstart.sh \
  84. packaging/installer/kickstart-static64.sh \
  85. packaging/installer/functions.sh \
  86. netdata-installer.sh
  87. $(NULL)
  88. # -----------------------------------------------------------------------------
  89. # Compile netdata binaries
  90. SUBDIRS += \
  91. backends \
  92. collectors \
  93. daemon \
  94. database \
  95. exporting \
  96. health \
  97. libnetdata \
  98. registry \
  99. streaming \
  100. web \
  101. claim \
  102. parser \
  103. aclk \
  104. spawn \
  105. $(NULL)
  106. AM_CFLAGS = \
  107. $(OPTIONAL_MATH_CFLAGS) \
  108. $(OPTIONAL_NFACCT_CFLAGS) \
  109. $(OPTIONAL_ZLIB_CFLAGS) \
  110. $(OPTIONAL_UUID_CFLAGS) \
  111. $(OPTIONAL_MQTT_CFLAGS) \
  112. $(OPTIONAL_LIBCAP_LIBS) \
  113. $(OPTIONAL_IPMIMONITORING_CFLAGS) \
  114. $(OPTIONAL_CUPS_CFLAGS) \
  115. $(OPTIONAL_XENSTAT_CFLAGS) \
  116. $(NULL)
  117. sbin_PROGRAMS =
  118. plugins_PROGRAMS =
  119. LIBNETDATA_FILES = \
  120. libnetdata/adaptive_resortable_list/adaptive_resortable_list.c \
  121. libnetdata/adaptive_resortable_list/adaptive_resortable_list.h \
  122. libnetdata/config/appconfig.c \
  123. libnetdata/config/appconfig.h \
  124. libnetdata/avl/avl.c \
  125. libnetdata/avl/avl.h \
  126. libnetdata/buffer/buffer.c \
  127. libnetdata/buffer/buffer.h \
  128. libnetdata/circular_buffer/circular_buffer.c \
  129. libnetdata/circular_buffer/circular_buffer.h \
  130. libnetdata/clocks/clocks.c \
  131. libnetdata/clocks/clocks.h \
  132. libnetdata/dictionary/dictionary.c \
  133. libnetdata/dictionary/dictionary.h \
  134. libnetdata/ebpf/ebpf.c \
  135. libnetdata/ebpf/ebpf.h \
  136. libnetdata/eval/eval.c \
  137. libnetdata/eval/eval.h \
  138. libnetdata/inlined.h \
  139. libnetdata/libnetdata.c \
  140. libnetdata/libnetdata.h \
  141. libnetdata/required_dummies.h \
  142. libnetdata/locks/locks.c \
  143. libnetdata/locks/locks.h \
  144. libnetdata/log/log.c \
  145. libnetdata/log/log.h \
  146. libnetdata/popen/popen.c \
  147. libnetdata/popen/popen.h \
  148. libnetdata/procfile/procfile.c \
  149. libnetdata/procfile/procfile.h \
  150. libnetdata/os.c \
  151. libnetdata/os.h \
  152. libnetdata/simple_pattern/simple_pattern.c \
  153. libnetdata/simple_pattern/simple_pattern.h \
  154. libnetdata/socket/socket.c \
  155. libnetdata/socket/socket.h \
  156. libnetdata/socket/security.c \
  157. libnetdata/socket/security.h \
  158. libnetdata/statistical/statistical.c \
  159. libnetdata/statistical/statistical.h \
  160. libnetdata/storage_number/storage_number.c \
  161. libnetdata/storage_number/storage_number.h \
  162. libnetdata/threads/threads.c \
  163. libnetdata/threads/threads.h \
  164. libnetdata/url/url.c \
  165. libnetdata/url/url.h \
  166. libnetdata/json/json.c \
  167. libnetdata/json/json.h \
  168. libnetdata/json/jsmn.c \
  169. libnetdata/json/jsmn.h \
  170. libnetdata/health/health.c \
  171. libnetdata/health/health.h \
  172. libnetdata/string/utf8.h \
  173. $(NULL)
  174. APPS_PLUGIN_FILES = \
  175. collectors/apps.plugin/apps_plugin.c \
  176. $(LIBNETDATA_FILES) \
  177. $(NULL)
  178. CHECKS_PLUGIN_FILES = \
  179. collectors/checks.plugin/plugin_checks.c \
  180. collectors/checks.plugin/plugin_checks.h \
  181. $(NULL)
  182. FREEBSD_PLUGIN_FILES = \
  183. collectors/freebsd.plugin/plugin_freebsd.c \
  184. collectors/freebsd.plugin/plugin_freebsd.h \
  185. collectors/freebsd.plugin/freebsd_sysctl.c \
  186. collectors/freebsd.plugin/freebsd_getmntinfo.c \
  187. collectors/freebsd.plugin/freebsd_getifaddrs.c \
  188. collectors/freebsd.plugin/freebsd_devstat.c \
  189. collectors/freebsd.plugin/freebsd_kstat_zfs.c \
  190. collectors/freebsd.plugin/freebsd_ipfw.c \
  191. collectors/proc.plugin/zfs_common.c \
  192. collectors/proc.plugin/zfs_common.h \
  193. $(NULL)
  194. HEALTH_PLUGIN_FILES = \
  195. health/health.c \
  196. health/health.h \
  197. health/health_config.c \
  198. health/health_json.c \
  199. health/health_log.c \
  200. $(NULL)
  201. IDLEJITTER_PLUGIN_FILES = \
  202. collectors/idlejitter.plugin/plugin_idlejitter.c \
  203. collectors/idlejitter.plugin/plugin_idlejitter.h \
  204. $(NULL)
  205. CGROUPS_PLUGIN_FILES = \
  206. collectors/cgroups.plugin/sys_fs_cgroup.c \
  207. collectors/cgroups.plugin/sys_fs_cgroup.h \
  208. $(NULL)
  209. CGROUP_NETWORK_FILES = \
  210. collectors/cgroups.plugin/cgroup-network.c \
  211. $(LIBNETDATA_FILES) \
  212. $(NULL)
  213. DISKSPACE_PLUGIN_FILES = \
  214. collectors/diskspace.plugin/plugin_diskspace.h \
  215. collectors/diskspace.plugin/plugin_diskspace.c \
  216. $(NULL)
  217. FREEIPMI_PLUGIN_FILES = \
  218. collectors/freeipmi.plugin/freeipmi_plugin.c \
  219. $(LIBNETDATA_FILES) \
  220. $(NULL)
  221. CUPS_PLUGIN_FILES = \
  222. collectors/cups.plugin/cups_plugin.c \
  223. $(LIBNETDATA_FILES) \
  224. $(NULL)
  225. NFACCT_PLUGIN_FILES = \
  226. collectors/nfacct.plugin/plugin_nfacct.c \
  227. $(LIBNETDATA_FILES) \
  228. $(NULL)
  229. SLABINFO_PLUGIN_FILES = \
  230. collectors/slabinfo.plugin/slabinfo.c \
  231. $(LIBNETDATA_FILES) \
  232. $(NULL)
  233. XENSTAT_PLUGIN_FILES = \
  234. collectors/xenstat.plugin/xenstat_plugin.c \
  235. $(LIBNETDATA_FILES) \
  236. $(NULL)
  237. PERF_PLUGIN_FILES = \
  238. collectors/perf.plugin/perf_plugin.c \
  239. $(LIBNETDATA_FILES) \
  240. $(NULL)
  241. EBPF_PLUGIN_FILES = \
  242. collectors/ebpf.plugin/ebpf.c \
  243. collectors/ebpf.plugin/ebpf_process.c \
  244. collectors/ebpf.plugin/ebpf_process.h \
  245. collectors/ebpf.plugin/ebpf_socket.c \
  246. collectors/ebpf.plugin/ebpf_socket.h \
  247. collectors/ebpf.plugin/ebpf.h \
  248. $(LIBNETDATA_FILES) \
  249. $(NULL)
  250. PROC_PLUGIN_FILES = \
  251. collectors/proc.plugin/ipc.c \
  252. collectors/proc.plugin/plugin_proc.c \
  253. collectors/proc.plugin/plugin_proc.h \
  254. collectors/proc.plugin/proc_diskstats.c \
  255. collectors/proc.plugin/proc_mdstat.c \
  256. collectors/proc.plugin/proc_interrupts.c \
  257. collectors/proc.plugin/proc_softirqs.c \
  258. collectors/proc.plugin/proc_loadavg.c \
  259. collectors/proc.plugin/proc_meminfo.c \
  260. collectors/proc.plugin/proc_pagetypeinfo.c \
  261. collectors/proc.plugin/proc_pressure.c \
  262. collectors/proc.plugin/proc_pressure.h \
  263. collectors/proc.plugin/proc_net_dev.c \
  264. collectors/proc.plugin/proc_net_ip_vs_stats.c \
  265. collectors/proc.plugin/proc_net_netstat.c \
  266. collectors/proc.plugin/proc_net_rpc_nfs.c \
  267. collectors/proc.plugin/proc_net_rpc_nfsd.c \
  268. collectors/proc.plugin/proc_net_snmp.c \
  269. collectors/proc.plugin/proc_net_snmp6.c \
  270. collectors/proc.plugin/proc_net_sctp_snmp.c \
  271. collectors/proc.plugin/proc_net_sockstat.c \
  272. collectors/proc.plugin/proc_net_sockstat6.c \
  273. collectors/proc.plugin/proc_net_softnet_stat.c \
  274. collectors/proc.plugin/proc_net_stat_conntrack.c \
  275. collectors/proc.plugin/proc_net_stat_synproxy.c \
  276. collectors/proc.plugin/proc_self_mountinfo.c \
  277. collectors/proc.plugin/proc_self_mountinfo.h \
  278. collectors/proc.plugin/zfs_common.c \
  279. collectors/proc.plugin/zfs_common.h \
  280. collectors/proc.plugin/proc_spl_kstat_zfs.c \
  281. collectors/proc.plugin/proc_stat.c \
  282. collectors/proc.plugin/proc_sys_kernel_random_entropy_avail.c \
  283. collectors/proc.plugin/proc_vmstat.c \
  284. collectors/proc.plugin/proc_uptime.c \
  285. collectors/proc.plugin/sys_kernel_mm_ksm.c \
  286. collectors/proc.plugin/sys_block_zram.c \
  287. collectors/proc.plugin/sys_devices_system_edac_mc.c \
  288. collectors/proc.plugin/sys_devices_system_node.c \
  289. collectors/proc.plugin/sys_fs_btrfs.c \
  290. collectors/proc.plugin/sys_class_power_supply.c \
  291. $(NULL)
  292. TC_PLUGIN_FILES = \
  293. collectors/tc.plugin/plugin_tc.c \
  294. collectors/tc.plugin/plugin_tc.h \
  295. $(NULL)
  296. MACOS_PLUGIN_FILES = \
  297. collectors/macos.plugin/plugin_macos.c \
  298. collectors/macos.plugin/plugin_macos.h \
  299. collectors/macos.plugin/macos_sysctl.c \
  300. collectors/macos.plugin/macos_mach_smi.c \
  301. collectors/macos.plugin/macos_fw.c \
  302. $(NULL)
  303. PLUGINSD_PLUGIN_FILES = \
  304. collectors/plugins.d/plugins_d.c \
  305. collectors/plugins.d/plugins_d.h \
  306. collectors/plugins.d/pluginsd_parser.c \
  307. collectors/plugins.d/pluginsd_parser.h \
  308. $(NULL)
  309. RRD_PLUGIN_FILES = \
  310. database/rrdcalc.c \
  311. database/rrdcalc.h \
  312. database/rrdcalctemplate.c \
  313. database/rrdcalctemplate.h \
  314. database/rrddim.c \
  315. database/rrddimvar.c \
  316. database/rrddimvar.h \
  317. database/rrdfamily.c \
  318. database/rrdhost.c \
  319. database/rrd.c \
  320. database/rrd.h \
  321. database/rrdset.c \
  322. database/rrdsetvar.c \
  323. database/rrdsetvar.h \
  324. database/rrdvar.c \
  325. database/rrdvar.h \
  326. $(NULL)
  327. if ENABLE_DBENGINE
  328. RRD_PLUGIN_FILES += \
  329. database/engine/rrdengine.c \
  330. database/engine/rrdengine.h \
  331. database/engine/rrddiskprotocol.h \
  332. database/engine/datafile.c \
  333. database/engine/datafile.h \
  334. database/engine/journalfile.c \
  335. database/engine/journalfile.h \
  336. database/engine/rrdenginelib.c \
  337. database/engine/rrdenginelib.h \
  338. database/engine/rrdengineapi.c \
  339. database/engine/rrdengineapi.h \
  340. database/engine/pagecache.c \
  341. database/engine/pagecache.h \
  342. database/engine/rrdenglocking.c \
  343. database/engine/rrdenglocking.h \
  344. database/engine/metadata_log/metadatalog.c \
  345. database/engine/metadata_log/metadatalog.h \
  346. database/engine/metadata_log/metadatalogapi.c \
  347. database/engine/metadata_log/metadatalogapi.h \
  348. database/engine/metadata_log/logfile.h \
  349. database/engine/metadata_log/logfile.c \
  350. database/engine/metadata_log/metadatalogprotocol.h \
  351. database/engine/metadata_log/metalogpluginsd.c \
  352. database/engine/metadata_log/metalogpluginsd.h \
  353. database/engine/metadata_log/compaction.c \
  354. database/engine/metadata_log/compaction.h \
  355. database/engine/global_uuid_map/global_uuid_map.c \
  356. database/engine/global_uuid_map/global_uuid_map.h \
  357. $(NULL)
  358. endif
  359. API_PLUGIN_FILES = \
  360. web/api/badges/web_buffer_svg.c \
  361. web/api/badges/web_buffer_svg.h \
  362. web/api/exporters/allmetrics.c \
  363. web/api/exporters/allmetrics.h \
  364. web/api/exporters/shell/allmetrics_shell.c \
  365. web/api/exporters/shell/allmetrics_shell.h \
  366. web/api/queries/average/average.c \
  367. web/api/queries/average/average.h \
  368. web/api/queries/des/des.c \
  369. web/api/queries/des/des.h \
  370. web/api/queries/incremental_sum/incremental_sum.c \
  371. web/api/queries/incremental_sum/incremental_sum.h \
  372. web/api/queries/max/max.c \
  373. web/api/queries/max/max.h \
  374. web/api/queries/median/median.c \
  375. web/api/queries/median/median.h \
  376. web/api/queries/min/min.c \
  377. web/api/queries/min/min.h \
  378. web/api/queries/query.c \
  379. web/api/queries/query.h \
  380. web/api/queries/rrdr.c \
  381. web/api/queries/rrdr.h \
  382. web/api/queries/ses/ses.c \
  383. web/api/queries/ses/ses.h \
  384. web/api/queries/stddev/stddev.c \
  385. web/api/queries/stddev/stddev.h \
  386. web/api/queries/sum/sum.c \
  387. web/api/queries/sum/sum.h \
  388. web/api/formatters/rrd2json.c \
  389. web/api/formatters/rrd2json.h \
  390. web/api/formatters/csv/csv.c \
  391. web/api/formatters/csv/csv.h \
  392. web/api/formatters/json/json.c \
  393. web/api/formatters/json/json.h \
  394. web/api/formatters/ssv/ssv.c \
  395. web/api/formatters/ssv/ssv.h \
  396. web/api/formatters/value/value.c \
  397. web/api/formatters/value/value.h \
  398. web/api/formatters/json_wrapper.c \
  399. web/api/formatters/json_wrapper.h \
  400. web/api/formatters/charts2json.c \
  401. web/api/formatters/charts2json.h \
  402. web/api/formatters/rrdset2json.c \
  403. web/api/formatters/rrdset2json.h \
  404. web/api/health/health_cmdapi.c \
  405. web/api/health/health_cmdapi.h \
  406. web/api/web_api_v1.c \
  407. web/api/web_api_v1.h \
  408. $(NULL)
  409. STREAMING_PLUGIN_FILES = \
  410. streaming/rrdpush.c \
  411. streaming/sender.c \
  412. streaming/receiver.c \
  413. streaming/rrdpush.h \
  414. $(NULL)
  415. REGISTRY_PLUGIN_FILES = \
  416. registry/registry.c \
  417. registry/registry.h \
  418. registry/registry_db.c \
  419. registry/registry_init.c \
  420. registry/registry_internals.c \
  421. registry/registry_internals.h \
  422. registry/registry_log.c \
  423. registry/registry_machine.c \
  424. registry/registry_machine.h \
  425. registry/registry_person.c \
  426. registry/registry_person.h \
  427. registry/registry_url.c \
  428. registry/registry_url.h \
  429. $(NULL)
  430. STATSD_PLUGIN_FILES = \
  431. collectors/statsd.plugin/statsd.c \
  432. collectors/statsd.plugin/statsd.h \
  433. $(NULL)
  434. WEB_PLUGIN_FILES = \
  435. web/server/web_client.c \
  436. web/server/web_client.h \
  437. web/server/web_server.c \
  438. web/server/web_server.h \
  439. web/server/web_client_cache.c \
  440. web/server/web_client_cache.h \
  441. web/server/static/static-threaded.c \
  442. web/server/static/static-threaded.h \
  443. $(NULL)
  444. BACKENDS_PLUGIN_FILES = \
  445. backends/backends.c \
  446. backends/backends.h \
  447. backends/graphite/graphite.c \
  448. backends/graphite/graphite.h \
  449. backends/json/json.c \
  450. backends/json/json.h \
  451. backends/opentsdb/opentsdb.c \
  452. backends/opentsdb/opentsdb.h \
  453. backends/prometheus/backend_prometheus.c \
  454. backends/prometheus/backend_prometheus.h \
  455. $(NULL)
  456. CLAIM_FILES = \
  457. claim/claim.c \
  458. claim/claim.h \
  459. $(NULL)
  460. PARSER_FILES = \
  461. parser/parser.c \
  462. parser/parser.h \
  463. $(NULL)
  464. ACLK_FILES = \
  465. aclk/aclk_common.c \
  466. aclk/aclk_common.h \
  467. aclk/aclk_stats.c \
  468. aclk/aclk_stats.h
  469. $(NULL)
  470. if ENABLE_ACLK
  471. ACLK_FILES += \
  472. aclk/agent_cloud_link.c \
  473. aclk/agent_cloud_link.h \
  474. aclk/mqtt.c \
  475. aclk/mqtt.h \
  476. aclk/aclk_lws_wss_client.c \
  477. aclk/aclk_lws_wss_client.h \
  478. aclk/aclk_lws_https_client.c \
  479. aclk/aclk_lws_https_client.h \
  480. $(NULL)
  481. endif
  482. SPAWN_PLUGIN_FILES = \
  483. spawn/spawn.c \
  484. spawn/spawn_server.c \
  485. spawn/spawn_client.c \
  486. spawn/spawn.h \
  487. $(NULL)
  488. EXPORTING_ENGINE_FILES = \
  489. exporting/exporting_engine.c \
  490. exporting/exporting_engine.h \
  491. exporting/graphite/graphite.c \
  492. exporting/graphite/graphite.h \
  493. exporting/json/json.c \
  494. exporting/json/json.h \
  495. exporting/opentsdb/opentsdb.c \
  496. exporting/opentsdb/opentsdb.h \
  497. exporting/prometheus/prometheus.c \
  498. exporting/prometheus/prometheus.h \
  499. exporting/read_config.c \
  500. exporting/clean_connectors.c \
  501. exporting/init_connectors.c \
  502. exporting/process_data.c \
  503. exporting/check_filters.c \
  504. exporting/send_data.c \
  505. exporting/send_internal_metrics.c \
  506. $(NULL)
  507. PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES = \
  508. exporting/prometheus/remote_write/remote_write.c \
  509. exporting/prometheus/remote_write/remote_write.h \
  510. exporting/prometheus/remote_write/remote_write_request.cc \
  511. exporting/prometheus/remote_write/remote_write_request.h \
  512. exporting/prometheus/remote_write/remote_write.proto \
  513. $(NULL)
  514. KINESIS_EXPORTING_FILES = \
  515. exporting/aws_kinesis/aws_kinesis.c \
  516. exporting/aws_kinesis/aws_kinesis.h \
  517. exporting/aws_kinesis/aws_kinesis_put_record.cc \
  518. exporting/aws_kinesis/aws_kinesis_put_record.h \
  519. $(NULL)
  520. PUBSUB_EXPORTING_FILES = \
  521. exporting/pubsub/pubsub.c \
  522. exporting/pubsub/pubsub.h \
  523. exporting/pubsub/pubsub_publish.cc \
  524. exporting/pubsub/pubsub_publish.h \
  525. $(NULL)
  526. MONGODB_EXPORTING_FILES = \
  527. exporting/mongodb/mongodb.c \
  528. exporting/mongodb/mongodb.h \
  529. $(NULL)
  530. KINESIS_BACKEND_FILES = \
  531. backends/aws_kinesis/aws_kinesis.c \
  532. backends/aws_kinesis/aws_kinesis.h \
  533. backends/aws_kinesis/aws_kinesis_put_record.cc \
  534. backends/aws_kinesis/aws_kinesis_put_record.h \
  535. $(NULL)
  536. PROMETHEUS_REMOTE_WRITE_BACKEND_FILES = \
  537. backends/prometheus/remote_write/remote_write.cc \
  538. backends/prometheus/remote_write/remote_write.h \
  539. $(NULL)
  540. MONGODB_BACKEND_FILES = \
  541. backends/mongodb/mongodb.c \
  542. backends/mongodb/mongodb.h \
  543. $(NULL)
  544. DAEMON_FILES = \
  545. daemon/common.c \
  546. daemon/common.h \
  547. daemon/daemon.c \
  548. daemon/daemon.h \
  549. daemon/global_statistics.c \
  550. daemon/global_statistics.h \
  551. daemon/main.c \
  552. daemon/main.h \
  553. daemon/signals.c \
  554. daemon/signals.h \
  555. daemon/commands.c \
  556. daemon/commands.h \
  557. daemon/unit_test.c \
  558. daemon/unit_test.h \
  559. $(NULL)
  560. NETDATA_FILES = \
  561. collectors/all.h \
  562. $(DAEMON_FILES) \
  563. $(LIBNETDATA_FILES) \
  564. $(API_PLUGIN_FILES) \
  565. $(BACKENDS_PLUGIN_FILES) \
  566. $(EXPORTING_ENGINE_FILES) \
  567. $(CHECKS_PLUGIN_FILES) \
  568. $(HEALTH_PLUGIN_FILES) \
  569. $(IDLEJITTER_PLUGIN_FILES) \
  570. $(PLUGINSD_PLUGIN_FILES) \
  571. $(REGISTRY_PLUGIN_FILES) \
  572. $(RRD_PLUGIN_FILES) \
  573. $(STREAMING_PLUGIN_FILES) \
  574. $(STATSD_PLUGIN_FILES) \
  575. $(WEB_PLUGIN_FILES) \
  576. $(CLAIM_FILES) \
  577. $(PARSER_FILES) \
  578. $(ACLK_FILES) \
  579. $(SPAWN_PLUGIN_FILES) \
  580. $(NULL)
  581. if FREEBSD
  582. NETDATA_FILES += \
  583. $(FREEBSD_PLUGIN_FILES) \
  584. $(NULL)
  585. endif
  586. if MACOS
  587. NETDATA_FILES += \
  588. $(MACOS_PLUGIN_FILES) \
  589. $(NULL)
  590. endif
  591. if LINUX
  592. NETDATA_FILES += \
  593. $(CGROUPS_PLUGIN_FILES) \
  594. $(DISKSPACE_PLUGIN_FILES) \
  595. $(PROC_PLUGIN_FILES) \
  596. $(TC_PLUGIN_FILES) \
  597. $(NULL)
  598. endif
  599. NETDATA_COMMON_LIBS = \
  600. $(OPTIONAL_MATH_LIBS) \
  601. $(OPTIONAL_ZLIB_LIBS) \
  602. $(OPTIONAL_SSL_LIBS) \
  603. $(OPTIONAL_UUID_LIBS) \
  604. $(OPTIONAL_MQTT_LIBS) \
  605. $(OPTIONAL_UV_LIBS) \
  606. $(OPTIONAL_LZ4_LIBS) \
  607. $(OPTIONAL_JUDY_LIBS) \
  608. $(OPTIONAL_SSL_LIBS) \
  609. $(OPTIONAL_JSONC_LIBS) \
  610. $(OPTIONAL_EBPF_LIBS) \
  611. $(NULL)
  612. if LINK_STATIC_JSONC
  613. NETDATA_COMMON_LIBS += externaldeps/jsonc/libjson-c.a
  614. endif
  615. NETDATACLI_FILES = \
  616. daemon/commands.h \
  617. $(LIBNETDATA_FILES) \
  618. cli/cli.c \
  619. cli/cli.h \
  620. $(NULL)
  621. sbin_PROGRAMS += netdata
  622. netdata_SOURCES = $(NETDATA_FILES)
  623. if ENABLE_ACLK
  624. netdata_LDADD = \
  625. externaldeps/mosquitto/libmosquitto.a \
  626. externaldeps/libwebsockets/libwebsockets.a \
  627. $(OPTIONAL_LIBCAP_LIBS) \
  628. $(NETDATA_COMMON_LIBS) \
  629. $(NULL)
  630. else
  631. netdata_LDADD = \
  632. $(NETDATA_COMMON_LIBS) \
  633. $(NULL)
  634. endif
  635. if ENABLE_CXX_LINKER
  636. netdata_LINK = $(CXXLD) $(CXXFLAGS) $(LDFLAGS) -o $@
  637. else
  638. netdata_LINK = $(CCLD) $(CFLAGS) $(LDFLAGS) -o $@
  639. endif
  640. sbin_PROGRAMS += netdatacli
  641. netdatacli_SOURCES = $(NETDATACLI_FILES)
  642. netdatacli_LDADD = \
  643. $(NETDATA_COMMON_LIBS) \
  644. $(NULL)
  645. if ENABLE_CXX_LINKER
  646. netdatacli_LINK = $(CXXLD) $(CXXFLAGS) $(LDFLAGS) -o $@
  647. else
  648. netdatacli_LINK = $(CCLD) $(CFLAGS) $(LDFLAGS) -o $@
  649. endif
  650. if ENABLE_PLUGIN_APPS
  651. plugins_PROGRAMS += apps.plugin
  652. apps_plugin_SOURCES = $(APPS_PLUGIN_FILES)
  653. apps_plugin_LDADD = \
  654. $(NETDATA_COMMON_LIBS) \
  655. $(OPTIONAL_LIBCAP_LIBS) \
  656. $(NULL)
  657. endif
  658. if ENABLE_PLUGIN_CGROUP_NETWORK
  659. plugins_PROGRAMS += cgroup-network
  660. cgroup_network_SOURCES = $(CGROUP_NETWORK_FILES)
  661. cgroup_network_LDADD = \
  662. $(NETDATA_COMMON_LIBS) \
  663. $(NULL)
  664. endif
  665. if ENABLE_PLUGIN_FREEIPMI
  666. plugins_PROGRAMS += freeipmi.plugin
  667. freeipmi_plugin_SOURCES = $(FREEIPMI_PLUGIN_FILES)
  668. freeipmi_plugin_LDADD = \
  669. $(NETDATA_COMMON_LIBS) \
  670. $(OPTIONAL_IPMIMONITORING_LIBS) \
  671. $(NULL)
  672. endif
  673. if ENABLE_PLUGIN_EBPF
  674. plugins_PROGRAMS += ebpf.plugin
  675. ebpf_plugin_SOURCES = $(EBPF_PLUGIN_FILES)
  676. ebpf_plugin_LDADD = \
  677. $(NETDATA_COMMON_LIBS) \
  678. $(NULL)
  679. endif
  680. if ENABLE_PLUGIN_CUPS
  681. plugins_PROGRAMS += cups.plugin
  682. cups_plugin_SOURCES = $(CUPS_PLUGIN_FILES)
  683. cups_plugin_LDADD = \
  684. $(NETDATA_COMMON_LIBS) \
  685. $(OPTIONAL_CUPS_LIBS) \
  686. $(NULL)
  687. endif
  688. if ENABLE_PLUGIN_NFACCT
  689. plugins_PROGRAMS += nfacct.plugin
  690. nfacct_plugin_SOURCES = $(NFACCT_PLUGIN_FILES)
  691. nfacct_plugin_LDADD = \
  692. $(NETDATA_COMMON_LIBS) \
  693. $(OPTIONAL_NFACCT_LIBS) \
  694. $(NULL)
  695. endif
  696. if ENABLE_PLUGIN_XENSTAT
  697. plugins_PROGRAMS += xenstat.plugin
  698. xenstat_plugin_SOURCES = $(XENSTAT_PLUGIN_FILES)
  699. xenstat_plugin_LDADD = \
  700. $(NETDATA_COMMON_LIBS) \
  701. $(OPTIONAL_XENSTAT_LIBS) \
  702. $(NULL)
  703. endif
  704. if ENABLE_PLUGIN_PERF
  705. plugins_PROGRAMS += perf.plugin
  706. perf_plugin_SOURCES = $(PERF_PLUGIN_FILES)
  707. perf_plugin_LDADD = \
  708. $(NETDATA_COMMON_LIBS) \
  709. $(NULL)
  710. endif
  711. if ENABLE_PLUGIN_SLABINFO
  712. plugins_PROGRAMS += slabinfo.plugin
  713. slabinfo_plugin_SOURCES = $(SLABINFO_PLUGIN_FILES)
  714. slabinfo_plugin_LDADD = \
  715. $(NETDATA_COMMON_LIBS) \
  716. $(NULL)
  717. endif
  718. if ENABLE_BACKEND_KINESIS
  719. netdata_SOURCES += $(KINESIS_BACKEND_FILES) $(KINESIS_EXPORTING_FILES)
  720. netdata_LDADD += $(OPTIONAL_KINESIS_LIBS)
  721. endif
  722. if ENABLE_EXPORTING_PUBSUB
  723. netdata_SOURCES += $(PUBSUB_EXPORTING_FILES)
  724. netdata_LDADD += $(OPTIONAL_PUBSUB_LIBS)
  725. endif
  726. if ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE
  727. netdata_SOURCES += $(PROMETHEUS_REMOTE_WRITE_BACKEND_FILES) $(PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES)
  728. netdata_LDADD += $(OPTIONAL_PROMETHEUS_REMOTE_WRITE_LIBS)
  729. BUILT_SOURCES = \
  730. exporting/prometheus/remote_write/remote_write.pb.cc \
  731. exporting/prometheus/remote_write/remote_write.pb.h \
  732. $(NULL)
  733. nodist_netdata_SOURCES = $(BUILT_SOURCES)
  734. exporting/prometheus/remote_write/remote_write.pb.cc \
  735. exporting/prometheus/remote_write/remote_write.pb.h: exporting/prometheus/remote_write/remote_write.proto
  736. $(PROTOC) --proto_path=$(srcdir) --cpp_out=$(builddir) $^
  737. endif
  738. if ENABLE_BACKEND_MONGODB
  739. netdata_SOURCES += $(MONGODB_BACKEND_FILES) $(MONGODB_EXPORTING_FILES)
  740. netdata_LDADD += $(OPTIONAL_MONGOC_LIBS)
  741. endif
  742. if ENABLE_UNITTESTS
  743. check_PROGRAMS = \
  744. libnetdata/tests/str2ld_testdriver \
  745. libnetdata/storage_number/tests/storage_number_testdriver \
  746. exporting/tests/exporting_engine_testdriver \
  747. web/api/tests/web_api_testdriver \
  748. web/api/tests/valid_urls_testdriver \
  749. $(NULL)
  750. TESTS = $(check_PROGRAMS)
  751. web_api_tests_valid_urls_testdriver_LDFLAGS = \
  752. -Wl,--wrap=rrdhost_find_by_hostname \
  753. -Wl,--wrap=finished_web_request_statistics \
  754. -Wl,--wrap=config_get \
  755. -Wl,--wrap=web_client_api_request_v1 \
  756. -Wl,--wrap=rrdhost_find_by_guid \
  757. -Wl,--wrap=rrdset_find_byname \
  758. -Wl,--wrap=rrdset_find \
  759. -Wl,--wrap=rrdpush_receiver_thread_spawn \
  760. -Wl,--wrap=debug_int \
  761. -Wl,--wrap=error_int \
  762. -Wl,--wrap=info_int \
  763. -Wl,--wrap=fatal_int \
  764. -Wl,--wrap=mysendfile \
  765. -DREMOVE_MYSENDFILE \
  766. $(TEST_LDFLAGS) \
  767. $(NULL)
  768. web_api_tests_valid_urls_testdriver_SOURCES = \
  769. web/api/tests/valid_urls.c \
  770. web/server/web_client.c \
  771. $(LIBNETDATA_FILES) \
  772. $(NULL)
  773. web_api_tests_valid_urls_testdriver_LDADD = $(NETDATA_COMMON_LIBS) $(TEST_LIBS)
  774. web_api_tests_web_api_testdriver_LDFLAGS = \
  775. -Wl,--wrap=rrdhost_find_by_hostname \
  776. -Wl,--wrap=finished_web_request_statistics \
  777. -Wl,--wrap=config_get \
  778. -Wl,--wrap=web_client_api_request_v1 \
  779. -Wl,--wrap=rrdhost_find_by_guid \
  780. -Wl,--wrap=rrdset_find_byname \
  781. -Wl,--wrap=rrdset_find \
  782. -Wl,--wrap=rrdpush_receiver_thread_spawn \
  783. -Wl,--wrap=debug_int \
  784. -Wl,--wrap=error_int \
  785. -Wl,--wrap=info_int \
  786. -Wl,--wrap=fatal_int \
  787. $(TEST_LDFLAGS) \
  788. $(NULL)
  789. web_api_tests_web_api_testdriver_SOURCES = \
  790. web/api/tests/web_api.c \
  791. web/server/web_client.c \
  792. $(LIBNETDATA_FILES) \
  793. $(NULL)
  794. web_api_tests_web_api_testdriver_LDADD = $(NETDATA_COMMON_LIBS) $(TEST_LIBS)
  795. libnetdata_tests_str2ld_testdriver_SOURCES = \
  796. libnetdata/tests/test_str2ld.c \
  797. $(LIBNETDATA_FILES) \
  798. $(NULL)
  799. libnetdata_tests_str2ld_testdriver_LDADD = $(NETDATA_COMMON_LIBS) $(TEST_LIBS)
  800. libnetdata_storage_number_tests_storage_number_testdriver_SOURCES = \
  801. libnetdata/storage_number/tests/test_storage_number.c \
  802. $(LIBNETDATA_FILES) \
  803. $(NULL)
  804. libnetdata_storage_number_tests_storage_number_testdriver_LDADD = $(NETDATA_COMMON_LIBS) $(TEST_LIBS)
  805. EXPORTING_ENGINE_TEST_FILES = \
  806. exporting/tests/test_exporting_engine.c \
  807. exporting/tests/test_exporting_engine.h \
  808. exporting/tests/exporting_fixtures.c \
  809. exporting/tests/exporting_doubles.c \
  810. exporting/tests/netdata_doubles.c \
  811. exporting/tests/system_doubles.c \
  812. $(NULL)
  813. exporting_tests_exporting_engine_testdriver_SOURCES = \
  814. $(EXPORTING_ENGINE_TEST_FILES) \
  815. $(EXPORTING_ENGINE_FILES) \
  816. $(LIBNETDATA_FILES) \
  817. $(NULL)
  818. exporting_tests_exporting_engine_testdriver_CFLAGS = \
  819. $(AM_CFLAGS) \
  820. -DUNIT_TESTING \
  821. $(NULL)
  822. exporting_tests_exporting_engine_testdriver_LDFLAGS = \
  823. -Wl,--wrap=read_exporting_config \
  824. -Wl,--wrap=init_connectors \
  825. -Wl,--wrap=mark_scheduled_instances \
  826. -Wl,--wrap=rrdhost_is_exportable \
  827. -Wl,--wrap=rrdset_is_exportable \
  828. -Wl,--wrap=exporting_calculate_value_from_stored_data \
  829. -Wl,--wrap=prepare_buffers \
  830. -Wl,--wrap=send_internal_metrics \
  831. -Wl,--wrap=now_realtime_sec \
  832. -Wl,--wrap=uv_thread_set_name_np \
  833. -Wl,--wrap=uv_thread_create \
  834. -Wl,--wrap=uv_mutex_lock \
  835. -Wl,--wrap=uv_mutex_unlock \
  836. -Wl,--wrap=uv_cond_signal \
  837. -Wl,--wrap=uv_cond_wait \
  838. -Wl,--wrap=strdupz \
  839. -Wl,--wrap=info_int \
  840. -Wl,--wrap=recv \
  841. -Wl,--wrap=send \
  842. -Wl,--wrap=connect_to_one_of \
  843. -Wl,--wrap=create_main_rusage_chart \
  844. -Wl,--wrap=send_main_rusage \
  845. $(TEST_LDFLAGS) \
  846. $(NULL)
  847. exporting_tests_exporting_engine_testdriver_LDADD = $(NETDATA_COMMON_LIBS) $(TEST_LIBS)
  848. if ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE
  849. exporting_tests_exporting_engine_testdriver_SOURCES += $(PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES)
  850. exporting_tests_exporting_engine_testdriver_LDADD += $(OPTIONAL_PROMETHEUS_REMOTE_WRITE_LIBS)
  851. exporting_tests_exporting_engine_testdriver_LDFLAGS += \
  852. -Wl,--wrap=init_write_request \
  853. -Wl,--wrap=add_host_info \
  854. -Wl,--wrap=add_label \
  855. -Wl,--wrap=add_metric \
  856. $(NULL)
  857. nodist_exporting_tests_exporting_engine_testdriver_SOURCES = $(BUILT_SOURCES)
  858. endif
  859. if ENABLE_BACKEND_KINESIS
  860. exporting_tests_exporting_engine_testdriver_SOURCES += $(KINESIS_EXPORTING_FILES)
  861. exporting_tests_exporting_engine_testdriver_LDADD += $(OPTIONAL_KINESIS_LIBS)
  862. exporting_tests_exporting_engine_testdriver_LDFLAGS += \
  863. -Wl,--wrap=aws_sdk_init \
  864. -Wl,--wrap=kinesis_init \
  865. -Wl,--wrap=kinesis_put_record \
  866. -Wl,--wrap=kinesis_get_result \
  867. $(NULL)
  868. endif
  869. if ENABLE_EXPORTING_PUBSUB
  870. exporting_tests_exporting_engine_testdriver_SOURCES += $(PUBSUB_EXPORTING_FILES)
  871. exporting_tests_exporting_engine_testdriver_LDADD += $(OPTIONAL_PUBSUB_LIBS)
  872. exporting_tests_exporting_engine_testdriver_LDFLAGS += \
  873. -Wl,--wrap=pubsub_init \
  874. -Wl,--wrap=pubsub_add_message \
  875. -Wl,--wrap=pubsub_publish \
  876. -Wl,--wrap=pubsub_get_result \
  877. $(NULL)
  878. endif
  879. if ENABLE_BACKEND_MONGODB
  880. exporting_tests_exporting_engine_testdriver_SOURCES += $(MONGODB_EXPORTING_FILES)
  881. exporting_tests_exporting_engine_testdriver_LDADD += $(OPTIONAL_MONGOC_LIBS)
  882. exporting_tests_exporting_engine_testdriver_LDFLAGS += \
  883. -Wl,--wrap=mongoc_init \
  884. -Wl,--wrap=mongoc_uri_new_with_error \
  885. -Wl,--wrap=mongoc_uri_get_option_as_int32 \
  886. -Wl,--wrap=mongoc_uri_set_option_as_int32 \
  887. -Wl,--wrap=mongoc_client_new_from_uri \
  888. -Wl,--wrap=mongoc_client_set_appname \
  889. -Wl,--wrap=mongoc_client_get_collection \
  890. -Wl,--wrap=mongoc_uri_destroy \
  891. -Wl,--wrap=mongoc_collection_insert_many \
  892. $(NULL)
  893. endif
  894. endif