BuildRequires: pkgconfig(ecore-input)
BuildRequires: pkgconfig(vconf)
BuildRequires: pkgconfig(pkgmgr-info)
-BuildRequires: pkgconfig(libsmack)
+BuildRequires: libattr-devel
BuildRequires: pkgconfig(privacy-manager-client)
-
+BuildRequires: pkgconfig(libtzplatform-config)
%description
Application utility library
ln -sf ../../init.d/launchpad_run %{buildroot}/%{_sysconfdir}/rc.d/rc3.d/S34launchpad_run
ln -sf ../../init.d/launchpad_run %{buildroot}/%{_sysconfdir}/rc.d/rc4.d/S80launchpad_run
-mkdir -p %{buildroot}/opt/dbspace
-sqlite3 %{buildroot}/opt/dbspace/.mida.db < %{buildroot}/usr/share/aul/mida_db.sql
+mkdir -p %{buildroot}%{TZ_SYS_DB}
+sqlite3 %{buildroot}%{TZ_SYS_DB}/.mida.db < %{buildroot}/usr/share/aul/mida_db.sql
rm -rf %{buildroot}/usr/share/aul/mida_db.sql
mkdir -p %{buildroot}/usr/lib/systemd/system/graphical.target.wants
install -m 0644 %SOURCE101 %{buildroot}/usr/lib/systemd/system/launchpad-preload@.service
install -m 0644 %SOURCE102 %{buildroot}/usr/lib/systemd/system/ac.service
-ln -s ../launchpad-preload@.service %{buildroot}/usr/lib/systemd/system/graphical.target.wants/launchpad-preload@app.service
+ln -s ../launchpad-preload@.service %{buildroot}/usr/lib/systemd/system/graphical.target.wants/launchpad-preload@5000.service
ln -s ../ac.service %{buildroot}/usr/lib/systemd/system/graphical.target.wants/ac.service
-mkdir -p %{buildroot}/opt/etc/smack/accesses.d
-install -m 644 aul.rule %{buildroot}/opt/etc/smack/accesses.d
+mkdir -p %{buildroot}%{TZ_SYS_SMACK}/accesses.d
mkdir -p %{buildroot}/usr/share/license
cp LICENSE %{buildroot}/usr/share/license/%{name}
%preun
if [ $1 == 0 ]; then
- systemctl stop launchpad-preload@app.service
+ systemctl stop launchpad-preload@5000.service
systemctl stop ac.service
fi
/sbin/ldconfig
systemctl daemon-reload
if [ $1 == 1 ]; then
- systemctl restart launchpad-preload@app.service
+ systemctl restart launchpad-preload@5000.service
systemctl restart ac.service
fi
%attr(0755,root,root) %{_bindir}/aul_service_test.sh
%attr(0755,root,root) %{_sysconfdir}/rc.d/rc3.d/S34launchpad_run
%attr(0755,root,root) %{_sysconfdir}/rc.d/rc4.d/S80launchpad_run
-%config(noreplace) %attr(0644,root,app) /opt/dbspace/.mida.db
-%config(noreplace) %attr(0644,root,app) /opt/dbspace/.mida.db-journal
+%config(noreplace) %attr(0644,root,%{TZ_SYS_USER_GROUP}) %{TZ_SYS_DB}/.mida.db
+%config(noreplace) %attr(0644,root,%{TZ_SYS_USER_GROUP}) %{TZ_SYS_DB}/.mida.db-journal
%attr(0755,root,root) %{_bindir}/aul_mime.sh
%{_bindir}/aul_test
%{_bindir}/launch_app
/usr/share/aul/preload_list.txt
/usr/share/aul/preexec_list.txt
%{_bindir}/launchpad_preloading_preinitializing_daemon
-/usr/lib/systemd/system/graphical.target.wants/launchpad-preload@app.service
+/usr/lib/systemd/system/graphical.target.wants/launchpad-preload@5000.service
/usr/lib/systemd/system/graphical.target.wants/ac.service
/usr/lib/systemd/system/launchpad-preload@.service
/usr/lib/systemd/system/ac.service
/usr/bin/amd
/usr/bin/daemon-manager-release-agent
/usr/bin/daemon-manager-launch-agent
-/opt/etc/smack/accesses.d/aul.rule
/usr/share/license/%{name}
%files devel
+%bcond_with x
+%bcond_with wayland
+
Name: crosswalk
-Version: 4.32.74.0
+Version: 6.35.132.0
Release: 0
Summary: Crosswalk is an app runtime based on Chromium
-# License: (BSD-3-Clause and LGPL-2.1+)
-License: BSD-3-Clause
+License: (BSD-3-Clause and LGPL-2.1+)
Group: Web Framework/Web Run Time
Url: https://github.com/otcshare/crosswalk
Source: %{name}.tar
-Source1: xwalk
+Source1: xwalk.in
Source2: org.crosswalkproject.Runtime1.service
-Source3: xwalk.service
+Source3: xwalk.service.in
Source1001: crosswalk.manifest
Source1002: %{name}.xml.in
Source1003: %{name}.png
Patch1: %{name}-do-not-look-for-gtk2-when-using-aura.patch
-Patch2: %{name}-look-for-pvr-libGLESv2.so.patch
-Patch3: %{name}-include-tizen-ime-files.patch
-Patch4: %{name}-disable-ffmpeg-pragmas.patch
-Patch5: Chromium-Fix-gcc-4.5.3-uninitialized-warnings.patch
-Patch6: Blink-Fix-gcc-4.5.3-uninitialized-warnings.patch
-Patch7: %{name}-tizen-audio-session-manager.patch
-Patch8: %{name}-mesa-ozone-typedefs.patch
+Patch2: %{name}-no-fatal-ld-warnings.patch
+Patch9: Blink-Add-GCC-flag-Wno-narrowing-fix-64bits-build.patch
BuildRequires: bison
BuildRequires: bzip2-devel
BuildRequires: flex
BuildRequires: gperf
BuildRequires: libcap-devel
+BuildRequires: ninja
BuildRequires: python
BuildRequires: python-xml
BuildRequires: perl
BuildRequires: which
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(appcore-common)
-BuildRequires: pkgconfig(appcore-efl)
-BuildRequires: pkgconfig(aul)
-BuildRequires: pkgconfig(audio-session-mgr)
BuildRequires: pkgconfig(cairo)
-BuildRequires: pkgconfig(capi-appfw-application)
BuildRequires: pkgconfig(capi-location-manager)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(pango)
BuildRequires: pkgconfig(pkgmgr-info)
+BuildRequires: pkgconfig(pkgmgr-installer)
BuildRequires: pkgconfig(pkgmgr-parser)
BuildRequires: pkgconfig(nspr)
+BuildRequires: pkgconfig(nss)
BuildRequires: pkgconfig(sensor)
BuildRequires: pkgconfig(vconf)
+%if %{with x}
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcomposite)
BuildRequires: pkgconfig(xcursor)
BuildRequires: pkgconfig(xscrnsaver)
BuildRequires: pkgconfig(xt)
BuildRequires: pkgconfig(xtst)
-
-# Depending on the Tizen version and profile we are building for, we have
-# different dependencies, patches and gyp options to pass. Checking for
-# specific profiles is not very future-proof. We therefore try to check for
-# either specific features that may be enabled in the current profile (such as
-# Wayland support) or for a certain Tizen major version (the differences betwen
-# Tizen 2 and Tizen 3 are big enough that we need completely different patches
-# and build dependencies, for example).
-%bcond_with wayland
-
-%if "%{tizen}" < "3.0"
-BuildRequires: gst-plugins-atomisp-devel
-BuildRequires: pkgconfig(openssl)
-%else
-BuildRequires: pkgconfig(nss)
%endif
%if %{with wayland}
BuildRequires: pkgconfig(scim)
%endif
+# disable build for X11 as scim (isf) doesn't build
+%if !%{with wayland}
+ExclusiveArch:
+%endif
+
%description
Crosswalk is an app runtime based on Chromium. It is an open source project started by the Intel Open Source Technology Center (http://www.01.org).
-%package emulator-support
-Summary: Support files necessary for running Crosswalk on the Tizen emulator
-# License: (BSD-3-Clause and LGPL-2.1+)
-License: BSD-3-Clause
-Group: Web Framework/Web Run Time
-Url: https://github.com/otcshare/crosswalk
-
-%description emulator-support
-This package contains additional support files that are needed for running Crosswalk on the Tizen emulator.
-
%define _manifestdir /usr/share/packages
+%define _manifestdir_ro /opt/share/packages
%define _desktop_icondir /usr/share/icons/default/small
+%define _desktop_icondir_ro /opt/share/icons/default/small
%define _dbusservicedir /usr/share/dbus-1/services
%define _systemduserservicedir /usr/lib/systemd/user
%prep
%setup -q -n crosswalk
+cp %{SOURCE1} .
+cp %{SOURCE3} .
cp %{SOURCE1001} .
cp %{SOURCE1002} .
cp %{SOURCE1003} .
sed "s/@VERSION@/%{version}/g" %{name}.xml.in > %{name}.xml
+sed "s|@LIB_INSTALL_DIR@|%{_libdir}|g" xwalk.in > xwalk
+sed "s|@LIB_INSTALL_DIR@|%{_libdir}|g" xwalk.service.in > xwalk.service
cp -a src/AUTHORS AUTHORS.chromium
cp -a src/LICENSE LICENSE.chromium
-cp -a src/xwalk/AUTHORS AUTHORS.xwalk
cp -a src/xwalk/LICENSE LICENSE.xwalk
%patch1
-%patch7
-%if "%{tizen}" < "3.0"
+# Linking fails in Tizen Common when fatal ld warnings are enabled. XWALK-1379.
+%if "%{profile}" == "common" || "%{profile}" == "generic"
%patch2
-%patch3
-%patch4
-%patch5 -p1
-%patch6 -p1
%endif
-%if %{with wayland}
-%patch8
-%endif
+%patch9
%build
# build root to the BUILDDIR_NAME definition, such as "/var/tmp/xwalk-build"
# (remember all paths are still inside the chroot):
# gbs build --define 'BUILDDIR_NAME /some/path'
-#
-# The --depth and --generator-output combo is used to put all the Makefiles
-# inside the build directory, and (this is the important part) keep file lists
-# (generatedwith <|() in gyp) in the build directory as well, otherwise they
-# will be in the source directory, erased every time and trigger an almost full
-# Blink rebuild (among other smaller targets).
-# We cannot always pass those flags, though, because gyp's make generator does
-# not work if the --generator-output is the top-level source directory.
BUILDDIR_NAME="%{?BUILDDIR_NAME}"
-if [ -z "${BUILDDIR_NAME}" ]; then
- BUILDDIR_NAME="."
-else
- GYP_EXTRA_FLAGS="--depth=. --generator-output=${BUILDDIR_NAME}"
+if [ -n "${BUILDDIR_NAME}" ]; then
+ mkdir -p "${BUILDDIR_NAME}"
+ ln -s "${BUILDDIR_NAME}" src/out
fi
-# Tizen 2's NSS is too old for Chromium, so we have to use the OpenSSL backend.
-%if "%{tizen}" < "3.0"
-GYP_EXTRA_FLAGS="${GYP_EXTRA_FLAGS} -Dtizen_mobile=1 -Duse_openssl=1"
-%endif
-
%if %{with wayland}
-GYP_EXTRA_FLAGS="${GYP_EXTRA_FLAGS} -Duse_ash=1 -Duse_ozone=1"
+GYP_EXTRA_FLAGS="${GYP_EXTRA_FLAGS} -Duse_ozone=1 -Denable_ozone_wayland_vkb=1 -Denable_xdg_shell=1"
%endif
-# Change src/ so that we can pass "." to --depth below, otherwise we would need
-# to pass "src" to it, but this confuses the gyp make generator, that expects
-# to be called from the root source directory.
-cd src
-
# --no-parallel is added because chroot does not mount a /dev/shm, this will
# cause python multiprocessing.SemLock error.
-export GYP_GENERATORS='make'
-./xwalk/gyp_xwalk xwalk/xwalk.gyp \
+export GYP_GENERATORS='ninja'
+./src/xwalk/gyp_xwalk src/xwalk/xwalk.gyp \
--no-parallel \
${GYP_EXTRA_FLAGS} \
-Dchromeos=0 \
-Ddisable_nacl=1 \
+-Dtizen=1 \
-Dpython_ver=2.7 \
-Duse_aura=1 \
-Duse_cups=0 \
-Duse_gconf=0 \
+-Duse_gnome_keyring=0 \
-Duse_kerberos=0 \
-Duse_system_bzip2=1 \
--Duse_system_icu=1 \
-Duse_system_libexif=1 \
-Duse_system_libxml=1 \
-Duse_system_nspr=1 \
--Denable_xi21_mt=1 \
--Duse_xi2_mt=0
+-Denable_hidpi=1
-make %{?_smp_mflags} -C "${BUILDDIR_NAME}" BUILDTYPE=Release xwalk xwalkctl xwalk_launcher xwalk-pkg-helper
+ninja %{?_smp_mflags} -C src/out/Release xwalk xwalkctl xwalk_launcher xwalk-pkg-helper
%install
-# Support building in a non-standard directory, possibly outside %{_builddir}.
-# Since the build root is erased every time a new build is performed, one way
-# to avoid losing the build directory is to specify a location outside the
-# build root to the BUILDDIR_NAME definition, such as "/var/tmp/xwalk-build"
-# (remember all paths are still inside the chroot):
-# gbs build --define 'BUILDDIR_NAME /some/path'
-BUILDDIR_NAME="%{?BUILDDIR_NAME}"
-if [ -z "${BUILDDIR_NAME}" ]; then
- BUILDDIR_NAME="."
-fi
-
-# Since BUILDDIR_NAME can be either a relative path or an absolute one, we need
-# to cd into src/ so that it means the same thing in the build and install
-# stages: during the former, a relative location refers to a place inside src/,
-# whereas during the latter a relative location by default would refer to a
-# place one directory above src/. If BUILDDIR_NAME is an absolute path, this is
-# irrelevant anyway.
-cd src
-
# Binaries.
-install -p -D %{SOURCE1} %{buildroot}%{_bindir}/xwalk
+install -p -D xwalk %{buildroot}%{_bindir}/xwalk
install -p -D %{SOURCE2} %{buildroot}%{_dbusservicedir}/org.crosswalkproject.Runtime1.service
-install -p -D %{SOURCE3} %{buildroot}%{_systemduserservicedir}/xwalk.service
-install -p -D ${BUILDDIR_NAME}/out/Release/xwalk %{buildroot}%{_libdir}/xwalk/xwalk
-install -p -D ${BUILDDIR_NAME}/out/Release/xwalkctl %{buildroot}%{_bindir}/xwalkctl
-install -p -D ${BUILDDIR_NAME}/out/Release/xwalk-launcher %{buildroot}%{_bindir}/xwalk-launcher
+install -p -D xwalk.service %{buildroot}%{_systemduserservicedir}/xwalk.service
+install -p -D src/out/Release/xwalk %{buildroot}%{_libdir}/xwalk/xwalk
+install -p -D src/out/Release/xwalkctl %{buildroot}%{_bindir}/xwalkctl
+install -p -D src/out/Release/xwalk-launcher %{buildroot}%{_bindir}/xwalk-launcher
# xwalk-pkg-helper needs to be set-user-ID-root so it can finish the installation process.
-install -m 06755 -p -D ${BUILDDIR_NAME}/out/Release/xwalk-pkg-helper %{buildroot}%{_bindir}/xwalk-pkg-helper
+install -m 06755 -p -D src/out/Release/xwalk-pkg-helper %{buildroot}%{_bindir}/xwalk-pkg-helper
# Supporting libraries and resources.
-install -p -D ${BUILDDIR_NAME}/out/Release/libffmpegsumo.so %{buildroot}%{_libdir}/xwalk/libffmpegsumo.so
-install -p -D ${BUILDDIR_NAME}/out/Release/libosmesa.so %{buildroot}%{_libdir}/xwalk/libosmesa.so
-install -p -D ${BUILDDIR_NAME}/out/Release/xwalk.pak %{buildroot}%{_libdir}/xwalk/xwalk.pak
+install -p -D src/out/Release/icudtl.dat %{buildroot}%{_libdir}/xwalk/icudtl.dat
+install -p -D src/out/Release/lib/libmojo_system.so %{buildroot}%{_libdir}/xwalk/lib/libmojo_system.so
+install -p -D src/out/Release/libffmpegsumo.so %{buildroot}%{_libdir}/xwalk/libffmpegsumo.so
+install -p -D src/out/Release/xwalk.pak %{buildroot}%{_libdir}/xwalk/xwalk.pak
# Register xwalk to the package manager.
-install -p -D ../%{name}.xml %{buildroot}%{_manifestdir}/%{name}.xml
-install -p -D ../%{name}.png %{buildroot}%{_desktop_icondir}/%{name}.png
+install -p -D %{name}.xml %{buildroot}%{_manifestdir}/%{name}.xml
+install -p -D %{name}.png %{buildroot}%{_desktop_icondir}/%{name}.png
+
+%post
+mkdir -p %{_desktop_icondir_ro}
+mkdir -p %{_manifestdir_ro}
%files
%manifest %{name}.manifest
-# %license AUTHORS.chromium AUTHORS.xwalk LICENSE.chromium LICENSE.xwalk
+%license AUTHORS.chromium LICENSE.chromium LICENSE.xwalk
%{_bindir}/xwalk
%{_bindir}/xwalkctl
%{_bindir}/xwalk-launcher
%{_bindir}/xwalk-pkg-helper
+%{_libdir}/xwalk/icudtl.dat
+%{_libdir}/xwalk/lib/libmojo_system.so
%{_libdir}/xwalk/libffmpegsumo.so
%{_libdir}/xwalk/xwalk
%{_libdir}/xwalk/xwalk.pak
%{_desktop_icondir}/%{name}.png
%{_dbusservicedir}/org.crosswalkproject.Runtime1.service
%{_systemduserservicedir}/xwalk.service
-
-%files emulator-support
-%{_libdir}/xwalk/libosmesa.so
Name: libprivilege-control
Summary: Library to control privilege of application
-Version: 0.0.26.TIZEN
+Version: 0.0.43.TIZEN
Release: 1
Group: Security/Access Control
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
Source1001: %{name}.manifest
BuildRequires: cmake
+BuildRequires: libcap-devel
BuildRequires: pkgconfig(libsmack)
BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(libiri)
+BuildRequires: pkgconfig(sqlite3)
%description
development package of library to control privilege of in-house application
cp %{SOURCE1001} .
%build
+%if 0%{?sec_build_binary_debug_enable}
+export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
+export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
+export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
+%endif
+
export CFLAGS="${CFLAGS} -Wno-implicit-function-declaration"
-%cmake . -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}
+%cmake . -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
+ -DCMAKE_VERBOSE_MAKEFILE=ON
-make %{?jobs:-j%jobs}
+VERBOSE=1 make %{?jobs:-j%jobs}
%install
%make_install
mkdir -p %{buildroot}/usr/share/privilege-control/
-%post -p /sbin/ldconfig
+mkdir -p %{buildroot}/usr/lib/systemd/system/multi-user.target.wants
+ln -sf /usr/lib/systemd/system/smack-rules.service %{buildroot}/usr/lib/systemd/system/multi-user.target.wants/smack-rules.service
+mkdir -p %{buildroot}/opt/dbspace
+
+%post
+/sbin/ldconfig
+
+/usr/share/privilege-control/db/updater.sh
%postun -p /sbin/ldconfig
+api_feature_loader --verbose --dir=/usr/share/privilege-control/
+api_feature_loader --verbose --rules=/usr/share/privilege-control/ADDITIONAL_RULES.smack
+
+%check
+./db/updater.sh --check-files %{buildroot}
%files
%manifest %{name}.manifest
%license LICENSE
%{_libdir}/*.so.*
%{_bindir}/slp-su
-%dir %{_datarootdir}/privilege-control
-%{_datarootdir}/privilege-control/*
+%{_libdir}/librules-db-sql-udf.so
+#systemd service
+/usr/lib/systemd/system/smack-rules.service
+/usr/bin/api_feature_loader
+#link to activate systemd service
+/usr/lib/systemd/system/multi-user.target.wants/smack-rules.service
+/usr/share/privilege-control/db/rules-db.sql
+/usr/share/privilege-control/db/rules-db-data.sql
+/usr/share/privilege-control/db/updater.sh
+/usr/share/privilege-control/db/updates/*
+/usr/share/privilege-control/db/load-rules-db.sql
+/etc/opt/upgrade/220.libprivilege-updater.patch.sh
+%attr(755, root, root) %dir /opt/dbspace
%files conf
%manifest %{name}.manifest
-/opt/etc/smack/*
/opt/dbspace/.privilege_control*.db
%files devel
--- /dev/null
+Name: libtapi
+Summary: Telephony dbus client library
+Version: 0.6.71
+Release: 2
+Group: Telephony/Libraries
+License: Apache-2.0
+Source0: libtapi-%{version}.tar.gz
+Source1001: libtapi.manifest
+BuildRequires: cmake
+BuildRequires: pkgconfig(glib-2.0)
+BuildRequires: pkgconfig(gobject-2.0)
+BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(security-server)
+Obsoletes: libslp-tapi <= 0.6.69
+Provides: libslp-tapi
+BuildRequires: pkgconfig(tapi-3.0)
+
+%description
+Telephony client API library
+
+%package devel
+Summary: Telephony client API (devel)
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+Telephony client API library (devel)
+
+
+%prep
+%setup -q
+cp %{SOURCE1001} .
+
+
+%build
+%cmake .
+
+make %{?jobs:-j%jobs}
+
+%install
+rm -rf %{buildroot}
+%make_install
+
+rm -rf %{buildroot}/usr/include/telephony/tapi/.gitignore
+
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+
+%files
+%manifest %{name}.manifest
+%license LICENSE
+%defattr(-,root,root,-)
+%{_libdir}/*.so.*
+%{_bindir}/tapitest-legacy
+
+%files devel
+%manifest %{name}.manifest
+%defattr(-,root,root,-)
+%{_includedir}/telephony-client/*.h
+%{_libdir}/pkgconfig/*.pc
+%{_libdir}/*.so
Name: security-server
Summary: Security server and utilities
-Version: 0.0.73
+Version: 0.0.118
Release: 1
Group: Security/Service
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
+Source1: security-server.manifest
Source2: libsecurity-server-client.manifest
-Source3: security-server.service
-Source1001: %{name}.manifest
BuildRequires: cmake
BuildRequires: zip
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(openssl)
BuildRequires: libattr-devel
+BuildRequires: libcap-devel
BuildRequires: pkgconfig(libsmack)
-Requires(preun): systemd
-Requires(post): systemd
-Requires(postun): systemd
BuildRequires: pkgconfig(libprivilege-control)
+BuildRequires: pkgconfig(libsystemd-daemon)
+%{?systemd_requires}
%description
Tizen security server and utilities
Summary: Security server (client-devel)
Group: Security/Development
Requires: libsecurity-server-client = %{version}-%{release}
+Requires: libprivilege-control-devel
%description -n libsecurity-server-client-devel
Development files needed for using the security client
%prep
%setup -q
-cp %{SOURCE1001} .
+cp %{SOURCE1} .
+cp %{SOURCE2} .
%build
+%if 0%{?sec_build_binary_debug_enable}
+export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
+export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
+export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
+%endif
+
export LDFLAGS+="-Wl,--rpath=%{_libdir}"
%cmake . -DVERSION=%{version} \
- -DCMAKE_BUILD_TYPE=%{?build_type:%build_type} \
- -DSMACK=Off
+ -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
+ -DCMAKE_VERBOSE_MAKEFILE=ON
make %{?jobs:-j%jobs}
-
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}/usr/share/license
cp LICENSE %{buildroot}/usr/share/license/%{name}
cp LICENSE %{buildroot}/usr/share/license/libsecurity-server-client
+mkdir -p %{buildroot}/etc/security/
+cp security-server-audit.conf %{buildroot}/etc/security/
%make_install
mkdir -p %{buildroot}/usr/lib/systemd/system/multi-user.target.wants
-install -m 0644 %{SOURCE3} %{buildroot}/usr/lib/systemd/system/security-server.service
+mkdir -p %{buildroot}/usr/lib/systemd/system/sockets.target.wants
ln -s ../security-server.service %{buildroot}/usr/lib/systemd/system/multi-user.target.wants/security-server.service
-
-
-%preun
-if [ $1 == 0 ]; then
- systemctl stop security-server.service
-fi
+ln -s ../security-server-data-share.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-data-share.socket
+ln -s ../security-server-get-gid.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-get-gid.socket
+ln -s ../security-server-privilege-by-pid.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-privilege-by-pid.socket
+ln -s ../security-server-cookie-get.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-cookie-get.socket
+ln -s ../security-server-cookie-check.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-cookie-check.socket
+ln -s ../security-server-app-privilege-by-name.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-app-privilege-by-name.socket
+ln -s ../security-server-password-check.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-password-check.socket
+ln -s ../security-server-password-set.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-password-set.socket
+ln -s ../security-server-password-reset.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-password-reset.socket
+
+%clean
+rm -rf %{buildroot}
%post
systemctl daemon-reload
-if [ $1 == 1 ]; then
+if [ $1 = 1 ]; then
+ # installation
+ systemctl start security-server.service
+fi
+
+if [ $1 = 2 ]; then
+ # update
systemctl restart security-server.service
fi
+%preun
+if [ $1 = 0 ]; then
+ # unistall
+ systemctl stop security-server.service
+fi
+
%postun
-systemctl daemon-reload
+if [ $1 = 0 ]; then
+ # unistall
+ systemctl daemon-reload
+fi
%post -n libsecurity-server-client -p /sbin/ldconfig
%postun -n libsecurity-server-client -p /sbin/ldconfig
%files -n security-server
-%manifest %{name}.manifest
+%manifest security-server.manifest
%defattr(-,root,root,-)
-/usr/lib/systemd/system/multi-user.target.wants/security-server.service
-/usr/lib/systemd/system/security-server.service
%attr(755,root,root) /usr/bin/security-server
+%{_libdir}/libsecurity-server-commons.so.*
+%attr(-,root,root) /usr/lib/systemd/system/multi-user.target.wants/security-server.service
+%attr(-,root,root) /usr/lib/systemd/system/security-server.service
+%attr(-,root,root) /usr/lib/systemd/system/security-server.target
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-data-share.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-data-share.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-get-gid.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-get-gid.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-privilege-by-pid.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-privilege-by-pid.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-cookie-get.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-cookie-get.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-cookie-check.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-cookie-check.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-app-privilege-by-name.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-app-privilege-by-name.socket
+%attr(-,root,root) /etc/security/security-server-audit.conf
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-password-check.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-password-check.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-password-set.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-password-set.socket
+%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-password-reset.socket
+%attr(-,root,root) /usr/lib/systemd/system/security-server-password-reset.socket
%{_datadir}/license/%{name}
%files -n libsecurity-server-client
-%manifest %{name}.manifest
+%manifest libsecurity-server-client.manifest
%defattr(-,root,root,-)
%{_libdir}/libsecurity-server-client.so.*
%{_datadir}/license/libsecurity-server-client
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_libdir}/libsecurity-server-client.so
+%{_libdir}/libsecurity-server-commons.so
/usr/include/security-server/security-server.h
%{_libdir}/pkgconfig/*.pc
--- /dev/null
+%bcond_with wayland
+Name: weston-common
+Version: 1
+Release: 0
+Summary: Tizen Common Weston configuration and set-up
+License: MIT
+Group: Base/Configuration
+#BuildArch: noarch
+Source0: %{name}-%{version}.tar.bz2
+Source1001: weston-common.manifest
+Provides: weston-startup
+
+Requires: weston
+# for getent:
+Requires: glibc
+# for useradd et al
+Requires: pwdutils
+
+BuildRequires: autoconf >= 2.64, automake >= 1.11
+BuildRequires: libtool >= 2.2
+BuildRequires: libjpeg-devel
+BuildRequires: xz
+BuildRequires: pkgconfig
+BuildRequires: pkgconfig(libpng)
+BuildRequires: pkgconfig(xkbcommon)
+BuildRequires: pkgconfig(wayland-client)
+BuildRequires: pkgconfig(wayland-cursor)
+BuildRequires: pkgconfig(wayland-egl)
+BuildRequires: pkgconfig(egl)
+BuildRequires: pkgconfig(glesv2)
+BuildRequires: pkgconfig(pixman-1)
+BuildRequires: pkgconfig(cairo)
+BuildRequires: pkgconfig(cairo-egl)
+BuildRequires: pkgconfig(cairo-glesv2)
+BuildRequires: pkgconfig(weston)
+BuildRequires: pkgconfig(glib-2.0)
+BuildRequires: pkgconfig(gio-2.0)
+
+%if !%{with wayland}
+ExclusiveArch:
+%endif
+
+############ tz-launcher
+%package tz-launcher
+Summary: A small launcher for Wayland compositors
+
+%description tz-launcher
+A small launcher for Wayland compositors
+############
+
+%description
+This package contains Tizen Common configuration and set-up for
+the Weston compositor, including systemd unit files.
+
+%package config
+Summary: Tizen Common Weston configuration
+Group: Base/Configuration
+%description config
+This package contains Tizen Common configuration for the Weston
+compositor.
+
+%prep
+%setup -q
+cp %{SOURCE1001} .
+
+%build
+cd tz-launcher
+%reconfigure
+make %{?_smp_mflags}
+
+%install
+%define daemon_user display
+%define daemon_group display
+
+#install tz-launcher
+cd tz-launcher
+%make_install
+cd ..
+
+# install weston service as 'display-manager.service' as it's the one wanted by graphical.target
+mkdir -p %{buildroot}%{_unitdir}
+install -m 644 display-manager-run.service %{buildroot}%{_unitdir}/display-manager-run.service
+install -m 644 display-manager.service %{buildroot}%{_unitdir}/display-manager.service
+install -m 644 display-manager.path %{buildroot}%{_unitdir}/display-manager.path
+
+# install Environment file for weston service and weston-user.service
+mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
+install -m 0644 weston.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/weston
+install -m 0644 weston-user.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/weston-user
+
+# install tmpfiles.d(5) conf
+mkdir -p %{buildroot}%{_prefix}/lib/tmpfiles.d
+install -m 0644 weston_tmpfiles.conf %{buildroot}%{_prefix}/lib/tmpfiles.d/weston.conf
+
+# install weston-user service in user session
+mkdir -p %{buildroot}%{_unitdir_user}
+install -m 644 weston-user.service %{buildroot}%{_unitdir_user}/
+
+# install weston.sh
+mkdir -p %{buildroot}%{_sysconfdir}/profile.d/
+install -m 0644 weston.sh %{buildroot}%{_sysconfdir}/profile.d/
+
+# install weston.ini
+%define weston_config_dir %{_sysconfdir}/xdg/weston
+mkdir -p %{buildroot}%{weston_config_dir}
+install -m 0644 weston.ini %{buildroot}%{weston_config_dir}
+
+# Add a rule to ensure the 'display' user has permissions to
+# open the graphics device
+mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d
+cat >%{buildroot}%{_sysconfdir}/udev/rules.d/99-dri.rules <<'EOF'
+SUBSYSTEM=="drm", MODE="0660", GROUP="%{daemon_group}", SMACK="*"
+EOF
+
+# user 'display' must own /dev/tty7 for weston to start correctly
+cat >%{buildroot}%{_sysconfdir}/udev/rules.d/99-tty.rules <<'EOF'
+SUBSYSTEM=="tty", KERNEL=="tty7", OWNER="%{daemon_user}", SMACK="^"
+EOF
+
+# user 'display' must also be able to access /dev/input/event*
+cat >%{buildroot}%{_sysconfdir}/udev/rules.d/99-input.rules <<'EOF'
+SUBSYSTEM=="input", KERNEL=="event*", MODE="0660", GROUP="input", SMACK="^"
+EOF
+
+# install desktop file
+mkdir -p %{buildroot}%{_datadir}/applications
+install -m 0644 weston-terminal.desktop %{buildroot}%{_datadir}/applications
+
+%pre
+# create groups 'display' and 'weston-launch'
+getent group %{daemon_group} >/dev/null || %{_sbindir}/groupadd -r -o %{daemon_group}
+getent group input >/dev/null || %{_sbindir}/groupadd -r -o input
+getent group weston-launch >/dev/null || %{_sbindir}/groupadd -r -o weston-launch
+
+# create user 'display'
+getent passwd %{daemon_user} >/dev/null || %{_sbindir}/useradd -r -g %{daemon_group} -d /run/display -s /bin/false -c "Display daemon" %{daemon_user}
+
+# add user 'display' to groups 'weston-launch' and 'input'
+groupmod -A %{daemon_user} weston-launch
+groupmod -A %{daemon_user} input
+
+# setup display manager service
+mkdir -p %{_unitdir}/graphical.target.wants/
+ln -sf ../display-manager.path %{_unitdir}/graphical.target.wants/
+
+# setup display manager access (inside user session)
+mkdir -p %{_unitdir_user}/default.target.requires/
+ln -sf ../weston-user.service %{_unitdir_user}/default.target.requires/
+
+%postun
+rm -f %{_unitdir}/graphical.target.wants/display-manager.path
+rm -f %{_unitdir_user}/default.target.requires/weston-user.service
+
+%files
+%manifest %{name}.manifest
+%defattr(-,root,root)
+%license COPYING
+%{_unitdir}/display-manager-run.service
+%{_unitdir}/display-manager.service
+%{_unitdir}/display-manager.path
+%config %{_sysconfdir}/sysconfig/*
+%{_prefix}/lib/tmpfiles.d/weston.conf
+%{_unitdir_user}/weston-user.service
+%config %{_sysconfdir}/profile.d/*
+%config %{_sysconfdir}/udev/rules.d/*
+%{_datadir}/applications/*.desktop
+
+%files config
+%manifest %{name}.manifest
+%config %{weston_config_dir}/weston.ini
+
+%files tz-launcher
+%manifest %{name}.manifest
+%defattr(-,root,root)
+%license tz-launcher/COPYING
+%{_bindir}/tz-launcher
+%{_bindir}/wl-pre