gtk2/gtk2.spec
2019-09-30 10:52:18 -04:00

229 lines
7.4 KiB
RPMSpec
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#Global macro or variable
%global __provides_exclude_from ^%{_libdir}/gtk-2.0
%define bin_version 2.10.0
#Basic Information
Name: gtk2
Version: 2.24.32
Release: 3
Summary: GTK+ graphical user interface library
License: LGPLv2+
URL: http://www.gtk.org
Source: http://download.gnome.org/sources/gtk+/2.24/gtk+-%{version}.tar.xz
Source2: im-cedilla.conf
Patch1: system-python.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=583273
Patch2: icon-padding.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=599618
Patch8: tooltip-positioning.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=611313
Patch15: window-dragging.patch
#Dependency
BuildRequires: pkgconfig(glib-2.0) >= 2.28.0 pkgconfig(atk) >= 2.28.0
BuildRequires: pkgconfig(pango) >= 1.20 pkgconfig(gdk-pixbuf-2.0) >= 2.21.0
BuildRequires: pkgconfig(cairo) >= 1.6 pkgconfig(gobject-introspection-1.0) >= 0.9.3
BuildRequires: pkgconfig(xi) pkgconfig(xrandr) pkgconfig(xrender) pkgconfig(xcursor)
BuildRequires: pkgconfig(xinerama) pkgconfig(xcomposite) pkgconfig(xdamage)
BuildRequires: gettext cups-devel
BuildRequires: gtk-doc automake autoconf libtool pkgconfig
Requires: hicolor-icon-theme gtk-update-icon-cache
Requires: gdk-pixbuf2-modules glib2 >= 2.28.0 atk >= 1.29.2 pango >= 1.20
Requires: libXrandr >= 1.2.99.4-2
Requires(post): libtiff >= 3.6.1
# Conflicts with packages containing theme engines
# built against the 2.4.0 ABI
Conflicts: gtk2-engines < 2.7.4-7
Conflicts: libgnomeui < 2.15.1cvs20060505-2
Conflicts: redhat-artwork < 0.243-1
Provides: gail = %{version}-%{release}
Obsoletes: gail < 2.13.0-1
%description
GTK+ is a library for creating graphical user interfaces. The library
is created in C programming language. The GTK+ is also called the GIMP
Toolkit. Originally, the library was created while developing the GIMP
image manipulation program.
%package immodules
Summary: Input methods for GTK+
Requires: gtk2 = %{version}-%{release}
# for /etc/X11/xinit/xinput.d
Requires: imsettings
%description immodules
The gtk2-immodules package contains standalone input methods that are shipped
as part of GTK+.
%package immodule-xim
Summary: XIM support for GTK+
Requires: gtk2 = %{version}-%{release}
%description immodule-xim
The gtk2-immodule-xim package contains XIM support for GTK+.
%package devel
Summary: Development files for GTK+
Requires: gtk2 = %{version}-%{release}
Requires: pango-devel >= 1.20 gdk-pixbuf2-devel cairo-devel >= 1.6
Requires: atk-devel >= 1.29.2 glib2-devel >= 2.28.0
Requires: libX11-devel libXcursor-devel libXinerama-devel
Requires: libXext-devel libXi-devel libXrandr-devel
Requires: libXfixes-devel libXcomposite-devel
Requires: pkgconfig
Provides: gail-devel = %{version}-%{release}
Obsoletes: gail-devel < 2.13.0-1
Provides: gtk2-devel-doc = %{version}-%{release}
Obsoletes: gtk2-devel-doc < %{version}-%{release}
%description devel
This package contains the libraries, header files and developer documentation
that are needed for writing applications with the GTK+ widget toolkit.
%package help
Summary: Developer documentation for GTK+
Requires: gtk2 = %{version}-%{release}
%description help
This package contains developer documentation for the GTK+ widget toolkit.
#Build sections
%prep
%autosetup -n gtk+-%{version} -p1 -Sgit
%build
export CFLAGS='-fno-strict-aliasing %optflags'
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
%configure $CONFIGFLAGS \
--enable-man \
--with-xinput=xfree \
--enable-debug \
)
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
%install
make install DESTDIR=$RPM_BUILD_ROOT \
RUN_QUERY_IMMODULES_TEST=false
echo ".so man1/gtk-query-immodules-2.0.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gtk-query-immodules-2.0-%{__isa_bits}.1
%find_lang gtk20
%find_lang gtk20-properties
mkdir -p tmpdocs
cp -aR docs/tutorial/html tmpdocs/tutorial
cp -aR docs/faq/html tmpdocs/faq
for dir in examples/* ; do
if [ -d $dir ] ; then
mkdir -p tmpdocs/$dir
for file in $dir/* ; do
install -m 0644 $file tmpdocs/$dir
done
fi
done
mv $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-2.0 $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-2.0-64
# Install input method frameworks conf
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d
cp %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d
# rm unpackaged files
rm $RPM_BUILD_ROOT%{_libdir}/*.la
rm $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/*/*.la
rm $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{bin_version}/*/*.la
rm $RPM_BUILD_ROOT%{_bindir}/gtk-update-icon-cache
rm $RPM_BUILD_ROOT%{_mandir}/man1/gtk-update-icon-cache.1*
touch $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{bin_version}/immodules.cache
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/immodules
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{bin_version}/filesystems
%transfiletriggerin -- %{_libdir}/gtk-2.0/immodules/ %{_libdir}/gtk-2.0/%{bin_version}/immodules/
gtk-query-immodules-2.0-64 --update-cache
%transfiletriggerpostun -- %{_libdir}/gtk-2.0/immodules/ %{_libdir}/gtk-2.0/%{bin_version}/immodules/
gtk-query-immodules-2.0-64 --update-cache
#Install and uninstall scripts
%pre
%preun
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
#Files list
%files -f gtk20.lang
%doc AUTHORS NEWS README
%license COPYING
%{_bindir}/gtk-query-immodules-2.0-64
%{_libdir}/libgtk-x11-2.0.so.*
%{_libdir}/libgdk-x11-2.0.so.*
%{_libdir}/libgailutil.so.*
%{_libdir}/girepository-1.0
%dir %{_libdir}/gtk-2.0
%dir %{_libdir}/gtk-2.0/%{bin_version}
%{_libdir}/gtk-2.0/%{bin_version}/engines
%{_libdir}/gtk-2.0/%{bin_version}/filesystems
%dir %{_libdir}/gtk-2.0/%{bin_version}/immodules
%{_libdir}/gtk-2.0/%{bin_version}/printbackends
%{_libdir}/gtk-2.0/modules
%{_libdir}/gtk-2.0/immodules
%ghost %{_libdir}/gtk-2.0/%{bin_version}/immodules.cache
%dir %{_datadir}/gtk-2.0
%{_datadir}/themes/Default
%{_datadir}/themes/Emacs
%{_datadir}/themes/Raleigh
%files immodules
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-am-et.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-cedilla.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-cyrillic-translit.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-inuktitut.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-ipa.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-multipress.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-thai.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-ti-er.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-ti-et.so
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-viqr.so
%{_sysconfdir}/X11/xinit/xinput.d/im-cedilla.conf
%dir %{_sysconfdir}/gtk-2.0
%config(noreplace) %{_sysconfdir}/gtk-2.0/im-multipress.conf
%files immodule-xim
%{_libdir}/gtk-2.0/%{bin_version}/immodules/im-xim.so
%files devel -f gtk20-properties.lang
%{_libdir}/lib*.so
%{_libdir}/gtk-2.0/include
%{_libdir}/pkgconfig/*
%{_bindir}/gtk-builder-convert
%{_bindir}/gtk-demo
%{_datadir}/gtk-2.0/demo
%{_datadir}/aclocal/*
%{_datadir}/gir-1.0
%{_includedir}/*
%files help
%{_datadir}/gtk-doc
%doc tmpdocs/tutorial
%doc tmpdocs/faq
%doc tmpdocs/examples
%{_mandir}/man1/gtk-query-immodules-2.0*
%{_mandir}/man1/gtk-builder-convert.1.gz
%changelog
* Thu Sep 14 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.24.32-3
- Package init