1 # Copyright (c) 2019 Samsung Electronics Co., Ltd All Rights Reserved
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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
15 SET(TARGET_VIST_CLI vist-cli)
16 SET(TARGET_VIST_DAEMON vistd)
17 SET(TARGET_VIST_TEST vist-test)
19 SET(${TARGET_VIST_LIB}_SRCS "")
20 SET(${TARGET_VIST_LIB}_TESTS "")
21 SET(${TARGET_VIST_COMMON_LIB}_SRCS "")
24 SET(DEPENDENCY sqlite3
28 PKG_CHECK_MODULES(VIST_COMMON_DEPS REQUIRED ${DEPENDENCY})
29 INCLUDE_DIRECTORIES(SYSTEM ${VIST_COMMON_DEPS_INCLUDE_DIRS})
30 ADD_DEFINITIONS(-DTIZEN="TIZEN")
31 ENDIF(DEFINED GBS_BUILD)
33 INCLUDE_DIRECTORIES(SYSTEM . common ${VIST_COMMON_DEPS_INCLUDE_DIRS})
35 ADD_DEFINITIONS(-DDB_PATH="${DB_INSTALL_DIR}/.vist.db"
36 -DDEFAULT_POLICY_ADMIN="${DEFAULT_POLICY_ADMIN}"
37 -DPLUGIN_INSTALL_DIR="${PLUGIN_INSTALL_DIR}"
38 -DTABLE_INSTALL_DIR="${TABLE_INSTALL_DIR}"
39 -DSCRIPT_INSTALL_DIR="${SCRIPT_INSTALL_DIR}")
41 ADD_DEFINITIONS("-Werror")
42 ADD_DEFINITIONS("-Wall")
43 ADD_DEFINITIONS("-Wextra")
44 ADD_DEFINITIONS("-pedantic")
45 ADD_DEFINITIONS("-pedantic-errors")
48 ADD_SUBDIRECTORY(common)
49 ADD_SUBDIRECTORY(database)
50 ADD_SUBDIRECTORY(event)
51 ADD_SUBDIRECTORY(json)
52 ADD_SUBDIRECTORY(klass)
53 ADD_SUBDIRECTORY(logger)
54 ADD_SUBDIRECTORY(query-builder)
61 ADD_SUBDIRECTORY(policy)
64 ADD_SUBDIRECTORY(client)
67 ADD_SUBDIRECTORY(notification)
68 ADD_SUBDIRECTORY(service)
69 ADD_SUBDIRECTORY(table)
71 ADD_LIBRARY(${TARGET_VIST_COMMON_LIB} STATIC ${${TARGET_VIST_COMMON_LIB}_SRCS})
74 TARGET_LINK_LIBRARIES(${TARGET_VIST_COMMON_LIB} ${VIST_COMMON_DEPS_LIBRARIES}
75 pthread glog gflags boost_system)
76 ELSE(DEFINED GBS_BUILD)
77 TARGET_LINK_LIBRARIES(${TARGET_VIST_COMMON_LIB} pthread glog gflags boost_system systemd)
78 ENDIF(DEFINED GBS_BUILD)
80 ADD_LIBRARY(${TARGET_VIST_LIB} STATIC ${${TARGET_VIST_LIB}_SRCS})
81 TARGET_LINK_LIBRARIES(${TARGET_VIST_LIB} ${TARGET_VIST_COMMON_LIB}
82 ${TARGET_VIST_POLICY_LIB}
86 ADD_EXECUTABLE(${TARGET_VIST_DAEMON} main/main.cpp)
87 TARGET_LINK_LIBRARIES(${TARGET_VIST_DAEMON} ${TARGET_VIST_LIB})
88 TARGET_LINK_WHOLE(${TARGET_VIST_DAEMON} ${TARGET_OSQUERY_LIB})
89 SET_TARGET_PROPERTIES(${TARGET_VIST_DAEMON} PROPERTIES COMPILE_FLAGS "-fPIE")
90 SET_TARGET_PROPERTIES(${TARGET_VIST_DAEMON} PROPERTIES LINK_FLAGS "-pie")
91 INSTALL(TARGETS ${TARGET_VIST_DAEMON}
92 DESTINATION ${CMAKE_INSTALL_BINDIR}
93 PERMISSIONS OWNER_READ
101 ADD_EXECUTABLE(${TARGET_VIST_CLI} main/cli.cpp)
102 TARGET_LINK_LIBRARIES(${TARGET_VIST_CLI} ${TARGET_VIST_CLIENT_LIB})
103 SET_TARGET_PROPERTIES(${TARGET_VIST_CLI} PROPERTIES COMPILE_FLAGS "-fPIE")
104 SET_TARGET_PROPERTIES(${TARGET_VIST_CLI} PROPERTIES LINK_FLAGS "-pie")
105 INSTALL(TARGETS ${TARGET_VIST_CLI}
106 DESTINATION ${CMAKE_INSTALL_BINDIR}
107 PERMISSIONS OWNER_READ
115 ADD_EXECUTABLE(${TARGET_VIST_TEST} main/tests.cpp
116 ${${TARGET_VIST_LIB}_TESTS})
117 TARGET_LINK_LIBRARIES(${TARGET_VIST_TEST} ${TARGET_VIST_LIB}
118 ${TARGET_VIST_CLIENT_LIB}
119 ${TARGET_VIST_COMMON_LIB}
120 ${TARGET_VIST_POLICY_LIB}
123 TARGET_LINK_WHOLE(${TARGET_VIST_TEST} ${TARGET_OSQUERY_LIB})
124 ADD_TEST(${TARGET_VIST_TEST} ${TARGET_VIST_TEST})
125 INSTALL(TARGETS ${TARGET_VIST_TEST}
126 DESTINATION ${CMAKE_INSTALL_BINDIR}
127 PERMISSIONS OWNER_READ