1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(system_server C)
5 SET(DEVICED_NAME deviced)
16 ss_device_change_handler.c
37 src/deviced/dd-battery.h)
39 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
42 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src/deviced)
44 SET(MOVINAND_FORMAT movi_format.sh)
46 INCLUDE(FindPkgConfig)
47 pkg_check_modules(pkgs REQUIRED
64 FOREACH(flag ${pkgs_CFLAGS})
65 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
69 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
71 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -fno-omit-frame-pointer -finstrument-functions")
73 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
74 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
75 MESSAGE("FLAGS: ${CMAKE_C_FLAGS}")
77 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
78 ADD_DEFINITIONS("-DPREDEFINE_SO_DIR=\"${LIB_INSTALL_DIR}/ss_predefine/\"")
79 ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
80 IF( $ENV{ARCH} MATCHES "arm" )
81 ADD_DEFINITIONS("-DTARGET")
83 ADD_DEFINITIONS("-DDEBUG -DENABLE_DLOG_OUT")
85 SET(UDEV_RULES_PATH share/system-server/udev-rules)
86 SET(UDEV_RULES udev-rules/91-system-server.rules)
88 CONFIGURE_FILE(${UDEV_RULES}.in ${UDEV_RULES} @ONLY)
91 ADD_LIBRARY(${DEVICED_NAME} SHARED ${DEVICED_SRCS})
92 TARGET_LINK_LIBRARIES(${DEVICED_NAME} ${pkgs_LDFLAGS})
93 SET_TARGET_PROPERTIES(${DEVICED_NAME} PROPERTIES VERSION ${VERSION})
94 INSTALL(TARGETS ${DEVICED_NAME} DESTINATION lib COMPONENT RuntimeLibraries)
96 FOREACH(hfile ${DEVICED_HEADERS})
97 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${hfile} DESTINATION include/${DEVICED_NAME})
100 CONFIGURE_FILE(${DEVICED_NAME}.pc.in ${DEVICED_NAME}.pc @ONLY)
101 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${DEVICED_NAME}.pc DESTINATION lib/pkgconfig)
103 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
104 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} "-ldl" "-ludev" "-lsmack")
105 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
107 INSTALL(FILES ${MOVINAND_FORMAT} DESTINATION bin)
108 INSTALL(FILES ${UDEV_RULES} DESTINATION ${UDEV_RULES_PATH})
109 INSTALL(FILES system-server.conf DESTINATION /etc/dbus-1/system.d)
110 INSTALL(FILES ${CMAKE_SOURCE_DIR}/packaging/system-server.rule DESTINATION /opt/etc/smack/accesses.d)
111 INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/mmc-smack-label DESTINATION bin)
113 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/system-server.service DESTINATION /usr/lib/systemd/system)
114 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/system-server.socket DESTINATION /usr/lib/systemd/system)
116 ADD_SUBDIRECTORY(restarter)
117 ADD_SUBDIRECTORY(sys_event)
118 ADD_SUBDIRECTORY(sys_pci_noti)