improve enable_feature function in the installer (#16601)
Ilya Mashchenko committed
Dec 14, 2023 at 12:44 UTC
625b02254694c2fad0d67e2b00dc102cc56d4d98
1 file changed
+13
-12
netdata-installer.sh
+13
-12
@@ -454,6 +454,15 @@ if [ "$(uname -s)" = "Linux" ] && [ -f /proc/meminfo ]; then
454
fi
455
fi
456
457
+enable_feature() {
458
+ NETDATA_CMAKE_OPTIONS="$(echo "${NETDATA_CMAKE_OPTIONS}" | sed -e "s/-DENABLE_${1}=Off[[:space:]]*//g" -e "s/-DENABLE_${1}=On[[:space:]]*//g")"
459
+ if [ "${2}" -eq 1 ]; then
460
+ NETDATA_CMAKE_OPTIONS="$(echo "${NETDATA_CMAKE_OPTIONS}" | sed "s/$/ -DENABLE_${1}=On/")"
461
+ else
462
+ NETDATA_CMAKE_OPTIONS="$(echo "${NETDATA_CMAKE_OPTIONS}" | sed "s/$/ -DENABLE_${1}=Off/")"
463
+ fi
464
+}
465
+
466
# set default make options
467
if [ -z "${MAKEOPTS}" ]; then
468
MAKEOPTS="-j$(find_processors)"
@@ -977,7 +986,7 @@ bundle_ebpf_co_re() {
986
run_failed "Failed to get eBPF CO-RE files. eBPF support will be disabled"
987
NETDATA_DISABLE_EBPF=1
988
ENABLE_EBPF=0
980
- NETDATA_CMAKE_OPTIONS="$(echo "${NETDATA_CMAKE_OPTIONS%-DENABLE_PLUGIN_EBPF=Off)}" | sed 's/$/ -DENABLE_PLUGIN_EBPF=Off/g')"
989
+ enable_feature PLUGIN_EBPF 0
990
fi
991
fi
992
else
@@ -987,7 +996,7 @@ bundle_ebpf_co_re() {
996
run_failed "Failed to fetch eBPF CO-RE files. eBPF support will be disabled"
997
NETDATA_DISABLE_EBPF=1
998
ENABLE_EBPF=0
990
- NETDATA_CMAKE_OPTIONS="$(echo "${NETDATA_CMAKE_OPTIONS%-DENABLE_PLUGIN_EBPF=Off)}" | sed 's/$/ -DENABLE_PLUGIN_EBPF=Off/g')"
999
+ enable_feature PLUGIN_EBPF 0
1000
fi
1001
fi
1002
@@ -1106,14 +1115,6 @@ check_for_module() {
1115
return "${?}"
1116
}
1117
1109
-enable_feature() {
1110
- if [ "${2}" -eq 1 ]; then
1111
- NETDATA_CMAKE_OPTIONS="${NETDATA_CMAKE_OPTIONS} -DENABLE_${1}=On"
1112
- else
1113
- NETDATA_CMAKE_OPTIONS="${NETDATA_CMAKE_OPTIONS} -DENABLE_${1}=Off"
1114
- fi
1115
-}
1116
-
1118
check_for_feature() {
1119
feature_name="${1}"
1120
feature_state="${2}"
@@ -1165,9 +1166,9 @@ NETDATA_CMAKE_OPTIONS="-S ./ -B ${NETDATA_BUILD_DIR} ${CMAKE_OPTS} -DCMAKE_INSTA
1166
# Feature autodetection code starts here
1167
1168
if [ "${USE_SYSTEM_PROTOBUF}" -eq 1 ]; then
1168
- NETDATA_CMAKE_OPTIONS="${NETDATA_CMAKE_OPTIONS} -DENABLE_BUNDLED_PROTOBUF=Off"
1169
+ enable_feature BUNDLED_PROTOBUF 0
1170
else
1170
- NETDATA_CMAKE_OPTIONS="${NETDATA_CMAKE_OPTIONS} -DENABLE_BUNDLED_PROTOBUF=On"
1171
+ enable_feature BUNDLED_PROTOBUF 1
1172
fi
1173
1174
if [ -z "${ENABLE_SYSTEMD_PLUGIN}" ]; then