1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(capi-battery-monitor)
4 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
7 INCLUDE_DIRECTORIES(${INC_DIR})
10 pkg_check_modules(PKGS REQUIRED
20 OUTPUT battery-monitor-stub.c
21 COMMAND gdbus-codegen --interface-prefix org.tizen.
22 --generate-c-code battery-monitor-stub ./packaging/battery-monitor.xml
23 COMMENT "Generating Battery-Monitor Client GDBus .c/.h")
25 INCLUDE_DIRECTORIES(${PKGS_INCLUDE_DIRS})
26 LINK_DIRECTORIES(${PKGS_LIBRARY_DIRS})
28 FOREACH(flag ${PKGS_CFLAGS})
29 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
32 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror")
33 SET(LIB_NAME "${PROJECT_NAME}")
34 SET(LIB_PREFIX ${CMAKE_INSTALL_PREFIX})
35 SET(LIB_DIR "${LIB_PATH}")
36 SET(LIB_INCLUDE_DIR "${LIB_PREFIX}/include")
37 SET(LIB_PKGCONFIG_DIR "${LIB_PATH}/pkgconfig")
40 ./battery-monitor-stub.c
42 src/battery_monitor_util.c
45 INCLUDE_DIRECTORIES(${INC_DIR})
46 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
48 ADD_LIBRARY(${LIB_NAME} SHARED ${SRCS})
49 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${PKGS_LDFLAGS})
51 SET_TARGET_PROPERTIES(${LIB_NAME}
58 INSTALL(TARGETS ${LIB_NAME} DESTINATION ${LIB_DIR})
60 DIRECTORY ${INC_DIR}/ DESTINATION ${LIB_INCLUDE_DIR}
62 PATTERN "${INC_DIR}/battery_monitor.h"
65 SET(PC_NAME ${LIB_NAME})
66 SET(PC_REQUIRED ${pc_dependents})
67 SET(PC_LDFLAGS -l${LIB_NAME})
71 ${CMAKE_CURRENT_SOURCE_DIR}/${LIB_NAME}.pc
74 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${LIB_NAME}.pc DESTINATION ${LIB_PKGCONFIG_DIR})
76 ADD_SUBDIRECTORY(test)