Remove the execution flag from non-executables
[platform/core/connectivity/mtp-responder.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(mtp-responder C)
3
4 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
5 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/entity)
6 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/transport)
7 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/util)
8
9 AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src SRCS)
10 AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/entity SRCS)
11 AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/transport SRCS)
12 AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/util SRCS)
13
14 IF(BUILD_GCOV)
15         ADD_DEFINITIONS("-DTIZEN_TEST_GCOV")
16 ENDIF(BUILD_GCOV)
17
18 INCLUDE(FindPkgConfig)
19 pkg_check_modules(pkgs REQUIRED glib-2.0 capi-content-media-content
20         capi-media-metadata-extractor vconf dlog tapi capi-system-info storage libsystemd-daemon libsystemd)
21
22 FOREACH(flag ${pkgs_CFLAGS})
23         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
24 ENDFOREACH(flag)
25
26 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wall -Werror-implicit-function-declaration")
27 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fexceptions -fvisibility=hidden -fprofile-arcs -ftest-coverage")
28
29 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIE")
30 SET(CMAKE_EXE_LINKER_FLAGS " -Wl,--as-needed -pie -Wl,--hash-style=both,-z,relroi ")
31
32 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
33 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} pthread rt gcrypt)
34
35 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
36 INSTALL(FILES mtp-responder.conf DESTINATION /opt/var/lib/misc)
37
38 ADD_EXECUTABLE(extract_descs_strs ${CMAKE_SOURCE_DIR}/src/extract_descs/mtp_extract_descs_strs.c
39         ${CMAKE_SOURCE_DIR}/src/transport/mtp_descs_strings.c)
40 ADD_CUSTOM_COMMAND(OUTPUT descs strs
41         COMMAND ./extract_descs_strs
42         DEPENDS extract_descs_strs)
43 ADD_CUSTOM_TARGET(descs_strs ALL DEPENDS descs strs)
44
45 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/descs DESTINATION /etc/mtp-responder)
46 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/strs DESTINATION /etc/mtp-responder)
47
48 IF(BUILD_GTESTS)
49         ADD_SUBDIRECTORY(unittest)
50 ENDIF(BUILD_GTESTS)