1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(thing-toggler C)
4 SET(INSTALL_EXEC_PREFIX "${INSTALL_PREFIX}/bin")
5 SET(INSTALL_RESDIR "${INSTALL_PREFIX}/res")
6 SET(CMAKE_VERBOSE_MAKEFILE 0)
8 SET(PROJECT_ROOT_DIR "${CMAKE_SOURCE_DIR}")
9 SET(PROJECT_RESOURCES_DIR "${PROJECT_ROOT_DIR}/res")
11 INCLUDE(FindPkgConfig)
12 pkg_check_modules(APP_PKGS REQUIRED
15 capi-appfw-application
16 capi-appfw-service-application
17 capi-system-peripheral-io
21 FOREACH (flag ${APP_PKGS_CFLAGS})
22 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
25 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -Wall -Winline -g -fno-builtin-malloc -fPIE")
26 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
27 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
29 INCLUDE_DIRECTORIES(${PROJECT_ROOT_DIR}/inc)
31 ADD_EXECUTABLE(${PROJECT_NAME}
32 ${PROJECT_ROOT_DIR}/src/thing_toggler.c
35 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} -lm)
36 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${APP_PKGS_LDFLAGS})
39 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${INSTALL_EXEC_PREFIX})
41 INSTALL(FILES ${PROJECT_ROOT_DIR}/tizen-manifest.xml DESTINATION ${SYS_PACKAGES_DIR} RENAME org.tizen.thing-toggler.xml)
42 INSTALL(DIRECTORY DESTINATION ${PREFIX}/data)
43 INSTALL(FILES ${PROJECT_ROOT_DIR}/shared/res/thing_toggler.png DESTINATION ${SYS_ICONS_DIR})