1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
4 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
5 SET(EXEC_PREFIX ${CMAKE_INSTALL_BINDIR})
6 SET(LIBDIR ${CMAKE_INSTALL_LIBDIR})
7 SET(INCLUDEDIR ${INCLUDE_INSTALL_DIR})
8 SET(TAPI_VERSION ${TAPI_VERSION})
10 # Set required packages
11 INCLUDE(FindPkgConfig)
12 pkg_check_modules(pkgs REQUIRED glib-2.0 gio-unix-2.0 dlog security-server)
14 FOREACH(flag ${pkgs_CFLAGS})
15 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
18 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wextra -Wall -Wno-unused-parameter -Wno-missing-field-initializers")
20 #Garbage collection - Unused code
21 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fdata-sections -ffunction-sections -Wl,--gc-sections")
25 ${CMAKE_SOURCE_DIR}/include
26 ${CMAKE_SOURCE_DIR}/include/common
27 ${CMAKE_SOURCE_DIR}/include/private
30 ADD_DEFINITIONS("-DFEATURE_DLOG_DEBUG")
31 ADD_DEFINITIONS("-DTAPI_LOG_TAG=\"LIBTAPI\"")
32 ADD_DEFINITIONS("-DEXPORT_API=__attribute__((visibility(\"default\")))")
34 MESSAGE(${CMAKE_C_FLAGS})
35 MESSAGE(${CMAKE_EXE_LINKER_FLAGS})
53 SET(INTROSPECTION_PATH ${CMAKE_SOURCE_DIR}/introspection)
56 OUTPUT ${CMAKE_BINARY_DIR}/generated-code.c
57 COMMAND gdbus-codegen --interface-prefix org.tizen.telephony.
58 --generate-c-code generated-code
59 --c-namespace Telephony
60 --c-generate-object-manager
61 --generate-docbook generated-docs
62 ${INTROSPECTION_PATH}/network.xml
63 ${INTROSPECTION_PATH}/sim.xml
64 ${INTROSPECTION_PATH}/phonebook.xml
65 ${INTROSPECTION_PATH}/sap.xml
66 ${INTROSPECTION_PATH}/sat.xml
67 ${INTROSPECTION_PATH}/sms.xml
68 ${INTROSPECTION_PATH}/call.xml
69 ${INTROSPECTION_PATH}/ss.xml
70 ${INTROSPECTION_PATH}/modem.xml
71 ${INTROSPECTION_PATH}/gps.xml
72 COMMENT "Generating GDBus .c/.h"
75 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS} ${CMAKE_BINARY_DIR}/generated-code.c)
76 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
77 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION 0.0.0 SOVERSION 0 OUTPUT_NAME ${PROJECT_NAME})
80 CONFIGURE_FILE(tapi-3.0.pc.in tapi-3.0.pc @ONLY)
82 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION include/tapi-3.0)
83 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/tapi-3.0.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
84 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR} COMPONENT Runtime)
86 ADD_SUBDIRECTORY(test_src)