6b655449265f5649298904620945751730ec75c5
[platform/core/uifw/autofill.git] / packaging / capi-ui-autofill.spec
1 Name:       capi-ui-autofill
2 Summary:    Autofill Library
3 Version:    0.1.47
4 Release:    1
5 Group:      Graphics & UI Framework/Input
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 BuildRequires:  cmake
9 BuildRequires:  tidl
10 BuildRequires:  pkgconfig(libtzplatform-config)
11 BuildRequires:  pkgconfig(capi-base-common)
12 BuildRequires:  pkgconfig(capi-appfw-service-application)
13 BuildRequires:  pkgconfig(dlog)
14 BuildRequires:  pkgconfig(eina)
15 BuildRequires:  pkgconfig(ecore)
16 BuildRequires:  pkgconfig(rpc-port)
17 BuildRequires:  pkgconfig(glib-2.0)
18 BuildRequires:  pkgconfig(cynara-client)
19 BuildRequires:  pkgconfig(cynara-session)
20 BuildRequires:  pkgconfig(capi-appfw-app-manager)
21 BuildRequires:  pkgconfig(capi-appfw-preference)
22 BuildRequires:  pkgconfig(gmock)
23
24 Requires: org.tizen.autofilld
25 Requires(post): /sbin/ldconfig
26 Requires(postun): /sbin/ldconfig
27
28 %if 0%{?gcov:1}
29 BuildRequires:  lcov
30 BuildRequires:  zip
31 %endif
32
33 %description
34 Autofill Library
35
36
37 %package devel
38 Summary:  Autofill Library (Development)
39 Group:    Development/Libraries
40 Requires: %{name} = %{version}-%{release}
41
42 %description devel
43 Autofill Library (Development)
44
45 %if 0%{?gcov:1}
46 %package gcov
47 Summary:  Autofill Library (gcov)
48 Group:      Graphics & UI Framework/Input
49 %description gcov
50 Autofill gcov objects
51 %endif
52
53 %package -n capi-ui-autofill-common
54 Summary:  Autofill Common Library
55 Group:    Graphics & UI Framework/Input
56 Requires: %{name} = %{version}-%{release}
57
58 %description -n capi-ui-autofill-common
59 Autofill Common Library
60
61 %package -n capi-ui-autofill-common-devel
62 Summary:  Autofill Common Library (Development)
63 Group:    Graphics & UI Framework/Input
64 Requires: %{name} = %{version}-%{release}
65
66 %description -n capi-ui-autofill-common-devel
67 Autofill Common Library (Development)
68
69 %package -n capi-ui-autofill-service
70 Summary:  Autofill Service Library
71 Group:    Graphics & UI Framework/Input
72 Requires: %{name} = %{version}-%{release}
73
74 %description -n capi-ui-autofill-service
75 Autofill Service Library
76
77 %package -n capi-ui-autofill-service-devel
78 Summary:  Autofill Service Library (Development)
79 Group:    Graphics & UI Framework/Input
80 Requires: %{name} = %{version}-%{release}
81
82 %description -n capi-ui-autofill-service-devel
83 Autofill Service Library (Development)
84
85 %package -n capi-ui-autofill-manager
86 Summary:  Autofill Manager Library
87 Group:    Graphics & UI Framework/Input
88 Requires: %{name} = %{version}-%{release}
89
90 %description -n capi-ui-autofill-manager
91 Autofill Manager Library
92
93 %package unittests
94 Summary:    autofill tests
95 Group:      Development/Libraries
96 Requires:   %{name} = %{version}-%{release}
97
98 %description unittests
99 GTest for autofill
100
101
102 %package -n capi-ui-autofill-manager-devel
103 Summary:  Autofill Manager Library (Development)
104 Group:    Graphics & UI Framework/Input
105 Requires: %{name} = %{version}-%{release}
106
107 %description -n capi-ui-autofill-manager-devel
108 Autofill Manager Library (Development)
109
110 %prep
111 %setup -q
112
113 tidlc -p -l C -i tidl/autofill.tidl -o autofill_proxy
114 mv autofill_proxy.h ./client/
115 mv autofill_proxy.c ./client/
116
117 tidlc -s -l C -i tidl/autofill_service.tidl -o autofill_service_stub
118 mv autofill_service_stub.h ./service_lib/
119 mv autofill_service_stub.c ./service_lib/
120
121 tidlc -p -l C -i tidl/autofill_manager.tidl -o autofill_manager_proxy
122 mv autofill_manager_proxy.h ./manager/
123 mv autofill_manager_proxy.c ./manager/
124
125
126 %build
127 %if 0%{?gcov:1}
128 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
129 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
130 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
131 export LDFLAGS+=" -lgcov"
132 %endif
133
134 export CFLAGS+=" -DTIZEN_DEBUG_ENABLE -fvisibility=hidden -Werror"
135 export CXXFLAGS+=" -DTIZEN_DEBUG_ENABLE -fvisibility=hidden -Werror"
136 export FFLAGS+=" -DTIZEN_DEBUG_ENABLE -fvisibility=hidden"
137
138 rm -rf CMakeFiles
139 rm -rf CMakeCache.txt
140 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
141 %cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER} -DTEST_TYPE=%{test_type}
142 make %{?jobs:-j%jobs}
143
144 %install
145 rm -rf %{buildroot}
146 %make_install
147
148 %if 0%{?gcov:1}
149 find . -name '*_proxy.c.gcno' -exec rm {} \;
150 find . -name '*_stub.c.gcno' -exec rm {} \;
151
152 find . -name '*.gcno' | tar cf %{name}-gcov.tar -T -
153 install -d -m 755 %{buildroot}%{_datadir}/gcov/obj
154 tar xf %{name}-gcov.tar -C %{buildroot}%{_datadir}/gcov/obj
155 %endif
156
157 %check
158 ctest --output-on-failure %{?_smp_mflags}
159 %if 0%{?gcov:1}
160 lcov -c --ignore-errors graph --no-external -q -d . -o gcov.info
161 genhtml gcov.info
162 %endif
163
164 %post
165 /sbin/ldconfig
166
167 %postun -p /sbin/ldconfig
168
169
170 %files
171 %manifest client/capi-ui-autofill.manifest
172 %{_libdir}/libcapi-ui-autofill.so.*
173 %license LICENSE
174
175 %files -n capi-ui-autofill-common
176 %manifest common/capi-ui-autofill-common.manifest
177 %{_libdir}/libcapi-ui-autofill-common.so.*
178 %license LICENSE
179
180 %files -n capi-ui-autofill-common-devel
181 %{_includedir}/autofill_common*.h
182 %{_includedir}/autofill_error.h
183 %{_libdir}/pkgconfig/capi-ui-autofill-common.pc
184 %{_libdir}/libcapi-ui-autofill-common.so
185
186 %files devel
187 %{_includedir}/autofill.h
188 %{_libdir}/pkgconfig/capi-ui-autofill.pc
189 %{_libdir}/libcapi-ui-autofill.so
190
191 %files -n capi-ui-autofill-service
192 %manifest service_lib/capi-ui-autofill-service.manifest
193 %{_libdir}/libcapi-ui-autofill-service.so.*
194 %license LICENSE
195
196 %files -n capi-ui-autofill-service-devel
197 %{_includedir}/autofill_service*.h
198 %{_libdir}/pkgconfig/capi-ui-autofill-service.pc
199 %{_libdir}/libcapi-ui-autofill-service.so
200
201 %files -n capi-ui-autofill-manager
202 %manifest manager/capi-ui-autofill-manager.manifest
203 %{_libdir}/libcapi-ui-autofill-manager.so.*
204 %license LICENSE
205
206 %files -n capi-ui-autofill-manager-devel
207 %{_includedir}/autofill_error.h
208 %{_includedir}/autofill_manager*.h
209 %{_libdir}/pkgconfig/capi-ui-autofill-manager.pc
210 %{_libdir}/libcapi-ui-autofill-manager.so
211
212 %files unittests
213 %{_bindir}/*
214
215 %if 0%{?gcov:1}
216 %files gcov
217 %{_datadir}/gcov/*
218
219 %endif