Compare commits

...

7 Commits
master ... f7

Author SHA1 Message Date
Fedora Release Engineering cf88987458 dist-git conversion 2010-07-29 15:28:18 +00:00
Bill Nottingham 0e5f37ef51 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:19:34 +00:00
Dan Horák e76ecb6f9f - bump revision for chain-build with wxPython 2008-06-07 13:19:39 +00:00
Dan Horák 9e19c3d3f0 - added fix for a race condition (rh bug #440011)
Wed Feb 20 2008 Matthew Miller <mattdm@mattdm.org> - 2.8.7-1
- update to 2.8.7 (rh bug #369621, etc.)
- split base libs into separate wxBase package (rh bug #357961)
- okay, so, wxPython 2.8.7.1 seems to work fine against this version of the
    library, so I'm dropping the kludgy-patch-to-2.8.7.1 thing. Please
    report any compatibility problems with wxPython 2.8.7.1 and I'll fix
    them as they come up.
2008-04-01 15:09:43 +00:00
Matthew Miller 59de4e9fb8 - include libwx_gtk2u_media, since I'm now listing the buildreqs properly. 2007-07-12 14:41:03 +00:00
Matthew Miller c6f07792f8 - buildrequires for libSM-devel, gstreamer-plugins-base-devel, and
GConf2-devel
Wed Jul 11 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.4-1
- update to 2.8.4
- obsolete compat-wxGTK
- add -fno-strict-aliasing
2007-07-12 14:16:10 +00:00
Bill Nottingham da12da8ad4 Initialize branch F-7 for wxGTK 2007-05-18 11:11:17 +00:00
6 changed files with 208 additions and 30 deletions

View File

@ -1 +0,0 @@
wxGTK-2.8.3.tar.bz2

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
wxGTK-2.8.7.tar.bz2

View File

@ -1,21 +0,0 @@
# Makefile for source rpm: wxGTK
# $Id$
NAME := wxGTK
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

View File

@ -1 +1 @@
758a7aa5d1a0403a571823762b0ebe2a wxGTK-2.8.3.tar.bz2
b25e85eeee524903214ebb520753f4bd wxGTK-2.8.7.tar.bz2

109
wxGTK-2.8.7-race-fix.patch Normal file
View File

@ -0,0 +1,109 @@
--- wxWidgets/src/gtk/app.cpp 2008/03/13 02:56:21 52464
+++ wxWidgets/src/gtk/app.cpp 2008/03/13 04:37:03 52465
@@ -174,59 +174,63 @@
if (!wxTheApp)
return false;
- bool moreIdles = false;
-
+ guint idleID_save;
+ {
+ // Allow another idle source to be added while this one is busy.
+ // Needed if an idle event handler runs a new event loop,
+ // for example by showing a dialog.
+#if wxUSE_THREADS
+ wxMutexLocker lock(gs_idleTagsMutex);
+#endif
+ idleID_save = wxTheApp->m_idleTag;
+ wxTheApp->m_idleTag = 0;
+ g_isIdle = true;
+ wxAddEmissionHook();
+ }
#ifdef __WXDEBUG__
// don't generate the idle events while the assert modal dialog is shown,
// this matches the behavior of wxMSW
- if (!wxTheApp->IsInAssert())
+ if (wxTheApp->IsInAssert())
+ return false;
#endif // __WXDEBUG__
- {
- guint idleID_save;
- {
- // Allow another idle source to be added while this one is busy.
- // Needed if an idle event handler runs a new event loop,
- // for example by showing a dialog.
-#if wxUSE_THREADS
- wxMutexLocker lock(gs_idleTagsMutex);
-#endif
- idleID_save = wxTheApp->m_idleTag;
- wxTheApp->m_idleTag = 0;
- g_isIdle = true;
- wxAddEmissionHook();
- }
- // When getting called from GDK's time-out handler
- // we are no longer within GDK's grab on the GUI
- // thread so we must lock it here ourselves.
- gdk_threads_enter();
-
- // Send idle event to all who request them as long as
- // no events have popped up in the event queue.
- do {
- moreIdles = wxTheApp->ProcessIdle();
- } while (moreIdles && gtk_events_pending() == 0);
+ // When getting called from GDK's time-out handler
+ // we are no longer within GDK's grab on the GUI
+ // thread so we must lock it here ourselves.
+ gdk_threads_enter();
- // Release lock again
- gdk_threads_leave();
-
- {
- // If another idle source was added, remove it
+ // Send idle event to all who request them as long as
+ // no events have popped up in the event queue.
+ bool moreIdles;
+ do {
+ moreIdles = wxTheApp->ProcessIdle();
+ } while (moreIdles && gtk_events_pending() == 0);
+
+ // Release lock again
+ gdk_threads_leave();
+
#if wxUSE_THREADS
- wxMutexLocker lock(gs_idleTagsMutex);
+ wxMutexLocker lock(gs_idleTagsMutex);
#endif
- if (wxTheApp->m_idleTag != 0)
- g_source_remove(wxTheApp->m_idleTag);
- wxTheApp->m_idleTag = idleID_save;
- g_isIdle = false;
- }
- }
+ // If another idle source was added, remove it
+ if (wxTheApp->m_idleTag != 0)
+ g_source_remove(wxTheApp->m_idleTag);
+ wxTheApp->m_idleTag = idleID_save;
+ g_isIdle = false;
- if (!moreIdles)
- {
#if wxUSE_THREADS
- wxMutexLocker lock(gs_idleTagsMutex);
+ if (wxPendingEventsLocker)
+ wxPendingEventsLocker->Enter();
#endif
+ // Pending events can be added asynchronously,
+ // need to keep idle source if any have appeared
+ moreIdles = moreIdles || (wxPendingEvents && !wxPendingEvents->IsEmpty());
+#if wxUSE_THREADS
+ if (wxPendingEventsLocker)
+ wxPendingEventsLocker->Leave();
+#endif
+ if (!moreIdles)
+ {
// Indicate that we are now in idle mode and event handlers
// will have to reinstall the idle handler again.
g_isIdle = true;

View File

@ -5,8 +5,8 @@
%define withodbc 0
Name: wxGTK
Version: 2.8.3
Release: 2%{?dist}
Version: 2.8.7
Release: 2%{?dist}.1
Summary: GTK2 port of the wxWidgets GUI library
# The wxWindows licence is the LGPL with a specific exemption allowing
# distribution of derived binaries under any terms. (This will eventually
@ -15,13 +15,17 @@ License: wxWidgets Library Licence
Group: System Environment/Libraries
URL: http://www.wxwidgets.org/
Source0: http://dl.sf.net/wxwindows/%{name}-%{version}.tar.bz2
Patch0: wxGTK-2.8.7-race-fix.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: gtk2-devel, zlib-devel >= 1.1.4
BuildRequires: libpng-devel, libjpeg-devel, libtiff-devel
BuildRequires: expat-devel, SDL-devel, libgnomeprintui22-devel
BuildRequires: libGL-devel, libGLU-devel
BuildRequires: gstreamer-devel >= 0.10
BuildRequires: libSM-devel
BuildRequires: gstreamer-devel >= 0.10, gstreamer-plugins-base-devel >= 0.10
BuildRequires: GConf2-devel
BuildRequires: autoconf, gettext
%if %{withodbc}
BuildRequires: unixODBC-devel
@ -30,19 +34,28 @@ BuildRequires: unixODBC-devel
# all of these are for previous Fedora Extras sub-packages
Obsoletes: wxGTK2 < 2.6.2-1
Provides: wxGTK2 = %{version}-%{release}
Obsoletes: compat-wxGTK2 < %{version}-%{release}
Obsoletes: compat-wxGTK < %{version}-%{release}
Obsoletes: wxGTK-common < 2.6.2-1
Provides: wxGTK-common = %{version}-%{release}
Obsoletes: compat-wxGTK-common < %{version}-%{release}
Obsoletes: wxGTK2-xrc < 2.6.2-1
Obsoletes: wxGTK-xrc < 2.6.2-1
Provides: wxGTK2-xrc = %{version}-%{release}
Provides: wxGTK-xrc = %{version}-%{release}
Obsoletes: compat-wxGTK2-xrc < %{version}-%{release}
Obsoletes: compat-wxGTK-xrc < %{version}-%{release}
Obsoletes: wxGTK2-stc < 2.6.2-1
Obsoletes: wxGTK-stc < 2.6.2-1
Provides: wxGTK2-stc = %{version}-%{release}
Provides: wxGTK-stc = %{version}-%{release}
Obsoletes: compat-wxGTK2-stc < %{version}-%{release}
Obsoletes: compat-wxGTK-stc < %{version}-%{release}
Requires: wxBase = %{version}-%{release}
%description
wxWidgets/GTK2 is the GTK2 port of the C++ cross-platform wxWidgets
@ -56,12 +69,16 @@ Group: Development/Libraries
Summary: Development files for the wxGTK2 library
Requires: %{name} = %{version}-%{release}
Requires: %{name}-gl = %{version}-%{release}
Requires: wxBase = %{version}-%{release}
Requires: gtk2-devel
Requires: libGL-devel, libGLU-devel
Obsoletes: wxGTK2-devel < %{version}-%{release}
Provides: wxGTK2-devel = %{version}-%{release}
Obsoletes: wxGTK-common-devel < %{version}-%{release}
Provides: wxGTK-common-devel = %{version}-%{release}
Obsoletes: compat-wxGTK2-devel < %{version}-%{release}
Obsoletes: compat-wxGTK-devel < %{version}-%{release}
Obsoletes: compat-wxGTK-common-devel < %{version}-%{release}
%description devel
This package include files needed to link with the wxGTK2 library.
@ -73,10 +90,13 @@ Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
Obsoletes: wxGTK2-gl < %{version}-%{release}
Provides: wxGTK2-gl = %{version}-%{release}
Obsoletes: compat-wxGTK2-gl < %{version}-%{release}
Obsoletes: compat-wxGTK-gl < %{version}-%{release}
%description gl
OpenGL (a 3D graphics API) add-on for the wxWidgets library.
%if %{withodbc}
%package odbc
Summary: ODBC add-on for the wxWidgets library
@ -87,9 +107,22 @@ Requires: %{name} = %{version}-%{release}
ODBC (a SQL database connectivity API) add-on for the wxWidgets library.
%endif
%package -n wxBase
Summary: Non-GUI support classes from the wxWidgets library
Group: System Environment/Libraries
%description -n wxBase
Every wxWidgets application must link against this library. It contains
mandatory classes that any wxWidgets code depends on (like wxString) and
portability classes that abstract differences between platforms. wxBase can
be used to develop console mode applications -- it does not require any GUI
libraries or the X Window System.
%prep
%setup -q
%patch0 -p1 -b .racefix
sed -i -e 's|/usr/lib\b|%{_libdir}|' wx-config.in configure
@ -102,6 +135,10 @@ sed -i -e 's|/usr/lib\b|%{_libdir}|' wx-config.in configure
export GDK_USE_XFT=1
# this code dereferences type-punned pointers like there's no tomorrow.
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
# --disable-optimise prevents our $RPM_OPT_FLAGS being overridden
# (see OPTIMISE in configure).
%configure \
@ -167,20 +204,26 @@ rm -rf $RPM_BUILD_ROOT
%post gl -p /sbin/ldconfig
%postun gl -p /sbin/ldconfig
%if %{withodbc}
%post odbc -p /sbin/ldconfig
%postun odbc -p /sbin/ldconfig
%endif
%post -n wxBase -p /sbin/ldconfig
%postun -n wxBase -p /sbin/ldconfig
%files -f wxstd.lang
%defattr(-,root,root,-)
%doc docs/changes.txt docs/gpl.txt docs/lgpl.txt docs/licence.txt
%doc docs/licendoc.txt docs/preamble.txt docs/readme.txt
%{_libdir}/libwx_baseu-*.so.*
%{_libdir}/libwx_baseu_net-*.so.*
%{_libdir}/libwx_baseu_xml-*.so.*
%{_libdir}/libwx_gtk2u_adv-*.so.*
%{_libdir}/libwx_gtk2u_aui-*.so.*
%{_libdir}/libwx_gtk2u_core-*.so.*
%{_libdir}/libwx_gtk2u_gizmos-*.so.*
%{_libdir}/libwx_gtk2u_gizmos_xrc*.so.*
%{_libdir}/libwx_gtk2u_html-*.so.*
%{_libdir}/libwx_gtk2u_media-*.so.*
%{_libdir}/libwx_gtk2u_ogl-*.so.*
%{_libdir}/libwx_gtk2u_qa-*.so.*
%{_libdir}/libwx_gtk2u_richtext-*.so.*
@ -212,7 +255,54 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libwx_gtk2u_odbc-*.so.*
%endif
%files -n wxBase
%doc docs/changes.txt docs/gpl.txt docs/lgpl.txt docs/licence.txt
%doc docs/licendoc.txt docs/preamble.txt docs/readme.txt
%{_libdir}/libwx_baseu-*.so.*
%{_libdir}/libwx_baseu_net-*.so.*
%{_libdir}/libwx_baseu_xml-*.so.*
%changelog
* Sat Jun 7 2008 Dan Horak <dan[at]danny.cz> - 2.8.7-2.1
- bump revision for chain-build with wxPython
* Tue Apr 1 2008 Dan Horak <dan[at]danny.cz> - 2.8.7-2
- added fix for a race condition (rh bug #440011)
* Wed Feb 20 2008 Matthew Miller <mattdm@mattdm.org> - 2.8.7-1
- update to 2.8.7 (rh bug #369621, etc.)
- split base libs into separate wxBase package (rh bug #357961)
- okay, so, wxPython 2.8.7.1 seems to work fine against this version of the
library, so I'm dropping the kludgy-patch-to-2.8.7.1 thing. Please report
any compatibility problems with wxPython 2.8.7.1 and I'll fix them as they
come up.
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.8.4-7
- Autorebuild for GCC 4.3
* Tue Aug 28 2007 Hans de Goede <j.w.r.degoede@hhs.nl> - 2.8.4-6
- Rebuild for new expat 2.0
* Fri Aug 3 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.4-5
- obsolete all compat-wxGTK subpackages properly (bug #250687)
* Mon Jul 16 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.4-4
- patch from svn to fix rh bug #247414
* Thu Jul 12 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.4-3
- include libwx_gtk2u_media, since I'm now listing the
buildreqs properly.
* Thu Jul 12 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.4-2
- buildrequires for libSM-devel, gstreamer-plugins-base-devel,
and GConf2-devel
* Wed Jul 11 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.4-1
- update to 2.8.4
- obsolete compat-wxGTK
- add -fno-strict-aliasing
* Sun Apr 15 2007 Matthew Miller <mattdm@mattdm.org> - 2.8.3-2
- gratuitously bump release number.