0297cc729affaf2aeb6a5270c62088de26f25b5a
[platform/core/api/inputmethod.git] / packaging / capi-ui-inputmethod.spec
1 Name:       capi-ui-inputmethod
2 Summary:    Input Method Library
3 Version:    0.6.2
4 Release:    1
5 Group:      Graphics & UI Framework/Input
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 BuildRequires:  cmake
9 BuildRequires:  pkgconfig(capi-base-common)
10 BuildRequires:  pkgconfig(dlog)
11 BuildRequires:  pkgconfig(evas)
12 BuildRequires:  pkgconfig(eina)
13 BuildRequires:  pkgconfig(ecore-imf)
14 BuildRequires:  pkgconfig(libscl-core)
15 BuildRequires:  pkgconfig(isf)
16 BuildRequires:  pkgconfig(cynara-client)
17 BuildRequires:  pkgconfig(cynara-session)
18 BuildRequires:  pkgconfig(gmock)
19 Requires(post): /sbin/ldconfig
20 Requires(postun): /sbin/ldconfig
21
22 %if 0%{?gcov:1}
23 BuildRequires:  lcov
24 BuildRequires:  zip
25 %endif
26
27 %description
28 Input Method Library
29
30 %package devel
31 Summary:  Input Method Library (Development)
32 Group:    Development/Libraries
33 Requires: %{name} = %{version}-%{release}
34
35 %description devel
36 Input Method Library (Development)
37
38 %package -n capi-ui-remote-input
39 Summary:    Remote Input Library
40 Group:      Graphics & UI Framework/Input
41 Requires: %{name} = %{version}-%{release}
42
43 %description -n capi-ui-remote-input
44 Remote Input Library
45
46 %package -n capi-ui-remote-input-devel
47 Summary:    Remote Input Library (Development)
48 Group:      Development/Libraries
49 Requires: %{name} = %{version}-%{release}
50
51 %description -n capi-ui-remote-input-devel
52 Remote Input Library (Development)
53
54 %if 0%{?gcov:1}
55 %package gcov
56 Summary:  Input Method (gcov)
57 Group:    Graphics & UI Framework/Input
58 %description gcov
59 Input Method gcov objects
60 %endif
61
62 %package unittests
63 Summary:    inputmethod tests
64 Group:      Development/Libraries
65 Requires:   %{name} = %{version}-%{release}
66
67 %description unittests
68 GTest for inputmethod manager
69
70 %prep
71 %setup -q
72
73
74 %build
75
76 export CFLAGS+=" -DTIZEN_DEBUG_ENABLE -fPIC -fvisibility=hidden -Werror"
77 export CXXFLAGS+=" -DTIZEN_DEBUG_ENABLE -fPIC -fvisibility=hidden -Werror"
78 export FFLAGS+=" -DTIZEN_DEBUG_ENABLE -fPIC -fvisibility=hidden"
79
80 %if 0%{?gcov:1}
81 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
82 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
83 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
84 export LDFLAGS+=" -lgcov"
85 %endif
86
87 rm -rf CMakeFiles
88 rm -rf CMakeCache.txt
89 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
90 %cmake . -DCMAKE_INSTALL_PREFIX=/usr -DFULLVER=%{version} -DMAJORVER=${MAJORVER} -DLIB_INSTALL_DIR:PATH=%{_libdir} \
91 %if %{defined _test_type}
92     -DTEST_TYPE="%{_test_type}" \
93 %else
94     -DTEST_TYPE="none" \
95 %endif
96
97 make %{?jobs:-j%jobs}
98
99 %if 0%{?gcov:1}
100 mkdir -p gcov-obj
101 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
102 %endif
103
104 %install
105 rm -rf %{buildroot}
106
107 %make_install
108 %if 0%{?gcov:1}
109 mkdir -p %{buildroot}%{_datadir}/gcov/obj
110 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
111 %endif
112
113 %check
114 %if 0%{?gcov:1}
115 ctest --output-on-failure %{?_smp_mflags}
116 lcov -c --ignore-errors graph --no-external -q -d . -o %{name}.info
117 genhtml %{name}.info -o %{name}.out
118 zip -r %{name}.zip %{name}.out %{name}.info
119 install -m 0644 %{name}.zip %{buildroot}%{_datadir}/gcov/
120 %endif
121
122 %post -p /sbin/ldconfig
123
124 %postun -p /sbin/ldconfig
125
126
127 %files
128 %manifest capi-ui-inputmethod.manifest
129 %{_libdir}/libcapi-ui-inputmethod.so.*
130 %license LICENSE
131
132 %files devel
133 %{_includedir}/inputmethod*.h
134 %{_libdir}/pkgconfig/capi-ui-inputmethod.pc
135 %{_libdir}/libcapi-ui-inputmethod.so
136
137 %files -n capi-ui-remote-input
138 %manifest capi-ui-inputmethod.manifest
139 %{_libdir}/libcapi-ui-remote-input.so.*
140 %license LICENSE
141
142 %files -n capi-ui-remote-input-devel
143 %{_includedir}/remote_input*.h
144 %{_libdir}/pkgconfig/capi-ui-remote-input.pc
145 %{_libdir}/libcapi-ui-remote-input.so
146
147 %if 0%{?gcov:1}
148 %files gcov
149 %{_datadir}/gcov/*
150 %endif
151
152 %files unittests
153 %{_bindir}/*