%define _prefix /opt/freeware %define _defaultdocdir %{_prefix}/doc %define glib2_version 2.12.4 %define atk_version 1.12.3 %define pango_version 1.14.5 %define cairo_version 1.8.6 %define pixman_version 0.12.0 %define xcursor_version 1.0.2 # bin_version corresponds to GTK_BINARY_VERSION in configure.in %define bin_version 2.* Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X. Name: gtk2 Version: 2.10.6 Release: 2 License: LGPL Group: System Environment/Libraries Source: gtk+-%{version}.tar.bz2 Patch0: gtk+-2.10.6-aix.patch Patch1: gtk+-2.10.6-autotools.patch Prereq: libpng Prereq: libtiff Prereq: libjpeg BuildPrereq: atk-devel >= %{atk_version} BuildPrereq: pango-devel >= %{pango_version} BuildPrereq: glib2-devel >= %{glib2_version} BuildPrereq: libtiff-devel BuildPrereq: libjpeg-devel BuildPrereq: libpng-devel #BuildPrereq: /usr/bin/automake-1.4 BuildRoot: %{_tmppath}/gtk2-%{version}-root URL: http://www.gtk.org # We need to prereq these so we can run gtk-query-immodules-2.0 Prereq: glib2 >= %{glib2_version} Prereq: atk >= %{atk_version} Prereq: pango >= %{pango_version} Prereq: xcursor >= %{xcursor_version} Prereq: cairo >= %{cairo_version} Prereq: pixman >= %{pixman_version} # Use --define 'no64 1' on the command line to disable 64bit build %{!?no64:%define BUILD64 1} %{?no64:%define BUILD64 0} %define prefix64 %{_prefix}/64 %description GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete set of widgets, GTK+ is suitable for projects ranging from small one-off tools to complete application suites. %package devel Summary: Development tools for GTK+ applications. Group: Development/Libraries Requires: gtk2 = %{version} Requires: pango-devel >= %{pango_version} Requires: atk-devel >= %{atk_version} Requires: glib2-devel >= %{glib2_version} %description devel The gtk+-devel package contains the header files and developer docs for the GTK+ widget toolkit. %prep %setup -q -n gtk+-%{version} if test x$PATCH = x ; then PATCH=patch ; fi $PATCH -p2 -s < %{_sourcedir}/gtk+-2.10.6-aix.patch $PATCH -p2 -s < %{_sourcedir}/gtk+-2.10.6-autotools.patch # Prep 64-bit build in 64bit subdirectory %if %{BUILD64} == 1 mkdir 64bit cd 64bit bzip2 -dc %{SOURCE0} | tar -xf - cd gtk+-2.10.6 $PATCH -p2 -s < %{_sourcedir}/gtk+-2.10.6-aix.patch $PATCH -p2 -s < %{_sourcedir}/gtk+-2.10.6-autotools.patch %endif %build # now build the 32-bit version export OBJECT_MODE=32 export CC="xlc_r -q32" LDFLAGS="-L%{_libdir}" CPPFLAGS="-I%{_includedir}" PATH=%{_bindir}:$PATH \ ./configure --prefix=%{_prefix} --disable-gtk-doc --disable-largefile PATH=%{_bindir}:$PATH make # now build the 64-bit version %if %{BUILD64} == 1 cd 64bit/gtk+-2.10.6 export OBJECT_MODE=64 export CC="xlc_r -q64" LDFLAGS="-L%{_libdir}" CPPFLAGS="-I%{_includedir}" PATH=%{_bindir}:$PATH \ ./configure --prefix=%{_prefix} --disable-gtk-doc --disable-largefile PATH=%{_bindir}:$PATH make # Go back to 32-bit library and add our 64bit shared object # into same archive cd ../.. pwd rm -f ./gdk/.libs/libgdk-x11-2.0.a /usr/bin/ar -X32_64 -r ./gdk/.libs/libgdk-x11-2.0.a gdk/.libs/libgdk-x11-2.0.so.0 ./64bit/gtk+-2.10.6/gdk/.libs/libgdk-x11-2.0.so.0 rm -f ./gtk/.libs/libgtk-x11-2.0.a /usr/bin/ar -X32_64 -r ./gtk/.libs/libgtk-x11-2.0.a ./gtk/.libs/libgtk-x11-2.0.so.0 ./64bit/gtk+-2.10.6/gtk/.libs/libgtk-x11-2.0.so.0 rm -f ./gdk-pixbuf/.libs/libgdk_pixbuf-2.0.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libgdk_pixbuf-2.0.a ./gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so.0 rm -f ./contrib/gdk-pixbuf-xlib/.libs/libgdk_pixbuf_xlib-2.0.a /usr/bin/ar -X32_64 -r ./contrib/gdk-pixbuf-xlib/.libs/libgdk_pixbuf_xlib-2.0.a ./contrib/gdk-pixbuf-xlib/.libs/libgdk_pixbuf_xlib-2.0.so.0 ./64bit/gtk+-2.10.6/contrib/gdk-pixbuf-xlib/.libs/libgdk_pixbuf_xlib-2.0.so.0 /usr/bin/ar -X32_64 -q ./modules/engines/pixbuf/.libs/libpixmap.a ./64bit/gtk+-2.10.6/modules/engines/pixbuf/.libs/libpixmap.a rm -f ./modules/input/.libs/libim-am-et.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-am-et.a ./modules/input/.libs/libim-am-et.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-am-et.so.0 rm -f ./modules/input/.libs/libim-cedilla.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-cedilla.a ./modules/input/.libs/libim-cedilla.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-cedilla.so.0 rm -f ./modules/input/.libs/libim-cyrillic-translit.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-cyrillic-translit.a ./modules/input/.libs/libim-cyrillic-translit.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-cyrillic-translit.so.0 rm -f ./modules/input/.libs/libim-inuktitut.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-inuktitut.a ./modules/input/.libs/libim-inuktitut.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-inuktitut.a rm -f ./modules/input/.libs/libim-ipa.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-ipa.a ./modules/input/.libs/libim-ipa.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-ipa.so.0 rm -f ./modules/input/.libs/libim-thai-broken.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-thai-broken.a ./modules/input/.libs/libim-thai-broken.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-thai-broken.so.0 rm -f ./modules/input/.libs/libim-ti-er.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-ti-er.a ./modules/input/.libs/libim-ti-er.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-ti-er.so.0 rm -f ./modules/input/.libs/libim-ti-et.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-ti-et.a ./modules/input/.libs/libim-ti-et.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-ti-et.so.0 rm -f ./modules/input/.libs/libim-viqr.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-viqr.a ./modules/input/.libs/libim-viqr.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-viqr.so.0 rm -f ./modules/input/.libs/libim-xim.a /usr/bin/ar -X32_64 -r ./modules/input/.libs/libim-xim.a ./modules/input/.libs/libim-xim.so.0 ./64bit/gtk+-2.10.6/modules/input/.libs/libim-xim.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-ani.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-ani.a ./gdk-pixbuf/.libs/libpixbufloader-ani.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-ani.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-bmp.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-bmp.a ./gdk-pixbuf/.libs/libpixbufloader-bmp.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-bmp.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-gif.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-gif.a ./gdk-pixbuf/.libs/libpixbufloader-gif.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-gif.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-ico.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-ico.a ./gdk-pixbuf/.libs/libpixbufloader-ico.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-ico.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-jpeg.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-jpeg.a ./gdk-pixbuf/.libs/libpixbufloader-jpeg.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-jpeg.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-pcx.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-pcx.a ./gdk-pixbuf/.libs/libpixbufloader-pcx.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-pcx.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-png.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-png.a ./gdk-pixbuf/.libs/libpixbufloader-png.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-png.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-pnm.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-pnm.a ./gdk-pixbuf/.libs/libpixbufloader-pnm.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-pnm.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-ras.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-ras.a ./gdk-pixbuf/.libs/libpixbufloader-ras.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-ras.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-tga.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-tga.a ./gdk-pixbuf/.libs/libpixbufloader-tga.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-tga.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-tiff.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-tiff.a ./gdk-pixbuf/.libs/libpixbufloader-tiff.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-tiff.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-wbmp.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-wbmp.a ./gdk-pixbuf/.libs/libpixbufloader-wbmp.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-wbmp.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-xbm.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-xbm.a ./gdk-pixbuf/.libs/libpixbufloader-xbm.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-xbm.so.0 rm -f ./gdk-pixbuf/.libs/libpixbufloader-xpm.a /usr/bin/ar -X32_64 -r ./gdk-pixbuf/.libs/libpixbufloader-xpm.a ./gdk-pixbuf/.libs/libpixbufloader-xpm.so.0 ./64bit/gtk+-2.10.6/gdk-pixbuf/.libs/libpixbufloader-xpm.so.0 /usr/bin/ar -X32_64 -q ./modules/printbackends/file/.libs/libprintbackend-file.a ./64bit/gtk+-2.10.6/modules/printbackends/file/.libs/libprintbackend-file.a /usr/bin/ar -X32_64 -q ./modules/printbackends/lpr/.libs/libprintbackend-lpr.a ./64bit/gtk+-2.10.6/modules/printbackends/lpr/.libs/libprintbackend-lpr.a %endif %install if test "%{buildroot}" != "/"; then rm -rf %{buildroot} fi mkdir -p %{buildroot} # Remove the binaries so that the relink can take place rm -f modules/input/.libs/*.so.0 make DESTDIR=%{buildroot} install-strip # make links cd %{buildroot} for dir in bin lib include share do mkdir -p usr/$dir cd usr/$dir ln -sf ../..%{_prefix}/$dir/* . cd - done #Add links for 64-bit library members %if %{BUILD64} == 1 ( mkdir -p $RPM_BUILD_ROOT/%{prefix64}/lib cd $RPM_BUILD_ROOT/%{prefix64}/lib ln -s ../../lib/*.a . ) %endif # Create the directory (empty) mkdir -p %{buildroot}/%{_sysconfdir}/gtk-2.0/ %post if test -e %{_sysconfdir}/gtk-2.0/gtk.immodules; then rm %{_sysconfdir}/gtk-2.0/gtk.immodules fi %{_bindir}/gtk-query-immodules-2.0 > %{_sysconfdir}/gtk-2.0/gtk.immodules %{_bindir}/gdk-pixbuf-query-loaders > %{_sysconfdir}/gtk-2.0/gdk-pixbuf.loaders %files %defattr(-, root, system) %doc AUTHORS COPYING ChangeLog NEWS README #%{_bindir}/testtext #%{_bindir}/testgtk %{_bindir}/gtk-demo /usr/bin/gtk-demo %{_bindir}/gtk-query-immodules-2.0 /usr/bin/gtk-query-immodules-2.0 %{_bindir}/gtk-update-icon-cache /usr/bin/gtk-update-icon-cache %{_bindir}/gdk-pixbuf-query-loaders /usr/bin/gdk-pixbuf-query-loaders %{_libdir}/libgtk-x11-2.0.a %{_libdir}/libgdk-x11-2.0.a %{_libdir}/libgdk_pixbuf-2.0.a %{_libdir}/libgdk_pixbuf_xlib-2.0.a #%{_prefix}/64/lib/lib*.a %dir %{_libdir}/gtk-2.0 %{_libdir}/gtk-2.0/%{bin_version} %{_datadir}/gtk-2.0 %{_datadir}/themes/Default %{_datadir}/themes/Emacs # The theme 'Raleigh' is not installed on AIX #%{_datadir}/themes/Raleigh %dir %{_sysconfdir}/gtk-2.0/ %{_datadir}/locale/*/LC_MESSAGES/gtk20.mo %{_datadir}/locale/*/LC_MESSAGES/gtk20-properties.mo /usr/lib/lib*.a /usr/share/* %files devel %defattr(-, root, system) %dir %{_libdir}/gtk-2.0 %{_libdir}/gtk-2.0/include %{_libdir}/*.la %{_datadir}/gtk-doc/ %{_mandir}/man1/* %{_includedir}/* /usr/include/* %{_datadir}/aclocal/* %{_bindir}/gdk-pixbuf-csource /usr/bin/gdk-pixbuf-csource %{_libdir}/pkgconfig/* %doc docs/tutorial %doc examples /usr/share/* %changelog * Fri Nov 17 2006 BULL - Release 1 - New version version: 2.10.6 - gnome 2.16.1 * Fri Sep 15 2006 BULL - Release 10 - Added PreReq xcursor * Thu Sep 14 2006 BULL - Release 9 * Tue Aug 29 2006 BULL - Release 8 - added : gtk.immodules * Thu Jul 20 2006 BULL - Release 7 - built with ORBit 2.14 * Fri Feb 10 2006 BULL - Release 6 * Tue Jan 17 2006 BULL - Release 5 - Correct unresolve XRender symbols in libgdk-x11-2.0.a * Fri Dec 23 2005 BULL - Release 4 - Prototype gtk 64 bit * Thu Dec 01 2005 BULL - Release 3 - Security update: Fix integer overflow in xpm loader * Wed Nov 30 2005 BULL - Release 2 - Correct input method problem that for example prevent to connect from gdm. * Tue Nov 15 2005 BULL - Release 1 - New version version: 2.8.3 * Wed Aug 10 2005 BULL - Release 5 - Create symlinks between /usr/share/ and /opt/freeware/share * Tue Aug 02 2005 BULL - Release 4 - enables wnn8 IM in japanese * Thu Jun 23 2005 BULL - Release 3 - Workaround to use Wnn7 im with Japanese Environment * Wed May 25 2005 BULL - Release 1 - New version version: 2.6.4 * Fri Dec 03 2004 BULL - Release 2 - Corrects problems with input methods using auxiliary windows such as the zh_CN input method * Tue Nov 23 2004 BULL - Release 1 - New version version: 2.4.13 - Use the XIM input method by default for languages 'fr', 'ca' and 'pt' * Mon Sep 20 2004 BULL - Release 3 - Fix bugzilla bug number 150601: - Fix bugzilla bug number 144808: * Wed Jul 28 2004 BULL - Release 2 - bugfix causing core file