Fix CMakeLists.txt
[platform/core/appfw/libeventsystem.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 PROJECT(eventsystem C)
4 AUX_SOURCE_DIRECTORY(src/ SRCS)
5
6 SET(VERSION 0.0.1)
7 SET(VERSION_MAJOR 0)
8
9 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
10 SET(EXEC_PREFIX "\${prefix}")
11 SET(LIBDIR "\${prefix}/lib")
12 SET(INCLUDEDIR "\${prefix}/include")
13
14 set(CMAKE_SKIP_BUILD_RPATH true)
15
16 ### Local include directories
17 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/src)
18
19 ### Required packages
20 INCLUDE(FindPkgConfig)
21
22 pkg_check_modules(libpkgs REQUIRED dlog bundle openssl glib-2.0 capi-base-common)
23
24 #FIND_LIBRARY(LIB_DL dl)
25
26 FOREACH(flag ${libpkgs_CFLAGS})
27         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
28 ENDFOREACH(flag)
29
30 ## Additional flag
31 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
32 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall")
33 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
34
35 ## Linker flags
36 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
37
38 ## build eventsystem library
39 add_library(eventsystem SHARED ${SRCS})
40
41 #TARGET_LINK_LIBRARIES(eventsystem "-ldl")
42 TARGET_LINK_LIBRARIES(eventsystem ${libpkgs_LDFLAGS})
43 SET_TARGET_PROPERTIES(eventsystem PROPERTIES SOVERSION ${VERSION_MAJOR})
44 SET_TARGET_PROPERTIES(eventsystem PROPERTIES VERSION ${VERSION})
45
46 # pkgconfig file
47 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/eventsystem.pc.in ${CMAKE_BINARY_DIR}/eventsystem.pc @ONLY)
48 configure_file(eventsystem.manifest.in eventsystem.manifest @ONLY)
49
50 INSTALL(TARGETS eventsystem DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
51 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/eventsystem.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
52 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include/
53         FILES_MATCHING
54         PATTERN "*.h"
55         )