Add build time config for privacy-manager support 56/3556/1
authorRusty Lynch <rusty.lynch@intel.com>
Sat, 18 May 2013 04:19:45 +0000 (21:19 -0700)
committerRusty Lynch <rusty.lynch@intel.com>
Sat, 18 May 2013 04:19:45 +0000 (21:19 -0700)
The Tizen 2.1 code has a circular dependancy between aul and
the privacy-manager-client package.  Adding this build config
allows the cycle to be broke by first building aul without a
dep on privacy manager

CMakeLists.txt
am_daemon/amd_launch.c
packaging/aul.spec

index 4dbb1ce..b502f93 100755 (executable)
@@ -20,7 +20,13 @@ MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
 # Set required packages
 INCLUDE(FindPkgConfig)
 
-pkg_check_modules(pkgs REQUIRED dlog ecore x11 libprivilege-control app-checker rua glib-2.0 ecore-x ecore-input evas vconf pkgmgr-info app2sd privacy-manager-client)
+OPTION(ENABLE_PRIVACY_MANAGER "Enable privacy manager support" ON)
+IF(ENABLE_PRIVACY_MANAGER)
+    ADD_DEFINITIONS("-DPRIVACY_MANAGER")
+    pkg_check_modules(pkgs REQUIRED dlog ecore x11 libprivilege-control app-checker rua glib-2.0 ecore-x ecore-input evas vconf pkgmgr-info app2sd privacy-manager-client)
+ELSE(ENABLE_PRIVACY_MANAGER)
+    pkg_check_modules(pkgs REQUIRED dlog ecore x11 libprivilege-control app-checker rua glib-2.0 ecore-x ecore-input evas vconf pkgmgr-info app2sd)
+ENDIF(ENABLE_PRIVACY_MANAGER)
 pkg_check_modules(libpkgs REQUIRED dlog bundle dbus-glib-1 ail xdgmime app-checker libsmack)
 PKG_CHECK_MODULES(PKGS REQUIRED glib-2.0 gio-2.0 dlog bundle)
 
index 1e3f05c..e1547ab 100755 (executable)
@@ -30,7 +30,9 @@
 #include <app2ext_interface.h>
 #include <sys/prctl.h>
 #include <pkgmgr-info.h>
+#ifdef PRIVACY_MANAGER
 #include <privacy_manager_client.h>
+#endif
 
 #include "amd_config.h"
 #include "amd_launch.h"
@@ -650,6 +652,7 @@ int _start_app(char* appid, bundle* kb, int cmd, int caller_pid, uid_t caller_ui
 
        pkgid = appinfo_get_value(ai, AIT_PKGID);
 
+#ifdef PRIVACY_MANAGER
        if(bundle_get_val(kb, AUL_K_PRIVACY_APPID)){
                bundle_del(kb, AUL_K_PRIVACY_APPID);
        } else {
@@ -666,6 +669,7 @@ int _start_app(char* appid, bundle* kb, int cmd, int caller_pid, uid_t caller_ui
                        ai = appinfo_find(_laf, appid);
                }
        }
+#endif // PRIVACY_MANAGER
 
        componet = appinfo_get_value(ai, AIT_COMP);
        app_path = appinfo_get_value(ai, AIT_EXEC);
index 29a8da6..6beaedd 100644 (file)
@@ -1,3 +1,5 @@
+%bcond_with privacy-manager-client
+
 Name:       aul
 Summary:    App utility library
 Version:    0.0.266
@@ -34,8 +36,9 @@ BuildRequires:  pkgconfig(vconf)
 BuildRequires:  pkgconfig(pkgmgr-info)
 BuildRequires:  pkgconfig(libsmack)
 BuildRequires: pkgconfig(app2sd)
+%if %{with privacy-manager-client}
 BuildRequires:  pkgconfig(privacy-manager-client)
-
+%endif
 
 %description
 Application utility library
@@ -53,7 +56,11 @@ Application utility library (devel)
 %setup -q
 
 %build
-%cmake .
+%if %{with privacy-manger-client}
+%cmake . -DENABLE_PRIVACY_MANAGER=On
+%else
+%cmake . -DENABLE_PRIVACY_MANAGER=Off
+%endif
 
 make %{?jobs:-j%jobs}