9 Group: System/Utilities
10 Source0: %{name}-%{version}.tar.gz
11 Source1001: sdbd_device.service
12 Source1002: sdbd_emulator.service
13 Source1003: %{name}.manifest
14 Source1004: sdbd_tcp.service
15 Source1005: sdbd_device_tv.service
16 Source1006: sdbd_emulator_tv.service
18 BuildRequires: capi-system-info-devel >= 0.2.0
19 BuildRequires: cmake >= 2.8.3
20 BuildRequires: pkgconfig(libtzplatform-config)
21 #BuildRequires: sec-product-features
22 BuildRequires: pkgconfig(libsmack)
23 BuildRequires: pkgconfig(capi-system-info)
24 BuildRequires: pkgconfig(vconf)
25 BuildRequires: pkgconfig(glib-2.0)
26 BuildRequires: pkgconfig(gio-2.0)
27 BuildRequires: pkgconfig(dlog)
29 Provides: %{name}-profile_common = %{version}-%{release}
30 Provides: %{name}-profile_mobile = %{version}-%{release}
31 Provides: %{name}-profile_ivi = %{version}-%{release}
32 Provides: %{name}-profile_wearable = %{version}-%{release}
35 Description: SDB daemon.
38 Summary: SDB daemon extension for TV
39 Requires: %{name} = %{version}-%{release}
40 %description profile_tv
41 SDB daemon extension for TV.
42 This changes the service unit files of the default SDB daemon service files.
44 %ifarch %{ix86} x86_64
45 %package extension-emulator
46 Summary: SDB daemon for emulator
47 Requires: %{name} = %{version}-%{release}
48 %description extension-emulator
49 SDB daemon for emulator
51 %package extension-tv-emulator
52 Summary: SDB daemon for tv emulator
53 Requires: %{name}-profile_tv = %{version}-%{release}
54 %description extension-tv-emulator
55 SDB daemon for tv emulator
56 %endif // ifarch %{ix86} x86_64
58 %package -n sdbd-devel
59 Summary: SDBD plugin API
60 Group: Development/Libraries
62 %description -n sdbd-devel
63 SDBD plugin API library
70 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} %{?asan:-DCMAKE_EXE_LINKER_FLAGS="-pthread"}
75 mkdir -p %{buildroot}%{_unitdir}
77 # extension-*-emulator
78 %ifarch %{ix86} x86_64
79 install -m 0644 %SOURCE1006 %{buildroot}%{_unitdir}/sdbd.service.tv.emulator
80 install -m 0644 %SOURCE1002 %{buildroot}%{_unitdir}/sdbd.service.emulator
81 mkdir -p %{buildroot}/%{_unitdir}/emulator_preinit.target.wants
82 ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/emulator_preinit.target.wants/
83 %endif // ifarch %{ix86} x86_64
87 install -m 0644 %SOURCE1005 %{buildroot}%{_unitdir}/sdbd.service.tv
88 install -m 0644 %SOURCE1001 %{buildroot}%{_unitdir}/sdbd.service
89 install -m 0644 %SOURCE1004 %{buildroot}%{_unitdir}/sdbd_tcp.service
90 mkdir -p %{buildroot}/%{_unitdir}/multi-user.target.wants
91 ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/multi-user.target.wants/
93 mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d/
94 install -m 644 rules/99-sdbd.rules %{buildroot}%{_prefix}/lib/udev/rules.d/
96 mkdir -p %{buildroot}%{_prefix}/sbin
97 install -m 755 script/sdk_launch %{buildroot}%{_prefix}/sbin/
99 mkdir -p %{buildroot}%{TZ_SYS_BIN}
100 install -m 755 script/profile_command %{buildroot}%{TZ_SYS_BIN}/
102 mkdir -p %{buildroot}%{_includedir}/sdb/
103 install -m 0644 src/sdbd_plugin.h %{buildroot}%{_includedir}/sdb/
105 mkdir -p %{buildroot}%{_libdir}/pkgconfig/
106 install -m 0644 packaging/sdbd.pc %{buildroot}%{_libdir}/pkgconfig/
109 . %{_sysconfdir}/tizen-platform.conf
110 if ! getent passwd "${TZ_SDK_USER_NAME}" > /dev/null; then
111 rm -rf "${TZ_SDK_HOME}"
112 useradd -u 5100 -s /bin/false -m -d "${TZ_SDK_HOME}" "${TZ_SDK_USER_NAME}"
113 getent group developer > /dev/null || groupadd -g 5100 developer
114 for x in app_logging crash developer; do
115 usermod -A app_logging "${TZ_SDK_USER_NAME}"
119 chsmack -a "_" /sbin/sdbd-user
120 chsmack -e "User::Shell" /sbin/sdbd-user
123 %manifest sdbd.manifest
125 %defattr(-,root,root,-)
127 %{_prefix}/sbin/sdbd-user
128 %{_prefix}/sbin/sdk_launch
129 %attr(0755, root, root) %{_sysconfdir}/init.d/sdbd
130 %{_unitdir}/sdbd.service
131 %{_unitdir}/sdbd_tcp.service
132 %{_unitdir}/multi-user.target.wants/sdbd.service
133 %{_prefix}/lib/udev/rules.d/99-sdbd.rules
134 %{TZ_SYS_BIN}/profile_command
136 %ifarch %{ix86} x86_64
137 %post extension-emulator
138 mv %{_unitdir}/sdbd.service.emulator %{_unitdir}/sdbd.service
139 %preun extension-emulator
140 mv %{_unitdir}/sdbd.service %{_unitdir}/sdbd.service.emulator
141 %files extension-emulator
142 %manifest sdbd.manifest
143 %{_unitdir}/sdbd.service.emulator
144 %{_unitdir}/emulator_preinit.target.wants/sdbd.service
146 %post extension-tv-emulator
147 mv %{_unitdir}/sdbd.service.tv.emulator %{_unitdir}/sdbd.service
148 %preun extension-tv-emulator
149 mv %{_unitdir}/sdbd.service %{_unitdir}/sdbd.service.tv.emulator
150 %files extension-tv-emulator
151 %manifest sdbd.manifest
152 %{_unitdir}/sdbd.service.tv.emulator
153 %{_unitdir}/emulator_preinit.target.wants/sdbd.service
154 %endif // ifarch %{ix86} x86_64
158 mv sdbd.service.tv sdbd.service
162 cp sdbd.service sdbd.service.tv
163 echo For correct bahavior of %{name} after uninstalling %{name}-profile_tv, you need to reinstall %{name}
166 %{_unitdir}/sdbd.service.tv
169 %{_includedir}/sdb/sdbd_plugin.h
170 %{_libdir}/pkgconfig/sdbd.pc