commit:     69364e35bd5a05ed5c26f8806dbfdaf63741c32e
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  4 14:24:10 2024 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Jul  4 14:24:19 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69364e35

media-libs/libffado: added python 3.12

Closes: https://bugs.gentoo.org/929640
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 .../libffado-2.4.7-fix-config-load-crash.patch     |  2 -
 .../libffado/files/libffado-2.4.8-python3.12.patch | 82 ++++++++++++++++++++++
 media-libs/libffado/libffado-2.4.8.ebuild          |  3 +-
 3 files changed, 84 insertions(+), 3 deletions(-)

diff --git 
a/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch 
b/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch
index 05ede6ebf653..e16629c7a47e 100644
--- a/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch
+++ b/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch
@@ -1,5 +1,3 @@
-diff --git a/libffado-2.4.1/support/mixer-qt4/ffado/mixer/globalmixer.py 
b/libffado-2.4.1-patched/support/mixer-qt4/ffado/mixer/globalmixer.py
-index 7078b0e..d184d73 100644
 --- libffado-2.4.1-old/support/mixer-qt4/ffado/mixer/globalmixer.py
 +++ libffado-2.4.1/support/mixer-qt4/ffado/mixer/globalmixer.py
 @@ -96,7 +96,6 @@ class GlobalMixer(QWidget):

diff --git a/media-libs/libffado/files/libffado-2.4.8-python3.12.patch 
b/media-libs/libffado/files/libffado-2.4.8-python3.12.patch
new file mode 100644
index 000000000000..da5bdecc245d
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.4.8-python3.12.patch
@@ -0,0 +1,82 @@
+--- libffado-2.4.8/SConstruct
++++ libffado-2.4.8-patched/SConstruct
+@@ -977,7 +977,7 @@ else:
+ # Create a tags-file for easier emacs/vim-source-browsing
+ #  I don't know if the dependency is right...
+ #
+-findcommand = "find . \( -path \"*.h\" -o -path \"*.cpp\" -o -path \"*.c\" \) 
\! -path \"*.svn*\" \! -path \"./doc*\" \! -path \"./cache*\""
++findcommand = "find . \\( -path \"*.h\" -o -path \"*.cpp\" -o -path \"*.c\" 
\\) \\! -path \"*.svn*\" \\! -path \"./doc*\" \\! -path \"./cache*\""
+ env.Command( "tags", "", findcommand + " |xargs ctags" )
+ env.Command( "TAGS", "", findcommand + " |xargs etags" )
+ env.AlwaysBuild( "tags", "TAGS" )
+--- libffado-2.4.8/admin/pyuic.py
++++ libffado-2.4.8-patched/admin/pyuic.py
+@@ -21,7 +22,7 @@
+ # along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ #
+ 
+-import imp
++import importlib
+ 
+ def pyuic_action( target, source, env ):
+       env.Execute( "pyuic " + str( source[0] ) + " > " + str( target[0] ) )
+@@ -32,11 +33,7 @@ def pyuic_string( target, source, env ):
+ 
+ def PyQtCheck( context ):
+       context.Message( "Checking for pyuic (by checking for the python module 
pyqtconfig) " )
+-      ret = True
+-      try:
+-              imp.find_module( "pyqtconfig" )
+-      except ImportError:
+-              ret = False
++      ret = importlib.util.find_spec( "pyqtconfig" ) is not None
+       context.Result( ret )
+       return ret
+ 
+--- libffado-2.4.8/admin/pyuic4.py
++++ libffado-2.4.8-patched/admin/pyuic4.py
+@@ -21,7 +22,7 @@
+ # along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ #
+ 
+-import imp
++import importlib
+ 
+ def pyuic4_action( target, source, env ):
+       env.Execute( "pyuic4 " + str( source[0] ) + " > " + str( target[0] ) )
+@@ -32,11 +33,7 @@ def pyuic4_string( target, source, env ):
+ 
+ def PyQt4Check( context ):
+       context.Message( "Checking for pyuic4 (by checking for the python 
module pyqtconfig) " )
+-      ret = True
+-      try:
+-              imp.find_module( "pyqtconfig" )
+-      except ImportError:
+-              ret = False
++      ret = importlib.util.find_spec( "pyqtconfig" ) is not None
+       context.Result( ret )
+       return ret
+ 
+--- libffado-2.4.8/admin/pyuic5.py
++++ libffado-2.4.8-patched/admin/pyuic5.py
+@@ -22,7 +23,7 @@
+ # along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ #
+ 
+-import imp
++import importlib
+ 
+ def pyuic5_action( target, source, env ):
+       env.Execute( "pyuic5 " + str( source[0] ) + " > " + str( target[0] ) )
+@@ -33,11 +34,7 @@ def pyuic5_string( target, source, env ):
+ 
+ def PyQt5Check( context ):
+       context.Message( "Checking for pyuic5 (by checking for the python 
module pyqtconfig) " )
+-      ret = True
+-      try:
+-              imp.find_module( "pyqtconfig" )
+-      except ImportError:
+-              ret = False
++      ret = importlib.util.find_spec( "pyqtconfig" ) is not None
+       context.Result( ret )
+       return ret

diff --git a/media-libs/libffado/libffado-2.4.8.ebuild 
b/media-libs/libffado/libffado-2.4.8.ebuild
index 485806fc9807..2bf41f8f6808 100644
--- a/media-libs/libffado/libffado-2.4.8.ebuild
+++ b/media-libs/libffado/libffado-2.4.8.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_COMPAT=( python3_{9..12} )
 
 inherit desktop python-single-r1 scons-utils toolchain-funcs udev 
multilib-minimal
 
@@ -48,6 +48,7 @@ RDEPEND="${CDEPEND}"
 
 PATCHES=(
        "${FILESDIR}/libffado-2.4.7-fix-config-load-crash.patch"
+       "${FILESDIR}/libffado-2.4.8-python3.12.patch"
 )
 
 myescons() {

Reply via email to