1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(power_manager C)
16 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
17 SET(CMAKE_BUILD_TYPE "Release")
18 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
19 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
21 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
23 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
24 SET(CMAKE_C_FLAGS_RELEASE "-O2")
26 INCLUDE(FindPkgConfig)
27 pkg_check_modules(pkgs REQUIRED vconf glib-2.0 sysman aul dlog heynoti device-node sensor)
29 FOREACH(flag ${pkgs_CFLAGS})
30 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
33 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -fno-omit-frame-pointer -finstrument-functions")
35 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
37 ADD_DEFINITIONS("-DENABLE_KEY_FILTER")
38 ADD_DEFINITIONS("-DENABLE_X_LCD_ONOFF")
39 ADD_DEFINITIONS("-DENABLE_DLOG_OUT")
40 ADD_DEFINITIONS("-DLIBPREFIX=\"${LIB_INSTALL_DIR}\"")
41 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
42 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} -ldl)
44 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
45 SET(EXEC ${PROJECT_NAME})
46 CONFIGURE_FILE(pmctrl.in pmctrl @ONLY)
48 SET(UDEV_RULES_PATH share/power-manager/udev-rules)
49 SET(UDEV_RULES udev-rules/91-power-manager.rules)
51 CONFIGURE_FILE(${UDEV_RULES}.in ${UDEV_RULES} @ONLY)
53 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
54 INSTALL(PROGRAMS ${CMAKE_BINARY_DIR}/pmctrl DESTINATION bin)
55 INSTALL(FILES ${UDEV_RULES} DESTINATION ${UDEV_RULES_PATH})
57 ADD_SUBDIRECTORY(pm_event)