13d9b10f05e21ac214a415bfc2be1896ebc2e092
[platform/core/appfw/data-control.git] / packaging / data-control.spec
1 Name:       data-control
2 Summary:    Data Control library
3 Version:    0.4.12
4 Release:    1
5 Group:      Application Framework/Libraries
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 BuildRequires:  cmake
9 BuildRequires:  pkgconfig(dlog)
10 BuildRequires:  pkgconfig(bundle)
11 BuildRequires:  pkgconfig(appsvc)
12 BuildRequires:  pkgconfig(pkgmgr-info)
13 BuildRequires:  pkgconfig(glib-2.0)
14 BuildRequires:  pkgconfig(capi-base-common)
15 BuildRequires:  pkgconfig(cynara-client)
16 BuildRequires:  pkgconfig(sqlite3)
17 BuildRequires:  pkgconfig(gmock)
18
19 %if 0%{?gcov:1}
20 BuildRequires:  lcov
21 BuildRequires:  zip
22 %endif
23
24 # runtime requires
25 Requires(post): /sbin/ldconfig
26 Requires(post): coreutils
27 Requires(postun): /sbin/ldconfig
28
29 Provides:   capi-data-control
30
31 %description
32 Data Control library
33
34 %package devel
35 Summary:  Data Control library (Development)
36 Group:    Application Framework/Development
37 Requires: %{name} = %{version}-%{release}
38
39 %description devel
40 Data Control library (DEV)
41
42 #################################################
43 # data_control_unittests
44 #################################################
45 %package -n data_control_unittests
46 Summary:    GTest for Data Control API
47 Group:      Development/Libraries
48 Requires:   %{name}
49
50 %description -n data_control_unittests
51 GTest for data-control API
52
53 #################################################
54 # gcov
55 #################################################
56 %if 0%{?gcov:1}
57 %package gcov
58 Summary:  Data Control API(gcov)
59 Group:    Application Framework/Libraries
60
61 %description gcov
62 gcov objects of a data control library
63 %endif
64
65 %prep
66 %setup -q
67
68 %build
69 %if 0%{?gcov:1}
70 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
71 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
72 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
73 export LDFLAGS+=" -lgcov"
74 %endif
75
76 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
77 %cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
78
79 # Call make instruction with smp support
80 %__make %{?jobs:-j%jobs}
81
82 %if 0%{?gcov:1}
83 mkdir -p gcov-obj
84 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
85 %endif
86
87 %check
88 ctest -V
89 %if 0%{?gcov:1}
90 lcov -c --ignore-errors graph --no-external -q -d . -o data_control.info
91 genhtml data_control.info -o data_control.out
92 zip -r data_control.zip data_control.out
93 install -m 0644 data_control.zip %{buildroot}%{_datadir}/gcov/data_control.zip
94 %endif
95
96 %install
97 rm -rf %{buildroot}
98
99 %make_install
100
101 %if 0%{?gcov:1}
102 mkdir -p %{buildroot}%{_datadir}/gcov/obj
103 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
104 %endif
105
106 %post -p /sbin/ldconfig
107
108 %postun -p /sbin/ldconfig
109
110
111 %files
112 %{_libdir}/lib%{name}.so.*
113 %{_libdir}/libcapi-data-control.so.*
114 %config %{_sysconfdir}/dbus-1/session.d/data-control.conf
115
116 %manifest %{name}.manifest
117 %license LICENSE.APLv2
118
119 %files devel
120 %{_includedir}/appfw/*.h
121 %{_libdir}/pkgconfig/*.pc
122 %{_libdir}/lib%{name}.so
123
124 #################################################
125 # data_control_unittests
126 #################################################
127 %files -n data_control_unittests
128 %{_bindir}/data_control_unittests
129
130 #################################################
131 # data-control-gcov
132 #################################################
133 %if 0%{?gcov:1}
134 %files gcov
135 %{_datadir}/gcov/*
136 %endif