20ff3a455d
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gtk2?expand=0&rev=0d1f971756ee191bd9eafc753cd193db
291 lines
11 KiB
RPMSpec
291 lines
11 KiB
RPMSpec
#
|
|
# spec file for package gtk2 (Version 2.19.2)
|
|
#
|
|
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
|
|
Name: gtk2
|
|
%define _name gtk+
|
|
Version: 2.19.2
|
|
Release: 1
|
|
# FIXME: when updating to next version, check whether we can remove the workaround for bgo#596977 below (removing -fomit-frame-pointer)
|
|
License: LGPLv2.1+
|
|
Summary: Library for Creation of Graphical User Interfaces (version 2)
|
|
Url: http://www.gtk.org/
|
|
Group: System/Libraries
|
|
Source: ftp://ftp.gnome.org/pub/GNOME/sources/%{_name}/2.12/%{_name}-%{version}.tar.bz2
|
|
Source1: SuSEconfig.gtk2
|
|
Source2: README.SuSE
|
|
Source3: gtkrc
|
|
Source4: baselibs.conf
|
|
# PATCH-FIX-UPSTREAM gtk2-potfiles.patch bgo599774 sbrabec@suse.cz - Fix POTFILES.in referring to missing file.
|
|
Patch1: gtk2-potfiles.patch
|
|
# PATCH-FIX-OPENSUSE gtk64.patch sbrabec@novell.com - 64-bit dual install. See also the Fedora patch for a simpler way of doing this.
|
|
Patch8: gtk64.patch
|
|
# PATCH-FIX-OPENSUSE gdk-modules-information.diff hhetter@suse.de - Info on how to manually regenerate modules information
|
|
Patch12: gdk-modules-information.diff
|
|
# PATCH-FEATURE-UPSTREAM bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff bnc129753 bgo319484 mfabian@novell.com - Translate the font styles in the GUI
|
|
Patch22: bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff
|
|
# PATCH-FIX-OPENSUSE bugzilla-131498-allow-xim-for-all-languages.patch bnc131498 mfabian@novell.com - Allow all languages to be run with the X Input Method
|
|
Patch23: bugzilla-131498-allow-xim-for-all-languages.patch
|
|
# PATCH-FIX-UPSTREAM gtk2-bnc130159-bgo319483-async-selection-in-gtk-font-selection.diff bnc130159 bgo319483 federico@novell.com - Load fonts asynchronously in GtkFontSelection to make it appear faster for CJK languages
|
|
Patch24: gtk2-bnc130159-bgo319483-async-selection-in-gtk-font-selection.diff
|
|
# PATCH-FIX-UPSTREAM gtk2-gdk-typelib.patch bgo605272 vuntz@opensuse.org -- Fix build of Gdk-2.0.typelib
|
|
Patch25: gtk2-gdk-typelib.patch
|
|
# Patches taken from upstream or slated to go upstream. We can expect these to become obsolete
|
|
# in future releases.
|
|
# Please don't delete this comment even if this section is empty -- "# empty" should
|
|
# be sufficient.
|
|
# FIXME: this section is incomplete, and that some of the patches listed earlier should
|
|
# be here instead.
|
|
# PATCH-FIX-OPENSUSE gtk-path-local.patch Search in /usr/local/%{_lib} by default. bnc369696 bgo534474
|
|
Patch53: gtk-path-local.patch
|
|
BuildRequires: fdupes
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: atk-devel
|
|
BuildRequires: cairo-devel
|
|
BuildRequires: cups-devel
|
|
# Needed for patches touching the build system
|
|
BuildRequires: gnome-common
|
|
BuildRequires: gnome-patch-translation
|
|
BuildRequires: gobject-introspection-devel
|
|
BuildRequires: libjasper-devel
|
|
BuildRequires: libtiff-devel
|
|
BuildRequires: pango-devel
|
|
BuildRequires: translation-update-upstream
|
|
PreReq: /usr/bin/touch /bin/rm /bin/rmdir
|
|
Requires: %{name}-lang = %{version}
|
|
Requires: hicolor-icon-theme
|
|
# gtk2 can exist without branding. Built in defaults will be used then.
|
|
Recommends: %{name}-branding
|
|
Recommends: gvfs
|
|
# bug437293
|
|
%ifarch ppc64
|
|
Obsoletes: gtk2-64bit
|
|
%endif
|
|
#
|
|
# gail is part of gtk+ as of 2.13.x
|
|
Provides: gail = 1.22.1
|
|
Obsoletes: gail < 1.22.1
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
%description
|
|
This fast and versatile library is used all over the world for all
|
|
libgnome (GNOME) applications, gimp (The GIMP), and several others.
|
|
Originally, version 1 was written for the GIMP and hence has the name
|
|
GIMP ToolKit. Many people like it because it is small, efficient, and
|
|
very configurable.
|
|
|
|
Most applications which used gtk (GTK1) have since switched to GTK2.
|
|
Besides a more flexible API, it provides improved text rendering using
|
|
pango (Pango) and many other goodies, but GTK+ 2 lacks compatibility
|
|
with GTK1, so to switch, programmers have to port applications to it.
|
|
|
|
To develop applications with gtk, you need the package gtk2-devel.
|
|
|
|
%package branding-upstream
|
|
License: LGPLv2.1+
|
|
Summary: Library for Creation of Graphical User Interfaces (version 2)
|
|
Group: System/Libraries
|
|
Provides: %{name}-branding = %{version}
|
|
Conflicts: otherproviders(%{name}-branding)
|
|
Supplements: packageand(%{name}:branding-upstream)
|
|
|
|
%description branding-upstream
|
|
This fast and versatile library is used all over the world for all
|
|
libgnome (GNOME) applications, gimp (The GIMP), and several others.
|
|
Originally, version 1 was written for the GIMP and hence has the name
|
|
GIMP ToolKit. Many people like it because it is small, efficient, and
|
|
very configurable.
|
|
|
|
Most applications which used gtk (GTK1) have since switched to GTK2.
|
|
Besides a more flexible API, it provides improved text rendering using
|
|
pango (Pango) and many other goodies, but GTK+ 2 lacks compatibility
|
|
with GTK1, so to switch, programmers have to port applications to it.
|
|
|
|
To develop applications with gtk, you need the package gtk2-devel.
|
|
|
|
%package devel
|
|
License: LGPLv2.1+
|
|
Summary: Development environment for the Gtk2 GUI library
|
|
Group: Development/Libraries/X11
|
|
# bug437293
|
|
%ifarch ppc64
|
|
Obsoletes: gtk2-devel-64bit
|
|
%endif
|
|
#
|
|
Requires: %{name} = %{version} atk-devel cairo-devel glibc-devel glib2-devel pango-devel %(rpm -q --whatprovides XFree86-devel --queryformat '%{NAME}')
|
|
# gtk-builder-convert needs this.
|
|
Requires: pyxml
|
|
# gail is part of gtk+ as of 2.13.x
|
|
Provides: gail-devel = 1.22.1
|
|
Obsoletes: gail-devel < 1.22.1
|
|
Provides: gtk2-doc = %{version}
|
|
Obsoletes: gtk2-doc < %{version}
|
|
|
|
%description devel
|
|
This package contains all necessary include files, libraries,
|
|
configuration files and development tools needed to compile and link
|
|
applications using the gtk2 library.
|
|
|
|
In addition, it contains a large set of demo applications in source
|
|
code and manual pages for the provided Gtk2 development tools.
|
|
|
|
Gtk2 is a fast and versatile library is used all over the world for all
|
|
GNOME applications, the GIMP, and several other applications.
|
|
Originally it was written for the GIMP and hence has the name Gimp
|
|
ToolKit. Many people like it because it is small, efficient, and very
|
|
configurable.
|
|
|
|
%lang_package
|
|
%prep
|
|
%setup -q -n %{_name}-%{version}
|
|
%patch1
|
|
translation-update-upstream
|
|
translation-update-upstream po-properties gtk20-properties
|
|
gnome-patch-translation-prepare
|
|
cp -a %{S:1} .
|
|
%if "%_lib" == "lib64"
|
|
cp -a %{S:2} .
|
|
# WARNING: This patch does not patch not installed demos and tests.
|
|
%patch8 -p1
|
|
%endif
|
|
%patch12 -p1
|
|
%patch22 -p1
|
|
%patch23 -p1
|
|
%patch24 -p1
|
|
%patch25 -p1
|
|
%patch53
|
|
gnome-patch-translation-update
|
|
|
|
%build
|
|
NOCONFIGURE=1 gnome-autogen.sh
|
|
export CFLAGS="$RPM_OPT_FLAGS"
|
|
export CFLAGS="$CFLAGS -fstack-protector"
|
|
%ifarch ppc64
|
|
export CFLAGS="$CFLAGS -mminimal-toc"
|
|
%endif
|
|
# fix crash in gdm, nautilus, etc. (bgo#596977)
|
|
export CFLAGS=`echo $CFLAGS | sed -e 's/-fomit-frame-pointer//g'`
|
|
%configure \
|
|
--enable-man \
|
|
--with-xinput=xfree
|
|
make %{?jobs:-j%jobs}
|
|
|
|
%install
|
|
%makeinstall
|
|
mkdir -p $RPM_BUILD_ROOT/sbin/conf.d
|
|
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0
|
|
install -m 755 SuSEconfig.gtk2 $RPM_BUILD_ROOT/sbin/conf.d
|
|
touch $RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0/gtk.immodules $RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0/gdk-pixbuf.loaders
|
|
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0
|
|
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/gtk-2.0
|
|
touch $RPM_BUILD_ROOT%{_localstatedir}/cache/gtk-2.0/icon-theme.cache-list
|
|
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/{,2.10.0/}{engines,filesystems,immodules,loaders,modules,printbackends}
|
|
%find_lang gtk20
|
|
%find_lang gtk20-properties gtk20.lang
|
|
%if "%_lib" == "lib64"
|
|
mv $RPM_BUILD_ROOT%{_bindir}/gdk-pixbuf-query-loaders\
|
|
$RPM_BUILD_ROOT%{_bindir}/gdk-pixbuf-query-loaders-64
|
|
mv $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-2.0\
|
|
$RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-2.0-64
|
|
mv $RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0/gtk.immodules\
|
|
$RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0/gtk64.immodules
|
|
mv $RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0/gdk-pixbuf.loaders\
|
|
$RPM_BUILD_ROOT%{_sysconfdir}/gtk-2.0/gdk-pixbuf64.loaders
|
|
%endif
|
|
rm $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/2*/*/*.la
|
|
rm $RPM_BUILD_ROOT/%{_libdir}/gtk-2.0/modules/*.la
|
|
%fdupes $RPM_BUILD_ROOT
|
|
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
%post
|
|
/sbin/ldconfig
|
|
touch var/adm/SuSEconfig/run-gtk
|
|
|
|
%preun
|
|
# Remove all old icon cache files created by SuSEconfig.gtk2.
|
|
# If it is an update, files will be re-created.
|
|
if test -f var/cache/gtk-2.0/icon-theme.cache-list ; then
|
|
for DIR in $(<var/cache/gtk-2.0/icon-theme.cache-list) ; do
|
|
rm -f $DIR/icon-theme.cache
|
|
rmdir --ignore-fail-on-non-empty $DIR
|
|
done
|
|
rm var/cache/gtk-2.0/icon-theme.cache-list
|
|
fi
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%if "%_lib" == "lib64"
|
|
%doc AUTHORS COPYING README README.SuSE NEWS ChangeLog
|
|
%else
|
|
%doc AUTHORS COPYING README NEWS ChangeLog
|
|
%endif
|
|
%{_bindir}/*query*
|
|
%{_bindir}/gtk-update-icon-cache
|
|
%{_datadir}/themes/*
|
|
%{_libdir}/lib*.so.*
|
|
%dir %{_libdir}/gtk-2.0
|
|
%dir %{_libdir}/gtk-2.0/[2me]*
|
|
%{_libdir}/gtk-2.0/modules/*.so
|
|
%dir %{_libdir}/gtk-2.0/immodules
|
|
%dir %{_libdir}/gtk-2.0/2*/*
|
|
%{_libdir}/gtk-2.0/2*/*/*.so
|
|
%dir %{_sysconfdir}/gtk-2.0
|
|
%dir %{_localstatedir}/cache/gtk-2.0
|
|
%ghost %{_localstatedir}/cache/gtk-2.0/icon-theme.cache-list
|
|
%if "%_lib" == "lib64"
|
|
%ghost %{_sysconfdir}/gtk-2.0/gtk64.immodules
|
|
%ghost %{_sysconfdir}/gtk-2.0/gdk-pixbuf64.loaders
|
|
%else
|
|
%ghost %{_sysconfdir}/gtk-2.0/gtk.immodules
|
|
%ghost %{_sysconfdir}/gtk-2.0/gdk-pixbuf.loaders
|
|
%endif
|
|
%{_sysconfdir}/gtk-2.0/im-multipress.conf
|
|
/sbin/conf.d/SuSEconfig.gtk2
|
|
%{_datadir}/gir-1.0/*.gir
|
|
%{_libdir}/girepository-1.0/*.typelib
|
|
|
|
%files branding-upstream
|
|
%defattr(-,root,root)
|
|
%config %{_sysconfdir}/gtk-2.0/gtkrc
|
|
|
|
%files lang -f gtk20.lang
|
|
%defattr(-,root,root)
|
|
|
|
%files devel
|
|
%defattr(-,root,root)
|
|
%{_bindir}/gtk-builder-convert
|
|
%{_bindir}/*-demo
|
|
%{_bindir}/*-csource
|
|
%{_datadir}/gtk-2.0
|
|
%{_datadir}/aclocal/*.m4
|
|
%{_includedir}/gail-1.0
|
|
%{_includedir}/gtk-2.0
|
|
%{_includedir}/gtk-unix-print-2.0
|
|
%{_libdir}/lib*.so
|
|
%{_libdir}/lib*a
|
|
%{_libdir}/gtk-2.0/include
|
|
%{_libdir}/pkgconfig/*.pc
|
|
%doc %{_mandir}/man*/*
|
|
%{_datadir}/gtk-doc/html/*
|
|
|
|
%changelog
|