From: Sangyoon Jang Date: Thu, 9 Mar 2017 03:48:17 +0000 (+0900) Subject: Revert "Remove Profile Build Dependency: Do it at runtime" X-Git-Tag: accepted/tizen/common/20170310.122327~1 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fappfw%2Fpkgmgr-server.git;a=commitdiff_plain;h=b9f5ae62fe3d20a527d1f106658703b7bcf27f45 Revert "Remove Profile Build Dependency: Do it at runtime" This reverts commit 09082fbbd5b749c4f4fc70018546c3c693f625f0. This is temporary revert commit. Change-Id: Ibc420994d074b9b50d296da69601a52b9875d56c --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 5d9bf55..9612bd6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,7 +25,10 @@ INCLUDE(FindPkgConfig) SET(PKGMGR_SERVER "pkgmgr-server") AUX_SOURCE_DIRECTORY(src SRCS) -SET(SERVER_CHECK_MODULES gio-2.0 glib-2.0 dlog pkgmgr-parser pkgmgr-info libtzplatform-config drm-service-core-tizen libgum sqlite3 pkgmgr pkgmgr-installer libsystemd aul minizip csr capi-system-info) +SET(SERVER_CHECK_MODULES gio-2.0 glib-2.0 dlog pkgmgr-parser pkgmgr-info libtzplatform-config drm-service-core-tizen libgum sqlite3 pkgmgr pkgmgr-installer libsystemd aul minizip) +IF(TIZEN_FEATURE_CSR) + SET(SERVER_CHECK_MODULES "${SERVER_CHECK_MODULES} csr") +ENDIF(TIZEN_FEATURE_CSR) pkg_check_modules(SERVER_DEPS REQUIRED ${SERVER_CHECK_MODULES}) @@ -33,6 +36,10 @@ FOREACH(SERVER_FLAGS ${SERVER_DEPS_CFLAGS}) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SERVER_FLAGS}") ENDFOREACH(SERVER_FLAGS) +IF(TIZEN_FEATURE_CSR) + ADD_DEFINITIONS("-DTIZEN_FEATURE_CSR") +ENDIF(TIZEN_FEATURE_CSR) + ADD_EXECUTABLE(${PKGMGR_SERVER} ${SRCS}) TARGET_LINK_LIBRARIES(${PKGMGR_SERVER} pkgmgr_installer) TARGET_LINK_LIBRARIES(${PKGMGR_SERVER} ${SERVER_DEPS_LDFLAGS}) diff --git a/packaging/pkgmgr-server.spec b/packaging/pkgmgr-server.spec index 211a7c4..9676541 100644 --- a/packaging/pkgmgr-server.spec +++ b/packaging/pkgmgr-server.spec @@ -27,8 +27,9 @@ BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(minizip) BuildRequires: fdupes +%if "%{?TIZEN_PROFILE_TV}" != "1" BuildRequires: pkgconfig(csr) -BuildRequires: pkgconfig(capi-system-info) +%endif %description Packager Manager server package for packaging @@ -44,10 +45,17 @@ cp %{SOURCE1001} . %build sqlite3 restriction.db < ./restriction.sql +%if "%{?TIZEN_PROFILE_TV}" != "1" +_TIZEN_FEATURE_CSR=ON +%else +_TIZEN_FEATURE_CSR=OFF +%endif + %cmake . -DRUN_DIR=%{run_dir} \ -DDB_DIR=%{db_dir} \ -DBACKEND_DIR=%{backend_dir} \ - -DUNITDIR=%{_unitdir} + -DUNITDIR=%{_unitdir} \ + -DTIZEN_FEATURE_CSR:BOOL=${_TIZEN_FEATURE_CSR} %__make %{?_smp_mflags} diff --git a/src/pkgmgr-server.c b/src/pkgmgr-server.c index 638e89a..cf55a28 100644 --- a/src/pkgmgr-server.c +++ b/src/pkgmgr-server.c @@ -42,15 +42,15 @@ #include #include #include +#ifdef TIZEN_FEATURE_CSR #include +#endif #include "pkgmgr_installer.h" #include "pkgmgr-server.h" #include "queue.h" #include "package-manager.h" -#include - #define OWNER_ROOT 0 #define GLOBAL_USER tzplatform_getuid(TZ_SYS_GLOBALAPP_USER) #define APPFW_UID 301 @@ -102,50 +102,6 @@ static void sighandler(int signo); gboolean exit_server(void *data); -typedef enum { - TIZEN_PROFILE_UNKNOWN = 0, - TIZEN_PROFILE_MOBILE = 0x1, - TIZEN_PROFILE_WEARABLE = 0x2, - TIZEN_PROFILE_TV = 0x4, - TIZEN_PROFILE_IVI = 0x8, - TIZEN_PROFILE_COMMON = 0x10, -} tizen_profile_t; - -static tizen_profile_t _get_tizen_profile() -{ - static tizen_profile_t profile = TIZEN_PROFILE_UNKNOWN; - char *profileName; - - if (__builtin_expect(profile != TIZEN_PROFILE_UNKNOWN, 1)) - return profile; - - system_info_get_platform_string("http://tizen.org/feature/profile", &profileName); - switch (*profileName) { - case 'm': - case 'M': - profile = TIZEN_PROFILE_MOBILE; - break; - case 'w': - case 'W': - profile = TIZEN_PROFILE_WEARABLE; - break; - case 't': - case 'T': - profile = TIZEN_PROFILE_TV; - break; - case 'i': - case 'I': - profile = TIZEN_PROFILE_IVI; - break; - default: // common or unknown ==> ALL ARE COMMON. - profile = TIZEN_PROFILE_COMMON; - } - free(profileName); - - return profile; -} -#define TIZEN_FEATURE_CSR (_get_tizen_profile() != TIZEN_PROFILE_TV) - /* To check whether a particular backend is free/busy */ static int __is_backend_busy(int position) { @@ -366,6 +322,7 @@ gboolean exit_server(void *data) return TRUE; } +#ifdef TIZEN_FEATURE_CSR static int __check_csr(const char *path) { csr_cs_context_h context = NULL; @@ -391,6 +348,7 @@ static int __check_csr(const char *path) return 0; } +#endif static int __kill_app(char *appid, uid_t uid) { @@ -1578,19 +1536,19 @@ gboolean queue_job(void *data) /* set current backend job */ DBG("handle request type [%d]", job->req_type); - if (TIZEN_FEATURE_CSR) { - if (job->req_type == REQUEST_TYPE_INSTALL || - job->req_type == REQUEST_TYPE_MOUNT_INSTALL || - job->req_type == REQUEST_TYPE_REINSTALL) { - ret = __check_csr(job->pkgid); - if (ret != 0) { - ret = -1; - _send_fail_signal(job); - _free_backend_job(job); - return TRUE; - } +#ifdef TIZEN_FEATURE_CSR + if (job->req_type == REQUEST_TYPE_INSTALL || + job->req_type == REQUEST_TYPE_MOUNT_INSTALL || + job->req_type == REQUEST_TYPE_REINSTALL) { + ret = __check_csr(job->pkgid); + if (ret != 0) { + ret = -1; + _send_fail_signal(job); + _free_backend_job(job); + return TRUE; } } +#endif switch (job->req_type) { case REQUEST_TYPE_INSTALL: