bbc0bd0e167d8eecb52e48b2150f50a4183166de
[platform/core/appfw/widget-service.git] / packaging / libwidget_service.spec
1 Name: libwidget_service
2 Summary: Service API for gathering installed widget information
3 Version: 1.2.65
4 Release: 1
5 Group: Applications/Core Applications
6 License: Flora-1.1
7 Source0: %{name}-%{version}.tar.gz
8 Source1001: %{name}.manifest
9 BuildRequires: cmake, gettext-tools, coreutils
10 BuildRequires: pkgconfig(dlog)
11 BuildRequires: pkgconfig(glib-2.0)
12 BuildRequires: pkgconfig(gio-2.0)
13 BuildRequires: pkgconfig(sqlite3)
14 BuildRequires: pkgconfig(db-util)
15 BuildRequires: pkgconfig(pkgmgr)
16 BuildRequires: pkgconfig(pkgmgr-info)
17 BuildRequires: pkgconfig(uuid)
18 BuildRequires: pkgconfig(vconf)
19 BuildRequires: pkgconfig(icu-uc)
20 BuildRequires: pkgconfig(bundle)
21 BuildRequires: pkgconfig(capi-appfw-app-common)
22 BuildRequires: pkgconfig(capi-base-common)
23 BuildRequires: pkgconfig(capi-system-info)
24 BuildRequires: pkgconfig(libtzplatform-config)
25 BuildRequires: pkgconfig(libxml-2.0)
26 BuildRequires: pkgconfig(aul)
27 BuildRequires: pkgconfig(cynara-client)
28 BuildRequires: pkgconfig(pkgmgr-installer)
29 BuildRequires: pkgconfig(iniparser)
30 BuildRequires: pkgconfig(libsmack)
31 BuildRequires: pkgconfig(gmock)
32
33 %if 0%{?gcov:1}
34 BuildRequires:  lcov
35 BuildRequires:  zip
36 %endif
37
38 %if "%{model_build_feature_widget}" == "0"
39 ExclusiveArch:
40 %endif
41
42 %define upgrade_script_path /usr/share/upgrade/scripts
43
44 %description
45 Service API for gathering information of installed widgetes
46
47 %package devel
48 Summary: Files for widget service
49 Group: Development/Libraries
50 Requires: %{name} = %{version}-%{release}
51
52 %description devel
53 Gathering the installed widget information.
54
55 #################################################
56 # widget_service_gcov
57 #################################################
58 %if 0%{?gcov:1}
59 %package gcov
60 Summary:  Widget Service API(gcov)
61 Group:    Applications/Core Applications
62
63 %description gcov
64 gcov objects of a widget service library
65 %endif
66
67 %prep
68 %setup -q
69 cp %{SOURCE1001} .
70
71 %build
72 %if 0%{?gcov:1}
73 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
74 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
75 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
76 export LDFLAGS+=" -lgcov"
77 %endif
78
79 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
80 %cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
81 %__make %{?jobs:-j%jobs}
82
83 %if 0%{?gcov:1}
84 mkdir -p gcov-obj
85 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
86 %endif
87
88 %check
89 ctest -V
90 %if 0%{?gcov:1}
91 lcov -c --ignore-errors graph --no-external -q -d . -o widget_service.info
92 genhtml widget_service.info -o widget_service.out
93 zip -r widget_service.zip widget_service.out widget_service.info
94 install -m 0644 widget_service.zip %{buildroot}%{_datadir}/gcov/
95 %endif
96
97 %install
98 rm -rf %{buildroot}
99 %make_install
100 mkdir -p %{buildroot}%{TZ_SYS_DB}
101 mkdir -p %{buildroot}%{_sysconfdir}/skel/.applications/dbspace
102
103 cat /dev/null > .widget.db
104 cat /dev/null > .widget.db-journal
105
106 install -m 0666 .widget.db %{buildroot}%{TZ_SYS_DB}
107 install -m 0666 .widget.db-journal %{buildroot}%{TZ_SYS_DB}
108 install -m 0666 .widget.db %{buildroot}%{_sysconfdir}/skel/.applications/dbspace
109 install -m 0666 .widget.db-journal %{buildroot}%{_sysconfdir}/skel/.applications/dbspace
110
111 %if 0%{?gcov:1}
112 mkdir -p %{buildroot}%{_datadir}/gcov/obj/%{name}
113 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj/%{name}
114 %endif
115
116 mkdir -p %{buildroot}%{upgrade_script_path}
117 cp -f scripts/505.widget_service_upgrade.sh %{buildroot}%{upgrade_script_path}
118
119 %post -n %{name}
120 /sbin/ldconfig
121 %{_bindir}/widget_recovery init
122
123 %postun -n %{name}
124 /sbin/ldconfig
125
126 %posttrans
127 if [ -e %{_sysconfdir}/config/model-config.xml ]; then
128         PROFILE=`grep "feature\/profile" %{_sysconfdir}/config/model-config.xml`
129         if [[ "${PROFILE}" == *"mobile"* ]]; then
130                 rm %{_datarootdir}/widget_service/wearable.resolution.ini
131                 mv -f %{_datarootdir}/widget_service/mobile.resolution.ini %{_datarootdir}/widget_service/resolution.ini
132         elif [[ "${PROFILE}" == *"wearable"* ]]; then
133                 rm %{_datarootdir}/widget_service/mobile.resolution.ini
134                 mv -f %{_datarootdir}/widget_service/wearable.resolution.ini %{_datarootdir}/widget_service/resolution.ini
135         else
136                 rm %{_datarootdir}/widget_service/mobile.resolution.ini
137                 rm %{_datarootdir}/widget_service/wearable.resolution.ini
138         fi
139 else
140         rm %{_datarootdir}/widget_service/mobile.resolution.ini
141         rm %{_datarootdir}/widget_service/wearable.resolution.ini
142 fi
143
144 #################################################
145 # widget_service_unittests
146 #################################################
147 %package -n widget_service_unittests
148 Summary:    GTest for widget_service
149 Group:      Development/Libraries
150
151 %description -n widget_service_unittests
152 GTest for widget_service
153
154 %files -n widget_service_unittests
155 %{_bindir}/widget_service_unittests
156
157 %files -n %{name}
158 %manifest %{name}.manifest
159 %defattr(-,root,root,-)
160 %license LICENSE
161 %{_libdir}/libwidget_service.so.*
162 %{_sysconfdir}/package-manager/parserlib/libwidget-application.so
163 %{_sysconfdir}/skel/.applications/dbspace/.widget.db
164 %{_sysconfdir}/skel/.applications/dbspace/.widget.db-journal
165 %{TZ_SYS_DB}/.widget.db
166 %{TZ_SYS_DB}/.widget.db-journal
167 %{_bindir}/widget_test
168 %{_bindir}/widget_recovery
169 %{_datarootdir}/widget_service/*
170 %{_datarootdir}/parser-plugins/widget.info
171 %attr(0755,root,root) %{upgrade_script_path}/505.widget_service_upgrade.sh
172
173 %files devel
174 %manifest %{name}.manifest
175 %defattr(-,root,root,-)
176 %{_includedir}/widget_service/*
177 %{_libdir}/pkgconfig/widget_service.pc
178 %{_libdir}/libwidget_service.so
179
180 %if 0%{?gcov:1}
181 %files gcov
182 %{_datadir}/gcov/*
183 %endif
184
185 # End of a file