# This file is only used for development (netdata in Clion) # It can build netdata, but you are on your own... cmake_minimum_required(VERSION 3.3) project(netdata C) find_package (Threads) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wformat-signedness -Werror=format-security -DNETDATA_INTERNAL_CHECKS=1") set(NETDATA_SOURCE_FILES src/adaptive_resortable_list.c src/adaptive_resortable_list.h src/appconfig.c src/appconfig.h src/avl.c src/avl.h src/backends.c src/backends.h src/clocks.c src/clocks.h src/common.c src/common.h src/daemon.c src/daemon.h src/dictionary.c src/dictionary.h src/eval.c src/eval.h src/freebsd_sysctl.c src/global_statistics.c src/global_statistics.h src/health.c src/health.h src/health_config.c src/health_json.c src/health_log.c src/inlined.h src/ipc.c src/ipc.h src/log.c src/log.h src/macos_fw.c src/macos_mach_smi.c src/macos_sysctl.c src/main.c src/main.h src/plugin_checks.c src/plugin_checks.h src/plugin_freebsd.c src/plugin_freebsd.h src/plugin_idlejitter.c src/plugin_idlejitter.h src/plugin_macos.c src/plugin_macos.h src/plugin_nfacct.c src/plugin_nfacct.h src/plugin_proc.c src/plugin_proc.h src/plugin_proc_diskspace.c src/plugin_proc_diskspace.h src/plugin_tc.c src/plugin_tc.h src/plugins_d.c src/plugins_d.h src/popen.c src/popen.h src/proc_diskstats.c src/proc_interrupts.c src/proc_loadavg.c src/proc_meminfo.c src/proc_net_dev.c src/proc_net_ip_vs_stats.c src/proc_net_netstat.c src/proc_net_rpc_nfs.c src/proc_net_rpc_nfsd.c src/proc_net_snmp.c src/proc_net_snmp6.c src/proc_net_softnet_stat.c src/proc_net_stat_conntrack.c src/proc_net_stat_synproxy.c src/proc_self_mountinfo.c src/proc_self_mountinfo.h src/proc_softirqs.c src/proc_stat.c src/proc_sys_kernel_random_entropy_avail.c src/proc_uptime.c src/proc_vmstat.c src/procfile.c src/procfile.h src/registry.c src/registry.h src/registry_db.c src/registry_init.c src/registry_internals.c src/registry_internals.h src/registry_log.c src/registry_machine.c src/registry_machine.h src/registry_person.c src/registry_person.h src/registry_url.c src/registry_url.h src/rrd.c src/rrd.h src/rrd2json.c src/rrd2json.h src/rrd2json_api_old.c src/rrd2json_api_old.h src/rrdcalc.c src/rrdcalctemplate.c src/rrddim.c src/rrddimvar.c src/rrdfamily.c src/rrdhost.c src/rrdpush.c src/rrdpush.h src/rrdset.c src/rrdsetvar.c src/rrdvar.c src/simple_pattern.c src/simple_pattern.h src/socket.c src/socket.h src/storage_number.c src/storage_number.h src/sys_devices_system_edac_mc.c src/sys_devices_system_node.c src/sys_fs_cgroup.c src/sys_kernel_mm_ksm.c src/unit_test.c src/unit_test.h src/url.c src/url.h src/web_api_old.c src/web_api_old.h src/web_api_v1.c src/web_api_v1.h src/web_buffer.c src/web_buffer.h src/web_buffer_svg.c src/web_buffer_svg.h src/web_client.c src/web_client.h src/web_server.c src/web_server.h src/locks.h) set(APPS_PLUGIN_SOURCE_FILES src/appconfig.c src/appconfig.h src/apps_plugin.c src/avl.c src/avl.h src/common.c src/common.h src/clocks.c src/clocks.h src/inlined.h src/log.c src/log.h src/procfile.c src/procfile.h src/web_buffer.c src/web_buffer.h config.h ) set(FREEIPMI_PLUGIN_SOURCE_FILES src/freeipmi_plugin.c src/common.c src/common.h src/clocks.c src/clocks.h src/inlined.h src/log.c src/log.h src/procfile.c src/procfile.h config.h ) include_directories(AFTER .) add_definitions(-DHAVE_CONFIG_H -DCACHE_DIR="/var/cache/netdata" -DCONFIG_DIR="/etc/netdata" -DLOG_DIR="/var/log/netdata" -DPLUGINS_DIR="/usr/libexec/netdata" -DWEB_DIR="/usr/share/netdata" -DVARLIB_DIR="/var/lib/netdata") add_executable(netdata ${NETDATA_SOURCE_FILES}) target_link_libraries (netdata m z uuid ${CMAKE_THREAD_LIBS_INIT}) add_executable(apps.plugin ${APPS_PLUGIN_SOURCE_FILES} src/inlined.h) target_link_libraries (apps.plugin m ${CMAKE_THREAD_LIBS_INIT}) add_executable(freeipmi.plugin ${FREEIPMI_PLUGIN_SOURCE_FILES}) target_link_libraries (freeipmi.plugin ipmimonitoring)