Detach vist-rmi to shared library
authorSangwan Kwon <sangwan.kwon@samsung.com>
Thu, 2 Jan 2020 04:38:08 +0000 (13:38 +0900)
committer권상완/Security 2Lab(SR)/Engineer/삼성전자 <sangwan.kwon@samsung.com>
Fri, 3 Jan 2020 07:58:41 +0000 (16:58 +0900)
Signed-off-by: Sangwan Kwon <sangwan.kwon@samsung.com>
CMake/Definition.cmake
packaging/vist.spec
src/vist/CMakeLists.txt
src/vist/client/CMakeLists.txt
src/vist/rmi/CMakeLists.txt

index 1b485fcc7cedd197ea82504c039dce79b2cc60c5..e042896c85fa887e478d2aa8418f44b7b53a02c1 100644 (file)
@@ -18,6 +18,8 @@ SET(OSQUERY_VERSION "4.0.0")
 SET(RO_DIR "/usr/share")
 SET(RW_DIR "/opt/data")
 
+SET(CMAKE_INSTALL_PREFIX /usr)
+
 SET(VIST_RO_DIR "${RO_DIR}/vist")
 SET(VIST_RW_DIR "${RW_DIR}/vist")
 
index 4f18b9fb2a28669c92ed195a1ae4bd1423b92374..9e0b2f87c2569d6d2c66fa60a8a2d9b0a859f054 100644 (file)
@@ -110,6 +110,7 @@ fi
 %license LICENSE-MIT
 %{_bindir}/vist-cli
 %{_bindir}/vistd
+%{_libdir}/libvist-rmi.so
 %{_unitdir}/vist.service
 %{_unitdir}/vist.socket
 %{_unitdir}/sockets.target.wants/vist.socket
index 41144230f0c652ffa7459b6b58da6ab79bd4dbb7..0a62766cffcb048a42b265b5e6e265d70928c88b 100644 (file)
@@ -68,7 +68,8 @@ ENDIF(DEFINED GBS_BUILD)
 ADD_LIBRARY(${TARGET_VIST_LIB} STATIC ${${TARGET_VIST_LIB}_SRCS})
 TARGET_LINK_LIBRARIES(${TARGET_VIST_LIB} ${TARGET_VIST_COMMON_LIB}
                                                                                 ${TARGET_VIST_POLICY_LIB}
-                                                                                ${TARGET_OSQUERY_LIB})
+                                                                                ${TARGET_OSQUERY_LIB}
+                                                                                vist-rmi)
 
 ADD_EXECUTABLE(${TARGET_VIST_DAEMON} main/main.cpp)
 TARGET_LINK_LIBRARIES(${TARGET_VIST_DAEMON} ${TARGET_VIST_LIB})
@@ -104,6 +105,7 @@ ADD_EXECUTABLE(${TARGET_VIST_TEST} main/tests.cpp
 TARGET_LINK_LIBRARIES(${TARGET_VIST_TEST} ${TARGET_VIST_LIB}
                                                                                  ${TARGET_VIST_CLIENT_LIB}
                                                                                  ${TARGET_VIST_COMMON_LIB}
+                                                                                 vist-rmi
                                                                                  gtest)
 TARGET_LINK_WHOLE(${TARGET_VIST_TEST} ${TARGET_OSQUERY_LIB})
 ADD_TEST(${TARGET_VIST_TEST} ${TARGET_VIST_TEST})
index 0655f15284aab1bb863192015e9779b1f8cf856b..3d80a2e270f965f9fa79ebe639c136310db8230c 100644 (file)
@@ -23,4 +23,5 @@ ADD_VIST_TEST(${CLIENT_TESTS})
 ADD_LIBRARY(${TARGET_VIST_CLIENT_LIB} STATIC ${${TARGET_VIST_CLIENT_LIB}_SRCS})
 TARGET_LINK_LIBRARIES(${TARGET_VIST_CLIENT_LIB} ${VIST_CLIENT_DEPS_LIBRARIES}
                                                                                                ${TARGET_VIST_COMMON_LIB}
+                                                                                               vist-rmi
                                                                                                pthread)
index 3ae4076e87ef319795621b2dc39611648d7ac328..84c108542cf5c4520c0cb2d5a89781915bff60df 100644 (file)
 #  See the License for the specific language governing permissions and
 #  limitations under the License
 
-ADD_VIST_COMMON_LIBRARY(vist_rmi gateway.cpp
-                                                                remote.cpp
-                                                                message.cpp)
+SET(TARGET vist-rmi)
+SET(${TARGET}_SRCS gateway.cpp
+                                  remote.cpp
+                                  message.cpp
+                                  impl/protocol.cpp)
 
-ADD_VIST_COMMON_LIBRARY(vist_rmi_impl impl/protocol.cpp)
+ADD_LIBRARY(${TARGET} SHARED ${${TARGET}_SRCS})
+#SET_TARGET_PROPERTIES(${TARGET} PROPERTIES COMPILE_FLAGS "-fvisibility=hidden")
+
+TARGET_LINK_LIBRARIES(${TARGET} ${TARGET_VIST_COMMON_LIB}
+                                                               boost_system
+                                                               pthread)
+INSTALL(TARGETS ${TARGET}
+               DESTINATION ${CMAKE_INSTALL_LIBDIR}
+               PERMISSIONS OWNER_READ
+                                       OWNER_WRITE
+                                       OWNER_EXECUTE
+                                       GROUP_READ
+                                       GROUP_EXECUTE
+                                       WORLD_READ
+                                       WORLD_EXECUTE)
 
 FILE(GLOB RMI_TESTS "tests/*.cpp")
 ADD_VIST_TEST(${RMI_TESTS})