diff --git a/0001-Handle-wxGLCanvas-CreateSurface-which-is-only-availa.patch b/0001-Handle-wxGLCanvas-CreateSurface-which-is-only-availa.patch new file mode 100644 index 0000000..e308492 --- /dev/null +++ b/0001-Handle-wxGLCanvas-CreateSurface-which-is-only-availa.patch @@ -0,0 +1,33 @@ +From 371101db7a010d679d214fde617dae9de02008d9 Mon Sep 17 00:00:00 2001 +From: Scott Talbert +Date: Fri, 14 Jul 2023 13:23:03 -0400 +Subject: [PATCH] Handle wxGLCanvas::CreateSurface which is only available on + EGL + +--- + etg/_glcanvas.py | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/etg/_glcanvas.py b/etg/_glcanvas.py +index 52992ed8..2e578645 100644 +--- a/etg/_glcanvas.py ++++ b/etg/_glcanvas.py +@@ -125,6 +125,15 @@ def run(): + sipRes = wxGLCanvas::IsDisplaySupported(attribPtr); + """) + ++ c.find('CreateSurface').setCppCode("""\ ++ #if wxUSE_GLCANVAS_EGL ++ return self->CreateSurface(); ++ #else ++ wxPyRaiseNotImplemented(); ++ return false; ++ #endif ++ """) ++ + #----------------------------------------------------------------- + tools.doCommonTweaks(module) + tools.runGenerators(module) +-- +2.43.0 + diff --git a/0001-Support-building-with-Doxygen-1.9.7.patch b/0001-Support-building-with-Doxygen-1.9.7.patch new file mode 100644 index 0000000..d6a2f42 --- /dev/null +++ b/0001-Support-building-with-Doxygen-1.9.7.patch @@ -0,0 +1,48 @@ +From 6a049ccc0ad96f25c3f7d8540b218ffe8921d8c5 Mon Sep 17 00:00:00 2001 +From: Scott Talbert +Date: Tue, 5 Dec 2023 23:42:21 -0500 +Subject: [PATCH] Support building with Doxygen 1.9.7 + +Doxygen 1.9.7 made some changes whereby some method definitions are now +defined in separate XML files, with a "refid" that links to them. In +order to support this, we need to follow these "refids" to pick up the +method definition from the separate group XML files. +--- + etgtools/extractors.py | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/etgtools/extractors.py b/etgtools/extractors.py +index 8c992cb14..5ae1361f9 100644 +--- a/etgtools/extractors.py ++++ b/etgtools/extractors.py +@@ -62,6 +62,8 @@ def extract(self, element): + # class. Should be overridden in derived classes to get what each one + # needs in addition to the base. + self.name = element.find(self.nameTag).text ++ if self.name is None: ++ self.name = '' + if '::' in self.name: + loc = self.name.rfind('::') + self.name = self.name[loc+2:] +@@ -1574,12 +1576,21 @@ def addElement(self, element): + extractingMsg(kind, element) + for node in element.findall('sectiondef/memberdef'): + self.addElement(node) ++ for node in element.findall('sectiondef/member'): ++ node = self.resolveRefid(node) ++ self.addElement(node) + + else: + raise ExtractorError('Unknown module item kind: %s' % kind) + + return item + ++ def resolveRefid(self, node): ++ from etgtools import XMLSRC ++ refid = node.get('refid') ++ fname = os.path.join(XMLSRC, refid.rsplit('_', 1)[0]) + '.xml' ++ root = et.parse(fname).getroot() ++ return root.find(".//memberdef[@id='{}']".format(refid)) + + + def addCppFunction(self, type, name, argsString, body, doc=None, **kw): diff --git a/0001-Update-wxTextCtrl-OSX-overrides-since-they-re-now-do.patch b/0001-Update-wxTextCtrl-OSX-overrides-since-they-re-now-do.patch new file mode 100644 index 0000000..bee8771 --- /dev/null +++ b/0001-Update-wxTextCtrl-OSX-overrides-since-they-re-now-do.patch @@ -0,0 +1,73 @@ +From 7a198b8cae9a81cec4d25a0c6c5cc65ad8822bb2 Mon Sep 17 00:00:00 2001 +From: Scott Talbert +Date: Mon, 20 Nov 2023 22:12:58 -0500 +Subject: [PATCH] Update wxTextCtrl OSX overrides since they're now documented + +--- + etg/textctrl.py | 48 +++++++++++++++++++++--------------------------- + 1 file changed, 21 insertions(+), 27 deletions(-) + +diff --git a/etg/textctrl.py b/etg/textctrl.py +index af631a53..690d68c4 100644 +--- a/etg/textctrl.py ++++ b/etg/textctrl.py +@@ -114,35 +114,29 @@ def parseAndTweakModule(): + + + # OSX methods for controlling native features +- c.addCppMethod('void', 'OSXEnableAutomaticQuoteSubstitution', '(bool enable)', +- doc="Mac-only method for turning on/off automatic quote substitutions.", +- body="""\ +- #ifdef __WXMAC__ +- self->OSXEnableAutomaticQuoteSubstitution(enable); +- #else +- wxPyRaiseNotImplemented(); +- #endif +- """) ++ c.find('OSXEnableAutomaticQuoteSubstitution').setCppCode("""\ ++ #ifdef __WXMAC__ ++ self->OSXEnableAutomaticQuoteSubstitution(enable); ++ #else ++ wxPyRaiseNotImplemented(); ++ #endif ++ """) + +- c.addCppMethod('void', 'OSXEnableAutomaticDashSubstitution', '(bool enable)', +- doc="Mac-only method for turning on/off automatic dash substitutions.", +- body="""\ +- #ifdef __WXMAC__ +- self->OSXEnableAutomaticDashSubstitution(enable); +- #else +- wxPyRaiseNotImplemented(); +- #endif +- """) ++ c.find('OSXEnableAutomaticDashSubstitution').setCppCode("""\ ++ #ifdef __WXMAC__ ++ self->OSXEnableAutomaticDashSubstitution(enable); ++ #else ++ wxPyRaiseNotImplemented(); ++ #endif ++ """) + +- c.addCppMethod('void', 'OSXDisableAllSmartSubstitutions', '()', +- doc="Mac-only method to disable all automatic text substitutions.", +- body="""\ +- #ifdef __WXMAC__ +- self->OSXDisableAllSmartSubstitutions(); +- #else +- wxPyRaiseNotImplemented(); +- #endif +- """) ++ c.find('OSXDisableAllSmartSubstitutions').setCppCode("""\ ++ #ifdef __WXMAC__ ++ self->OSXDisableAllSmartSubstitutions(); ++ #else ++ wxPyRaiseNotImplemented(); ++ #endif ++ """) + + # TODO: add support for wxTextProofOptions (only supported on MSW/GTK3) + # so will need stubs on other platforms. +-- +2.43.0 + diff --git a/python-wxPython.changes b/python-wxPython.changes index ab34290..ce2078c 100644 --- a/python-wxPython.changes +++ b/python-wxPython.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Wed Dec 27 07:37:06 UTC 2023 - Antonio Larrosa + +- Add patch from upstream to fix building the package with + doxygen >=1.9.7 (gh#wxWidgets/Phoenix#2497): + * 0001-Support-building-with-Doxygen-1.9.7.patch + +------------------------------------------------------------------- +Wed Dec 13 23:00:29 UTC 2023 - Jan Engelhardt + +- Add 0001-Update-wxTextCtrl-OSX-overrides-since-they-re-now-do.patch + 0001-Handle-wxGLCanvas-CreateSurface-which-is-only-availa.patch + to fix build failures with wx 3.2.4. + ------------------------------------------------------------------- Mon Sep 11 14:47:53 UTC 2023 - Stefan BrĂ¼ns diff --git a/python-wxPython.spec b/python-wxPython.spec index 9caefff..11e84a2 100644 --- a/python-wxPython.spec +++ b/python-wxPython.spec @@ -91,12 +91,16 @@ URL: https://github.com/wxWidgets/Phoenix Source0: wxPython-%{version}.tar.gz Source1: python-wxPython-rpmlintrc Source2: repack +Patch1: 0001-Update-wxTextCtrl-OSX-overrides-since-they-re-now-do.patch +Patch2: 0001-Handle-wxGLCanvas-CreateSurface-which-is-only-availa.patch +# PATCH-FIX-UPSTREAM https://github.com/wxWidgets/Phoenix/pull/2497 +Patch3: 0001-Support-building-with-Doxygen-1.9.7.patch # PATCH-FIX-OPENSUSE -Patch1: use_stl_build.patch +Patch12: use_stl_build.patch # PATCH-FIX-UPSTREAM - https://github.com/wxWidgets/Phoenix/pull/2232 -Patch4: 0003-Make-pip-usage-in-wxget-optional.patch +Patch13: 0003-Make-pip-usage-in-wxget-optional.patch # PATCH-FIX-OPENSUSE -Patch5: 0004-Fix-time_t-ETG-typedef-extend-DateTime.FromTimeT-tes.patch +Patch14: 0004-Fix-time_t-ETG-typedef-extend-DateTime.FromTimeT-tes.patch # PATCH-FIX-OPENSUSE - Test fixes/additions: Patch112: 0001-Check-HSV-values-in-image-test.patch BuildRequires: %{python_module base}