dd68584c36bf5c91ce5c8b248755c0e8e23c1cc3
[framework/web/wrt-plugins-common.git] / src / js-overlay / CMakeLists.txt
1 # Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
2 #
3 #    Licensed under the Apache License, Version 2.0 (the "License");
4 #    you may not use this file except in compliance with the License.
5 #    You may obtain a copy of the License at
6 #
7 #        http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #    Unless required by applicable law or agreed to in writing, software
10 #    distributed under the License is distributed on an "AS IS" BASIS,
11 #    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #    See the License for the specific language governing permissions and
13 #    limitations under the License.
14 #
15
16 # @file     CMakeLists.txt
17 # @author   Yunchan Cho (yunchan.cho@samsung.com)
18 # @version  1.0
19 #
20 MACRO(INSTALL_HEADER_FILE HEADER_FILE)
21     INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${HEADER_FILE}
22         DESTINATION ${DESTINATION_HEADERS_JS_OVERLAY})
23 ENDMACRO()
24
25 pkg_search_module(webkit2 REQUIRED ewebkit2)
26 pkg_search_module(plugin-types REQUIRED wrt-plugins-types)
27
28 SET(TARGET_NAME ${TARGET_JS_OVERLAY})
29
30 SET(SRCS
31     ${CMAKE_CURRENT_SOURCE_DIR}/js_overlay_support.cpp
32     ${CMAKE_CURRENT_SOURCE_DIR}/js_function_manager.cpp
33     ${CMAKE_CURRENT_SOURCE_DIR}/js_overlay_addEventListener.cpp
34     ${CMAKE_CURRENT_SOURCE_DIR}/js_overlay_functions.cpp
35     ${CMAKE_CURRENT_SOURCE_DIR}/js_iframe_support.cpp
36     ${CMAKE_CURRENT_SOURCE_DIR}/JSClass/JSStorageEvent.cpp
37     ${CMAKE_CURRENT_SOURCE_DIR}/JSClass/JSTizenServiceEvent.cpp
38     ${CMAKE_CURRENT_SOURCE_DIR}/JSClass/JSSoftKeyboardChangeEvent.cpp
39 )
40
41 INCLUDE_DIRECTORIES(
42     ${CMAKE_CURRENT_SOURCE_DIR}
43     ${CMAKE_CURRENT_SOURCE_DIR}/JSClass
44     ${webkit2_INCLUDE_DIRS}
45     ${plugin-types_INCLUDE_DIRS}
46 )
47
48 ADD_LIBRARY(${TARGET_NAME} SHARED ${SRCS})
49
50 TARGET_LINK_LIBRARIES(${TARGET_NAME}
51     ${webkit2_LIBRARIES}
52     ${TARGET_COMMONS}
53     ${TARGET_COMMONS_JAVASCRIPT}
54 )
55
56 SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
57     COMPILE_FLAGS -fPIC
58     LINK_FLAGS "-Wl,--as-needed -Wl,--hash-style=both"
59 )
60
61 SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
62     SOVERSION ${CMAKE_PROJECT_API_VERSION}
63     VERSION ${CMAKE_PROJECT_VERSION}
64 )
65
66 INSTALL(TARGETS ${TARGET_NAME}
67     DESTINATION ${DESTINATION_LIB_PREFIX}
68     PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
69     GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
70 )
71
72 INSTALL_HEADER_FILE(js_overlay_types.h)
73