Release version 0.5.77
[platform/core/api/notification.git] / packaging / notification.spec
1 %bcond_with wayland
2 Name:       notification
3 Summary:    Notification library
4 Version:    0.5.77
5 Release:    1
6 Group:      Applications/Core Applications
7 License:    Apache-2.0
8 Source0:    %{name}-%{version}.tar.gz
9 BuildRequires: pkgconfig(sqlite3)
10 BuildRequires: pkgconfig(vconf)
11 BuildRequires: pkgconfig(bundle)
12 BuildRequires: pkgconfig(dbus-1)
13 BuildRequires: pkgconfig(dlog)
14 BuildRequires: pkgconfig(aul)
15 BuildRequires: pkgconfig(capi-appfw-app-control)
16 BuildRequires: pkgconfig(capi-appfw-app-common)
17 BuildRequires: pkgconfig(capi-appfw-package-manager)
18 BuildRequires: pkgconfig(pkgmgr-info)
19 BuildRequires: pkgconfig(libtzplatform-config)
20 BuildRequires: pkgconfig(glib-2.0)
21 BuildRequires: pkgconfig(iniparser)
22 BuildRequires: pkgconfig(security-manager)
23 BuildRequires: pkgconfig(libsmack)
24 BuildRequires: pkgconfig(gmock)
25 BuildRequires: pkgconfig(uuid)
26
27 %if 0%{?gcov:1}
28 BuildRequires:  lcov
29 BuildRequires:  zip
30 %endif
31
32 BuildRequires: cmake
33 Requires(post): /sbin/ldconfig
34 Requires(post): %{TZ_SYS_BIN}/sqlite3
35 Requires(postun): /sbin/ldconfig
36
37 %define upgrade_script_path /usr/share/upgrade/scripts
38
39 %description
40 Client/Server library for sending notifications.
41
42 %if 0%{?gcov:1}
43 %package gcov
44 Summary:  Notification API(gcov)
45 Group:    Applications/Core Applications
46
47 %description gcov
48 gcov objects of a notification library
49 %endif
50
51 %prep
52 %setup -q
53
54 %package devel
55 Summary:    Notification library (devel)
56 Group:      Development/Libraries
57 Requires:   %{name} = %{version}-%{release}
58
59 %description devel
60 Development files needed to build software that needs to system a system notification.
61
62 %build
63 %if 0%{?gcov:1}
64 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
65 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
66 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
67 export LDFLAGS+=" -lgcov"
68 %endif
69
70 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
71 %cmake . \
72         -DCMAKE_INSTALL_PREFIX=%{_prefix} \
73         -DMAJORVER=${MAJORVER} -DFULLVER=%{version}
74 %__make %{?jobs:-j%jobs}
75
76 %if 0%{?gcov:1}
77 mkdir -p gcov-obj
78 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
79 %endif
80
81 %check
82 ctest --output-on-failure %{?_smp_mflags}
83 %if 0%{?gcov:1}
84 lcov -c --ignore-errors graph --no-external -q -d . -o notification-ex.info
85 genhtml notification-ex.info -o notification-ex.out
86 zip -r notification-ex.zip notification-ex.out
87 install -m 0644 notification-ex.zip %{buildroot}%{_datadir}/gcov/notification-ex.zip
88 %endif
89
90 %install
91 rm -rf %{buildroot}
92 %make_install
93
94 %if 0%{?gcov:1}
95 mkdir -p %{buildroot}%{_datadir}/gcov/obj
96 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
97 %endif
98
99 mkdir -p %{buildroot}%{upgrade_script_path}
100 cp -f scripts/505.notification_upgrade.sh %{buildroot}%{upgrade_script_path}
101
102 %clean
103 rm -rf %{buildroot}
104
105 %post
106 /sbin/ldconfig
107
108 if [ ! -d %{TZ_SYS_DB} ]
109 then
110         mkdir %{TZ_SYS_DB}
111 fi
112
113 %postun -p /sbin/ldconfig
114
115 %files
116 %manifest notification.manifest
117 %defattr(-,root,root,-)
118 %{_libdir}/libnotification.so.*
119 %license LICENSE
120 %attr(755,root,root) %{_sysconfdir}/gumd/useradd.d/11_notification-add.post
121 %{_bindir}/notification_init
122 %{upgrade_script_path}/505.notification_upgrade.sh
123 #%{_bindir}/notification-test-app
124
125 %files devel
126 %defattr(-,root,root,-)
127 %{_includedir}/notification/notification.h
128 %{_includedir}/notification/notification_db.h
129 %{_includedir}/notification/notification_internal.h
130 %{_includedir}/notification/notification_error.h
131 %{_includedir}/notification/notification_type.h
132 %{_includedir}/notification/notification_list.h
133 %{_includedir}/notification/notification_ongoing.h
134 %{_includedir}/notification/notification_ongoing_flag.h
135 %{_includedir}/notification/notification_text_domain.h
136 %{_includedir}/notification/notification_status.h
137 %{_includedir}/notification/notification_status_internal.h
138 %{_includedir}/notification/notification_setting.h
139 %{_includedir}/notification/notification_setting_internal.h
140 %{_includedir}/notification/notification_ipc.h
141 %{_includedir}/notification/notification_noti.h
142 %{_includedir}/notification/notification_setting_service.h
143 %{_includedir}/notification/notification_viewer.h
144 %{_includedir}/notification/notification_shared_file.h
145 %{_includedir}/notification/notification_type_internal.h
146 %{_libdir}/pkgconfig/notification.pc
147 %{_libdir}/libnotification.so
148
149 #################################################
150 # notification-ex
151 #################################################
152 %package -n %{name}-ex
153 Summary: Library for developing the notification
154 Group: Applications/Application Utility
155 License: Apache-2.0
156
157 %description -n %{name}-ex
158 Provide APIs to develop the notification.
159
160 %package -n %{name}-ex-devel
161 Summary: Notification development library (dev)
162 Group: Development/Libraries
163 Requires: %{name}-ex
164
165 %description -n %{name}-ex-devel
166 Header & package configuration files to support development of the notification.
167
168 %post -n %{name}-ex
169 /sbin/ldconfig
170
171 %postun -n %{name}-ex -p /sbin/ldconfig
172
173 %files -n %{name}-ex
174 %manifest %{name}-ex.manifest
175 %attr(0644,root,root) %{_libdir}/libnotification-ex.so.*
176 %license LICENSE
177
178 %files -n %{name}-ex-devel
179 %{_includedir}/notification-ex/*
180 %{_libdir}/pkgconfig/notification-ex.pc
181 %attr(0644,root,root) %{_libdir}/libnotification-ex.so
182
183 #################################################
184 # notification-ex_unittests
185 #################################################
186 %package -n notification-ex_unittests
187 Summary:    GTest for notification-ex
188 Group:      Development/Libraries
189
190 %description -n notification-ex_unittests
191 GTest for notification-ex
192
193 %files -n notification-ex_unittests
194 %{_bindir}/notification-ex_unittests
195
196 %if 0%{?gcov:1}
197 %files gcov
198 %{_datadir}/gcov/*
199 %endif