1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
4 SET(INSTALL_EXEC_PREFIX "${INSTALL_PREFIX}/bin")
5 SET(CMAKE_VERBOSE_MAKEFILE 0)
7 SET(PROJECT_ROOT_DIR "${CMAKE_SOURCE_DIR}")
8 SET(PROJECT_RESOURCES_DIR "${PROJECT_ROOT_DIR}/res")
10 INCLUDE(FindPkgConfig)
11 pkg_check_modules(APP_PKGS REQUIRED
13 capi-appfw-application
14 capi-appfw-service-application
15 capi-system-peripheral-io
19 FOREACH (flag ${APP_PKGS_CFLAGS})
20 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
23 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -Wall -Winline -g -fno-builtin-malloc -fPIE")
24 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
25 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
27 INCLUDE_DIRECTORIES(${PROJECT_ROOT_DIR}/inc)
29 ADD_EXECUTABLE(${PROJECT_NAME}
30 ${PROJECT_ROOT_DIR}/src/app.c
31 ${PROJECT_ROOT_DIR}/src/log.c
32 ${PROJECT_ROOT_DIR}/src/dc_motor.c
33 ${PROJECT_ROOT_DIR}/src/servo_motor.c
34 ${PROJECT_ROOT_DIR}/src/pca9685.c
35 ${PROJECT_ROOT_DIR}/src/resource.c
36 ${PROJECT_ROOT_DIR}/src/resource/resource_infrared_obstacle_avoidance_sensor.c
39 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} -lm)
40 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${APP_PKGS_LDFLAGS})
42 CONFIGURE_FILE(${PROJECT_ROOT_DIR}/tizen-manifest.xml.in ${ORG_PREFIX}.${PROJECT_NAME}.xml @ONLY)
44 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${INSTALL_EXEC_PREFIX})
45 INSTALL(FILES ${ORG_PREFIX}.${PROJECT_NAME}.xml DESTINATION ${SYS_PACKAGES_DIR})
46 INSTALL(FILES ${PROJECT_ROOT_DIR}/shared/res/default_icon.png DESTINATION ${SYS_ICONS_DIR} RENAME ${PROJECT_NAME}.png)