df267a0734a9d882756300094fb7d9f59919e8c4
[platform/upstream/ibus.git] / ibus.spec.in
1 %{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
2 %{!?gtk_binary_version: %define gtk_binary_version %(pkg-config  --variable=gtk_binary_version gtk+-2.0)}
3 %define mod_path ibus-@PACKAGE_VERSION_MAJOR@.@PACKAGE_VERSION_MINOR@
4 %define host_vendor %(if [[ "%{_host_vendor}" == "unknown" ]]; then echo redhat; else echo %{_host_vendor}; fi)
5 %define host %{_host_cpu}-%{host_vendor}-%{_host_os}-gnu
6 Name:       ibus
7 Version:    @PACKAGE_VERSION@
8 Release:    1%{?dist}
9 Summary:    Intelligent Input Bus for Linux OS
10 License:    LGPLv2+
11 Group:      System Environment/Libraries
12 URL:        http://code.google.com/p/ibus/
13 Source0:    http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
14 Source1:    xinput-ibus
15
16 BuildRoot:  %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
17
18 %define glib_ver %([ -a %{_libdir}/pkgconfig/glib-2.0.pc ] && pkg-config --modversion glib-2.0 | cut -d. -f 1,2 || echo -n "999")
19
20 BuildRequires:  gettext-devel
21 BuildRequires:  libtool
22 BuildRequires:  python
23 BuildRequires:  gtk2-devel
24 BuildRequires:  dbus-devel
25 # BuildRequires:  qt-devel
26 BuildRequires:  dbus-glib-devel
27 BuildRequires: dbus-python-devel
28 BuildRequires:  desktop-file-utils
29 BuildRequires: GConf2-devel
30
31 Requires(post):  desktop-file-utils
32 Requires(post):  %{_sbindir}/alternatives
33 Requires(postun):  desktop-file-utils
34 Requires(postun):  %{_sbindir}/alternatives
35
36 Requires:   %{name}-libs = %{version}-%{release}
37 Requires:   glib2 >= %{glib_ver}
38 Requires:   pygtk2
39 Requires:   dbus-python >= 0.83.0
40 Requires:   notification-daemon
41 Requires:   pyxdg
42 Requires:   iso-codes
43
44 %define _xinputconf %{_sysconfdir}/X11/xinit/xinput.d/ibus.conf
45
46 %description
47 IBus means Intelligent Input Bus. It is a new input framework for Linux OS. It provides
48 full featured and user friendly input method user interface. It also may help
49 developers to develop input method easily.
50
51 %package libs
52 Summary:    IBus libraries
53 Group:      System Environment/Libraries
54
55 %description libs
56 This package contains ibus libraries.
57
58
59 %package gtk
60 Summary:    IBus im module for gtk2
61 Group:      System Environment/Libraries
62 Requires:   %{name} = %{version}-%{release}
63
64 %description gtk
65 This package contains ibus im module for gtk2
66
67 # %package qt
68 # Summary:    IBus im module for qt4
69 # Group:      System Environment/Libraries
70 # Requires:   %{name} = %{version}-%{release}
71 # Requires:   qt >= 4.4.2
72 #
73 # %description qt
74 # This package contains ibus im module for qt4
75
76 %package devel
77 Summary:    Development tools for ibus
78 Group:      Development/Libraries
79 Requires:   %{name} = %{version}-%{release}
80 Requires:   glib2-devel
81 Requires:   dbus-devel
82
83 %description devel
84 The ibus-devel package contains the header files and developer
85 docs for ibus.
86
87 %prep
88 %setup -q
89
90 %build
91 %configure --disable-static --disable-iso-codes-check
92 # make -C po update-gmo
93 make %{?_smp_mflags}
94
95 %install
96 rm -rf $RPM_BUILD_ROOT
97 make DESTDIR=${RPM_BUILD_ROOT} install
98 rm -f $RPM_BUILD_ROOT%{_libdir}/libibus.la
99 rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.la
100
101 # install xinput config file
102 mkdir -pm 755 ${RPM_BUILD_ROOT}/%{_sysconfdir}/X11/xinit/xinput.d
103 install -pm 644 %{SOURCE1} ${RPM_BUILD_ROOT}/%{_xinputconf}
104
105 # install .desktop files
106 desktop-file-install --delete-original          \
107   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
108   $RPM_BUILD_ROOT%{_datadir}/applications/*
109
110 %find_lang %{name}
111
112 %clean
113 rm -rf $RPM_BUILD_ROOT
114
115 %pre
116 if [ "$1" -gt 1 ] ; then
117 export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
118 gconftool-2 --makefile-uninstall-rule \
119 %{_sysconfdir}/gconf/schemas/%{name}.schemas >/dev/null || :
120 fi
121
122 %post
123 export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
124 gconftool-2 --makefile-install-rule \
125 %{_sysconfdir}/gconf/schemas/%{name}.schemas > /dev/null || :
126
127 %preun
128 if [ "$1" -eq 0 ] ; then
129 export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
130 gconftool-2 --makefile-uninstall-rule \
131 %{_sysconfdir}/gconf/schemas/%{name}.schemas > /dev/null || :
132 fi
133
134 %post libs
135 /sbin/ldconfig
136 update-desktop-database -q
137 %{_sbindir}/alternatives --install %{_sysconfdir}/X11/xinit/xinputrc xinputrc %{_xinputconf} 83 || :
138
139 %post gtk
140 %{_bindir}/update-gtk-immodules %{host} || :
141
142 %postun libs
143 /sbin/ldconfig
144 update-desktop-database -q
145 if [ "$1" = "0" ]; then
146   %{_sbindir}/alternatives --remove xinputrc %{_xinputconf} || :
147   # if alternative was set to manual, reset to auto
148   [ -L %{_sysconfdir}/alternatives/xinputrc -a "`readlink %{_sysconfdir}/alternatives/xinputrc`" = "%{_xinputconf}" ] && %{_sbindir}/alternatives --auto xinputrc || :
149 fi
150
151 %postun gtk
152 %{_bindir}/update-gtk-immodules %{host} || :
153
154 %files -f %{name}.lang
155 %defattr(-,root,root,-)
156 %doc AUTHORS COPYING README
157 %{python_sitelib}/ibus
158 %{_bindir}/ibus-daemon
159 %{_bindir}/ibus-setup
160 %{_datadir}/ibus
161 %{_datadir}/applications/*
162 %{_datadir}/pixmaps/*
163 %{_libexecdir}/ibus-gconf
164 %{_libexecdir}/ibus-ui-gtk
165 %{_libexecdir}/ibus-x11
166 %config(noreplace) %{_xinputconf}
167 %config(noreplace) %{_sysconfdir}/gconf/schemas/%{name}.schemas
168 %config(noreplace) %{_sysconfdir}/xdg/autostart/ibus.desktop
169
170 %files libs
171 %defattr(-,root,root,-)
172 %{_libdir}/libibus.so*
173
174 %files gtk
175 %defattr(-,root,root,-)
176 %{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.so
177
178 # %files qt
179 # %defattr(-,root,root,-)
180 # %{_libdir}/qt4/plugins/inputmethods/libibus.so
181
182 %files devel
183 %defattr(-,root,root,-)
184 %{_libdir}/lib*.so
185 %{_includedir}/*
186 %{_datadir}/gtk-doc/html/*
187 %{_libdir}/pkgconfig/*
188
189 %changelog
190 * @DATE_DISPLAY@ Huang Peng <shawn.p.huang@gmail.com> - @VERSION@-1
191 - Current version.
192
193 * Thu Aug 07 2008 Huang Peng <shawn.p.huang@gmail.com> - 0.1.0.20080810-1
194 - The first version.
195