[STC Manager] Support set/get for total data usage(Tx + Rx) in restriction.
[platform/core/connectivity/stc-manager.git] / packaging / stc-manager.spec
1 Name:       stc-manager
2 Summary:    STC(Smart Traffic Control) manager
3 Version:    0.0.15
4 Release:    0
5 Group:      Network & Connectivity/Other
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8
9 %define enable_database YES
10 %define enable_statistics YES
11 %define enable_restriction YES
12 %define database_full_path /opt/usr/dbspace/.stc-manager-datausage.db
13
14 BuildRequires:  cmake
15 BuildRequires:  pkgconfig(glib-2.0)
16 BuildRequires:  pkgconfig(gio-2.0)
17 BuildRequires:  pkgconfig(gobject-2.0)
18 BuildRequires:  pkgconfig(gio-unix-2.0)
19 BuildRequires:  pkgconfig(dlog)
20 BuildRequires:  pkgconfig(libtzplatform-config)
21 BuildRequires:  pkgconfig(vconf)
22
23 %if %{?enable_database} == YES
24 BuildRequires:  pkgconfig(sqlite3)
25 %endif
26
27 BuildRequires:  python
28 BuildRequires:  python-xml
29
30 %description
31 A smart traffic control manager to manage traffic counting and bandwidth limitation
32
33 %package plugin
34 Summary: STC manager plugin
35 BuildRequires:  pkgconfig(bundle)
36 BuildRequires:  pkgconfig(syspopup-caller)
37
38 %description plugin
39 A smart traffic control manager extension for plugin
40
41 %prep
42 %setup -q
43 chmod 644 %{SOURCE0}
44
45 %build
46
47 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE -D_GNU_SOURCE"
48 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE -D_GNU_SOURCE"
49 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
50
51 %cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
52         -DBIN_DIR=%{_bindir} \
53         -DLIB_PATH=%{_lib} \
54         -DENABLE_DATABASE=%{enable_database} \
55         -DDATABASE_FULL_PATH=%{database_full_path} \
56         -DENABLE_STATISTICS=%{enable_statistics} \
57         -DENABLE_RESTRICTION=%{enable_restriction}
58
59 make %{?_smp_mflags}
60
61 %install
62 rm -rf %{buildroot}
63
64 %make_install
65
66 #database initialization
67 %if %{?enable_database} == YES
68         mkdir -p %{buildroot}/opt/usr/dbspace
69         sqlite3 %{buildroot}%{database_full_path} < %{buildroot}/usr/share/traffic_db.sql
70         rm %{buildroot}/usr/share/traffic_db.sql
71 %endif
72
73 #Systemd service file
74 mkdir -p %{buildroot}%{_libdir}/systemd/system/
75 cp resources/systemd/stc-manager.service %{buildroot}%{_libdir}/systemd/system/stc-manager.service
76
77 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/
78 ln -s ../stc-manager.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/stc-manager.service
79
80 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
81 cp resources/dbus/net.stc.service %{buildroot}%{_datadir}/dbus-1/system-services/
82
83 #DBus DAC (stc-manager.manifest enables DBus SMACK)
84 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
85 cp resources/dbus/stc-manager.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/stc-manager.conf
86
87 %files
88 %manifest %{name}.manifest
89 %license LICENSE
90 %defattr(-,root,root,-)
91 %attr(500,root,root) %{_bindir}/*
92
93 %attr(644,root,root) %{_libdir}/systemd/system/stc-manager.service
94 %attr(644,root,root) %{_libdir}/systemd/system/multi-user.target.wants/stc-manager.service
95
96 #DBus DAC
97 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
98 %attr(644,-,-) %{_datadir}/dbus-1/system-services/*.service
99
100 %if %{?enable_database} == YES
101 %config(noreplace) %attr(660, root, root) %{database_full_path}
102 %config(noreplace) %attr(660, root, root) %{database_full_path}-journal
103 %endif
104
105 %files plugin
106 %manifest %{name}.manifest
107 %attr(500,root,root) %{_libdir}/stc-manager-plugin.so