spec file :add gcov option for checking code coverage
[platform/core/uifw/mmi-framework.git] / packaging / mmifw.spec
1 %define USE_GCOV 0
2
3 Name:           mmifw
4 Version:        0.0.1
5 Release:        0
6 Summary:        Multi-modal Interaction Framework Library
7 License:        MIT
8 URL:            http://www.tizen.org
9 Source:         %{name}-%{version}.tar.xz
10 Source1004:     %{name}.manifest
11
12 BuildRequires:  meson
13 BuildRequires:  tidl
14 BuildRequires: pkgconfig(libtzplatform-config)
15 BuildRequires: pkgconfig(bundle)
16 BuildRequires: pkgconfig(gio-2.0)
17 BuildRequires:  pkgconfig(glib-2.0)
18 BuildRequires:  pkgconfig(dlog)
19 BuildRequires:  pkgconfig(rpc-port)
20 BuildRequires:  pkgconfig(ecore)
21
22 #Build dependencies for tests
23 BuildRequires:  pkgconfig(gmock)
24
25 %description
26 MMI(Multi-modal Interaction) Framework Library
27
28 %package devel
29 Summary:        Development package for MMI Framework
30 Group:          Development/Libraries
31 Requires:       %{name} = %{version}-%{release}
32 Requires:       pkgconfig(rpc-port)
33 %description devel
34 Development package for MMI Framework
35
36 %package tests
37 Summary:        Testcases for MMI Framework
38 Group:          System/Libraries
39 %description tests
40 Testcases for testing MMI Framework APIs
41
42 %prep
43 %setup -q
44 cp %{SOURCE1004} .
45
46 #generate mmi-proxy using TIDL Compiler
47 #tidlc -p -l C -i tidl/mmifw.tidl -o mmifw_proxy
48 #cp -af mmifw_proxy.* ./src/interface/
49
50 %build
51 %if "%{USE_GCOV}" == "1"
52 CFLAGS+=" -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
53 CXXFLAGS+=" -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
54 LDFLAGS+=" -lgcov"
55 %endif
56 meson setup --prefix=/usr \
57         --bindir %{_bindir} \
58         --libdir %{_libdir} \
59         builddir
60 ninja -C builddir all
61
62 %install
63 DESTDIR=%{buildroot} ninja -C builddir install
64
65 %post -p /sbin/ldconfig
66 %postun -p /sbin/ldconfig
67
68 %files
69 %manifest %{name}.manifest
70 %defattr(-,root,root,-)
71 %license COPYING
72 %{_libdir}/*.so.*
73
74 %files devel
75 %manifest %{name}.manifest
76 %defattr(-,root,root,-)
77 %license COPYING
78 %{_includedir}/mmifw*.h
79 %{_libdir}/*.so
80 %{_libdir}/pkgconfig/*
81
82 %files tests
83 %defattr(-,root,root,-)
84 %license COPYING
85 %{_bindir}/mmifw-tests
86