# Set required packages
INCLUDE(FindPkgConfig)
+OPTION(MULTI_USER_SUPPORT "Enable multi-user support" OFF)
OPTION(ENABLE_PRIVACY_MANAGER "Enable privacy manager support" ON)
IF(ENABLE_PRIVACY_MANAGER)
ADD_DEFINITIONS("-DPRIVACY_MANAGER")
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)
+IF(MULTI_USER_SUPPORT)
+ ADD_DEFINITIONS("-DMULTI_USER_SUPPORT")
+ELSE(MULTI_USER_SUPPORT)
+ ADD_DEFINITIONS("-DDAC_ACTIVATE")
+ENDIF(MULTI_USER_SUPPORT)
+
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)
%bcond_without privacy-manager-client
+%bcond_with multi_user
Name: aul
Summary: App utility library
Source0: %{name}-%{version}.tar.gz
Source101: launchpad-preload@.service
Source102: ac.service
-Source1001: aul.manifest
+Source103: launchpad-preload_user.service
+Source104: ac_user.service
+Source1001: %{name}.manifest
Requires(post): /sbin/ldconfig
Requires(post): /usr/bin/systemctl
cp %{SOURCE1001} .
%build
+%cmake . \
%if %{with privacy-manger-client}
-%cmake . -DENABLE_PRIVACY_MANAGER=On
+ -DENABLE_PRIVACY_MANAGER=On \
%else
-%cmake . -DENABLE_PRIVACY_MANAGER=Off
+ -DENABLE_PRIVACY_MANAGER=Off \
+%endif
+%if %{with multi_user}
+ -DMULTI_USER_SUPPORT=On
+%else
+ -DMULTI_USER_SUPPORT=Off
%endif
make %{?jobs:-j%jobs}
mkdir -p %{buildroot}/opt/dbspace
sqlite3 %{buildroot}/opt/dbspace/.mida.db < %{buildroot}/usr/share/aul/mida_db.sql
rm -rf %{buildroot}/usr/share/aul/mida_db.sql
-
+%if %{with multi_user}
+mkdir -p %{buildroot}/%{_unitdir_user}/tizen-middleware.target.wants
+install -m 0644 %SOURCE103 %{buildroot}/%{_unitdir_user}/launchpad-preload.service
+install -m 0644 %SOURCE104 %{buildroot}/%{_unitdir_user}/ac.service
+ln -s ../launchpad-preload.service %{buildroot}/%{_unitdir_user}/tizen-middleware.target.wants/launchpad-preload.service
+ln -s ../ac.service %{buildroot}/%{_unitdir_user}/tizen-middleware.target.wants/ac.service
+%else
mkdir -p %{buildroot}/%{_unitdir}/graphical.target.wants
install -m 0644 %SOURCE101 %{buildroot}/%{_unitdir}/launchpad-preload@.service
install -m 0644 %SOURCE102 %{buildroot}/%{_unitdir}/ac.service
ln -s ../launchpad-preload@.service %{buildroot}/%{_unitdir}/graphical.target.wants/launchpad-preload@app.service
ln -s ../ac.service %{buildroot}/%{_unitdir}/graphical.target.wants/ac.service
-
+%endif
%preun
if [ $1 == 0 ]; then
+%if !%{with multi_user}
systemctl stop launchpad-preload@app.service
systemctl stop ac.service
+%endif
fi
%post
/sbin/ldconfig
systemctl daemon-reload
+%if !%{with multi_user}
if [ $1 == 1 ]; then
systemctl restart launchpad-preload@app.service
systemctl restart ac.service
fi
+%endif
%postun -p /sbin/ldconfig
+%if !%{with multi_user}
systemctl daemon-reload
+%endif
%files
%manifest %{name}.manifest
/usr/share/aul/preload_list.txt
/usr/share/aul/preexec_list.txt
%{_bindir}/launchpad_preloading_preinitializing_daemon
+
+%if %{with multi_user}
+%{_unitdir_user}/tizen-middleware.target.wants/launchpad-preload.service
+%{_unitdir_user}/tizen-middleware.target.wants/ac.service
+%{_unitdir_user}/launchpad-preload.service
+%{_unitdir_user}/ac.service
+%else
%{_unitdir}/graphical.target.wants/launchpad-preload@app.service
%{_unitdir}/graphical.target.wants/ac.service
%{_unitdir}/launchpad-preload@.service
%{_unitdir}/ac.service
+%endif
+
+
/usr/bin/amd
/usr/bin/daemon-manager-release-agent
/usr/bin/daemon-manager-launch-agent