c50c6abbc1000481d29509f9d2f39fe6c6676ff3
[platform/core/connectivity/ua-manager.git] / packaging / ua-manager.spec
1 Name:       ua-manager
2 Summary:    User awareness manager
3 Version:    0.12.17
4 Release:    1
5 License:    Apache-2.0
6 Source0:    %{name}-%{version}.tar.gz
7 Source1:        ua-manager.conf
8 Source2:        net.uamd.service
9 Source3:        ua-manager.service
10 Source1001: ua-manager.manifest
11
12 %define database_full_path /opt/usr/dbspace/.ua-manager-data.db
13 #%define config_file_path /opt/usr/data/ua
14
15 BuildRequires:  cmake
16 BuildRequires:  pkgconfig(dlog)
17 BuildRequires:  pkgconfig(glib-2.0)
18 BuildRequires:  pkgconfig(gio-2.0)
19 BuildRequires:  pkgconfig(gio-unix-2.0)
20 BuildRequires:  pkgconfig(libtzplatform-config)
21 BuildRequires:  pkgconfig(sqlite3)
22 BuildRequires:  pkgconfig(bundle)
23 BuildRequires:  pkgconfig(aul)
24 %if 0%{?gtests:1}
25 BuildRequires:  pkgconfig(gmock)
26 %endif
27
28 Requires(post): /sbin/ldconfig
29 Requires(postun): /sbin/ldconfig
30
31 %description
32 User awareness manager
33
34 %package devel
35 Summary:    User awareness manager APIs.
36 Group:      Development/Libraries
37 Requires:   %{name} = %{version}-%{release}
38
39 %description devel
40 This package contains User Awareness manager APIs.
41
42 %package plugins
43 Summary:    UA framework plugin interface
44 Requires:   %{name} = %{version}-%{release}
45
46 %description plugins
47 This package contains User Awareness plugin interfaces.
48
49 %prep
50 %setup -q
51 cp -a %{SOURCE1} .
52 cp -a %{SOURCE2} .
53 cp -a %{SOURCE3} .
54 cp %{SOURCE1001} .
55
56 %build
57
58 %if 0%{?gcov:1}
59 export LDFLAGS+=" -lgcov"
60 %endif
61
62 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
63 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
64         -DLIB_INSTALL_DIR=%{_libdir} \
65         -DBIN_INSTALL_DIR=%{_bindir} \
66         -DINCLUDE_INSTALL_DIR=%{_includedir} \
67         -DLIB_PATH=%{_lib} \
68         -DFULLVER=%{version} \
69         -DMAJORVER=${MAJORVER} \
70         -DDBPATH=%{database_full_path} \
71         -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0}} \
72         -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0}}
73
74 %install
75 %make_install
76
77 #database initialization
78 mkdir -p %{buildroot}/opt/usr/dbspace
79 sqlite3 %{buildroot}%{database_full_path} < %{buildroot}/usr/share/ua_db.sql
80 mkdir -p %{buildroot}/opt/usr/share/data/network/ua/share
81 #rm %{buildroot}/usr/share/ua_db.sql
82
83 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
84 cp ua-manager.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/ua-manager.conf
85 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
86 cp net.uamd.service %{buildroot}%{_datadir}/dbus-1/system-services/net.uamd.service
87 mkdir -p %{buildroot}%{_unitdir}
88 cp ua-manager.service %{buildroot}%{_unitdir}/ua-manager.service
89
90 %post
91 /sbin/ldconfig
92
93 /usr/bin/chsmack -a 'System' %{database_full_path}
94 /usr/bin/chsmack -a 'System' %{database_full_path}-journal
95
96 %postun -p /sbin/ldconfig
97
98 %files
99 %manifest %{name}.manifest
100 %license LICENSE
101 %defattr(-, root, root)
102 %attr(644,-,-) %{_libdir}/libua-api.so.*
103 %attr(755,network_fw,network_fw) %{_bindir}/ua-manager
104 %config %{_sysconfdir}/dbus-1/system.d/ua-manager.conf
105 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
106 %attr(644,root,root) %{_unitdir}/ua-manager.service
107 %config %attr(660, network_fw, network_fw) %{database_full_path}
108 %config %attr(660, network_fw, network_fw) %{database_full_path}-journal
109 %config %attr(660, network_fw, network_fw) /usr/share/ua_db.sql
110 %attr(770, network_fw, network_fw) /opt/usr/data/network/ua/share/create-ua-db.sh
111
112 %files devel
113 %defattr(-, root, root)
114 %{_includedir}/ua-manager/ua-api.h
115 %{_libdir}/pkgconfig/ua-api.pc
116 %%attr(644,-,-) %{_libdir}/libua-api.so
117
118 %files plugins
119 %defattr(-, root, root)
120 %{_includedir}/ua-manager/plugins/ua-plugin-type.h
121 %{_includedir}/ua-manager/plugins/ua-plugin.h
122 %{_includedir}/ua-manager/plugins/ua-vendor-plugin.h
123 %{_includedir}/ua-manager/plugins/ua-cloud-plugin.h
124 %{_libdir}/pkgconfig/ua-plugins.pc