SET(VERSION ${FULLVER})
#init variables with sources
-SET(DATA_DIR ${CMAKE_SOURCE_DIR}/data)
-SET(CMAKELISTS_DIR ${CMAKE_SOURCE_DIR}/CMakeLists)
-SET(INCLUDE_COMMON_DIR ${CMAKE_SOURCE_DIR}/src/common)
-SET(INCLUDE_PUBLIC_DIR ${CMAKE_SOURCE_DIR}/include)
-SET(RESOURCED_INCLUDEDIR ${INCLUDE_COMMON_DIR} ${INCLUDE_PUBLIC_DIR})
-
-SET(SOURCE_DIR ${CMAKE_SOURCE_DIR}/src)
-SET(RESOURCED_SOURCE_DIR ${SOURCE_DIR}/resourced)
-SET(PROCESS_SOURCE_DIR ${SOURCE_DIR}/process)
-SET(MEMORY_SOURCE_DIR ${SOURCE_DIR}/memory)
-SET(SWAP_SOURCE_DIR ${SOURCE_DIR}/swap)
-SET(MODULES_SOURCE_DIR ${SOURCE_DIR}/modules)
-SET(FREEZER_SOURCE_DIR ${SOURCE_DIR}/freezer)
-SET(HEART_SOURCE_DIR ${SOURCE_DIR}/heart)
-SET(COMMON_SOURCE_DIR ${SOURCE_DIR}/common)
-SET(CPU_SOURCE_DIR ${SOURCE_DIR}/cpu)
-SET(VIP_SOURCE_DIR ${SOURCE_DIR}/vip-process)
-SET(BLOCK_SOURCE_DIR ${SOURCE_DIR}/block)
-SET(DEDUP_SOURCE_DIR ${SOURCE_DIR}/dedup)
+SET(DATA_DIR ${CMAKE_SOURCE_DIR}/data)
+SET(CMAKELISTS_DIR ${CMAKE_SOURCE_DIR}/CMakeLists)
+SET(INCLUDE_COMMON_DIR ${CMAKE_SOURCE_DIR}/src/common)
+SET(INCLUDE_PUBLIC_DIR ${CMAKE_SOURCE_DIR}/include)
+SET(RESOURCED_INCLUDEDIR ${INCLUDE_COMMON_DIR} ${INCLUDE_PUBLIC_DIR})
+
+#misc
+SET(SOURCE_DIR ${CMAKE_SOURCE_DIR}/src)
+SET(RESOURCED_SOURCE_DIR ${SOURCE_DIR}/resourced)
+SET(COMMON_SOURCE_DIR ${SOURCE_DIR}/common)
+
+#resource-optimizer source folders
+SET(RESOURCE_OPTIMIZER_SOURCE_DIR ${SOURCE_DIR}/resource-optimizer)
+SET(MEMORY_RESOURCE_OPTIMIZER_SOURCE_DIR ${RESOURCE_OPTIMIZER_SOURCE_DIR}/memory)
+SET(DEDUP_SOURCE_DIR ${RESOURCE_OPTIMIZER_SOURCE_DIR}/memory/dedup)
+SET(SWAP_SOURCE_DIR ${RESOURCE_OPTIMIZER_SOURCE_DIR}/memory/swap)
+
+#resource-limiter source folders
+SET(RESOURCE_LIMITER_SOURCE_DIR ${SOURCE_DIR}/resource-limiter)
+SET(FREEZER_SOURCE_DIR ${RESOURCE_LIMITER_SOURCE_DIR}/freezer)
+SET(MEMORY_LIMITER_SOURCE_DIR ${RESOURCE_LIMITER_SOURCE_DIR}/memory)
+SET(CPU_LIMITER_SOURCE_DIR ${RESOURCE_LIMITER_SOURCE_DIR}/cpu)
+
+#resource-monitor source folders
+SET(RESOURCE_MONITOR_SOURCE_DIR ${SOURCE_DIR}/resource-monitor)
+SET(CPU_MONITOR_SOURCE_DIR ${RESOURCE_MONITOR_SOURCE_DIR}/cpu)
+SET(MEMORY_MONITOR_SOURCE_DIR ${RESOURCE_MONITOR_SOURCE_DIR}/memory)
+SET(STORAGE_MONITOR_SOURCE_DIR ${RESOURCE_MONITOR_SOURCE_DIR}/storage)
+SET(DBUS_MONITOR_SOURCE_DIR ${RESOURCE_MONITOR_SOURCE_DIR})
+SET(BATTERY_MONITOR_SOURCE_DIR ${RESOURCE_MONITOR_SOURCE_DIR}/battery)
+SET(ABNORMAL_MONITOR_SOURCE_DIR ${RESOURCE_MONITOR_SOURCE_DIR}/abnormal)
+
+#process
+SET(PROCESS_SOURCE_DIR ${SOURCE_DIR}/process)
+SET(VIP_SOURCE_DIR ${PROCESS_SOURCE_DIR}/vip)
+SET(BLOCK_SOURCE_DIR ${PROCESS_SOURCE_DIR}/block)
+SET(WATCHDOG_SOURCE_DIR ${PROCESS_SOURCE_DIR}/watchdog)
+SET(PRIORITY_SOURCE_DIR ${PROCESS_SOURCE_DIR}/priority)
+
INSTALL(FILES ${CMAKE_SOURCE_DIR}/resourced.conf DESTINATION /etc/dbus-1/system.d)
FILE(GLOB FILES "${PROCESS_SOURCE_DIR}/*.c")
SET(RESOURCED_SHARED_SOURCES ${RESOURCED_SHARED_SOURCES} ${FILES})
+FILE(GLOB FILES "${BLOCK_SOURCE_DIR}/*.c")
+SET(RESOURCED_SHARED_SOURCES ${RESOURCED_SHARED_SOURCES} ${FILES})
+
+FILE(GLOB FILES "${WATCHDOG_SOURCE_DIR}/*.c")
+SET(RESOURCED_SHARED_SOURCES ${RESOURCED_SHARED_SOURCES} ${FILES})
+
+FILE(GLOB FILES "${PRIORITY_SOURCE_DIR}/*.c")
+SET(RESOURCED_SHARED_SOURCES ${RESOURCED_SHARED_SOURCES} ${FILES})
+
+FILE(GLOB FILES "${VIP_SOURCE_DIR}/*.c")
+SET(RESOURCED_SHARED_SOURCES ${RESOURCED_SHARED_SOURCES} ${FILES})
+
FILE(GLOB FILES "${COMMON_SOURCE_DIR}/*.c")
SET(RESOURCED_SHARED_SOURCES ${RESOURCED_SHARED_SOURCES} ${FILES})
INCLUDE_DIRECTORIES(${RESOURCED_INCLUDEDIR}
${RESOURCED_SOURCE_DIR}
- ${HEART_SOURCE_DIR}/include
- ${CPU_SOURCE_DIR}
- ${MEMORY_SOURCE_DIR}
- ${PROCESS_SOURCE_DIR}/include
- ${BLOCK_SOURCE_DIR}/include
- ${FREEZER_SOURCE_DIR}/include
+ ${RESOURCE_MONITOR_SOURCE_DIR}
+ ${CPU_LIMITER_SOURCE_DIR}
+ ${MEMORY_LIMITER_SOURCE_DIR}
+ #${MEMORY_LIMITER_SOURCE_DIR}/include
+ ${PROCESS_SOURCE_DIR}
+ ${BLOCK_SOURCE_DIR}
+ ${FREEZER_SOURCE_DIR}
)
#memory module
IF("${MEMORY_MODULE}" STREQUAL "ON")
- FILE(GLOB FILES "${MEMORY_SOURCE_DIR}/*.c")
+ FILE(GLOB FILES "${MEMORY_LIMITER_SOURCE_DIR}/*.c")
FOREACH(FILE ${FILES})
SET(SOURCES ${SOURCES} ${FILE})
ENDFOREACH()
ENDIF()
IF("${CPU_MODULE}" STREQUAL "ON")
- FILE(GLOB FILES "${CPU_SOURCE_DIR}/*.c")
+ FILE(GLOB FILES "${CPU_LIMITER_SOURCE_DIR}/*.c")
FOREACH(FILE ${FILES})
SET(SOURCES ${SOURCES} ${FILE})
ENDFOREACH()
${INCLUDE_COMMON_DIR}/config.h)
# resourced internal private API
-FILE(GLOB FILES "${INCLUDE_COMMON_DIR}/*.h" "${INCLUDE_PUBLIC_DIR}/*.h" "${PROCESS_SOURCE_DIR}/include/*.h" "${RESOURCED_SOURCE_DIR}/*.h")
+FILE(GLOB FILES "${INCLUDE_COMMON_DIR}/*.h" "${INCLUDE_PUBLIC_DIR}/*.h" "${PROCESS_SOURCE_DIR}/*.h" "${RESOURCED_SOURCE_DIR}/*.h")
FOREACH(FILE ${FILES})
SET(RESOURCED_HEADERS ${RESOURCED_HEADERS} ${FILE})
ENDFOREACH()
INSTALL(FILES ${DEDUP_SOURCE_DIR}/dedup.conf DESTINATION ${RD_CONFIG_PATH})
ADD_LIBRARY(heart MODULE
- ${HEART_SOURCE_DIR}/heart.c
- ${HEART_SOURCE_DIR}/heart-abnormal.c
- ${HEART_SOURCE_DIR}/heart-battery.c
- ${HEART_SOURCE_DIR}/heart-cpu.c
- ${HEART_SOURCE_DIR}/heart-dbus.c
- ${HEART_SOURCE_DIR}/heart-memory.c
- ${HEART_SOURCE_DIR}/heart-storage.c
- ${HEART_SOURCE_DIR}/logging.c)
+ ${RESOURCE_MONITOR_SOURCE_DIR}/heart.c
+ ${ABNORMAL_MONITOR_SOURCE_DIR}/heart-abnormal.c
+ ${BATTERY_MONITOR_SOURCE_DIR}/heart-battery.c
+ ${CPU_MONITOR_SOURCE_DIR}/heart-cpu.c
+ ${DBUS_MONITOR_SOURCE_DIR}/heart-dbus.c
+ ${MEMORY_MONITOR_SOURCE_DIR}/heart-memory.c
+ ${STORAGE_MONITOR_SOURCE_DIR}/heart-storage.c
+ ${RESOURCE_MONITOR_SOURCE_DIR}/logging.c)
TARGET_LINK_LIBRARIES(heart resourced-private-api ${RESOURCED_REQUIRE_PKGS_LDFLAGS})
INSTALL(TARGETS heart DESTINATION ${MAKE_INSTALL_PREFIX}${RD_PLUGIN_PATH})
-INSTALL(FILES ${HEART_SOURCE_DIR}/heart.conf DESTINATION ${RD_CONFIG_PATH})
-CONFIGURE_FILE(${HEART_SOURCE_DIR}/dump_heart_data.sh.in ${HEART_SOURCE_DIR}/dump_heart_data.sh @ONLY)
-INSTALL(FILES ${HEART_SOURCE_DIR}/dump_heart_data.sh DESTINATION ${RD_SYS_ETC}/dump.d/module.d)
+INSTALL(FILES ${RESOURCE_MONITOR_SOURCE_DIR}/heart.conf DESTINATION ${RD_CONFIG_PATH})
+CONFIGURE_FILE(${RESOURCE_MONITOR_SOURCE_DIR}/dump_heart_data.sh.in ${RESOURCE_MONITOR_SOURCE_DIR}/dump_heart_data.sh @ONLY)
+INSTALL(FILES ${RESOURCE_MONITOR_SOURCE_DIR}/dump_heart_data.sh DESTINATION ${RD_SYS_ETC}/dump.d/module.d)
ADD_EXECUTABLE(${RD_BINARY_NAME}
${RESOURCED_SOURCE_DIR}/init.c
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE WORLD_EXECUTE)
IF("${MEMORY_MODULE}" STREQUAL "ON")
- INSTALL(FILES ${MEMORY_SOURCE_DIR}/memory.conf DESTINATION ${RD_CONFIG_PATH})
- INSTALL(FILES ${MEMORY_SOURCE_DIR}/memory-tv.conf DESTINATION ${RD_CONFIG_PATH})
- INSTALL(FILES ${MEMORY_SOURCE_DIR}/memory-iot-headless.conf DESTINATION ${RD_CONFIG_PATH})
+ INSTALL(FILES ${MEMORY_LIMITER_SOURCE_DIR}/memory.conf DESTINATION ${RD_CONFIG_PATH})
+ INSTALL(FILES ${MEMORY_LIMITER_SOURCE_DIR}/memory-tv.conf DESTINATION ${RD_CONFIG_PATH})
+ INSTALL(FILES ${MEMORY_LIMITER_SOURCE_DIR}/memory-iot-headless.conf DESTINATION ${RD_CONFIG_PATH})
ENDIF()
IF("${CPU_MODULE}" STREQUAL "ON")
- INSTALL(FILES ${CPU_SOURCE_DIR}/cpu.conf
+ INSTALL(FILES ${CPU_LIMITER_SOURCE_DIR}/cpu.conf
DESTINATION ${RD_CONFIG_PATH} RENAME cpu.conf)
- INSTALL(FILES ${CPU_SOURCE_DIR}/cpu-sched.conf
+ INSTALL(FILES ${CPU_LIMITER_SOURCE_DIR}/cpu-sched.conf
DESTINATION ${RD_CONFIG_PATH} RENAME cpu-sched.conf)
ENDIF()
SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${COMMON_SOURCE_DIR}")
SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${INCLUDE_COMMON_DIR}")
SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${INCLUDE_PUBLIC_DIR}")
-SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${BLOCK_SOURCE_DIR}/include")
-SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${FREEZER_SOURCE_DIR}/include")
-SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${HEART_SOURCE_DIR}/include")
-SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${MEMORY_SOURCE_DIR}")
-SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${PROCESS_SOURCE_DIR}/include")
+SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${BLOCK_SOURCE_DIR}")
+SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${FREEZER_SOURCE_DIR}")
+SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${RESOURCE_MONITOR_SOURCE_DIR}")
+SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${MEMORY_LIMITER_SOURCE_DIR}")
+SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${PROCESS_SOURCE_DIR}")
SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${RESOURCED_SOURCE_DIR}")
SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -I${VIP_SOURCE_DIR}")
SET(UNIT_TESTS_CFLAGS "${UNIT_TESTS_CFLAGS} -Wno-psabi")
TARGET_INCLUDE_DIRECTORIES(${name}
PRIVATE ${COMMON_SOURCE_DIR}
../include
- ../src/memory
+ ../src/resource-limiter/memory
../src/resourced
../src/common
PUBLIC ${RESOURCED_REQUIRE_PKGS_INCLUDE_DIRS})
"-Wl,--wrap=kill,--wrap=read,--wrap=access"
lowmem-limit-test.cpp lowmem-limit-mock.cpp lowmem-limit-env.cpp lowmem-env.cpp lowmem-env-mock.cpp
../src/common/safe-kill.c
- ../src/memory/lowmem-limit.c)
+ ../src/resource-limiter/memory/lowmem-limit.c)
# lowmem-system unit test
ADD_MEMORY_TESTS(lowmem-system-test "${GLIB2_LDFLAGS}"
"-Wl,--wrap=opendir,--wrap=readdir,--wrap=closedir,--wrap=opendir64,--wrap=readdir64,--wrap=closedir64"
lowmem-system-test.cpp lowmem-system-mock.cpp lowmem-system-env.cpp lowmem-env.cpp lowmem-env-mock.cpp
- ../src/memory/lowmem-system.c)
+ ../src/resource-limiter/memory/lowmem-system.c)
# lowmem-dbus unit test
ADD_MEMORY_TESTS(lowmem-dbus-test "${GLIB2_LDFLAGS}" ""
lowmem-dbus-test.cpp lowmem-dbus-mock.cpp lowmem-dbus-env.cpp lowmem-env.cpp lowmem-env-mock.cpp
- ../src/memory/lowmem-dbus.c)
+ ../src/resource-limiter/memory/lowmem-dbus.c)
INSTALL(TARGETS watchdog-test
DESTINATION ${RD_TESTS_PATH})