Update package version to 9.0.12
[platform/core/uifw/isf.git] / packaging / isf.spec
1 %global __provides_exclude_from ^(.*\\.(wearable|tv|mobile|ivi))$
2
3 %bcond_with wayland
4 Name:       isf
5 Summary:    Input Service Framework
6 Version:    9.0.12
7 Release:    1
8 Group:      Graphics & UI Framework/Input
9 License:    LGPL-2.1+
10 Source0:    %{name}-%{version}.tar.gz
11 Source100:  %{name}.conf
12 Source200:  engine-loader.service
13 Source300:  org.tizen.engine-loader.service
14 Source400:  engine-loader.conf
15 BuildRequires:  gettext-tools
16 BuildRequires:  pkgconfig(elementary)
17 BuildRequires:  pkgconfig(vconf)
18 BuildRequires:  pkgconfig(ecore-wl2)
19 BuildRequires:  pkgconfig(xkbcommon) >= 0.3.0
20 BuildRequires:  pkgconfig(text-client)
21 BuildRequires:  pkgconfig(input-method-client)
22 BuildRequires:  pkgconfig(eina)
23 BuildRequires:  pkgconfig(ecore)
24 BuildRequires:  pkgconfig(evas)
25 BuildRequires:  pkgconfig(dlog)
26 BuildRequires:  pkgconfig(glib-2.0)
27 BuildRequires:  pkgconfig(efl-extension)
28 BuildRequires:  pkgconfig(libtzplatform-config)
29 BuildRequires:  pkgconfig(pkgmgr-info)
30 BuildRequires:  pkgconfig(sqlite3)
31 BuildRequires:  pkgconfig(aul)
32 BuildRequires:  pkgconfig(capi-appfw-app-control)
33 BuildRequires:  pkgconfig(capi-appfw-app-common)
34 BuildRequires:  pkgconfig(capi-appfw-service-application)
35 BuildRequires:  pkgconfig(cynara-client)
36 BuildRequires:  pkgconfig(cynara-creds-socket)
37 BuildRequires:  pkgconfig(cynara-session)
38 BuildRequires:  pkgconfig(capi-appfw-package-manager)
39 BuildRequires:  pkgconfig(capi-system-info)
40 BuildRequires:  pkgconfig(libsystemd)
41 BuildRequires:  pkgconfig(notification)
42 BuildRequires:  pkgconfig(gmock)
43 BuildRequires:  pkgconfig(gio-2.0)
44 BuildRequires:  pkgconfig(capi-system-resource)
45 BuildRequires:  pkgconfig(capi-appfw-preference)
46 BuildRequires:  pkgconfig(capi-appfw-app-manager)
47 Requires(postun): /sbin/ldconfig
48 Requires:       org.tizen.isf-kbd-mode-changer
49
50 %define APP_PREFIX %{TZ_SYS_RO_APP}/org.tizen.isf-kbd-mode-changer/bin/
51
52 %description
53 Input Service Framewok (ISF) is an input method (IM) platform, and it has been derived from SCIM.
54
55
56 %package devel
57 Summary:    ISF header files
58 Requires:   %{name} = %{version}-%{release}
59
60 %description devel
61 This package contains ISF header files for ISE development.
62
63 %package -n org.tizen.isf-kbd-mode-changer
64 Summary: Keyboard mode changer
65 Group: Graphics & UI Framework/Input
66 Requires: %{name} = %{version}-%{release}
67
68 %description -n org.tizen.isf-kbd-mode-changer
69 Keyboard mode changer application
70
71 %package unittests
72 Summary: Unit test cases for isf
73 Group: Graphics & UI Framework/Input
74 Requires: %{name} = %{version}-%{release}
75
76 %description unittests
77 Unit test cases for isf
78
79 %package -n ise-engine-loader
80 Summary: ISE engine loader
81 Group: Graphics & UI Framework/Input
82 License: GPL-2.0+
83 Requires: %{name} = %{version}-%{release}
84
85 %description -n ise-engine-loader
86 ISE Engine loader
87
88 %prep
89 %setup -q
90 cp %{SOURCE300} .
91
92 %build
93 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
94 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
95 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
96 %if %{with wayland}
97 export CFLAGS="$CFLAGS -DWAYLAND"
98 export CXXFLAGS="$CXXFLAGS -DWAYLAND"
99 %endif
100
101 export GC_SECTIONS_FLAGS="-fdata-sections -ffunction-sections -Wl,--gc-sections"
102 export CFLAGS="$CFLAGS -fvisibility=hidden ${GC_SECTIONS_FLAGS} -Werror"
103 export CXXFLAGS="$CXXFLAGS -fvisibility=hidden -fvisibility-inlines-hidden ${GC_SECTIONS_FLAGS} -Werror"
104 export CFLAGS_BASIS="$CFLAGS"
105 export CXXFLAGS_BASIS="$CXXFLAGS"
106
107 %autogen
108 %configure --disable-static \
109                 --disable-tray-icon \
110                 --disable-filter-sctc \
111 %if %{with wayland}
112         --disable-efl-immodule \
113 %endif
114                 --disable-frontend-x11 \
115                 --disable-multiwindow-support \
116                 --disable-ime-embed-app \
117                 --with-ro-app-dir=%{TZ_SYS_RO_APP} \
118                 --with-ro-packages-dir=%{TZ_SYS_RO_PACKAGES} \
119                 --enable-remote-input
120 make %{?_smp_mflags}
121
122 %install
123 rm -rf %{buildroot}
124
125 %make_install
126 mkdir -p %{buildroot}%{_tmpfilesdir}
127 install -m 0644 %SOURCE100 %{buildroot}%{_tmpfilesdir}/%{name}.conf
128
129 mkdir -p %{buildroot}/%{TZ_SYS_ETC}/dump.d/module.d
130 cp -af ism/dump/isf_log_dump.sh %{buildroot}/%{TZ_SYS_ETC}/dump.d/module.d
131 mkdir -p %{buildroot}/etc/scim/conf
132 mkdir -p %{buildroot}/usr/share/upgrade/scripts/
133
134 mkdir -p %{buildroot}%{_prefix}/lib/systemd/system
135 install -m 0644 %SOURCE200 %{buildroot}%{_unitdir}/engine-loader.service
136
137 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services
138 install -m 0644 %SOURCE300 %{buildroot}%{_datadir}/dbus-1/system-services/org.tizen.engine-loader.service
139
140 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
141 install -m 0644 %SOURCE400 %{buildroot}%{_sysconfdir}/dbus-1/system.d/engine-loader.conf
142
143 ln -sf %{_bindir}/isf %{buildroot}%{_bindir}/isf-panel-efl
144
145 %find_lang scim
146
147 cat scim.lang > isf.lang
148 %post
149 /sbin/ldconfig
150
151
152 %postun -p /sbin/ldconfig
153
154
155 %files -f isf.lang
156 %manifest %{name}.manifest
157 %defattr(-,root,root,-)
158 %dir /etc/scim/conf
159 %attr(644,root,root) %{_sysconfdir}/profile.d/isf.sh
160 %{_sysconfdir}/scim/global
161 %{_sysconfdir}/scim/config
162 %{_datadir}/scim/icons/*
163 %{_bindir}/isf-demo-efl
164 %{_bindir}/isf
165 %{_bindir}/isf-panel-efl
166 %{_libdir}/ecore_imf/modules/*/*/*.so
167 %{_libdir}/scim-1.0/1.4.0/IMEngine/socket.so
168 %{_libdir}/scim-1.0/1.4.0/PanelAgent/*.so
169 %{_libdir}/scim-1.0/1.4.0/Config/simple.so
170 %{_libdir}/scim-1.0/1.4.0/Config/socket.so
171 %{_libdir}/scim-1.0/1.4.0/FrontEnd/*.so
172 %{_libdir}/scim-1.0/scim-helper-launcher
173 %{_libdir}/libscim-*.so.*
174 %{_libdir}/libisf-control.so.*
175 %{_libdir}/libscim_imengine.so.*
176 %{TZ_SYS_RO_ETC}/package-manager/parserlib/category/libimeparser.so
177 %license COPYING
178 %{TZ_SYS_ETC}/dump.d/module.d/*
179 %{_tmpfilesdir}/%{name}.conf
180
181 %files devel
182 %defattr(-,root,root,-)
183 %{_includedir}/scim-1.0/*
184 %{_libdir}/libscim-*.so
185 %{_includedir}/isf-control/*
186 %{_includedir}/scim_imengine/*
187 %{_libdir}/libisf-control.so
188 %{_libdir}/libscim_imengine.so
189 %{_libdir}/pkgconfig/isf.pc
190 %{_libdir}/pkgconfig/scim.pc
191 %{_libdir}/pkgconfig/isf-control.pc
192
193 %post -n org.tizen.isf-kbd-mode-changer
194 mkdir -p %{TZ_SYS_RO_APP}/org.tizen.isf-kbd-mode-changer
195
196 %files -n org.tizen.isf-kbd-mode-changer
197 %manifest org.tizen.isf-kbd-mode-changer.manifest
198 %license COPYING
199 %{TZ_SYS_RO_PACKAGES}/org.tizen.isf-kbd-mode-changer.xml
200 %{APP_PREFIX}/*
201
202 %files unittests
203 %manifest isf-unittests.manifest
204 %license COPYING
205 %defattr(-,root,root,-)
206 %{_bindir}/isf-tests
207
208 %files -n ise-engine-loader
209 %manifest ise-engine-loader.manifest
210 %license GPL.LICENSE
211 %attr(0755,ui_fw,ui_fw) %{_bindir}/ise-engine-loader
212 %attr(0644,root,root) %{_unitdir}/engine-loader.service
213 %attr(0644,root,root) %{_datadir}/dbus-1/system-services/org.tizen.engine-loader.service
214 %config %{_sysconfdir}/dbus-1/system.d/engine-loader.conf