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