65dfced9ee9b78758371e23972c064ea83d7aa1f
[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 Name:       ibus
5 Version:    @PACKAGE_VERSION@
6 Release:    1%{?dist}
7 Summary:    Intelligent Input Bus for Linux OS
8 License:    LGPLv2+
9 Group:      System Environment/Libraries
10 URL:        http://code.google.com/p/ibus/
11 Source0:    http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
12 Source1:    xinput-ibus
13
14 BuildRoot:  %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
15
16 %define glib_ver %([ -a %{_libdir}/pkgconfig/glib-2.0.pc ] && pkg-config --modversion glib-2.0 | cut -d. -f 1,2 || echo -n "999")
17
18 BuildRequires:  gettext-devel
19 BuildRequires:  libtool
20 BuildRequires:  python
21 BuildRequires:  gtk2-devel
22 BuildRequires:  dbus-devel
23 BuildRequires:  qt-devel
24 BuildRequires:  dbus-glib-devel
25 BuildRequires:  desktop-file-utils
26
27 Requires(post):  desktop-file-utils
28 Requires(post):  %{_sbindir}/alternatives
29 Requires(postun):  desktop-file-utils
30 Requires(postun):  %{_sbindir}/alternatives
31
32 Requires:   glib2 >= %{glib_ver}
33 Requires:   pygtk2
34 Requires:   dbus-python >= 0.83.0
35 Requires:   gnome-python2-gconf
36 Requires:   notification-daemon
37 Requires:   pyxdg
38 Requires:   iso-codes
39
40 %define _xinputconf %{_sysconfdir}/X11/xinit/xinput.d/ibus.conf
41
42 %description
43 IBus means Intelligent Input Bus. It is a new input framework for Linux OS. It provides
44 full featured and user friendly input method user interface. It also may help
45 developers to develop input method easily.
46
47 %package gtk
48 Summary:    IBus im module for gtk2
49 Group:      System Environment/Libraries
50 Requires:   %{name} = %{version}-%{release}
51
52 %description gtk
53 This package contains ibus im module for gtk2
54
55 %package qt
56 Summary:    IBus im module for qt4
57 Group:      System Environment/Libraries
58 Requires:   %{name} = %{version}-%{release}
59 Requires:   qt >= 4.4.2
60
61 %description qt
62 This package contains ibus im module for qt4
63
64 %package devel
65 Summary:    Development tools for ibus
66 Group:      Development/Libraries
67 Requires:   %{name} = %{version}-%{release}
68 Requires:   glib2-devel
69 Requires:   dbus-devel
70
71 %description devel
72 The ibus-devel package contains the header files and developer
73 docs for ibus.
74
75 %prep
76 %setup -q
77
78 %build
79 %configure --disable-static --disable-iso-codes-check
80 # make -C po update-gmo
81 make %{?_smp_mflags}
82
83 %install
84 rm -rf $RPM_BUILD_ROOT
85 make DESTDIR=${RPM_BUILD_ROOT} install
86 rm -f $RPM_BUILD_ROOT%{_libdir}/libibus.la
87 rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.la
88
89 # install xinput config file
90 mkdir -pm 755 ${RPM_BUILD_ROOT}/%{_sysconfdir}/X11/xinit/xinput.d
91 install -pm 644 %{SOURCE1} ${RPM_BUILD_ROOT}/%{_xinputconf}
92
93 # install .desktop files
94 desktop-file-install --delete-original          \
95   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
96   $RPM_BUILD_ROOT%{_datadir}/applications/*
97
98 %find_lang %{name}
99
100 %clean
101 rm -rf $RPM_BUILD_ROOT
102
103 %post
104 /sbin/ldconfig
105 update-desktop-database -q
106 %{_sbindir}/alternatives --install %{_sysconfdir}/X11/xinit/xinputrc xinputrc %{_xinputconf} 83 || :
107
108 %post gtk
109 %{_bindir}/update-gtk-immodules %{_host} || :
110
111 %postun
112 /sbin/ldconfig
113 update-desktop-database -q
114 if [ "$1" = "0" ]; then
115   %{_sbindir}/alternatives --remove xinputrc %{_xinputconf} || :
116   # if alternative was set to manual, reset to auto
117   [ -L %{_sysconfdir}/alternatives/xinputrc -a "`readlink %{_sysconfdir}/alternatives/xinputrc`" = "%{_xinputconf}" ] && %{_sbindir}/alternatives --auto xinputrc || :
118 fi
119
120 %postun gtk
121 %{_bindir}/update-gtk-immodules %{_host} || :
122
123 %files -f %{name}.lang
124 %defattr(-,root,root,-)
125 %doc AUTHORS COPYING README
126 %dir %{python_sitelib}/ibus
127 %{python_sitelib}/ibus/*
128 %dir %{_datadir}/ibus/
129 %{_bindir}/ibus-daemon
130 %{_bindir}/ibus-setup
131 %{_libdir}/libibus.so*
132 %{_datadir}/ibus/*
133 %{_datadir}/applications/*
134 %{_datadir}/pixmaps/*
135 %{_libexecdir}/ibus-gconf
136 %{_libexecdir}/ibus-ui-gtk
137 %{_libexecdir}/ibus-x11
138 %config %{_xinputconf}
139
140 %files gtk
141 %defattr(-,root,root,-)
142 %{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.so
143
144 %files qt
145 %defattr(-,root,root,-)
146 %{_libdir}/qt4/plugins/inputmethods/libibus.so
147
148 %files devel
149 %defattr(-,root,root,-)
150 %{_libdir}/lib*.so
151 %{_includedir}/*
152 %{_datadir}/gtk-doc/html/*
153 %{_libdir}/pkgconfig/*
154
155 %changelog
156 * Thu Aug 07 2008 Huang Peng <shawn.p.huang@gmail.com> - @VERSION@-1
157 - The first version.