tizen 2.3.1 release
[framework/web/mobile/wrt-plugins-tizen.git] / src / Contact / CMakeLists.txt
1 SET(TARGET_NAME ${contact_target})
2 SET(DESTINATION_NAME ${contact_dest})
3 SET(TARGET_IMPL_NAME ${contact_impl})
4 SET(TARGET_CONFIG_NAME ${contact_config})
5
6 PKG_CHECK_MODULES(platform_pkgs_contact REQUIRED accounts-svc contacts-service2 libpcrecpp)
7
8 ADD_DEFINITIONS("-fvisibility=hidden")
9
10 SET(INCLUDE_DIRS
11     ${tizen_include}
12     ${platform_pkgs_contact_INCLUDE_DIRS}
13 )
14
15 INCLUDE_DIRECTORIES(${INCLUDE_COMMON} ${INCLUDE_DIRS})
16 MESSAGE(STATUS "${TARGET_NAME} module includes: INCLUDE_COMMON ${INCLUDE_DIRS}")
17
18 SET(CMAKE_INSTALL_RPATH
19     ${CMAKE_INSTALL_RPATH}
20     ${CMAKE_INSTALL_PREFIX}/${DESTINATION_LIB_PREFIX}/${tizen_dest}
21     ${CMAKE_INSTALL_PREFIX}/${DESTINATION_LIB_PREFIX}/${DESTINATION_NAME}
22 )
23
24 SET(SRCS_IMPL
25     JSAddressBook.cpp
26     JSContact.cpp
27     JSContactAddress.cpp
28     JSContactAnniversary.cpp
29     JSContactEmailAddress.cpp
30     JSContactGroup.cpp
31     JSContactInstantMessenger.cpp
32     JSContactManager.cpp
33     JSContactName.cpp
34     JSContactOrganization.cpp
35     JSContactPhoneNumber.cpp
36     JSContactRef.cpp
37     JSContactRelationship.cpp
38     JSContactWebSite.cpp
39     JSPerson.cpp
40     AddressBook.cpp
41     AddressBookCallbackData.cpp
42     AddressBookChangeCallback.cpp
43     Contact.cpp
44     ContactAddress.cpp
45     ContactAnniversary.cpp
46     ContactEmailAddress.cpp
47     ContactGroup.cpp
48     ContactInstantMessenger.cpp
49     ContactManager.cpp
50     ContactManagerCallbackData.cpp
51     ContactName.cpp
52     ContactOrganization.cpp
53     ContactPhoneNumber.cpp
54     ContactRef.cpp
55     ContactRelationship.cpp
56     ContactSearchEngine.cpp
57     ContactUtil.cpp
58     ContactWebSite.cpp
59     Person.cpp
60     PersonChangeCallback.cpp
61     PersonSearchEngine.cpp
62 )
63
64 ADD_LIBRARY(${TARGET_IMPL_NAME} SHARED ${SRCS_IMPL})
65
66 SET(LINK_LIBS
67     ${tizen_impl}
68     ${platform_pkgs_contact_LIBRARIES}
69 )
70
71 TARGET_LINK_LIBRARIES(${TARGET_IMPL_NAME} ${LIBS_COMMON} ${LINK_LIBS})
72 MESSAGE(STATUS "${TARGET_NAME} module links: LIBS_COMMON ${LINK_LIBS}")
73
74 SET(SRCS_CONFIG
75     plugin_config.cpp
76 )
77
78 ADD_LIBRARY(${TARGET_CONFIG_NAME} SHARED ${SRCS_CONFIG})
79
80 TARGET_LINK_LIBRARIES(${TARGET_CONFIG_NAME}
81     ${LIBS_COMMON}
82 )
83
84 SET(SRCS
85     plugin_initializer.cpp
86 )
87
88 ADD_LIBRARY(${TARGET_NAME} SHARED ${SRCS})
89
90 TARGET_LINK_LIBRARIES(${TARGET_NAME}
91     ${TARGET_IMPL_NAME}
92     ${TARGET_CONFIG_NAME}
93 )
94
95 INSTALL(TARGETS ${TARGET_NAME} ${TARGET_CONFIG_NAME} ${TARGET_IMPL_NAME} LIBRARY DESTINATION ${DESTINATION_LIB_PREFIX}/${DESTINATION_NAME})
96 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/config.xml DESTINATION ${DESTINATION_LIB_PREFIX}/${DESTINATION_NAME})
97 INSTALL(
98     DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${DESTINATION_HEADER_PREFIX}/contact
99     FILES_MATCHING PATTERN "*.h" PATTERN "CMakeFiles" EXCLUDE
100 )