Add x11 dependency
[platform/core/uifw/libscl-core.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(libscl-core)
3
4 SET(SRCS
5     src/sclcoreui.cpp
6     src/sclcoreui-efl.cpp
7     src/sclcoreimpl.cpp
8     src/sclconnection.cpp
9     src/sclconnection-isf.cpp
10     src/sclcore.cpp
11 )
12
13 IF (with_wayland)
14     SET(SRCS ${SRCS} src/input-method-protocol.c)
15 ELSE (with_wayland)
16     SET(SRCS ${SRCS})
17 ENDIF (with_wayland)
18
19 SET(PACKAGE ${PROJECT_NAME})
20 SET(PKGNAME ${PACKAGE})
21 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
22 SET(LIBDIR ${LIB_INSTALL_DIR})
23
24 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
25     SET(CMAKE_BUILD_TYPE "Release")
26 ENDIF()
27 MESSAGE(STATUS "Build type: ${CMAKE_BUILD_TYPE}")
28
29 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src
30                     ${CMAKE_SOURCE_DIR}/src/include
31                    )
32
33 INCLUDE(FindPkgConfig)
34
35 SET(PKGS_CHECK_MODULES
36         elementary
37         dlog
38         isf
39         vconf
40         libscl-common
41         )
42
43 IF (with_wayland)
44         ADD_DEFINITIONS("-DWAYLAND")
45         pkg_check_modules(pkgs REQUIRED ${PKGS_CHECK_MODULES} ecore-wayland wayland-client)
46 ELSE (with_wayland)
47         pkg_check_modules(pkgs REQUIRED ${PKGS_CHECK_MODULES} ecore-x x11)
48 ENDIF(with_wayland)
49
50 FOREACH(flag ${pkgs_CFLAGS})
51     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
52 ENDFOREACH(flag)
53
54 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall")
55 SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
56 SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -g")
57
58 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
59 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
60 ADD_DEFINITIONS("-DLOG_TAG=\"LIBSCL_CORE\"")
61 ADD_DEFINITIONS("-D__EFL__")
62
63 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
64
65 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
66
67 set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "")
68 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR})
69
70 INSTALL(FILES "${CMAKE_SOURCE_DIR}/src/sclcore.h" DESTINATION include/libscl-core)
71 INSTALL(FILES "${CMAKE_SOURCE_DIR}/src/sclcoretypes.h" DESTINATION include/libscl-core)
72 INSTALL(FILES "${CMAKE_SOURCE_DIR}/src/sclcorecallback.h" DESTINATION include/libscl-core)
73
74 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
75 INSTALL(FILES ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIBDIR}/pkgconfig)