PROJECT(deviced C)
########################################################
-# Build options:
+# Build options #
########################################################
+
SET(CMAKE_VERBOSE_MAKEFILE OFF)
IF("${ARCH}" STREQUAL "arm")
ENDIF()
########################################################
-# Deviced Macros
+# Macros #
########################################################
MACRO(ADD_SOURCE DIR OUT)
+ SET(S_SRCS "")
+ SET(D_SRCS "")
FILE(GLOB ALL_SRCS "${DIR}/*.c")
FOREACH(SRC ${ALL_SRCS})
- IF(NOT ${SRC} MATCHES "ivi|mobile|wearable|tv")
+ IF(NOT ${SRC} MATCHES "mobile|wearable|tv")
SET(D_SRCS ${D_SRCS} ${SRC})
ENDIF()
ENDFOREACH()
ENDMACRO()
########################################################
-# Deviced CMakeLists.txt
+# CMakeLists.txt #
########################################################
+
SET(PREFIX ${CMAKE_INSTALL_PREFIX})
SET(EXEC_PREFIX "${PREFIX}/bin")
SET(INCLUDEDIR "${PREFIX}/include/${PROJECT_NAME}")
SET(SRCS
src/apps/apps.c
src/control/control.c
- src/core/common.c
- src/core/config-parser.c
src/core/device-idler.c
- src/core/device-notifier.c
+ src/core/late-booting-done-notifier.c
src/core/devices.c
src/core/event-handler.c
src/core/execute.c
- src/core/launch.c
src/core/log.c
src/core/main.c
src/core/sig-handler.c
src/core/udev.c
+ src/core/bitmap.c
src/proc/cpu-info.c
- src/proc/proc-handler.c
src/time/time-handler.c
)
IF(BATTERY_MODULE STREQUAL on)
ADD_SOURCE(src/battery BATTERY_SRCS)
SET(SRCS ${SRCS} ${BATTERY_SRCS})
- IF(TIZEN_FEATURE_BATTERY_OVER_TEMPERATURE STREQUAL on)
- ADD_DEFINITIONS("-DTIZEN_FEATURE_BATTERY_OVER_TEMPERATURE")
- ENDIF(TIZEN_FEATURE_BATTERY_OVER_TEMPERATURE STREQUAL on)
ENDIF()
IF(THERMAL_MODULE STREQUAL on)
SET(SRCS ${SRCS} ${TOUCHSCREEN_SRCS})
ENDIF()
+IF(TOUCH_SENSITIVITY_MODULE STREQUAL on)
+ SET(SRCS ${SRCS} src/touchscreen/sensitivity.c)
+ENDIF()
+
+IF(DUMP_MODULE STREQUAL on)
+ SET(SRCS ${SRCS} src/dump/dump.c)
+ENDIF()
+
IF(TZIP_MODULE STREQUAL on)
ADD_SOURCE(src/tzip TZIP_SRCS)
SET(SRCS ${SRCS} ${TZIP_SRCS})
SET(SRCS ${SRCS} ${POWER_SRCS})
ENDIF()
-IF(DISPLAY_MODULE STREQUAL on)
- ADD_SOURCE(src/display DISPLAY_SRCS)
- SET(SRCS ${SRCS} ${DISPLAY_SRCS})
-ENDIF()
-
# usb client
IF(USB_MODULE STREQUAL on)
ADD_SOURCE(src/usb USB_SRCS)
DESTINATION /etc/deviced/usb-host-test/)
ENDIF()
-IF(TIZEN_FEATURE_TELEPHONY_MODULE STREQUAL on)
- ADD_SOURCE(src/telephony TELEPHONY_SRCS)
- SET(SRCS ${SRCS} ${TELEPHONY_SRCS})
+IF(DEVICE_BOARD_MODULE STREQUAL on)
+ ADD_SOURCE(src/board BOARD_SRCS)
+ SET(SRCS ${SRCS} ${BOARD_SRCS})
ENDIF()
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
vconf
dlog
libudev
- device-node
capi-base-common
glib-2.0
gio-2.0
gio-unix-2.0
eventsystem
libtzplatform-config
- hwcommon
+ hal-api-common
+ hal-api-device
mount
capi-system-info
- argos_watchdog
+ capi-system-device
libsystemd
- storage
+ libsyscommon
+ wayland-client
+ tizen-extension-client
+ tizen-dpms-client
+ zlib
+ argos_watchdog
)
IF(DISPLAY_MODULE STREQUAL on)
IF(TIZEN_FEATURE_USBHOST_TEST STREQUAL on)
SET(PKG_MODULES ${PKG_MODULES} libkmod libusbgx)
ENDIF()
-IF(TIZEN_FEATURE_TELEPHONY_MODULE STREQUAL on)
- SET(PKG_MODULES ${PKG_MODULES} tapi)
-ENDIF()
INCLUDE(FindPkgConfig)
-pkg_check_modules(pkgs REQUIRED ${PKG_MODULES})
+pkg_check_modules(REQUIRED_PKGS REQUIRED ${PKG_MODULES})
-FOREACH(flag ${pkgs_CFLAGS})
+FOREACH(flag ${REQUIRED_PKGS_CFLAGS})
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
ENDFOREACH(flag)
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -fPIE")
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fPIE -rdynamic")
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -fno-omit-frame-pointer -finstrument-functions")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -lrt")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
SET(CMAKE_EXE_LINKER_FLAGS "-pie")
ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
ADD_DEFINITIONS("-DENABLE_DEVICED_DLOG")
ADD_DEFINITIONS("-DENABLE_LIBDEVICED_DLOG")
ADD_DEFINITIONS("-DENABLE_PM_LOG")
+
IF(ENGINEER_MODE STREQUAL on)
-ADD_DEFINITIONS("-DENGINEER_MODE")
+ ADD_DEFINITIONS("-DENGINEER_MODE")
ENDIF(ENGINEER_MODE STREQUAL on)
+IF(BATTERY_MODULE STREQUAL on)
+ ADD_DEFINITIONS("-DBATTERY_MODULE")
+ENDIF(BATTERY_MODULE STREQUAL on)
+
IF(USE_ARM)
ADD_DEFINITIONS("-DTARGET")
ENDIF()
+
IF(USE_32BIT)
ADD_DEFINITIONS("-DARCH_32BIT")
ELSEIF(USE_64BIT)
ADD_DEFINITIONS("-DARCH_64BIT")
ENDIF()
+
ADD_DEFINITIONS("-DDEBUG")
+# Build libdeviced-common-private.so
+FILE(GLOB SHARED_SRC "src/shared/*.c")
+ADD_LIBRARY(deviced-common-private SHARED ${SHARED_SRC})
+TARGET_LINK_LIBRARIES(deviced-common-private ${REQUIRED_PKGS_LDFLAGS})
+INSTALL(TARGETS deviced-common-private DESTINATION ${CMAKE_INSTALL_LIBDIR})
+
ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} "-ldl" "-lm" shared)
+SET(deviced_LDFLAGS ${REQUIRED_PKGS_LDFLAGS})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${REQUIRED_PKGS_LDFLAGS} "-lrt -ldl -lm" deviced-common-private)
INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
+IF(POWER_MODULE STREQUAL on)
+ ADD_EXECUTABLE(deviced-shutdown src/power-shutdown/shutdown.c src/shared/common.c src/core/execute.c)
+ SET(deviced-shutdown_LDFLAGS ${REQUIRED_PKGS_LDFLAGS})
+ TARGET_LINK_LIBRARIES(deviced-shutdown ${REQUIRED_PKGS_LDFLAGS} "-lrt -ldl -lm" deviced-common-private)
+ INSTALL(TARGETS deviced-shutdown DESTINATION /usr/lib/systemd)
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/deviced-request-shutdown@.service
+ DESTINATION /usr/lib/systemd/system)
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/deviced-request-shutdown-reboot.conf
+ DESTINATION /usr/lib/systemd/system/systemd-reboot.service.d)
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/deviced-request-shutdown-poweroff.conf
+ DESTINATION /usr/lib/systemd/system/systemd-poweroff.service.d)
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/deviced-request-shutdown-halt.conf
+ DESTINATION /usr/lib/systemd/system/systemd-halt.service.d)
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/deviced-request-shutdown-exit.conf
+ DESTINATION /usr/lib/systemd/system/systemd-exit.service.d)
+
+ ADD_EXECUTABLE(deviced-request-shutdown src/power-command/command.c src/shared/common.c src/core/execute.c)
+ SET(deviced-request-shutdown_LDFLAGS ${REQUIRED_PKGS_LDFLAGS})
+ TARGET_LINK_LIBRARIES(deviced-request-shutdown ${REQUIRED_PKGS_LDFLAGS} "-lrt -ldl -lm" deviced-common-private)
+ INSTALL(TARGETS deviced-request-shutdown DESTINATION /usr/sbin)
+ENDIF()
+
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/src/deviced/ DESTINATION include/${PROJECT_NAME}
FILES_MATCHING
PATTERN "*_doc.h" EXCLUDE
PATTERN "*.h")
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/src/core/ DESTINATION include/${PROJECT_NAME}/core FILES_MATCHING PATTERN "*.h")
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/src/shared/ DESTINATION include/${PROJECT_NAME}/shared FILES_MATCHING PATTERN "*.h")
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/src/extcon/ DESTINATION include/${PROJECT_NAME}/extcon FILES_MATCHING PATTERN "*.h")
+
IF(BATTERY_MODULE STREQUAL on)
INSTALL_CONF(conf battery)
ENDIF()
-IF(DISPLAY_MODULE STREQUAL on)
- INSTALL_CONF(conf display)
- INSTALL_CONF(conf display-profile-wearable)
- INSTALL_CONF(conf display-enable-timer)
-ENDIF()
-
IF(POWER_MODULE STREQUAL on)
INSTALL_CONF(conf power)
ENDIF()
# USB connection
IF(USB_MODULE STREQUAL on)
- INSTALL_CONF(conf usb-operation)
-
# USB (Manual setting)
INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/scripts/direct_set_debug.sh DESTINATION bin)
IF(${SDB_PRESTART} STREQUAL on)
ENDIF(${SDB_PRESTART} STREQUAL on)
ENDIF()
-IF(TIZEN_FEATURE_CPU_MODULE STREQUAL on)
- INSTALL_CONF(conf cpu)
+IF(CRITICAL_LOG_MODULE STREQUAL on)
+ ADD_DEFINITIONS("-DCRITICAL_LOG_ON")
ENDIF()
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/scripts/deviced.conf DESTINATION /etc/dbus-1/system.d)
-
CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
-INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/systemd/ DESTINATION lib/systemd/system
- FILES_MATCHING
- PATTERN "*.service"
- PATTERN "*.socket"
- PATTERN "sdb-prestart.service" EXCLUDE
- PATTERN "usb-host*" EXCLUDE)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/org.tizen.system.deviced.conf DESTINATION /etc/dbus-1/system.d)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/org.tizen.system.deviced.service DESTINATION /usr/share/dbus-1/system-services)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/deviced.service DESTINATION /usr/lib/systemd/system)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/usb-host-ffs-test-daemon.service DESTINATION /usr/lib/systemd/system)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/usb-host-test.socket DESTINATION /usr/lib/systemd/system)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/strs DESTINATION /etc/mtp-responder-dummy)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/descs DESTINATION /etc/mtp-responder-dummy)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/mtp-responder-dummy.service DESTINATION /usr/lib/systemd/system)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/mtp-responder-dummy.socket DESTINATION /usr/lib/systemd/system)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/rndis.service DESTINATION /usr/lib/systemd/system)
+INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/scripts/rndis.sh DESTINATION /usr/bin)
IF(TIZEN_FEATURE_USBHOST_TEST STREQUAL on)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/usb-host-ffs-test-daemon.service
DESTINATION lib/systemd/system)
ENDIF()
-ADD_SUBDIRECTORY(src/shared)
+ADD_SUBDIRECTORY(src/battery-monitor)
ADD_SUBDIRECTORY(src/libdeviced)
ADD_SUBDIRECTORY(src/devicectl)
IF(TIZEN_FEATURE_USBHOST_TEST STREQUAL on)
ADD_SUBDIRECTORY(src/usb-host-ffs-test-daemon)
ENDIF()
+
ADD_SUBDIRECTORY(src/auto-test)
+
+# Plugins
+ADD_SOURCE(src/display DISPLAY_SRCS)
+SET(SRCS ${SRCS} ${DISPLAY_SRCS})
+ADD_SUBDIRECTORY(plugins/mobile/display)
+ADD_SUBDIRECTORY(plugins/wearable/display)
+ADD_SUBDIRECTORY(plugins/tv/display)
+ADD_SUBDIRECTORY(plugins/iot-headed/display)
+IF(BATTERY_MODULE STREQUAL on)
+ ADD_SUBDIRECTORY(plugins/mobile/battery)
+ ADD_SUBDIRECTORY(plugins/wearable/battery)
+ENDIF()
+INSTALL_CONF(conf mobile-display)
+INSTALL_CONF(conf wearable-display)
+INSTALL_CONF(conf tv-display)
+INSTALL_CONF(conf iot-headed-display)