Support on-demand launch
[platform/core/uifw/capi-ui-sticker.git] / packaging / capi-ui-sticker.spec
1 Name:       capi-ui-sticker
2 Summary:    Sticker client library and daemon
3 Version:    0.1.6
4 Release:    1
5 Group:      Graphics & UI Framework/Input
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    capi-ui-sticker.service
9 Source2:    org.tizen.sticker.server.service
10 Source3:    capi-ui-sticker.conf
11 BuildRequires:  cmake, coreutils
12 BuildRequires:  pkgconfig(capi-appfw-app-common)
13 BuildRequires:  pkgconfig(capi-appfw-package-manager)
14 BuildRequires:  pkgconfig(capi-system-info)
15 BuildRequires:  pkgconfig(cynara-client)
16 BuildRequires:  pkgconfig(cynara-session)
17 BuildRequires:  pkgconfig(dbus-1)
18 BuildRequires:  pkgconfig(dlog)
19 BuildRequires:  pkgconfig(gio-2.0)
20 BuildRequires:  pkgconfig(gio-unix-2.0)
21 BuildRequires:  pkgconfig(glib-2.0)
22 BuildRequires:  pkgconfig(json-glib-1.0)
23 BuildRequires:  pkgconfig(libtzplatform-config)
24 BuildRequires:  pkgconfig(pkgmgr-info)
25 BuildRequires:  pkgconfig(sqlite3)
26 Requires:       security-config
27 Requires(post): /sbin/ldconfig
28 Requires(post): dbus
29 Requires(postun): /sbin/ldconfig
30
31 %description
32 Sticker client library and daemon
33
34 %package devel
35 Summary:    Sticker client library and daemon (Development)
36 Group:      Graphics & UI Framework/Input
37 Requires:   %{name} = %{version}-%{release}
38
39 %description devel
40 Sticker client library and daemon (Development)
41
42 %if 0%{?gcov:1}
43 %package gcov
44 Summary:  Sticker client library and daemon (gcov)
45 Group:      Graphics & UI Framework/Input
46 %description gcov
47 Sticker client library and daemon (gcov)
48 %endif
49
50 %prep
51 %setup -q -n %{name}-%{version}
52 cp %{SOURCE2} .
53
54 %build
55 %if 0%{?gcov:1}
56 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
57 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
58 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
59 export LDFLAGS+=" -lgcov"
60 %endif
61
62 export CFLAGS+=" -DTIZEN_DEBUG_ENABLE -fvisibility=hidden -Werror"
63 export CXXFLAGS+=" -DTIZEN_DEBUG_ENABLE -fvisibility=hidden -Werror"
64 export FFLAGS+=" -DTIZEN_DEBUG_ENABLE -fvisibility=hidden"
65
66 %cmake . -DCMAKE_INSTALL_PREFIX=/usr -DLIBDIR=%{_libdir} -DBINDIR=%{_bindir} -DINCLUDEDIR=%{_includedir} \
67          -DTZ_SYS_RO_SHARE=%TZ_SYS_RO_SHARE -DTZ_SYS_BIN=%TZ_SYS_BIN -DTZ_SYS_SHARE=%TZ_SYS_SHARE
68 make %{?jobs:-j%jobs}
69
70 %if 0%{?gcov:1}
71 mkdir -p gcov-obj
72 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
73 %endif
74
75 %install
76 rm -rf %{buildroot}
77 %make_install
78
79 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system
80 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}/capi-ui-sticker.service
81
82 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services
83 install -m 0644 %SOURCE2 %{buildroot}%{_datadir}/dbus-1/system-services/org.tizen.sticker.server.service
84
85 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
86 install -m 0644 %SOURCE3 %{buildroot}%{_sysconfdir}/dbus-1/system.d/capi-ui-sticker.conf
87
88 %if 0%{?gcov:1}
89 mkdir -p %{buildroot}%{_datadir}/gcov/obj
90 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
91 %endif
92
93 %post
94 /sbin/ldconfig
95
96 mkdir -p -m 0775 %{TZ_SYS_SHARE}/sticker-data
97 chown -R ui_fw:ui_fw %{TZ_SYS_SHARE}/sticker-data
98 chsmack -t %{TZ_SYS_SHARE}/sticker-data
99 chsmack -a "System::Shared" %{TZ_SYS_SHARE}/sticker-data
100
101 %postun -p /sbin/ldconfig
102
103 %files
104 %manifest %{name}.manifest
105 %license LICENSE
106 %{_libdir}/lib*.so
107 %attr(0755,ui_fw,ui_fw) %{_bindir}/sticker-server
108 %attr(0644,root,root) %{_unitdir}/capi-ui-sticker.service
109 %attr(0644,root,root) %{_datadir}/dbus-1/system-services/org.tizen.sticker.server.service
110 %config %{_sysconfdir}/dbus-1/system.d/capi-ui-sticker.conf
111 %{TZ_SYS_RO_SHARE}/parser-plugins/capi-ui-sticker.info
112 %{TZ_SYS_RO_ETC}/package-manager/parserlib/category/libcapi-ui-sticker-parser.so*
113 %{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libcapi-ui-sticker-parser.so*
114
115 %files devel
116 %manifest %{name}-devel.manifest
117 %defattr(-,root,root,-)
118 %{_libdir}/lib*.so
119 %{_libdir}/pkgconfig/capi-ui-sticker-consumer.pc
120 %{_libdir}/pkgconfig/capi-ui-sticker-provider.pc
121 %{_includedir}/sticker_error.h
122 %{_includedir}/sticker_data.h
123 %{_includedir}/sticker_consumer.h
124 %{_includedir}/sticker_provider.h
125
126 %if 0%{?gcov:1}
127 %files gcov
128 %{_datadir}/gcov/obj/*
129 %endif