tizen 2.4 release
[framework/telephony/libcall-manager.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(call-manager C)
3
4 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
5 SET(EXEC_PREFIX "\${prefix}")
6 SET(LIBDIR "\${prefix}/lib")
7 SET(INCLUDEDIR "\${prefix}/include")
8 SET(CLIENT "call-manager")
9
10 INCLUDE(FindPkgConfig)
11 pkg_check_modules(client_pkgs REQUIRED
12         glib-2.0
13         gio-2.0
14         dlog
15         vconf
16         capi-system-device
17         capi-base-common
18         capi-system-info
19 )
20
21 FOREACH(flag ${client_pkgs_CFLAGS})
22         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
23 ENDFOREACH(flag)
24
25 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
26 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wextra -fvisibility=hidden -fPIC -fdata-sections -ffunction-sections -Wl,--gc-sections")
27 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter -Wno-missing-field-initializers -Wmissing-declarations -Wcast-align")
28
29 SET(CLIENT_SRCS
30         src/call-manager.c
31 )
32
33 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include/)
34
35 ADD_LIBRARY(${CLIENT} SHARED ${CLIENT_SRCS})
36 TARGET_LINK_LIBRARIES(${CLIENT} ${client_pkgs_LDFLAGS})
37 SET_TARGET_PROPERTIES(${CLIENT} PROPERTIES VERSION 0.0.0 SOVERSION 0 OUTPUT_NAME ${CLIENT})
38
39 # pkgconfig file
40 CONFIGURE_FILE(callmgr_client.pc.in callmgr_client.pc @ONLY)
41
42 # install
43 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION include/${CLIENT})
44 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/callmgr_client.pc DESTINATION ${LIBDIR}/pkgconfig)
45 INSTALL(TARGETS ${CLIENT} DESTINATION ${LIBDIR})
46 INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME libcall-manager)
47 ADD_SUBDIRECTORY(test)