1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
3 PROJECT("xwalk-extensions-common")
10 IF(NOT CMAKE_BUILD_TYPE)
11 SET(CMAKE_BUILD_TYPE "Release")
12 ENDIF(NOT CMAKE_BUILD_TYPE)
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")
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
30 SET(TARGET_COMMON_LIB ${PROJECT_NAME})
32 ${PROJECT_SOURCE_DIR}/src
34 ADD_LIBRARY(${TARGET_COMMON_LIB} SHARED
35 ${PROJECT_SOURCE_DIR}/src/xwalk/xwalk_extension.cc
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})
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)
57 INSTALL(DIRECTORY tools DESTINATION /usr/share/xwalk)