CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(pkgmgr-info C)
+PROJECT(pkgmgr-info)
INCLUDE(TizenCommon)
ADD_SUBDIRECTORY(parser)
ADD_SUBDIRECTORY(tool)
ADD_SUBDIRECTORY(plugin_list)
-
-## build pkgmgr-info library
-AUX_SOURCE_DIRECTORY(src SRCS)
-ADD_LIBRARY(pkgmgr-info SHARED ${SRCS})
-
-SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES SOVERSION ${MAJORVER})
-SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES VERSION ${FULLVER})
-TARGET_LINK_LIBRARIES(pkgmgr-info pkgmgr_parser ${libpkgs_LDFLAGS})
+ADD_SUBDIRECTORY(src)
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/pkgmgr-info.pc.in ${CMAKE_BINARY_DIR}/pkgmgr-info.pc @ONLY)
CONFIGURE_FILE(pkg_db_version.txt.in pkg_db_version.txt @ONLY)
-INSTALL(TARGETS pkgmgr-info DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkgmgr-info.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION include)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pkg_db_version.txt DESTINATION ${SYSCONFDIR}/package-manager/)
%{_libdir}/libpkgmgr-info.so.*
%{_bindir}/pkg-db-recovery
%{_bindir}/pkg-db-creator
+%{_bindir}/pkginfo-server
%{_unitdir}/pkg-db-recovery.service
%{_unitdir}/basic.target.wants/pkg-db-recovery.service
--- /dev/null
+## build pkgmgr-info library
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR} SRCS)
+ADD_LIBRARY(pkgmgr-info SHARED ${SRCS})
+
+SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES SOVERSION ${MAJORVER})
+SET_TARGET_PROPERTIES(pkgmgr-info PROPERTIES VERSION ${FULLVER})
+TARGET_LINK_LIBRARIES(pkgmgr-info pkgmgr_parser ${libpkgs_LDFLAGS})
+
+INSTALL(TARGETS pkgmgr-info DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
+
+ADD_SUBDIRECTORY(server)
+#ADD_SUBDIRECTORY(client)
\ No newline at end of file
--- /dev/null
+## build pkginfo-server binary
+SET(PKGINFO_SERVER "pkginfo-server")
+SET(PKGINFO_SERVER_LIB "pkginfo-server-lib")
+
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR} PKGINFO_SERVER_SRCS)
+ADD_LIBRARY(${PKGINFO_SERVER_LIB} SHARED
+ ${PKGINFO_SERVER_SRCS})
+ADD_EXECUTABLE(${PKGINFO_SERVER} "main.cc")
+
+SET_TARGET_PROPERTIES(${PKGINFO_SERVER} PROPERTIES LINKER_LANGUAGE CXX)
+
+TARGET_LINK_LIBRARIES(${PKGINFO_SERVER} PRIVATE ${PKGINFO_SERVER_LIB})
+INSTALL(TARGETS ${PKGINFO_SERVER} DESTINATION bin)
+
--- /dev/null
+// Copyright (c) 2021 Samsung Electronics Co., Ltd All Rights Reserved
+// Use of this source code is governed by an apache-2.0 license that can be
+// found in the LICENSE file.
+
+#ifndef SERVER_ABSTRACT_REQUEST_HANDLER_H_
+#define SERVER_ABSTRACT_REQUEST_HANDLER_H_
+
+#include <string>
+
+namespace pkgmgr_server {
+namespace request_handler {
+
+class AbstractRequestHandler {
+ public:
+ virtual bool HandleRequest(std::string data);
+
+ virtual std::string GetResult();
+};
+
+} // namespace request_handler
+} // namespace pkgmgr_server
+
+#endif // SERVER_ABSTRACT_REQUEST_HANDLER_H_
--- /dev/null
+// Copyright (c) 2021 Samsung Electronics Co., Ltd All Rights Reserved
+// Use of this source code is governed by an apache-2.0 license that can be
+// found in the LICENSE file.
+
+#include "get_appinfo_request_handler.h"
+
+#include <string>
+
+namespace pkgmgr_server {
+namespace request_handler {
+
+bool GetAppinfoRequestHandler::HandleRequest(std::string data) {
+ return true;
+}
+
+std::string GetAppinfoRequestHandler::GetResult() {
+ std::string tmp_result("tmp_result");
+
+ return tmp_result;
+}
+
+} // namespace request_handler
+} // namespace pkgmgr_server
--- /dev/null
+// Copyright (c) 2021 Samsung Electronics Co., Ltd All Rights Reserved
+// Use of this source code is governed by an apache-2.0 license that can be
+// found in the LICENSE file.
+
+#ifndef SERVER_GET_APPINFO_REQUEST_HANDLER_H_
+#define SERVER_GET_APPINFO_REQUEST_HANDLER_H_
+
+#include "abstract_request_handler.h"
+
+#include <string>
+
+namespace pkgmgr_server {
+namespace request_handler {
+
+class GetAppinfoRequestHandler : AbstractRequestHandler{
+ public:
+ bool HandleRequest(std::string data);
+
+ std::string GetResult();
+};
+
+} // namespace request_handler
+} // namespace pkgmgr_server
+
+#endif // SERVER_GET_APPINFO_REQUEST_HANDLER_H_
--- /dev/null
+#include <iostream>
+
+int main() {
+ std::cout << "main start" << std::endl;
+
+ return 0;
+}
\ No newline at end of file