Introduce xwalk-extensions-common
[platform/framework/web/xwalk-extensions-common.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 PROJECT("xwalk-extensions-common")
4
5 SET(VERSION 0.0.1)
6 SET(VERSION_MAJOR 0)
7
8 INCLUDE(FindPkgConfig)
9
10 IF(NOT CMAKE_BUILD_TYPE)
11     SET(CMAKE_BUILD_TYPE "Release")
12 ENDIF(NOT CMAKE_BUILD_TYPE)
13
14 SET(CMAKE_C_FLAGS_PROFILING    "-O2")
15 SET(CMAKE_CXX_FLAGS_PROFILING  "-O2 -std=c++0x")
16 SET(CMAKE_C_FLAGS_DEBUG        "-O0 -g")
17 SET(CMAKE_CXX_FLAGS_DEBUG      "-O0 -std=c++0x -g")
18 SET(CMAKE_C_FLAGS_RELEASE      "-O2 -g")
19 SET(CMAKE_CXX_FLAGS_RELEASE    "-O2 -std=c++0x -g -fvisibility-inlines-hidden")
20 SET(CMAKE_CXX_FLAGS_CCOV       "-O0 -std=c++0x -g --coverage")
21
22 ADD_DEFINITIONS("-fPIC")
23 ADD_DEFINITIONS("-Wall")                # Generate all warnings
24 ADD_DEFINITIONS("-Wextra")              # Generate even more extra warnings
25 ADD_DEFINITIONS("-Wno-variadic-macros") # Inhibit variadic macros warnings (needed for ORM)
26 ADD_DEFINITIONS("-Wno-deprecated")      # No warnings about deprecated features
27 ADD_DEFINITIONS("-std=c++0x")           # accept C++11x standard
28
29 # common library
30 SET(TARGET_COMMON_LIB ${PROJECT_NAME})
31 INCLUDE_DIRECTORIES (
32   ${PROJECT_SOURCE_DIR}/src
33 )
34 ADD_LIBRARY(${TARGET_COMMON_LIB} SHARED
35   ${PROJECT_SOURCE_DIR}/src/xwalk/xwalk_extension.cc
36 )
37 SET_TARGET_PROPERTIES(${TARGET_COMMON_LIB}
38                       PROPERTIES SOVERSION ${VERSION_MAJOR})
39 SET_TARGET_PROPERTIES(${TARGET_COMMON_LIB}
40                       PROPERTIES VERSION ${VERSION})
41 INSTALL(TARGETS ${TARGET_COMMON_LIB}
42         DESTINATION ${LIB_INSTALL_DIR})
43
44 # common header
45 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
46 SET(LIBDIR ${LIB_INSTALL_DIR})
47 SET(INCLUDEDIR ${CMAKE_INSTALL_PREFIX}/include)
48 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
49 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc
50         DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
51 INSTALL(FILES ${PROJECT_SOURCE_DIR}/src/xwalk/xwalk_extension.h
52         DESTINATION include/xwalk)
53 INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/src/xwalk/extensions
54         DESTINATION include/xwalk)
55
56 # common tools
57 INSTALL(DIRECTORY tools DESTINATION /usr/share/xwalk)
58