OPTION(MULTIPROCESS_SERVICE_SUPPORT "Process per service" OFF)
OPTION(MULTIPROCESS_SERVICE_SUPPORT_INLINE "Process per service - inline mode support" OFF)
OPTION(DECRYPT_SUPPORT "Enable appmanager capabilities" ON)
+OPTION(MULTI_USER_SUPPORT "Enable multi-user support" OFF)
+
+IF(MULTI_USER_SUPPORT)
+ ADD_DEFINITIONS("-DMULTI_USER_SUPPORT")
+ELSE()
+ ADD_DEFINITIONS("-DDAC_ACTIVATE")
+ENDIF(MULTI_USER_SUPPORT)
+
IF(DECRYPT_SUPPORT)
ADD_DEFINITIONS("-DDECRYPT")
ENDIF(DECRYPT_SUPPORT)
%bcond_with wayland
%bcond_with decrypt
+%bcond_with multi_user
+
Name: wrt
Summary: Web runtime
Version: 0.8.198.3
URL: N/A
Source0: %{name}-%{version}.tar.gz
## wrt-launchpad-daemon #######################################################
+### systemd service for mono-user mode
Source101: wrt_launchpad_daemon@.service
+### systemd service for multi-user mode
+Source102: wrt_launchpad_daemon_user.service
Source1001: wrt.manifest
###############################################################################
%else
-DDECRYPT_SUPPORT=Off \
%endif
+%if %{with multi_user}
+ -DMULTI_USER_SUPPORT=On \
+%else
+ -DMULTI_USER_SUPPORT=Off \
+%endif
%{?WITH_TESTS:-DWITH_TESTS=%WITH_TESTS}
ln -sf ../../init.d/wrt_launchpad_run.sh %{buildroot}/%{_sysconfdir}/rc.d/rc4.d/S80wrt_launchpad_run
#systemd
+
+%if %{with multi_user}
+mkdir -p %{buildroot}%{_unitdir_user}/tizen-middleware.target.wants/
+install -m 0644 %SOURCE102 %{buildroot}%{_unitdir_user}/wrt_launchpad_daemon.service
+ln -s ../wrt_launchpad_daemon.service %{buildroot}%{_unitdir_user}/tizen-middleware.target.wants/wrt_launchpad_daemon.service
+%else
mkdir -p %{buildroot}%{_unitdir}/graphical.target.wants
install -m 0644 %SOURCE101 %{buildroot}%{_unitdir}/wrt_launchpad_daemon@.service
ln -s ../wrt_launchpad_daemon@.service %{buildroot}%{_unitdir}/graphical.target.wants/wrt_launchpad_daemon@app.service
+%endif
%preun
if [ $1 == 0 ]; then
- systemctl stop wrt_launchpad_daemon@app.service
+%if %{with multi_user}
+ systemctl --user stop wrt_launchpad_daemon.service
+%else
+ systemctl stop wrt_launchpad_daemon@app.service
+%endif
+
fi
+
+
+
+
###############################################################################
+
+
+
%clean
rm -rf %{buildroot}
/sbin/ldconfig
systemctl daemon-reload
if [ $1 == 1 ]; then
+%if %{with multi_user}
+ systemctl --user restart wrt_launchpad_daemon.service
+%else
systemctl restart wrt_launchpad_daemon@app.service
+%endif
+
+
fi
###############################################################################
/etc/smack/accesses2.d/wrt_launchpad_daemon.rule
/opt/etc/smack/accesses.d/wrt_launchpad_daemon.rule
#systemd
+%if %{with multi_user}
+%{_unitdir_user}/tizen-middleware.target.wants/wrt_launchpad_daemon.service
+%{_unitdir_user}/wrt_launchpad_daemon.service
+%else
%{_unitdir}/graphical.target.wants/wrt_launchpad_daemon@app.service
%{_unitdir}/wrt_launchpad_daemon@.service
+%endif
+
###############################################################################
%files devel
}
if (strlen(applicationId) > 0) {
+#ifndef MULTI_USER_SUPPORT
// do setuid to '5000' uid to communicate
//with webapp using RT signal.
gid_t group_list[1];
printf("result: %s\n", "failed");
return -1;
}
-
+#endif
// set package
ret = service_set_package(serviceHandle, applicationId);
if (SERVICE_ERROR_NONE != ret) {