Summary: The GIMP Toolkit - MinGW32 cross version
Summary(pl.UTF-8): GIMP Toolkit - wersja skrośna dla MinGW32
Name: crossmingw32-gtk+2
-Version: 2.24.8
-Release: 1
+Version: 2.24.30
+Release: 2
License: LGPL v2+
Group: Development/Libraries
Source0: http://ftp.gnome.org/pub/GNOME/sources/gtk+/2.24/gtk+-%{version}.tar.xz
-# Source0-md5: 5408d4a70ac132f7c439d7de40e83aff
+# Source0-md5: 04568ba5c58b75e3c7543e45628ad789
URL: http://www.gtk.org/
BuildRequires: autoconf >= 2.62
BuildRequires: automake >= 1:1.7
BuildRequires: crossmingw32-atk >= 1.30.0
+BuildRequires: crossmingw32-cairo >= 1.6
BuildRequires: crossmingw32-gcc
BuildRequires: crossmingw32-gdk-pixbuf2 >= 2.22.0
BuildRequires: crossmingw32-glib2 >= 2.28.0
BuildRequires: gtk-doc >= 1.17
BuildRequires: libtool
BuildRequires: pkgconfig >= 1:0.15
+BuildRequires: sed >= 4.0
BuildRequires: tar >= 1:1.22
BuildRequires: xz
Requires: crossmingw32-atk >= 1.30.0
+Requires: crossmingw32-cairo >= 1.6
Requires: crossmingw32-gdk-pixbuf2 >= 2.22.0
Requires: crossmingw32-glib2 >= 2.28.0
Requires: crossmingw32-pango >= 1.28.0
%define _dlldir /usr/share/wine/windows/system
%define __cc %{target}-gcc
%define __cxx %{target}-g++
+%define __pkgconfig_provides %{nil}
+%define __pkgconfig_requires %{nil}
-#define filterout_ld (-Wl,)?-as-needed.*
-
+%define _ssp_cflags %{nil}
%ifnarch %{ix86}
# arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
%define optflags -O2
%endif
-# -z options are invalid for mingw linker
+# -z options are invalid for mingw linker, most of -f options are Linux-specific
%define filterout_ld -Wl,-z,.*
+%define filterout_c -f[-a-z0-9=]*
%description
GTK+, which stands for the GIMP ToolKit, is a library for creating
Summary(pl.UTF-8): Biblioteki DLL GTK+ dla Windows
Group: Applications/Emulators
Requires: crossmingw32-atk-dll >= 1.30.0
+Requires: crossmingw32-cairo-dll >= 1.6
Requires: crossmingw32-gdk-pixbuf2-dll >= 2.22.0
Requires: crossmingw32-glib2-dll >= 2.28.0
Requires: crossmingw32-pango-dll >= 1.28.0
%prep
%setup -q -n gtk+-%{version}
+# avoid rebuilding builtin stock icons cache
+# (requires native gtk-update-icon-cache >= 2.24.24 < 3.0)
+touch gtk/stamp-icons gtk/gtkbuiltincache.h
+
+# -Wl, makes recent libtools pass it as linker flag before any objects,
+# which is incompatible with as-needed; use plain -luuid with pass_all
+# hack below
+%{__sed} -i -e 's@-Wl,-luuid@-luuid@' configure.ac
+
%build
export PKG_CONFIG_LIBDIR=%{_prefix}/lib/pkgconfig
-%{__gtkdocize}
%{__libtoolize}
%{__aclocal}
%{__autoconf}
%{__autoheader}
%{__automake}
+# starting with 2.24.14 gtk+ uses Windows 5.0 features
+CPPFLAGS="%{rpmcppflags} -DWINVER=0x0500"
%configure \
- ac_cv_path_CUPS_CONFIG=no \
--target=%{target} \
--host=%{target} \
+ --disable-cups \
--disable-gtk-doc \
--disable-man \
--disable-xkb \
--without-x \
--without-xinput
+# by default mingw32 libtool doesn't allow to embed static libraries
+# in shared libraries (only import libraries are allowed); override this
+# to allow static libuuid
+%{__sed} -i -e 's/^\(deplibs_check_method\)=.*/\1="pass_all"/' libtool
+# avoid -luuid in shared linking
+%{__sed} -i -e 's/ -luuid//;$aLibs.private: -luuid' gdk*.pc
+
%{__make}
%install
%{__make} -j1 install \
DESTDIR=$RPM_BUILD_ROOT
+# avoid -luuid in shared linking
+%{__sed} -i -e 's/ -luuid//' $RPM_BUILD_ROOT%{_libdir}/lib*.la
+
install -d $RPM_BUILD_ROOT%{_dlldir}
-mv -f $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
+%{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
%if 0%{!?debug:1}
%{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
%endif
# remove unsupported locale scheme
-%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/{aclocal,gtk-2.0,gtk-doc,locale,man,themes}
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/{aclocal,gtk-2.0,gtk-doc,locale,themes}
# shut up check-files (static modules and *.la for modules)
%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules/*.{a,la}
%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/2.*/*/*.{a,la}
%{_libdir}/gtk-2.0/include
%{_includedir}/gail-1.0
%{_includedir}/gtk-2.0
-%{_includedir}/gtk-unix-print-2.0
%{_pkgconfigdir}/gail.pc
%{_pkgconfigdir}/gdk-2.0.pc
%{_pkgconfigdir}/gdk-win32-2.0.pc