]> git.pld-linux.org Git - packages/ibus.git/blob - ibus.spec
- fix post/preun scripts
[packages/ibus.git] / ibus.spec
1 #
2 # Conditional build:
3 %bcond_without  gjsfile         # https://bugzilla.redhat.com/show_bug.cgi?id=657165
4 #
5 Summary:        Intelligent Input Bus for Linux OS
6 Name:           ibus
7 Version:        1.3.99.20110419
8 Release:        0.3
9 License:        LGPL v2+
10 Group:          Libraries
11 URL:            http://code.google.com/p/ibus/
12 Source0:        http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
13 # Source0-md5:  d4f2729fecb92ae6b41f26c770b1a772
14 Source1:        %{name}.xinputd
15 Source100:      http://fujiwara.fedorapeople.org/ibus/gnome-shell/%{name}-gjs-1.3.99.20110714.tar.gz
16 # Source100-md5:        57df6a7d6a9ca0f4b30a8fe135fdcb89
17 Patch0:         %{name}-HEAD.patch
18 Patch1:         %{name}-530711-preload-sys.patch
19 Patch2:         %{name}-xx-icon-symbol.patch
20 Patch3:         %{name}-541492-xkb.patch
21 Patch4:         %{name}-xx-bridge-hotkey.patch
22 Patch5:         %{name}-xx-setup-frequent-lang.patch
23 # Workaround for oxygen-gtk icon theme until bug 699103 is fixed.
24 Patch91:        %{name}-711632-fedora-fallback-icon.patch
25 BuildRequires:  GConf2-devel
26 BuildRequires:  autoconf
27 BuildRequires:  automake
28 BuildRequires:  dbus-glib-devel
29 BuildRequires:  desktop-file-utils
30 BuildRequires:  gettext-devel
31 BuildRequires:  gtk+2-devel
32 BuildRequires:  gtk+3-devel
33 BuildRequires:  gtk-doc
34 BuildRequires:  intltool
35 BuildRequires:  iso-codes
36 BuildRequires:  libtool
37 BuildRequires:  python
38 BuildRequires:  rpmbuild(macros) >= 1.596
39 BuildRequires:  rpm-pythonprov
40 BuildRequires:  python-dbus-devel >= 0.83.0
41 BuildRequires:  python-pygobject-devel
42 BuildRequires:  xorg-lib-libxkbfile-devel
43 Requires:       %{name}-gtk2 = %{version}-%{release}
44 Requires:       %{name}-gtk3 = %{version}-%{release}
45 Requires:       %{name}-libs = %{version}-%{release}
46 Requires:       GConf2
47 Requires:       im-chooser
48 Requires:       iso-codes
49 Requires:       python-dbus >= 0.83.0
50 Requires:       python-pygtk-gtk
51 Requires:       python-pynotify
52 Requires:       python-pyxdg
53 Requires:       hicolor-icon-theme
54 Requires:       gtk-update-icon-cache
55 Requires(post): GConf2
56 Requires(preun):        GConf2
57 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58
59 %define         _libexecdir     %{_libdir}/ibus
60
61 %description
62 IBus means Intelligent Input Bus. It is an input framework for Linux
63 OS.
64
65 %package libs
66 Summary:        IBus libraries
67 Group:          Libraries
68 Requires:       dbus >= 1.2.4
69 Requires:       glib2 >= 1:2.26.0
70
71 %description libs
72 This package contains the libraries for IBus
73
74 %package gtk2
75 Summary:        IBus im module for gtk2
76 Group:          Libraries
77 Requires:       %{name} = %{version}-%{release}
78 Requires:       %{name}-libs = %{version}-%{release}
79 Requires:       imsettings-gnome2
80 Requires(post): glib2 >= 1:2.26.0
81
82 %description gtk2
83 This package contains ibus im module for gtk2
84
85 %package gtk3
86 Summary:        IBus im module for gtk3
87 Group:          Libraries
88 Requires:       %{name} = %{version}-%{release}
89 Requires:       %{name}-libs = %{version}-%{release}
90 Requires:       imsettings-gnome3
91 Requires(post): glib2 >= 1:2.26.0
92
93 %description gtk3
94 This package contains ibus im module for gtk3
95
96 %package gnome3
97 Summary:        IBus gnome-shell-extension for GNOME3
98 Group:          Libraries
99 Requires:       %{name} = %{version}-%{release}
100 Requires:       %{name}-libs = %{version}-%{release}
101 Requires:       gnome-shell
102
103 %description gnome3
104 This is a transitional package which allows users to try out new IBus
105 GUI for GNOME3 in development. Note that this package will be marked
106 as obsolete once the integration has completed in the GNOME3 upstream.
107
108 %package devel
109 Summary:        Development tools for ibus
110 Group:          Development/Libraries
111 Requires:       %{name}-libs = %{version}-%{release}
112 Requires:       dbus-devel
113 Requires:       glib2-devel
114
115 %description devel
116 The ibus-devel package contains the header files and developer docs
117 for ibus.
118
119 %prep
120 %setup -q
121 %if %{with gjsfile}
122 zcat %SOURCE100 | tar xf -
123 %endif
124 %patch0 -p1
125 cp client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c
126 %patch1 -p1
127 %patch2 -p1
128 %patch3 -p1
129 mv data/ibus.schemas.in data/ibus.schemas.in.in
130 %patch4 -p1
131 %patch5 -p1
132
133 %patch91 -p1
134
135 %build
136 %if %{with gjsfile}
137 d=`basename %SOURCE100 .tar.gz`
138 cd $d
139 %configure
140 %{__make}
141 cd ..
142 %endif
143
144 %{__aclocal} -I m4
145 %{__autoheader}
146 %{__autoconf}
147 %{__automake}
148 %configure \
149         --enable-gtk2 \
150         --enable-gtk3 \
151         --enable-xim \
152         --enable-vala \
153         --enable-xkb \
154         --disable-gtk-doc \
155         --enable-gconf \
156         --enable-python \
157         --with-html-dir=%{_gtkdocdir} \
158         --with-no-snooper-apps='gnome-do,Do.*,firefox.*,.*chrome.*,.*chromium.*' \
159         --enable-surrounding-text \
160         --enable-bridge-hotkey \
161         --enable-introspection
162
163 %{__make}
164
165 %install
166 rm -rf $RPM_BUILD_ROOT
167 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{X11/xinit/xinput.d,xdg/autostart}
168
169 %{__make} install \
170         DESTDIR=$RPM_BUILD_ROOT
171
172 %{__sed} -e 's|@@LIB@@|%{_lib}|g' %{SOURCE1} >$RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d/ibus.conf
173
174 # correct location in upstream.
175 mv $RPM_BUILD_ROOT{%{_desktopdir},%{_sysconfdir}/xdg/autostart}/ibus.desktop
176
177 %if %{with gjsfile}
178 d=`basename %SOURCE100 .tar.gz`
179 cd $d
180 %{__make} install \
181         DESTDIR=$RPM_BUILD_ROOT
182 %{__rm} $RPM_BUILD_ROOT%{_datadir}/locale/*/LC_MESSAGES/ibus-gjs.mo
183 cd ..
184 %endif
185
186 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
187 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.la
188
189 %find_lang %{name}10
190
191 %clean
192 rm -rf $RPM_BUILD_ROOT
193
194 %post
195 %update_icon_cache hicolor
196 %gconf_schema_install ibus.schemas
197
198 %preun
199 %gconf_schema_uninstall ibus.schemas
200
201 %postun
202 %update_icon_cache hicolor
203
204 %post libs -p /sbin/ldconfig
205 %postun libs -p /sbin/ldconfig
206
207 %post gtk2
208 %if "%{_lib}" != "lib"
209 %{_bindir}/gtk-query-immodules-2.0-64 > %{_sysconfdir}/gtk64-2.0/gtk.immodules
210 %else
211 %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
212 %endif
213
214 %postun gtk2
215 %if "%{_lib}" != "lib"
216 %{_bindir}/gtk-query-immodules-2.0-64 > %{_sysconfdir}/gtk64-2.0/gtk.immodules
217 %else
218 %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules
219 %endif
220
221 %post gtk3
222 %if "%{_lib}" != "lib"
223 %{_bindir}/gtk-query-immodules-3.0-64 --update-cache
224 %else
225 %{_bindir}/gtk-query-immodules-3.0 --update-cache
226 %endif
227
228 %postun gtk3
229 %if "%{_lib}" != "lib"
230 %{_bindir}/gtk-query-immodules-3.0-64 --update-cache
231 %else
232 %{_bindir}/gtk-query-immodules-3.0 --update-cache
233 %endif
234
235 %files -f %{name}10.lang
236 %defattr(644,root,root,755)
237 %doc AUTHORS README
238 %config %{_sysconfdir}/X11/xinit/xinput.d/ibus.conf
239 # imsettings will start this daemon for us
240 #%{_sysconfdir}/xdg/autostart/ibus.desktop
241 %{_sysconfdir}/gconf/schemas/ibus.schemas
242 %attr(755,root,root) %{_bindir}/ibus-daemon
243 %attr(755,root,root) %{_bindir}/ibus-setup
244 %attr(755,root,root) %{_libexecdir}/ibus-gconf
245 %attr(755,root,root) %{_libexecdir}/ibus-ui-gtk
246 %attr(755,root,root) %{_libexecdir}/ibus-x11
247 %attr(755,root,root) %{_libexecdir}/ibus-engine-xkb
248 %attr(755,root,root) %{_libexecdir}/ibus-xkb
249 %dir %{py_sitescriptdir}/ibus
250 %{py_sitescriptdir}/ibus/*
251 %{_datadir}/ibus
252 %{_desktopdir}/*
253 %{_iconsdir}/hicolor/*/apps/*
254
255 %files libs
256 %defattr(644,root,root,755)
257 %attr(755,root,root) %{_libdir}/libibus-1.0.so.*.*.*
258 %attr(755,root,root) %ghost %{_libdir}/libibus-1.0.so.[0-9]
259 %{_libdir}/girepository-1.0/IBus-1.0.typelib
260
261 %files gtk2
262 %defattr(644,root,root,755)
263 %attr(755,root,root) %{_libdir}/gtk-2.0/*/immodules/im-ibus.so
264
265 %files gtk3
266 %defattr(644,root,root,755)
267 %attr(755,root,root) %{_libdir}/gtk-3.0/*/immodules/im-ibus.so
268
269 %files gnome3
270 %defattr(644,root,root,755)
271 %{_datadir}/gnome-shell/js/ui/status/ibus
272 %{_datadir}/gnome-shell/extensions/ibus-indicator@example.com
273
274 %files devel
275 %defattr(644,root,root,755)
276 %doc %{_gtkdocdir}/ibus
277 %attr(755,root,root) %{_libdir}/lib*.so
278 %{_pkgconfigdir}/ibus-1.0.pc
279 %{_includedir}/ibus-1.0
280 %{_datadir}/gir-1.0/IBus-1.0.gir
281 %{_datadir}/vala/vapi/ibus-1.0.vapi
282 %{_datadir}/vala/vapi/ibus-1.0.deps
This page took 0.059021 seconds and 4 git commands to generate.