project(powerd) cmake_minimum_required(VERSION 2.8.9) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}") if (NOT CMAKE_BUILD_TYPE) message(STATUS "No build type selected, default to Release") set(CMAKE_BUILD_TYPE "Release") endif() set(CMAKE_C_FLAGS "-Wall") set(CMAKE_CXX_FLAGS "-Wall") set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb -g") set(CMAKE_CXX_FLAGS_DEBUG "-O0 -ggdb -g") set(CMAKE_C_FLAGS_RELEASE "-O3") set(CMAKE_CXX_FLAGS_RELEASE "-O3") set(GDBUS_NAME powerd-dbus) find_package(PkgConfig) pkg_check_modules(GLIB glib-2.0) pkg_check_modules(GIO gio-2.0) pkg_check_modules(GIO-UNIX gio-unix-2.0) pkg_check_modules(LIBUDEV libudev) pkg_check_modules(UPOWER_GLIB upower-glib) pkg_check_modules(UUID uuid) set(POWERD_GENERATED_SOURCES ${GDBUS_NAME}.c ) set(POWERD_GENERATED_HEADERS ${GDBUS_NAME}.h ) SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/src/${POWERD_GENERATED_SOURCES} PROPERTIES GENERATED 1) set(POWERD_DEVICE_CONFIGS_PATH "${CMAKE_INSTALL_PREFIX}/share/powerd/device_configs") FILE(GLOB device_config_files "${CMAKE_CURRENT_SOURCE_DIR}/data/device_configs/*.xml") add_definitions(-DPOWERD_DEVICE_CONFIGS_PATH=\"${POWERD_DEVICE_CONFIGS_PATH}\") set( SRCS src/powerd.cpp src/autobrightness.c src/backlight.c src/device-config.c src/display.c src/display-request.c src/log.c src/power-request.c src/power-source.c src/powerd-client.c src/powerd-object.c src/powerd-sensors.cpp src/spline.c src/stats.c src/util.c src/${GDBUS_NAME}.c ) link_directories( ${GLIB_LIBRARY_DIRS} ${GIO_LIBRARY_DIRS} ${GIO-UNIX_LIBRARY_DIRS} ${LIBUDEV_LIBRARY_DIRS} ${UPOWER_GLIB_LIBRARY_DIRS} ${UUID_LIBRARY_DIRS} ) include_directories( ${GLIB_INCLUDE_DIRS} ${GIO_INCLUDE_DIRS} ${GIO-UNIX_INCLUDE_DIRS} ${LIBUDEV_INCLUDE_DIRS} ${UPOWER_GLIB_INCLUDE_DIRS} ${UUID_INCLUDE_DIRS} ${PROJECT_SOURCE_DIR}/libsuspend ${CMAKE_CURRENT_BINARY_DIR}/src ) add_subdirectory(libsuspend) add_subdirectory(src) add_subdirectory(cli) include(UseGSettings) SET (POWERD_SCHEMAS "data/com.canonical.powerd.gschema.xml") add_schema(${POWERD_SCHEMAS}) add_executable( powerd ${SRCS} ) add_dependencies( powerd dbus_bindings ${POWERD_SCHEMAS} ) target_link_libraries( powerd suspend is sf hybris_ics ${GLIB_LIBRARIES} ${GIO_LIBRARIES} ${GIO-UNIX_LIBRARIES} ${PHABLET_LIBRARIES} "-lubuntu_application_api" "-landroid-properties" "-lhardware" ${LIBUDEV_LIBRARIES} ${UPOWER_GLIB_LIBRARIES} ${UUID_LIBRARIES} ) install( TARGETS powerd RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib/static ) install( FILES ${device_config_files} DESTINATION ${POWERD_DEVICE_CONFIGS_PATH} )