File qtdeclarative-switch-to-python3.patch of Package libqt5-qtdeclarative

Subject: Make qtdeclarative build with python3
From: Max Lin <mlin@suse.com>
From: Antonio Larrosa <alarrosa@suse.com>
Index: qtdeclarative-everywhere-src-5.12.0-alpha/qtdeclarative.pro
===================================================================
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/qtdeclarative.pro
+++ qtdeclarative-everywhere-src-5.12.0-alpha/qtdeclarative.pro
@@ -2,7 +2,7 @@ CONFIG += tests_need_tools examples_need
 load(qt_parts)
 
 !python_available {
-    py_out = $$system('python -c "print(1)"')
+    py_out = $$system('python3 -c "print(1)"')
     !equals(py_out, 1): error("Building QtQml requires Python.")
     tmp = python_available
     CONFIG += $$tmp
Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/3rdparty/masm/masm.pri
===================================================================
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/src/3rdparty/masm/masm.pri
+++ qtdeclarative-everywhere-src-5.12.0-alpha/src/3rdparty/masm/masm.pri
@@ -58,7 +58,7 @@ contains(DEFINES, WTF_USE_UDIS86=1) {
     udis86.output = udis86_itab.h
     udis86.input = ITAB
     udis86.CONFIG += no_link
-    udis86.commands = python $$PWD/disassembler/udis86/itab.py ${QMAKE_FILE_IN}
+    udis86.commands = python3 $$PWD/disassembler/udis86/itab.py ${QMAKE_FILE_IN}
     QMAKE_EXTRA_COMPILERS += udis86
 
     udis86_tab_cfile.target = $$OUT_PWD/udis86_itab.c
@@ -113,7 +113,7 @@ retgen.output = $$GENERATEDDIR/RegExpJit
 retgen.script = $$PWD/yarr/create_regex_tables
 retgen.input = retgen.script
 retgen.CONFIG += no_link
-retgen.commands = python $$retgen.script > ${QMAKE_FILE_OUT}
+retgen.commands = python3 $$retgen.script > ${QMAKE_FILE_OUT}
 QMAKE_EXTRA_COMPILERS += retgen
 
 # Taken from WebKit/Tools/qmake/mkspecs/features/unix/default_post.prf
Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/3rdparty/masm/disassembler/udis86/itab.py
===================================================================
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/src/3rdparty/masm/disassembler/udis86/itab.py
+++ qtdeclarative-everywhere-src-5.12.0-alpha/src/3rdparty/masm/disassembler/udis86/itab.py
@@ -268,13 +268,13 @@ class UdItabGenerator( ud_opcode.UdOpcod
             opr   = e[ 'operands' ]
             for i in range(len(opr)): 
                 if not (opr[i] in self.OperandDict.keys()):
-                    print "error: invalid operand declaration: %s\n" % opr[i]
+                    print("error: invalid operand declaration: %s\n" % opr[i])
                 opr_c[i] = "O_" + opr[i]
             opr = "%s %s %s" % (opr_c[0] + ",", opr_c[1] + ",", opr_c[2])
 
             for p in e['prefixes']:
                 if not ( p in self.PrefixDict.keys() ):
-                    print "error: invalid prefix specification: %s \n" % pfx
+                    print("error: invalid prefix specification: %s \n" % pfx)
                 pfx_c.append( self.PrefixDict[p] )
             if len(e['prefixes']) == 0:
                 pfx_c.append( "P_none" )
Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/3rdparty/masm/disassembler/udis86/ud_optable.py
===================================================================
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/src/3rdparty/masm/disassembler/udis86/ud_optable.py
+++ qtdeclarative-everywhere-src-5.12.0-alpha/src/3rdparty/masm/disassembler/udis86/ud_optable.py
@@ -50,7 +50,7 @@ class UdOptableXmlParser:
             elif def_node.localName == 'vendor':
                 ven = ( def_node.firstChild.data );
             else:
-                print "warning: invalid node - %s" % def_node.localName
+                print("warning: invalid node - %s" % def_node.localName)
                 continue
         return ( pfx, opc, opr, ven )
 
@@ -65,7 +65,7 @@ class UdOptableXmlParser:
             if not insnNode.localName:
                 continue
             if insnNode.localName != "instruction":
-                print "warning: invalid insn node - %s" % insnNode.localName
+                print("warning: invalid insn node - %s" % insnNode.localName)
                 continue
 
             mnemonic = insnNode.getElementsByTagName( 'mnemonic' )[ 0 ].firstChild.data
@@ -84,11 +84,11 @@ class UdOptableXmlParser:
 
 
 def printFn( pfx, mnm, opc, opr, ven ):
-    print 'def: ',
+    print('def: ', end='')
     if len( pfx ):
-        print ' '.join( pfx ),
-    print "%s %s %s %s" % \
-            ( mnm, ' '.join( opc ), ' '.join( opr ), ven )
+        print(' '.join( pfx ), end='')
+    print("%s %s %s %s" % \
+            ( mnm, ' '.join( opc ), ' '.join( opr ), ven ))
 
 
 def parse( xml, callback ):
openSUSE Build Service is sponsored by