da57f6e8df202af8220eeb64887bf752ee9d0682
[platform/core/pim/libaccounts-svc.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(accounts-svc C)
3
4 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
5 SET(EXEC_PREFIX "\${prefix}")
6 SET(INCLUDEDIR "\${prefix}/include ")
7 SET(VERSION_MAJOR 0)
8 SET(VERSION "${VERSION_MAJOR}.2.52")
9
10 SET(SRCS
11 src/account.c
12 src/account-capability-parser.c
13 )
14
15 SET(TESTSRC
16 src/account.c
17 src/account-capability-parser.c
18 src/utc-account.c
19 )
20
21 SET(XML_PARSE_TEST_SRC
22 src/account.c
23 src/account-capability-parser.c
24 src/account-xml-verify.c
25 )
26
27 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
28
29 INCLUDE(FindPkgConfig)
30 pkg_check_modules(pkgs REQUIRED sqlite3 dlog db-util glib-2.0 capi-base-common vconf capi-appfw-application libxml-2.0 pkgmgr-info aul)
31
32 FOREACH(flag ${pkgs_CFLAGS})
33         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
34 ENDFOREACH(flag)
35
36 FIND_PROGRAM(UNAME NAMES uname)
37 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
38 IF ("${ARCH}" STREQUAL "arm")
39         ADD_DEFINITIONS("-DTARGET_ARM")
40         MESSAGE("[TARGET] Compile")
41 ELSE  ("${ARCH}" STREQUAL "arm")
42         ADD_DEFINITIONS("-DTARGET_I386")
43         MESSAGE("[i386] Compile")
44 ENDIF ("${ARCH}" STREQUAL "arm")
45
46 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall")
47 SET(CMAKE_LDFLAGS "-Wl,-zdefs")
48
49 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
50 ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
51 ADD_DEFINITIONS("-DSLP_DEBUG")
52
53 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
54 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
55 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
56
57 ADD_EXECUTABLE("acctest" ${TESTSRC})
58
59 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
60 TARGET_LINK_LIBRARIES("acctest" ${pkgs_LDFLAGS})
61
62 ADD_EXECUTABLE("account-xml-verify" ${XML_PARSE_TEST_SRC})
63 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
64 TARGET_LINK_LIBRARIES("account-xml-verify" ${pkgs_LDFLAGS})
65
66 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
67
68 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR}/accounts-svc)
69 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR})
70 INSTALL(FILES ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
71
72 INSTALL(TARGETS account-xml-verify DESTINATION bin)
73
74 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/account.h DESTINATION include)
75 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/account-error.h DESTINATION include)
76 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/account-types.h DESTINATION include)
77
78 #ADD_SUBDIRECTORY(test)