9a81f5c258064dc7d366fb048296f943b6824e62
[framework/pim/calendar-service.git] / client / CMakeLists.txt
1 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
2 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/client)
3 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/common)
4 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/common/ipc)
5 LINK_DIRECTORIES(${CMAKE_BINARY_DIR})
6
7 SET(INC_DIR ${CMAKE_SOURCE_DIR}/include)
8
9 SET(CALSVC2 calendar-service2)
10
11 SET(SRCS
12         cal_client_ipc.c
13         cal_client_db.c
14     cal_client_alert.c
15         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal.c
16         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_alarm.c
17         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_attendee.c
18         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_calendar.c
19         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_event.c
20         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_instance_allday.c
21         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_instance_normal.c
22         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_search.c
23         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_timezone.c
24         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_todo.c
25         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_updated_info.c
26         ${CMAKE_SOURCE_DIR}/common/ipc/cal_ipc_marshal_extended.c
27         ${CMAKE_SOURCE_DIR}/common/cal_record.c
28     ${CMAKE_SOURCE_DIR}/common/cal_record_calendar.c
29     ${CMAKE_SOURCE_DIR}/common/cal_record_event.c
30     ${CMAKE_SOURCE_DIR}/common/cal_record_todo.c
31     ${CMAKE_SOURCE_DIR}/common/cal_record_attendee.c
32     ${CMAKE_SOURCE_DIR}/common/cal_record_alarm.c
33     ${CMAKE_SOURCE_DIR}/common/cal_record_search.c
34     ${CMAKE_SOURCE_DIR}/common/cal_record_timezone.c
35     ${CMAKE_SOURCE_DIR}/common/cal_record_updated_info.c
36     ${CMAKE_SOURCE_DIR}/common/cal_record_instance_normal.c
37     ${CMAKE_SOURCE_DIR}/common/cal_record_instance_allday.c
38     ${CMAKE_SOURCE_DIR}/common/cal_record_extended.c
39     ${CMAKE_SOURCE_DIR}/common/cal_view.c
40     ${CMAKE_SOURCE_DIR}/common/cal_filter.c
41     ${CMAKE_SOURCE_DIR}/common/cal_query.c
42     ${CMAKE_SOURCE_DIR}/common/cal_inotify.c
43     ${CMAKE_SOURCE_DIR}/common/cal_list.c
44     ${CMAKE_SOURCE_DIR}/common/cal_time.cpp
45     ${CMAKE_SOURCE_DIR}/common/cal_vcalendar.c
46     ${CMAKE_SOURCE_DIR}/common/cal_vcalendar_make.c
47     ${CMAKE_SOURCE_DIR}/common/cal_vcalendar_parse.c
48     ${CMAKE_SOURCE_DIR}/common/cal_mutex.c
49 )
50
51 INCLUDE(FindPkgConfig)
52 pkg_check_modules(service2_pkgs REQUIRED pims-ipc dlog capi-base-common)
53
54 FOREACH(flag ${service2_pkgs_CFLAGS})
55         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
56 ENDFOREACH(flag)
57
58 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ")
59 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
60
61 SET(service2_pkgs_LDFLAGS "${pkgs_LDFLAGS} ${service2_pkgs_LDFLAGS}")
62
63 ADD_DEFINITIONS("-DCAL_IPC_CLIENT")
64 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
65
66 #SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
67
68 ADD_LIBRARY(${CALSVC2} SHARED ${SRCS})
69 SET_TARGET_PROPERTIES(${CALSVC2} PROPERTIES SOVERSION ${VERSION_MAJOR})
70 SET_TARGET_PROPERTIES(${CALSVC2} PROPERTIES VERSION ${VERSION})
71 TARGET_LINK_LIBRARIES(${CALSVC2} ${service2_pkgs_LDFLAGS})
72
73 INSTALL(TARGETS ${CALSVC2} DESTINATION lib)
74 INSTALL(FILES ${CALSVC2}.pc DESTINATION lib/pkgconfig)
75
76 #header
77 FILE(GLOB HEADER_FILES ${INC_DIR}/calendar*.h)
78 INSTALL(FILES ${HEADER_FILES} DESTINATION include/calendar-service2)