Change gcov installation path
[platform/core/appfw/appcore-widget.git] / packaging / appcore-widget.spec
1 Name:       appcore-widget
2 Summary:    Widget Application
3 Version:    1.4.0
4 Release:    1
5 Group:      Application Framework/Libraries
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1001: %{name}.manifest
9 BuildRequires:  pkgconfig(aul)
10 BuildRequires:  pkgconfig(dlog)
11 BuildRequires:  pkgconfig(elementary)
12 BuildRequires:  pkgconfig(app-core-cpp)
13 BuildRequires:  pkgconfig(capi-appfw-app-common)
14 BuildRequires:  pkgconfig(widget_service)
15 BuildRequires:  pkgconfig(capi-system-info)
16 BuildRequires:  pkgconfig(ecore-wl2)
17 BuildRequires:  pkgconfig(app-core-multi-window-cpp)
18 BuildRequires:  pkgconfig(appcore-multiwindow)
19 BuildRequires:  pkgconfig(screen_connector_provider)
20 BuildRequires:  pkgconfig(gmock)
21 BuildRequires:  cmake
22
23 %if 0%{?gcov:1}
24 BuildRequires:  lcov
25 BuildRequires:  zip
26 %endif
27
28 %description
29 Widget base
30
31 %package -n appcore-widget-base
32 Summary:    Widget base
33 Group:      Development/Libraries
34 Requires(post): /sbin/ldconfig
35 %description -n appcore-widget-base
36 Requires(postun): /sbin/ldconfig
37
38 %description
39 Widget base devel
40
41 %package -n appcore-widget-base-devel
42 Summary:    Widget base
43 Group:      Development/Libraries
44 Requires:   %{name} = %{version}-%{release}
45 %description -n appcore-widget-base-devel
46 widget application (development files)
47
48 %description
49 Widget application devel
50
51 %package -n capi-appfw-widget-application-devel
52 Summary:    Widget application
53 Group:      Development/Libraries
54 Requires:   %{name} = %{version}-%{release}
55 %description -n capi-appfw-widget-application-devel
56 widget application (development files)
57
58 %package -n appcore_widget_unittests
59 Summary:    GTest for appcore-widget
60 Group:      Development/Libraries
61 %description -n appcore_widget_unittests
62 GTest for appcore-widget
63
64
65 %if 0%{?gcov:1}
66 %package gcov
67 Summary:  Widget application API(gcov)
68 Group:    Application Framework/Libraries
69
70 %description gcov
71 gcov objects of a widget application library
72 %endif
73
74 %prep
75 %setup -q
76 cp %{SOURCE1001} .
77
78 %build
79 %if 0%{?gcov:1}
80 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
81 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
82 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
83 export LDFLAGS+=" -lgcov"
84 %endif
85
86 export CFLAGS+=" -DEFL_BETA_API_SUPPORT "
87 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
88 %cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
89 %__make %{?jobs:-j%jobs}
90
91 %if 0%{?gcov:1}
92 mkdir -p gcov-obj
93 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
94 %endif
95
96 %install
97 rm -rf %{buildroot}
98 %make_install
99
100 %if 0%{?gcov:1}
101 mkdir -p %{buildroot}%{_datadir}/gcov/obj/%{name}
102 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj/%{name}
103 %endif
104
105 %check
106 export LD_LIBRARY_PATH=../../src/base:../../src/efl_base
107 ctest -V
108 %if 0%{?gcov:1}
109 lcov -c --ignore-errors graph --no-external -q -d . -o appcore-widget.info
110 genhtml appcore-widget.info -o appcore-widget.out
111 zip -r appcore-widget.zip appcore-widget.out
112 install -m 0644 appcore-widget.zip %{buildroot}%{_datadir}/gcov/
113 %endif
114
115 %post -p /sbin/ldconfig
116
117 %postun -p /sbin/ldconfig
118
119 %files -n appcore-widget-base
120 %manifest %{name}.manifest
121 %defattr(-,root,root,-)
122 %{_libdir}/libappcore-widget-base.so.*
123 %license LICENSE
124
125 %files -n appcore-widget-base-devel
126 /usr/include/appfw/widget_base.hh
127 /usr/include/appfw/widget_base.h
128 %{_libdir}/pkgconfig/appcore-widget-base.pc
129 %{_libdir}/libappcore-widget-base.so
130
131 %files -n appcore-widget
132 %manifest %{name}.manifest
133 %defattr(-,root,root,-)
134 %{_libdir}/libcapi-appfw-widget-application.so.*
135 %license LICENSE
136
137 %files -n capi-appfw-widget-application-devel
138 /usr/include/appfw/widget_app.h
139 /usr/include/appfw/widget_app.hpp
140 /usr/include/appfw/widget_app_efl.h
141 /usr/include/appfw/widget_app_internal.h
142 %{_libdir}/pkgconfig/capi-appfw-widget-application.pc
143 %{_libdir}/libcapi-appfw-widget-application.so
144
145 %if 0%{?gcov:1}
146 %files gcov
147 %{_datadir}/gcov/*
148 %endif