Setting smack labels to User with vconftool option
[platform/core/appfw/ail.git] / CMakeLists.txt
1 # AIL build script
2
3 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
4 PROJECT(ail C)
5 SET(LIBNAME "lib${PROJECT_NAME}")
6 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
7 SET(BINDIR "${PREFIX}/bin")
8 SET(LIBDIR "${LIB_INSTALL_DIR}")
9 SET(INCLUDEDIR "${PREFIX}/include")
10 SET(VERSION_MAJOR 0)
11 SET(VERSION "${VERSION_MAJOR}.1.0")
12
13 # Add definitions
14 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
15 ADD_DEFINITIONS("-DPKGTYPE=\"${BUILD_PKGTYPE}\"")
16
17 EXECUTE_PROCESS(COMMAND ../build_util/code_gen.sh)
18
19 SET(SRCS
20         src/ail_db.c
21         src/ail_filter.c
22         src/ail_sql.c
23         src/ail_package.c
24         src/ail_desktop.c
25         src/ail_convert.c
26         src/ail_vconf.c
27 )
28
29 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
30
31 INCLUDE(FindPkgConfig)
32
33 pkg_check_modules(LDPC REQUIRED libtzplatform-config)
34 FOREACH(flag ${LDPC_LIBRARIES})
35         SET(PC_LIB "${PC_LIB} -l${flag}")
36 ENDFOREACH(flag)
37
38 pkg_check_modules(LPKGS REQUIRED glib-2.0 sqlite3 dlog db-util xdgmime vconf libtzplatform-config libsmack)
39 STRING(REPLACE ";" " " EXTRA_CFLAGS "${LPKGS_CFLAGS}")
40 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
41
42 # Make libraries
43 ADD_LIBRARY(${LIBNAME} SHARED ${SRCS})
44 TARGET_LINK_LIBRARIES(${LIBNAME} ${LPKGS_LIBRARIES})
45 SET_TARGET_PROPERTIES(${LIBNAME} PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS}")
46 SET_TARGET_PROPERTIES(${LIBNAME} PROPERTIES PREFIX "")
47 SET_TARGET_PROPERTIES(${LIBNAME} PROPERTIES VERSION ${VERSION})
48 SET_TARGET_PROPERTIES(${LIBNAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
49
50 # PC file
51 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc @ONLY)
52
53 # Install
54 INSTALL(TARGETS ${LIBNAME} DESTINATION ${LIB_INSTALL_DIR})
55 INSTALL(FILES ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
56 INSTALL(FILES ${CMAKE_SOURCE_DIR}/include/ail.h DESTINATION include)
57 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/desktop.conf.in ${CMAKE_SOURCE_DIR}/desktop.conf)
58 INSTALL(FILES ${CMAKE_SOURCE_DIR}/desktop.conf DESTINATION share/install-info)
59
60 # AIL init database
61 ADD_SUBDIRECTORY(tool)