Update spec file for license
[apps/home/libslp-alarm.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(alarm-engine C)
3
4 SET(VERSION_MAJOR 0)
5 SET(VERSION "${VERSION_MAJOR}.0.0")
6
7 #IF($ENV{ARCH} MATCHES "arm")
8 #   MESSAGE("Architecture: $ENV{ARCH}")
9 #   SET(ENV{PKG_CONFIG_PATH} "/usr/x1/lib/pkgconfig:/opt/x1/lib/pkgconfig")
10 #   SET(CMAKE_C_COMPILER "arm-linux-gcc")
11 #   SET(CMAKE_CXX_COMPILER "arm-linux-g++")
12 #   SET(CMAKE_SKIP_BUILD_RPATH TRUE)
13 #   SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
14 #   SET(CMAKE_INSTALL_RPATH "/usr/x1/lib:/opt/x1/lib")
15 #   SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
16 #ENDIF($ENV{ARCH} MATCHES "arm")
17
18 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
19 SET(EXEC_PREFIX ${PREFIX})
20 SET(INCLUDEDIR "/usr/include")
21 SET(PKGCONFIGDIR "/usr/lib/pkgconfig")
22 SET(DBDIR "/opt/dbspace")
23 SET(LIBDIR "/usr/lib")
24 SET(UGLIBDIR "/opt/ug/lib")
25 SET(VERSION 0.1)
26
27 SET(KIES_ALM_DIR "kies_alarm")
28 SET(LIB_NAME_KIES_ALM "kies_alarm")
29
30 #c file
31 SET(SRCS
32         src/libalarm.c
33         src/db.c
34 )
35
36 #include file
37 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
38
39 #dependency
40 INCLUDE(FindPkgConfig)
41 pkg_check_modules(pkgs REQUIRED
42         gobject-2.0 glib-2.0 dlog
43         db-util
44 )
45
46 #CFlags
47 FOREACH(flag ${pkgs_CFLAGS})
48     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
49 ENDFOREACH(flag)
50
51 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -ldl")
52 #SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -finstrument-functions")
53 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
54
55 #definitions
56 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
57 ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
58
59 #add lib
60 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
61 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} -lpthread -ldl)
62 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
63 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
64
65 #pc file
66 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
67
68 #install lib
69 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR} COMPONENT RuntimeLibraries)
70
71 #install pc file
72 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${PKGCONFIGDIR})
73
74 #install head file
75 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/${PROJECT_NAME}.h DESTINATION ${INCLUDEDIR})
76
77 #INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/.alarm.db DESTINATION ${DBDIR})
78 #INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/.alarm.db-journal DESTINATION ${DBDIR})
79
80 #kies_alarm
81 ADD_SUBDIRECTORY(${KIES_ALM_DIR})
82 #test case
83 ADD_SUBDIRECTORY(test)
84
85