tizen beta release
[framework/web/wrt-installer.git] / src / 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   Lukasz Wrzosek (l.wrzosek@samsung.com)
18 # @version     1.0
19 #
20
21 SET(TARGET_INSTALLER "wrt-installer")
22
23 SET(INSTALLER_SRC_DIR
24     ${PROJECT_SOURCE_DIR}/src
25     )
26
27 SET(INSTALLER_CONFIG_PARSER
28     ${INSTALLER_SRC_DIR}/configuration_parser
29     )
30
31 SET(INSTALLER_JOBS
32     ${INSTALLER_SRC_DIR}/jobs
33     )
34
35 SET(INSTALLER_SECURITY
36     ${INSTALLER_SRC_DIR}/security
37     )
38
39 SET(INSTALLER_DEP_CORE_BASE_SOURCE
40     ${INSTALLER_SECURITY}/attribute_facade.cpp
41     ${INSTALLER_SECURITY}/simple_roaming_agent.cpp
42     ${INSTALLER_SECURITY}/security_controller.cpp
43     ${INSTALLER_SECURITY}/security_logic.cpp
44     )
45
46 SET(INSTALLER_INCLUDES
47     ${INSTALLER_SRC_DIR}
48     ${INSTALLER_SRC_DIR}/logic
49     ${INSTALLER_SRC_DIR}/jobs
50     ${INSTALLER_SRC_DIR}/jobs/plugin_install
51     ${INSTALLER_SRC_DIR}/jobs/widget_install
52     ${INSTALLER_SRC_DIR}/jobs/widget_uninstall
53     ${INSTALLER_SRC_DIR}/misc
54     ${INSTALLER_SRC_DIR}/configuration_parser
55     ${INSTALLER_SRC_DIR}/wrt-installer
56     ${INSTALLER_SRC_DIR}/security
57     ${INSTALLER_SRC_DIR}/commons
58 )
59
60 SET(INSTALLER_SOURCES
61     ${INSTALLER_CONFIG_PARSER}/widget_parser.cpp
62     ${INSTALLER_CONFIG_PARSER}/parser_runner.cpp
63     ${INSTALLER_CONFIG_PARSER}/ignoring_parser.cpp
64     ${INSTALLER_CONFIG_PARSER}/deny_all_parser.cpp
65     ${INSTALLER_CONFIG_PARSER}/powder_parser.cpp
66     ${INSTALLER_CONFIG_PARSER}/libiriwrapper.cpp
67     ${INSTALLER_CONFIG_PARSER}/WidgetConfigurationManager.cpp
68     ${INSTALLER_JOBS}/job.cpp
69     ${INSTALLER_JOBS}/plugin_install/job_plugin_install.cpp
70     ${INSTALLER_JOBS}/plugin_install/plugin_install_task.cpp
71     ${INSTALLER_JOBS}/plugin_install/plugin_objects.cpp
72     ${INSTALLER_JOBS}/plugin_install/plugin_metafile_reader.cpp
73     ${INSTALLER_JOBS}/widget_install/job_widget_install.cpp
74     ${INSTALLER_JOBS}/widget_install/task_unzip.cpp
75     ${INSTALLER_JOBS}/widget_install/task_widget_config.cpp
76     ${INSTALLER_JOBS}/widget_install/task_db_update.cpp
77     ${INSTALLER_JOBS}/widget_install/task_smack.cpp
78     ${INSTALLER_JOBS}/widget_install/task_ace_check.cpp
79     ${INSTALLER_JOBS}/widget_install/task_desktop_file.cpp
80     ${INSTALLER_JOBS}/widget_install/task_parental_mode.cpp
81     ${INSTALLER_JOBS}/widget_install/task_certify.cpp
82     ${INSTALLER_JOBS}/widget_install/task_private_storage.cpp
83     ${INSTALLER_JOBS}/widget_install/wac_security.cpp
84     ${INSTALLER_JOBS}/widget_install/widget_update_info.cpp
85     ${INSTALLER_JOBS}/widget_uninstall/job_widget_uninstall.cpp
86     ${INSTALLER_JOBS}/widget_uninstall/task_check.cpp
87     ${INSTALLER_JOBS}/widget_uninstall/task_remove_files.cpp
88     ${INSTALLER_JOBS}/widget_uninstall/task_db_update.cpp
89     ${INSTALLER_JOBS}/widget_uninstall/task_smack.cpp
90     ${INSTALLER_SRC_DIR}/logic/installer_logic.cpp
91     ${INSTALLER_SRC_DIR}/logic/installer_controller.cpp
92     ${INSTALLER_SRC_DIR}/misc/wrt_powder_info_util.cpp
93     ${INSTALLER_SRC_DIR}/misc/wac_widget_id.cpp
94     ${INSTALLER_SRC_DIR}/misc/feature_logic.cpp
95     )
96
97 MESSAGE(STATUS "add -DSEP_INSTALLER")
98 ADD_DEFINITIONS("-DSEP_INSTALLER")
99
100
101 PKG_CHECK_MODULES(INSTALLER_STATIC_DEP
102     libxml-2.0
103     openssl
104     dpl-efl
105     dpl-vcore
106     dpl-event-efl
107     dpl-utils-efl
108     dpl-popup-efl
109     dpl-wrt-dao-ro
110     dpl-wrt-dao-rw
111     dpl-ace
112     dpl-ace-dao-ro
113     dpl-ace-dao-rw
114     ecore-x
115     elm-webview
116     xmlsec1
117     libidn
118     libiri
119     libpcrecpp
120     REQUIRED
121     )
122
123 INCLUDE_DIRECTORIES(
124     ${INSTALLER_DEP_INCLUDES}
125     ${INSTALLER_INCLUDES}
126     ${INSTALLER_STATIC_DEP_INCLUDE_DIRS}
127     )
128
129 ADD_LIBRARY(${TARGET_INSTALLER_STATIC} STATIC
130     ${INSTALLER_DEP_CORE_BASE_SOURCE}
131     ${INSTALLER_SOURCES}
132     )
133
134 ADD_DEFINITIONS(${INSTALLER_STATIC_DEP_CFLAGS})
135 ADD_DEFINITIONS(${INSTALLER_STATIC_DEP_CFLAGS_OTHERS})
136
137 TARGET_LINK_LIBRARIES(${TARGET_INSTALLER_STATIC}
138     ${INSTALLER_STATIC_DEP_LIBRARIES}
139     )
140
141 SET_TARGET_PROPERTIES(${TARGET_INSTALLER_STATIC} PROPERTIES
142         COMPILE_FLAGS -fPIC)
143
144 ADD_SUBDIRECTORY(pkg-manager)
145 ADD_SUBDIRECTORY(wrt-installer)
146 ADD_SUBDIRECTORY(config_generator)