VirtualBox

Changeset 63939 in vbox


Ignore:
Timestamp:
Sep 22, 2016 7:58:05 AM (8 years ago)
Author:
vboxsync
Message:

Build/scripts (bugref:6627): Python build scripts updated to generate the same code when used with Python 2 and 3.

Location:
trunk/src/VBox
Files:
61 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/common/crOpenGL/DD_glc.py

    r62521 r63939  
    1 print """
     1from __future__ import print_function
     2print("""
    23/** @file
    34 * VBox OpenGL chromium functions header
     
    1516 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
    1617 */
    17 """
     18""")
    1819# Copyright (c) 2001, Stanford University
    1920# All rights reserved.
     
    2728apiutil.CopyrightC()
    2829
    29 print """
     30print("""
    3031/* DO NOT EDIT - THIS FILE GENERATED BY THE DD_gl.py SCRIPT */
    3132
     
    3637#include "dri_drv.h"
    3738#include "cr_gl.h"
    38 """
     39""")
    3940
    4041commoncall_special = [
     
    122123
    123124    if func_name in commoncall_special:
    124         print "%s vboxDD_gl%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params) )
     125        print("%s vboxDD_gl%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params) ))
    125126    else:
    126127        if apiutil.MakeDeclarationString(params)=="void":
    127             print "%s vboxDD_gl%s( GLcontext *ctx )" % (return_type, func_name )
     128            print("%s vboxDD_gl%s( GLcontext *ctx )" % (return_type, func_name ))
    128129        else:
    129             print "%s vboxDD_gl%s( GLcontext *ctx, %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params) )
    130     print "{"
     130            print("%s vboxDD_gl%s( GLcontext *ctx, %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params) ))
     131    print("{")
    131132
    132133    if return_type != "void":
    133         print "\treturn ",
     134        print("\treturn ", end=' ')
    134135
    135     print "\tcr_gl%s( %s );" % (func_name, apiutil.MakeCallString(params))
    136     print "}"
    137     print ""
     136    print("\tcr_gl%s( %s );" % (func_name, apiutil.MakeCallString(params)))
     137    print("}")
     138    print("")
    138139
  • trunk/src/VBox/Additions/common/crOpenGL/DD_glh.py

    r62521 r63939  
    1 print """
     1from __future__ import print_function
     2print("""
    23/** @file
    34 * VBox OpenGL chromium functions header
     
    1516 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
    1617 */
    17 """
     18""")
    1819# Copyright (c) 2001, Stanford University
    1920# All rights reserved.
     
    2728apiutil.CopyrightC()
    2829
    29 print """
     30print("""
    3031/* DO NOT EDIT - THIS FILE GENERATED BY THE DD_gl.py SCRIPT */
    3132#ifndef __DD_GL_H__
     
    3738#include "stub.h"
    3839
    39 """
     40""")
    4041
    4142commoncall_special = [
     
    124125
    125126    if func_name in commoncall_special:
    126         print "extern %s vboxDD_gl%s( %s );" % (return_type, func_name,
    127                                                 apiutil.MakeDeclarationString( params ))
     127        print("extern %s vboxDD_gl%s( %s );" % (return_type, func_name,
     128                                                apiutil.MakeDeclarationString( params )))
    128129    else:
    129130        if apiutil.MakeDeclarationString(params)=="void":
    130             print "extern %s vboxDD_gl%s( GLcontext *ctx );" % (return_type, func_name)
     131            print("extern %s vboxDD_gl%s( GLcontext *ctx );" % (return_type, func_name))
    131132        else:
    132             print "extern %s vboxDD_gl%s( GLcontext *ctx, %s );" % (return_type, func_name,
    133                                                                     apiutil.MakeDeclarationString( params ))
     133            print("extern %s vboxDD_gl%s( GLcontext *ctx, %s );" % (return_type, func_name,
     134                                                                    apiutil.MakeDeclarationString( params )))
    134135
    135 print "#endif /* __DD_GL_H__ */"
     136print("#endif /* __DD_GL_H__ */")
  • trunk/src/VBox/Additions/common/crOpenGL/Linux_i386_exports.py

    r30457 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1718    # The order is very important - it must match cr_opcodes.h
    1819    # and spu_dispatch_table.h
    19     print '%include "iprt/asmdefs.mac"'
    20     print ""
    21     print "%ifdef RT_ARCH_AMD64"
    22     print "extern glim"
    23     print "%else ; X86"
    24     print "extern glim"
    25     print "%endif"
    26     print ""
     20    print('%include "iprt/asmdefs.mac"')
     21    print("")
     22    print("%ifdef RT_ARCH_AMD64")
     23    print("extern glim")
     24    print("%else ; X86")
     25    print("extern glim")
     26    print("%endif")
     27    print("")
    2728
    2829    keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    3536            continue
    3637
    37         print "BEGINPROC_EXPORTED gl%s" % func_name
    38         print "%ifdef RT_ARCH_AMD64"
    39         print "\tmov \trax, qword glim+%d" % (8*index)
    40         print "\tjmp \t[rax]"
    41         print "%else ; X86"
    42         print "\tmov \teax, dword glim+%d" % (4*index)
    43         print "\tjmp \t[eax]"
    44         print "%endif"
    45         print "ENDPROC gl%s" % func_name
    46         print ""
     38        print("BEGINPROC_EXPORTED gl%s" % func_name)
     39        print("%ifdef RT_ARCH_AMD64")
     40        print("\tmov \trax, qword glim+%d" % (8*index))
     41        print("\tjmp \t[rax]")
     42        print("%else ; X86")
     43        print("\tmov \teax, dword glim+%d" % (4*index))
     44        print("\tjmp \t[eax]")
     45        print("%endif")
     46        print("ENDPROC gl%s" % func_name)
     47        print("")
    4748
    4849
    49     print ';'
    50     print '; Aliases'
    51     print ';'
     50    print(';')
     51    print('; Aliases')
     52    print(';')
    5253
    5354    # Now loop over all the functions and take care of any aliases
     
    6667            # this dict lookup should never fail (raise an exception)!
    6768            index = keys.index(alias)
    68             print "BEGINPROC_EXPORTED gl%s" % func_name
    69             print "%ifdef RT_ARCH_AMD64"
    70             print "\tmov \trax, qword glim+%d" % (8*index)
    71             print "\tjmp \t[rax]"
    72             print "%else ; X86"
    73             print "\tmov \teax, dword glim+%d" % (4*index)
    74             print "\tjmp \t[eax]"
    75             print "%endif"
    76             print "ENDPROC gl%s" % func_name
    77             print ""
     69            print("BEGINPROC_EXPORTED gl%s" % func_name)
     70            print("%ifdef RT_ARCH_AMD64")
     71            print("\tmov \trax, qword glim+%d" % (8*index))
     72            print("\tjmp \t[rax]")
     73            print("%else ; X86")
     74            print("\tmov \teax, dword glim+%d" % (4*index))
     75            print("\tjmp \t[eax]")
     76            print("%endif")
     77            print("ENDPROC gl%s" % func_name)
     78            print("")
    7879
    7980
    80     print ';'
    81     print '; No-op stubs'
    82     print ';'
     81    print(';')
     82    print('; No-op stubs')
     83    print(';')
    8384
    8485    # Now generate no-op stub functions
    8586    for func_name in allkeys:
    8687        if "stub" in apiutil.ChromiumProps(func_name):
    87             print "BEGINPROC_EXPORTED gl%s" % func_name
    88             print "\tleave"
    89             print "\tret"
    90             print "ENDPROC gl%s" % func_name
    91             print ""
     88            print("BEGINPROC_EXPORTED gl%s" % func_name)
     89            print("\tleave")
     90            print("\tret")
     91            print("ENDPROC gl%s" % func_name)
     92            print("")
    9293
    9394
  • trunk/src/VBox/Additions/common/crOpenGL/Linux_i386_exports_dri.py

    r30457 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1718    # The order is very important - it must match cr_opcodes.h
    1819    # and spu_dispatch_table.h
    19     print '%include "iprt/asmdefs.mac"'
    20     print ""
    21     print "%ifdef RT_ARCH_AMD64"
    22     print "extern glim"
    23     print "%else ; X86"
    24     print "extern glim"
    25     print "%endif"
    26     print ""
     20    print('%include "iprt/asmdefs.mac"')
     21    print("")
     22    print("%ifdef RT_ARCH_AMD64")
     23    print("extern glim")
     24    print("%else ; X86")
     25    print("extern glim")
     26    print("%endif")
     27    print("")
    2728
    2829    keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    3536            continue
    3637
    37         print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    38         print "%ifdef RT_ARCH_AMD64"
    39         print "\tmov \trax, qword glim+%d" % (8*index)
    40         print "\tjmp \t[rax]"
    41         print "%else ; X86"
    42         print "\tmov \teax, dword glim+%d" % (4*index)
    43         print "\tjmp \t[eax]"
    44         print "%endif"
    45         print "ENDPROC cr_gl%s" % func_name
    46         print ""
     38        print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     39        print("%ifdef RT_ARCH_AMD64")
     40        print("\tmov \trax, qword glim+%d" % (8*index))
     41        print("\tjmp \t[rax]")
     42        print("%else ; X86")
     43        print("\tmov \teax, dword glim+%d" % (4*index))
     44        print("\tjmp \t[eax]")
     45        print("%endif")
     46        print("ENDPROC cr_gl%s" % func_name)
     47        print("")
    4748
    4849
    49     print ';'
    50     print '; Aliases'
    51     print ';'
     50    print(';')
     51    print('; Aliases')
     52    print(';')
    5253
    5354    # Now loop over all the functions and take care of any aliases
     
    6667            # this dict lookup should never fail (raise an exception)!
    6768            index = keys.index(alias)
    68             print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    69             print "%ifdef RT_ARCH_AMD64"
    70             print "\tmov \trax, qword glim+%d" % (8*index)
    71             print "\tjmp \t[rax]"
    72             print "%else ; X86"
    73             print "\tmov \teax, dword glim+%d" % (4*index)
    74             print "\tjmp \t[eax]"
    75             print "%endif"
    76             print "ENDPROC cr_gl%s" % func_name
    77             print ""
     69            print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     70            print("%ifdef RT_ARCH_AMD64")
     71            print("\tmov \trax, qword glim+%d" % (8*index))
     72            print("\tjmp \t[rax]")
     73            print("%else ; X86")
     74            print("\tmov \teax, dword glim+%d" % (4*index))
     75            print("\tjmp \t[eax]")
     76            print("%endif")
     77            print("ENDPROC cr_gl%s" % func_name)
     78            print("")
    7879
    7980
    80     print ';'
    81     print '; No-op stubs'
    82     print ';'
     81    print(';')
     82    print('; No-op stubs')
     83    print(';')
    8384
    8485    # Now generate no-op stub functions
    8586    for func_name in allkeys:
    8687        if "stub" in apiutil.ChromiumProps(func_name):
    87             print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    88             print "\tleave"
    89             print "\tret"
    90             print "ENDPROC cr_gl%s" % func_name
    91             print ""
     88            print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     89            print("\tleave")
     90            print("\tret")
     91            print("ENDPROC cr_gl%s" % func_name)
     92            print("")
    9293
    9394
  • trunk/src/VBox/Additions/common/crOpenGL/Linux_i386_glxapi_exports.py

    r62520 r63939  
    1111"""
    1212
     13from __future__ import print_function
    1314import sys
    1415
     
    8081];
    8182
    82 print '%include "iprt/asmdefs.mac"'
    83 print ""
    84 print "%ifdef RT_ARCH_AMD64"
    85 print "extern glxim"
    86 print "%else ; X86"
    87 print "extern glxim"
    88 print "%endif"
    89 print ""
     83print('%include "iprt/asmdefs.mac"')
     84print("")
     85print("%ifdef RT_ARCH_AMD64")
     86print("extern glxim")
     87print("%else ; X86")
     88print("extern glxim")
     89print("%endif")
     90print("")
    9091
    9192for index in range(len(glx_functions)):
    9293    func_name = glx_functions[index]
    9394
    94     print "BEGINPROC_EXPORTED vbox_glX%s" % func_name
    95     print "%ifdef RT_ARCH_AMD64"
    96     print "\tmov \trax, qword glxim+%d" % (8*index)
    97     print "\tjmp \t[rax]"
    98     print "%else ; X86"
    99     print "\tmov \teax, dword glxim+%d" % (4*index)
    100     print "\tjmp \t[eax]"
    101     print "%endif"
    102     print "ENDPROC vbox_glX%s" % func_name
    103     print ""
     95    print("BEGINPROC_EXPORTED vbox_glX%s" % func_name)
     96    print("%ifdef RT_ARCH_AMD64")
     97    print("\tmov \trax, qword glxim+%d" % (8*index))
     98    print("\tjmp \t[rax]")
     99    print("%else ; X86")
     100    print("\tmov \teax, dword glxim+%d" % (4*index))
     101    print("\tjmp \t[eax]")
     102    print("%endif")
     103    print("ENDPROC vbox_glX%s" % func_name)
     104    print("")
    104105
  • trunk/src/VBox/Additions/common/crOpenGL/NULLfuncs.py

    r16381 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1314apiutil.CopyrightC()
    1415
    15 print """
     16print("""
    1617/* DO NOT EDIT - THIS FILE GENERATED BY THE NULLfuncs.py SCRIPT */
    1718
    1819#include "cr_error.h"
    1920#include "stub.h"
    20 """
     21""")
    2122
    2223for func_name in keys:
     
    2425        params = apiutil.Parameters(func_name)
    2526
    26         print "static %s SPULOAD_APIENTRY NULL_%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    27         print "{"
    28         print "\t/* do nothing */"
    29         print "\tcrWarning(\"YOU ARE CALLING A NULLED FUNCTION (%s)\");" % func_name
     27        print("static %s SPULOAD_APIENTRY NULL_%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     28        print("{")
     29        print("\t/* do nothing */")
     30        print("\tcrWarning(\"YOU ARE CALLING A NULLED FUNCTION (%s)\");" % func_name)
    3031        for (name, type, vecSize) in params:
    31                 print "\t(void) %s;" % name
     32                print("\t(void) %s;" % name)
    3233        if return_type != "void":
    33                 print "\treturn 0;"
    34         print "}"
    35         print ""
     34                print("\treturn 0;")
     35        print("}")
     36        print("")
    3637
    3738
    38 print "DECLEXPORT(SPUDispatchTable) stubNULLDispatch = {"
     39print("DECLEXPORT(SPUDispatchTable) stubNULLDispatch = {")
    3940for func_name in keys:
    40         print "\tNULL_%s," % (func_name)
    41 print "\tNULL,  /* copyList */"
    42 print "\tNULL,  /* copy_of */"
    43 print "\t0,     /* mark */"
    44 print "\tNULL   /* server */"
    45 print "};"
     41        print("\tNULL_%s," % (func_name))
     42print("\tNULL,  /* copyList */")
     43print("\tNULL,  /* copy_of */")
     44print("\t0,     /* mark */")
     45print("\tNULL   /* server */")
     46print("};")
    4647
    47 print ""
    48 print "/* Declare and initialize the glim dispatch table here so that we */"
    49 print "/* can initialize all entries to no-op routines. */"
    50 print "SPUDispatchTable glim = {"
     48print("")
     49print("/* Declare and initialize the glim dispatch table here so that we */")
     50print("/* can initialize all entries to no-op routines. */")
     51print("SPUDispatchTable glim = {")
    5152for func_name in keys:
    52         print "\tNULL_%s," % (func_name)
    53 print "\tNULL,  /* copyList */"
    54 print "\tNULL,  /* copy_of */"
    55 print "\t0,     /* mark */"
    56 print "\tNULL   /* server */"
    57 print "};"
     53        print("\tNULL_%s," % (func_name))
     54print("\tNULL,  /* copyList */")
     55print("\tNULL,  /* copy_of */")
     56print("\t0,     /* mark */")
     57print("\tNULL   /* server */")
     58print("};")
  • trunk/src/VBox/Additions/common/crOpenGL/SunOS_i386_exports.py

    r62521 r63939  
    1111"""
    1212
     13from __future__ import print_function
    1314import sys
    1415
     
    2324    # The order is very important - it must match cr_opcodes.h
    2425    # and spu_dispatch_table.h
    25     print '%include "iprt/asmdefs.mac"'
    26     print ""
    27     print "%ifdef RT_ARCH_AMD64"
    28     print "extern glim"
    29     print "%else ; X86"
    30     print "extern glim"
    31     print "%endif"
    32     print ""
     26    print('%include "iprt/asmdefs.mac"')
     27    print("")
     28    print("%ifdef RT_ARCH_AMD64")
     29    print("extern glim")
     30    print("%else ; X86")
     31    print("extern glim")
     32    print("%endif")
     33    print("")
    3334
    3435    keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    4142            continue
    4243
    43         print "BEGINPROC_EXPORTED gl%s" % func_name
    44         print "%ifdef RT_ARCH_AMD64"
    45         print "\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index)
    46         print "%else ; X86"
    47         print "\tjmp \t[glim+%d wrt ..gotpc]" % (4*index)
    48         print "%endif"
    49         print "ENDPROC gl%s" % func_name
    50         print ""
     44        print("BEGINPROC_EXPORTED gl%s" % func_name)
     45        print("%ifdef RT_ARCH_AMD64")
     46        print("\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index))
     47        print("%else ; X86")
     48        print("\tjmp \t[glim+%d wrt ..gotpc]" % (4*index))
     49        print("%endif")
     50        print("ENDPROC gl%s" % func_name)
     51        print("")
    5152
    5253
    53     print ';'
    54     print '; Aliases'
    55     print ';'
     54    print(';')
     55    print('; Aliases')
     56    print(';')
    5657
    5758    # Now loop over all the functions and take care of any aliases
     
    7071            # this dict lookup should never fail (raise an exception)!
    7172            index = keys.index(alias)
    72             print "BEGINPROC_EXPORTED gl%s" % func_name
    73             print "%ifdef RT_ARCH_AMD64"
    74             print "\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index)
    75             print "%else ; X86"
    76             print "\tjmp \t[glim+%d wrt ..gotpc]" % (4*index)
    77             print "%endif"
    78             print "ENDPROC gl%s" % func_name
    79             print ""
     73            print("BEGINPROC_EXPORTED gl%s" % func_name)
     74            print("%ifdef RT_ARCH_AMD64")
     75            print("\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index))
     76            print("%else ; X86")
     77            print("\tjmp \t[glim+%d wrt ..gotpc]" % (4*index))
     78            print("%endif")
     79            print("ENDPROC gl%s" % func_name)
     80            print("")
    8081
    8182
    82     print ';'
    83     print '; No-op stubs'
    84     print ';'
     83    print(';')
     84    print('; No-op stubs')
     85    print(';')
    8586
    8687    # Now generate no-op stub functions
    8788    for func_name in allkeys:
    8889        if "stub" in apiutil.ChromiumProps(func_name):
    89             print "BEGINPROC_EXPORTED gl%s" % func_name
    90             print "\tleave"
    91             print "\tret"
    92             print "ENDPROC gl%s" % func_name
    93             print ""
     90            print("BEGINPROC_EXPORTED gl%s" % func_name)
     91            print("\tleave")
     92            print("\tret")
     93            print("ENDPROC gl%s" % func_name)
     94            print("")
    9495
    9596
  • trunk/src/VBox/Additions/common/crOpenGL/SunOS_i386_exports_dri.py

    r62521 r63939  
    1111"""
    1212
     13from __future__ import print_function
    1314import sys
    1415
     
    2324    # The order is very important - it must match cr_opcodes.h
    2425    # and spu_dispatch_table.h
    25     print '%include "iprt/asmdefs.mac"'
    26     print ""
    27     print "%ifdef RT_ARCH_AMD64"
    28     print "extern glim"
    29     print "%else ; X86"
    30     print "extern glim"
    31     print "%endif"
    32     print ""
     26    print('%include "iprt/asmdefs.mac"')
     27    print("")
     28    print("%ifdef RT_ARCH_AMD64")
     29    print("extern glim")
     30    print("%else ; X86")
     31    print("extern glim")
     32    print("%endif")
     33    print("")
    3334
    3435    keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    4142            continue
    4243
    43         print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    44         print "%ifdef RT_ARCH_AMD64"
    45         print "\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index)
    46         print "%else ; X86"
    47         print "\tjmp \t[glim+%d wrt ..gotpc]" % (4*index)
    48         print "%endif"
    49         print "ENDPROC cr_gl%s" % func_name
    50         print ""
     44        print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     45        print("%ifdef RT_ARCH_AMD64")
     46        print("\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index))
     47        print("%else ; X86")
     48        print("\tjmp \t[glim+%d wrt ..gotpc]" % (4*index))
     49        print("%endif")
     50        print("ENDPROC cr_gl%s" % func_name)
     51        print("")
    5152
    5253
    53     print ';'
    54     print '; Aliases'
    55     print ';'
     54    print(';')
     55    print('; Aliases')
     56    print(';')
    5657
    5758    # Now loop over all the functions and take care of any aliases
     
    7071            # this dict lookup should never fail (raise an exception)!
    7172            index = keys.index(alias)
    72             print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    73             print "%ifdef RT_ARCH_AMD64"
    74             print "\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index)
    75             print "%else ; X86"
    76             print "\tjmp \t[glim+%d wrt ..gotpc]" % (4*index)
    77             print "%endif"
    78             print "ENDPROC cr_gl%s" % func_name
    79             print ""
     73            print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     74            print("%ifdef RT_ARCH_AMD64")
     75            print("\tjmp \t[glim+%d wrt rip wrt ..gotpcrel]" % (8*index))
     76            print("%else ; X86")
     77            print("\tjmp \t[glim+%d wrt ..gotpc]" % (4*index))
     78            print("%endif")
     79            print("ENDPROC cr_gl%s" % func_name)
     80            print("")
    8081
    8182
    82     print ';'
    83     print '; No-op stubs'
    84     print ';'
     83    print(';')
     84    print('; No-op stubs')
     85    print(';')
    8586
    8687    # Now generate no-op stub functions
    8788    for func_name in allkeys:
    8889        if "stub" in apiutil.ChromiumProps(func_name):
    89             print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    90             print "\tleave"
    91             print "\tret"
    92             print "ENDPROC cr_gl%s" % func_name
    93             print ""
     90            print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     91            print("\tleave")
     92            print("\tret")
     93            print("ENDPROC cr_gl%s" % func_name)
     94            print("")
    9495
    9596
  • trunk/src/VBox/Additions/common/crOpenGL/SunOS_i386_glxapi_exports.py

    r62521 r63939  
    1111"""
    1212
     13from __future__ import print_function
    1314import sys
    1415
     
    8081];
    8182
    82 print '%include "iprt/asmdefs.mac"'
    83 print ""
    84 print "%ifdef RT_ARCH_AMD64"
    85 print "extern glxim"
    86 print "%else ; X86"
    87 print "extern glxim"
    88 print "%endif"
    89 print ""
     83print('%include "iprt/asmdefs.mac"')
     84print("")
     85print("%ifdef RT_ARCH_AMD64")
     86print("extern glxim")
     87print("%else ; X86")
     88print("extern glxim")
     89print("%endif")
     90print("")
    9091
    9192for index in range(len(glx_functions)):
    9293    func_name = glx_functions[index]
    9394
    94     print "BEGINPROC_EXPORTED vbox_glX%s" % func_name
    95     print "%ifdef RT_ARCH_AMD64"
    96     print "\tjmp \t[glxim+%d wrt rip wrt ..gotpcrel]" % (8*index)
    97     print "%else ; X86"
    98     print "\tjmp \t[glxim+%d wrt ..gotpc]" % (4*index)
    99     print "%endif"
    100     print "ENDPROC vbox_glX%s" % func_name
    101     print ""
     95    print("BEGINPROC_EXPORTED vbox_glX%s" % func_name)
     96    print("%ifdef RT_ARCH_AMD64")
     97    print("\tjmp \t[glxim+%d wrt rip wrt ..gotpcrel]" % (8*index))
     98    print("%else ; X86")
     99    print("\tjmp \t[glxim+%d wrt ..gotpc]" % (4*index))
     100    print("%endif")
     101    print("ENDPROC vbox_glX%s" % func_name)
     102    print("")
    102103
  • trunk/src/VBox/Additions/common/crOpenGL/cr_gl.py

    r62521 r63939  
    1 print """
     1from __future__ import print_function
     2print("""
    23/** @file
    34 * VBox OpenGL chromium functions header
     
    1516 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
    1617 */
    17 """
     18""")
    1819# Copyright (c) 2001, Stanford University
    1920# All rights reserved.
     
    2728apiutil.CopyrightC()
    2829
    29 print """
     30print("""
    3031/* DO NOT EDIT - THIS FILE GENERATED BY THE cr_gl.py SCRIPT */
    3132#ifndef __CR_GL_H__
     
    4142#endif
    4243
    43 """
     44""")
    4445
    4546
     
    5960        params = apiutil.Parameters(func_name)
    6061
    61         print "extern %s cr_gl%s( %s );" % (return_type, func_name,
    62                                                                   apiutil.MakeDeclarationString( params ))
     62        print("extern %s cr_gl%s( %s );" % (return_type, func_name,
     63                                                                  apiutil.MakeDeclarationString( params )))
    6364
    64 print "#endif /* __CR_GL_H__ */"
     65print("#endif /* __CR_GL_H__ */")
  • trunk/src/VBox/Additions/common/crOpenGL/defs.py

    r48999 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1314#print "LIBRARY VBoxOGL"
    1415#print "DESCRIPTION \"\"" - warning LNK4017: DESCRIPTION statement not supported for the target platform; ignored
    15 print "EXPORTS"
     16print("EXPORTS")
    1617
    1718# XXX can't these values be automatically computed by analyzing parameters?
     
    424425        continue
    425426    try:
    426         print "gl%s@%d = cr_gl%s" % (func_name,stack_sizes[func_name],func_name)
     427        print("gl%s@%d = cr_gl%s" % (func_name,stack_sizes[func_name],func_name))
    427428    except KeyError:
    428429        pass
     
    456457           "wglGetPixelFormatAttribfvEXT",
    457458           "wglGetExtensionsStringEXT"):
    458     print "%s = %s_prox" % (func_name,func_name)
     459    print("%s = %s_prox" % (func_name,func_name))
    459460
    460461"""
     
    475476"""
    476477
    477 print """DrvCopyContext
     478print("""DrvCopyContext
    478479DrvCreateContext
    479480DrvCreateLayerContext
     
    491492DrvSetContext@12 = DrvSetContext
    492493DrvValidateVersion@4 = DrvValidateVersion
    493 DrvSetPixelFormat@8 = DrvSetPixelFormat"""
    494 
    495 print """crCreateContext
     494DrvSetPixelFormat@8 = DrvSetPixelFormat""")
     495
     496print("""crCreateContext
    496497crMakeCurrent
    497498crSwapBuffers
     
    501502VBoxGetWindowId
    502503VBoxGetContextId
    503 VBoxFlushToHost"""
     504VBoxFlushToHost""")
    504505#print "DllMain"
  • trunk/src/VBox/Additions/common/crOpenGL/defs64.py

    r48999 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1213#print "LIBRARY VBoxOGL"
    1314#print "DESCRIPTION \"\"" - warning LNK4017: DESCRIPTION statement not supported for the target platform; ignored
    14 print "EXPORTS"
     15print("EXPORTS")
    1516
    1617# XXX can't these values be automatically computed by analyzing parameters?
     
    423424        continue
    424425    if func_name in exports_special:
    425         print "gl%s = cr_gl%s" % (func_name,func_name)
     426        print("gl%s = cr_gl%s" % (func_name,func_name))
    426427
    427428for func_name in ( "wglChoosePixelFormat",
     
    453454           "wglGetPixelFormatAttribfvEXT",
    454455           "wglGetExtensionsStringEXT"):
    455     print "%s = %s_prox" % (func_name,func_name)
    456 
    457 print """DrvCopyContext
     456    print("%s = %s_prox" % (func_name,func_name))
     457
     458print("""DrvCopyContext
    458459DrvCreateContext
    459460DrvCreateLayerContext
     
    471472DrvSetContext = DrvSetContext
    472473DrvValidateVersion = DrvValidateVersion
    473 DrvSetPixelFormat = DrvSetPixelFormat"""
    474 
    475 print """crCreateContext
     474DrvSetPixelFormat = DrvSetPixelFormat""")
     475
     476print("""crCreateContext
    476477crMakeCurrent
    477478crSwapBuffers
     
    481482VBoxGetWindowId
    482483VBoxGetContextId
    483 VBoxFlushToHost"""
     484VBoxFlushToHost""")
    484485#print "DllMain"
  • trunk/src/VBox/Additions/common/crOpenGL/entrypoints.py

    r63205 r63939  
    1111
    1212
     13from __future__ import print_function
    1314import sys
    1415
     
    2324    apiutil.CopyrightC()
    2425
    25     print '#define GL_GLEXT_PROTOTYPES'
    26     print '#include <stdio.h>'
    27     print '#include <stdlib.h>'
    28     print '#include <GL/gl.h>'
    29     print '#include "chromium.h"'
    30     print '#include "stub.h"'
    31     print '#include "dri_glx.h"'
    32     print ''
    33     print '#ifdef __GNUC__';
    34     print '# if (__GNUC__ << 16) + __GNUC_MINOR__ >= 0x40002';
    35     print '#  pragma GCC diagnostic ignored "-Wunused-parameter"';
    36     print '# endif';
    37     print '#endif';
     26    print('#define GL_GLEXT_PROTOTYPES')
     27    print('#include <stdio.h>')
     28    print('#include <stdlib.h>')
     29    print('#include <GL/gl.h>')
     30    print('#include "chromium.h"')
     31    print('#include "stub.h"')
     32    print('#include "dri_glx.h"')
     33    print('')
     34    print('#ifdef __GNUC__')
     35    print('# if (__GNUC__ << 16) + __GNUC_MINOR__ >= 0x40002')
     36    print('#  pragma GCC diagnostic ignored "-Wunused-parameter"')
     37    print('# endif')
     38    print('#endif')
    3839
    3940
     
    5354
    5455        if func_name in hacks:
    55             print "/* hacked entrypoint: %s */" % func_name
     56            print("/* hacked entrypoint: %s */" % func_name)
    5657            if func_name == "TexImage3D":
    5758                # Pretty common: internalformat is GLenum, not GLint
    58                 print "void glTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels )"
    59                 print "{"
    60                 print "\tglim.TexImage3D( target, level, (GLint) internalformat, width, height, depth, border, format, type, pixels );"
    61                 print "}"
     59                print("void glTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels )")
     60                print("{")
     61                print("\tglim.TexImage3D( target, level, (GLint) internalformat, width, height, depth, border, format, type, pixels );")
     62                print("}")
    6263            elif func_name == "TexImage2D":
    6364                # Pretty common: internalformat is GLenum, not GLint
    64                 print "void glTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels )"
    65                 print "{"
    66                 print "\tglim.TexImage2D( target, level, (GLint) internalformat, width, height, border, format, type, pixels );"
    67                 print "}"
     65                print("void glTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels )")
     66                print("{")
     67                print("\tglim.TexImage2D( target, level, (GLint) internalformat, width, height, border, format, type, pixels );")
     68                print("}")
    6869            elif func_name == "TexImage1D":
    6970                # Pretty common: internalformat is GLenum, not GLint
    70                 print "void glTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels )"
    71                 print "{"
    72                 print "\tglim.TexImage1D( target, level, (GLint) internalformat, width, border, format, type, pixels );"
    73                 print "}"
     71                print("void glTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels )")
     72                print("{")
     73                print("\tglim.TexImage1D( target, level, (GLint) internalformat, width, border, format, type, pixels );")
     74                print("}")
    7475            elif func_name == "EdgeFlagPointer":
    7576                # second arg is GLboolean instead of GLvoid
    76                 print "void glEdgeFlagPointer( GLsizei stride, const GLboolean *pointer )"
    77                 print "{"
    78                 print "\tglim.EdgeFlagPointer( stride, pointer );"
    79                 print "}"
     77                print("void glEdgeFlagPointer( GLsizei stride, const GLboolean *pointer )")
     78                print("{")
     79                print("\tglim.EdgeFlagPointer( stride, pointer );")
     80                print("}")
    8081            elif func_name == "ProgramParameters4fvNV":
    81                 print "void glProgramParameters4fvNV( GLenum target, GLuint index, GLuint num, const GLfloat *params )"
    82                 print "{"
    83                 print "\tglim.ProgramParameters4fvNV( target, index, num, params );"
    84                 print "}"
     82                print("void glProgramParameters4fvNV( GLenum target, GLuint index, GLuint num, const GLfloat *params )")
     83                print("{")
     84                print("\tglim.ProgramParameters4fvNV( target, index, num, params );")
     85                print("}")
    8586            elif func_name == "MultiDrawElementsEXT":
    86                 print "void glMultiDrawElementsEXT(GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)"
    87                 print "{"
    88                 print "\tglim.MultiDrawElementsEXT(mode, count,type, indices, primcount);"
    89                 print "}"
     87                print("void glMultiDrawElementsEXT(GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)")
     88                print("{")
     89                print("\tglim.MultiDrawElementsEXT(mode, count,type, indices, primcount);")
     90                print("}")
    9091            elif func_name == "ProgramParameters4dvNV":
    91                 print "void glProgramParameters4dvNV( GLenum target, GLuint index, GLuint num, const GLdouble *params )"
    92                 print "{"
    93                 print "\tglim.ProgramParameters4dvNV( target, index, num, params );"
    94                 print "}"
     92                print("void glProgramParameters4dvNV( GLenum target, GLuint index, GLuint num, const GLdouble *params )")
     93                print("{")
     94                print("\tglim.ProgramParameters4dvNV( target, index, num, params );")
     95                print("}")
    9596        else:
    9697            # the usual path
    97             print "%s VBOXGLTAG(gl%s)( %s );" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    98             print ""
    99             print "%s VBOXGLTAG(gl%s)( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    100             print "{"
    101             print "\t",
     98            print("%s VBOXGLTAG(gl%s)( %s );" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     99            print("")
     100            print("%s VBOXGLTAG(gl%s)( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     101            print("{")
     102            print("\t", end="")
    102103            if return_type != "void":
    103                 print "return ",
    104             print "glim.%s( %s );" % (func_name, apiutil.MakeCallString(params))
    105             print "}"
    106             print ""
     104                print("return ", end=" ")
     105            print("glim.%s( %s );" % (func_name, apiutil.MakeCallString(params)))
     106            print("}")
     107            print("")
    107108
    108     print '/*'
    109     print '* Aliases'
    110     print '*/'
     109    print('/*')
     110    print('* Aliases')
     111    print('*/')
    111112
    112113    # Now loop over all the functions and take care of any aliases
     
    124125        if alias:
    125126            if func_name in hacks:
    126                 print "/* hacked entrypoint: %s */" % func_name
     127                print("/* hacked entrypoint: %s */" % func_name)
    127128                if func_name == "MultiDrawArrays":
    128                     print "void glMultiDrawArrays( GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount )"
    129                     print "{"
    130                     print "\tglim.MultiDrawArraysEXT( mode, (GLint*)first, (GLsizei*)count, primcount );"
    131                     print "}"
     129                    print("void glMultiDrawArrays( GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount )")
     130                    print("{")
     131                    print("\tglim.MultiDrawArraysEXT( mode, (GLint*)first, (GLsizei*)count, primcount );")
     132                    print("}")
    132133                elif func_name == "BufferData":
    133                     print "void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)"
    134                     print "{"
    135                     print "\tglim.BufferDataARB(target, size, data, usage);"
    136                     print "}"
     134                    print("void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)")
     135                    print("{")
     136                    print("\tglim.BufferDataARB(target, size, data, usage);")
     137                    print("}")
    137138                elif func_name == "BufferSubData":
    138                     print "void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)"
    139                     print "{"
    140                     print "\tglim.BufferSubDataARB(target, offset, size, data);"
    141                     print "}"
     139                    print("void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)")
     140                    print("{")
     141                    print("\tglim.BufferSubDataARB(target, offset, size, data);")
     142                    print("}")
    142143                elif func_name == "GetBufferSubData":
    143                     print "void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)"
    144                     print "{"
    145                     print "\tglim.GetBufferSubDataARB(target, offset, size, data);"
    146                     print "}"
     144                    print("void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)")
     145                    print("{")
     146                    print("\tglim.GetBufferSubDataARB(target, offset, size, data);")
     147                    print("}")
    147148            else:
    148149                return_type = apiutil.ReturnType(func_name)
    149150                params = apiutil.Parameters(func_name)
    150                 print "%s VBOXGLTAG(gl%s)( %s );" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    151                 print ""
    152                 print "%s VBOXGLTAG(gl%s)( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    153                 print "{"
    154                 print "\t",
     151                print("%s VBOXGLTAG(gl%s)( %s );" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     152                print("")
     153                print("%s VBOXGLTAG(gl%s)( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     154                print("{")
     155                print("\t", end="")
    155156                if return_type != "void":
    156                     print "return ",
    157                 print "glim.%s( %s );" % (alias, apiutil.MakeCallString(params))
    158                 print "}"
    159                 print ""
     157                    print("return ", end=" ")
     158                print("glim.%s( %s );" % (alias, apiutil.MakeCallString(params)))
     159                print("}")
     160                print("")
    160161
    161     print '/*'
    162     print '* No-op stubs'
    163     print '*/'
     162    print('/*')
     163    print('* No-op stubs')
     164    print('*/')
    164165
    165166    # Now generate no-op stub functions
     
    169170            params = apiutil.Parameters(func_name)
    170171
    171             print "%s VBOXGLTAG(gl%s)( %s );" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    172             print ""
    173             print "%s VBOXGLTAG(gl%s)( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    174             print "{"
     172            print("%s VBOXGLTAG(gl%s)( %s );" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     173            print("")
     174            print("%s VBOXGLTAG(gl%s)( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     175            print("{")
    175176            if return_type != "void":
    176                 print "return (%s) 0" % return_type
    177             print "}"
    178             print ""
     177                print("return (%s) 0" % return_type)
     178            print("}")
     179            print("")
    179180
    180181
  • trunk/src/VBox/Additions/common/crOpenGL/feedback/feedback.py

    r17269 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - generated by feedback.py */
    1516#include <stdio.h>
     
    2021#include "cr_glstate.h"
    2122
    22 """
     23""")
    2324
    2425keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    2829        params = apiutil.Parameters(func_name)
    2930        if apiutil.FindSpecial( "feedback", func_name ):
    30                 print 'static %s FEEDBACKSPU_APIENTRY feedbackspu_%s( %s )' % ( return_type, func_name, apiutil.MakeDeclarationString(params) )
    31                 print '{'
    32                 print '\tfeedback_spu.super.%s( %s );' % ( func_name, apiutil.MakeCallString(params) )
    33                 print '}'
    34 
    35 
    36 
    37 print """
     31                print('static %s FEEDBACKSPU_APIENTRY feedbackspu_%s( %s )' % ( return_type, func_name, apiutil.MakeDeclarationString(params) ))
     32                print('{')
     33                print('\tfeedback_spu.super.%s( %s );' % ( func_name, apiutil.MakeCallString(params) ))
     34                print('}')
     35
     36
     37
     38print("""
    3839#define CHANGE( name, func ) crSPUChangeInterface( (void *)&(feedback_spu.self), (void *)feedback_spu.self.name, (void *)((SPUGenericFunction) func) )
    3940#define CHANGESWAP( name, swapfunc, regfunc ) crSPUChangeInterface( (void *)&(feedback_spu.self), (void *)feedback_spu.self.name, (void *)((SPUGenericFunction) (feedback_spu.swap ? swapfunc: regfunc )) )
     
    4142static void __loadFeedbackAPI( void )
    4243{
    43 """
     44""")
    4445for func_name in keys:
    4546        return_type = apiutil.ReturnType(func_name)
    4647        params = apiutil.Parameters(func_name)
    4748        if apiutil.FindSpecial( "feedback", func_name ):
    48                 print '\tCHANGE( %s, crStateFeedback%s );' % (func_name, func_name )
    49 print """
     49                print('\tCHANGE( %s, crStateFeedback%s );' % (func_name, func_name ))
     50print("""
    5051}
    5152
    5253static void __loadSelectAPI( void )
    5354{
    54 """
     55""")
    5556for func_name in keys:
    5657        if apiutil.FindSpecial( "select", func_name ):
    57                 print '\tCHANGE( %s, crStateSelect%s );' % (func_name, func_name )
     58                print('\tCHANGE( %s, crStateSelect%s );' % (func_name, func_name ))
    5859        elif apiutil.FindSpecial( "feedback", func_name ):
    59                 print '\tCHANGE( %s, feedbackspu_%s );' % (func_name, func_name )
    60 print """
     60                print('\tCHANGE( %s, feedbackspu_%s );' % (func_name, func_name ))
     61print("""
    6162}
    6263
    6364static void __loadRenderAPI( void )
    6465{
    65 """
     66""")
    6667
    6768for func_name in keys:
    6869        return_type = apiutil.ReturnType(func_name)
    6970        if apiutil.FindSpecial( "feedback", func_name ) or apiutil.FindSpecial( "select", func_name ):
    70                 print '\tCHANGE( %s, feedbackspu_%s );' % (func_name, func_name )
    71 print """
    72 }
    73 """
    74 
    75 print """
     71                print('\tCHANGE( %s, feedbackspu_%s );' % (func_name, func_name ))
     72print("""
     73}
     74""")
     75
     76print("""
    7677static GLint FEEDBACKSPU_APIENTRY feedbackspu_RenderMode ( GLenum mode )
    7778{
     
    211212
    212213SPUNamedFunctionTable _cr_feedback_table[] = {
    213 """
     214""")
    214215
    215216for func_name in keys:
    216217        if apiutil.FindSpecial( "feedback_state", func_name ):
    217                 print '\t{ "%s", (SPUGenericFunction) feedbackspu_%s }, ' % ( func_name, func_name )
    218 print """
     218                print('\t{ "%s", (SPUGenericFunction) feedbackspu_%s }, ' % ( func_name, func_name ))
     219print("""
    219220        { "GetBooleanv", (SPUGenericFunction) feedbackspu_GetBooleanv },
    220221        { "GetDoublev", (SPUGenericFunction) feedbackspu_GetDoublev },
     
    267268        { NULL, NULL }
    268269};
    269 """
     270""")
  • trunk/src/VBox/Additions/common/crOpenGL/feedback/feedback_funcs.py

    r17269 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY feedback_funcs.py SCRIPT */
    1516#ifndef CR_STATE_FEEDBACK_FUNCS_H
     
    2425#endif
    2526
    26 #define STATE_UNUSED(x) ((void)x)"""
     27#define STATE_UNUSED(x) ((void)x)""")
    2728
    2829keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    3132        return_type = apiutil.ReturnType(func_name)
    3233        params = apiutil.Parameters(func_name)
    33         print '%s STATE_APIENTRY crStateFeedback%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params))
     34        print('%s STATE_APIENTRY crStateFeedback%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
    3435
    3536for func_name in apiutil.AllSpecials( "select" ):
    3637        return_type = apiutil.ReturnType(func_name)
    3738        params = apiutil.Parameters(func_name)
    38         print '%s STATE_APIENTRY crStateSelect%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params))
    39 print '\n#endif /* CR_STATE_FEEDBACK_FUNCS_H */'
     39        print('%s STATE_APIENTRY crStateSelect%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     40print('\n#endif /* CR_STATE_FEEDBACK_FUNCS_H */')
  • trunk/src/VBox/Additions/common/crOpenGL/feedback/feedback_state.py

    r42499 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415#include "cr_server.h"
    1516#include "feedbackspu.h"
    1617#include "feedbackspu_proto.h"
    17 """
     18""")
    1819custom = ["CreateContext", "VBoxCreateContext", "MakeCurrent", "DestroyContext"]
    1920
     
    2627        return_type = apiutil.ReturnType(func_name)
    2728        params = apiutil.Parameters(func_name)
    28         print '%s FEEDBACKSPU_APIENTRY feedbackspu_%s( %s )' % (return_type, func_name, apiutil.MakeDeclarationString(params))
    29         print '{'
    30         print '\tcrState%s( %s );' % (func_name, apiutil.MakeCallString(params))
    31         print ''
    32         print '\tfeedback_spu.super.%s( %s );' % (func_name, apiutil.MakeCallString(params))
    33         print '}'
     29        print('%s FEEDBACKSPU_APIENTRY feedbackspu_%s( %s )' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     30        print('{')
     31        print('\tcrState%s( %s );' % (func_name, apiutil.MakeCallString(params)))
     32        print('')
     33        print('\tfeedback_spu.super.%s( %s );' % (func_name, apiutil.MakeCallString(params)))
     34        print('}')
  • trunk/src/VBox/Additions/common/crOpenGL/feedback/feedbackspu_proto.py

    r17269 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - generated by feedback.py */
    1516
     
    1920#include "feedbackspu.h"
    2021
    21 """
     22""")
    2223
    2324keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    2728                return_type = apiutil.ReturnType(func_name)
    2829                params = apiutil.Parameters(func_name)
    29                 print 'extern %s FEEDBACKSPU_APIENTRY feedbackspu_%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params))
     30                print('extern %s FEEDBACKSPU_APIENTRY feedbackspu_%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
    3031
    3132
    32 print """
     33print("""
    3334#endif
    34 """
     35""")
  • trunk/src/VBox/Additions/common/crOpenGL/getprocaddress.py

    r51200 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314/* DO NOT EDIT - THIS FILE GENERATED BY THE getprocaddress.py SCRIPT */
    1415
     
    3031
    3132static struct name_address functions[] = {
    32 """
     33""")
    3334
    3435
     
    4849        address = "VBOXGLTAG(gl" + func_name + ")"
    4950        if wrap:
    50                 print '#ifdef CR_%s' % wrap
    51         print '\t{ "%s", (CR_PROC) %s },' % (name, address)
     51                print('#ifdef CR_%s' % wrap)
     52        print('\t{ "%s", (CR_PROC) %s },' % (name, address))
    5253        if wrap:
    53                 print '#endif'
     54                print('#endif')
    5455
    5556
    56 print "\t/* Chromium binding/glue functions */"
     57print("\t/* Chromium binding/glue functions */")
    5758
    5859for func_name in keys:
     
    6364                continue
    6465        if apiutil.Category(func_name) == "Chromium":
    65                 print '\t{ "cr%s", (CR_PROC) cr%s },' % (func_name, func_name)
     66                print('\t{ "cr%s", (CR_PROC) cr%s },' % (func_name, func_name))
    6667
    6768
    68 print """
     69print("""
    6970        { NULL, NULL }
    7071};
     
    102103}
    103104
    104 """
     105""")
    105106
    106107
  • trunk/src/VBox/Additions/common/crOpenGL/pack/pack.py

    r20083 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1415apiutil.CopyrightC()
    1516
    16 print """
     17print("""
    1718/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY pack.py SCRIPT */
    1819#include <stdio.h>
     
    2223#include "cr_packfunctions.h"
    2324#include "packspu_proto.h"
    24 """
     25""")
    2526
    2627num_funcs = len(keys) - len(apiutil.AllSpecials('packspu_unimplemented'))
    27 print 'SPUNamedFunctionTable _cr_pack_table[%d];' % (num_funcs+1)
     28print('SPUNamedFunctionTable _cr_pack_table[%d];' % (num_funcs+1))
    2829
    29 print """
     30print("""
    3031static void __fillin( int offset, char *name, SPUGenericFunction func )
    3132{
    3233    _cr_pack_table[offset].name = crStrdup( name );
    3334    _cr_pack_table[offset].fn = func;
    34 }"""
     35}""")
    3536
    3637pack_specials = []
     
    4344      pack_specials.append( func_name )
    4445
    45 print '\nvoid packspuCreateFunctions( void )'
    46 print '{'
     46print('\nvoid packspuCreateFunctions( void )')
     47print('{')
    4748for index in range(len(keys)):
    4849    func_name = keys[index]
     
    5051        continue
    5152    if func_name in pack_specials:
    52         print '\t__fillin( %3d, "%s", (SPUGenericFunction) packspu_%s );' % (index, func_name, func_name )
     53        print('\t__fillin( %3d, "%s", (SPUGenericFunction) packspu_%s );' % (index, func_name, func_name ))
    5354    else:
    54         print '\t__fillin( %3d, "%s", (SPUGenericFunction) (pack_spu.swap ? crPack%sSWAP : crPack%s) );' % (index, func_name, func_name, func_name )
    55 print '\t__fillin( %3d, NULL, NULL );' % num_funcs
    56 print '}'
     55        print('\t__fillin( %3d, "%s", (SPUGenericFunction) (pack_spu.swap ? crPack%sSWAP : crPack%s) );' % (index, func_name, func_name, func_name ))
     56print('\t__fillin( %3d, NULL, NULL );' % num_funcs)
     57print('}')
  • trunk/src/VBox/Additions/common/crOpenGL/pack/packspu_beginend.py

    r63206 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """/* DO NOT EDIT - AUTOMATICALLY GENERATED BY packspu_beginend.py */
     14print("""/* DO NOT EDIT - AUTOMATICALLY GENERATED BY packspu_beginend.py */
    1415#include "packspu.h"
    1516#include "assert.h"
     
    157158    DoVertex();
    158159}
    159 """
     160""")
    160161
    161162keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    163164for func_name in apiutil.AllSpecials( "packspu_vertex" ):
    164165    params = apiutil.Parameters(func_name)
    165     print 'void PACKSPU_APIENTRY packspu_%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params) )
    166     print '{'
    167     print '\tif (pack_spu.swap)'
    168     print '\t{'
    169     print '\t\tcrPack%sSWAP( %s );' % ( func_name, apiutil.MakeCallString( params ) )
    170     print '\t}'
    171     print '\telse'
    172     print '\t{'
    173     print '\t\tcrPack%s( %s );' % ( func_name, apiutil.MakeCallString( params ) )
    174     print '\t}'
    175     print '\tRunState();'
    176     print '}'
     166    print('void PACKSPU_APIENTRY packspu_%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params) ))
     167    print('{')
     168    print('\tif (pack_spu.swap)')
     169    print('\t{')
     170    print('\t\tcrPack%sSWAP( %s );' % ( func_name, apiutil.MakeCallString( params ) ))
     171    print('\t}')
     172    print('\telse')
     173    print('\t{')
     174    print('\t\tcrPack%s( %s );' % ( func_name, apiutil.MakeCallString( params ) ))
     175    print('\t}')
     176    print('\tRunState();')
     177    print('}')
  • trunk/src/VBox/Additions/common/crOpenGL/pack/packspu_flush.py

    r20083 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - this file generated by packspu_flush.py script */
    1516
     
    2122#include "packspu.h"
    2223#include "packspu_proto.h"
    23 """
     24""")
    2425
    2526keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    2728for func_name in apiutil.AllSpecials( "packspu_flush" ):
    2829    params = apiutil.Parameters(func_name)
    29     print 'void PACKSPU_APIENTRY packspu_%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params))
    30     print '{'
    31     print '\tGET_THREAD(thread);'
    32     print '\tif (pack_spu.swap)'
    33     print '\t{'
    34     print '\t\tcrPack%sSWAP( %s );' % ( func_name, apiutil.MakeCallString( params ) )
    35     print '\t}'
    36     print '\telse'
    37     print '\t{'
    38     print '\t\tcrPack%s( %s );' % ( func_name, apiutil.MakeCallString( params ) )
    39     print '\t}'
    40     print '\tpackspuFlush( (void *) thread );'
    41     print '}\n'
     30    print('void PACKSPU_APIENTRY packspu_%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params)))
     31    print('{')
     32    print('\tGET_THREAD(thread);')
     33    print('\tif (pack_spu.swap)')
     34    print('\t{')
     35    print('\t\tcrPack%sSWAP( %s );' % ( func_name, apiutil.MakeCallString( params ) ))
     36    print('\t}')
     37    print('\telse')
     38    print('\t{')
     39    print('\t\tcrPack%s( %s );' % ( func_name, apiutil.MakeCallString( params ) ))
     40    print('\t}')
     41    print('\tpackspuFlush( (void *) thread );')
     42    print('}\n')
  • trunk/src/VBox/Additions/common/crOpenGL/pack/packspu_get.py

    r63206 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY packspu_get.py SCRIPT */
    1516#include "packspu.h"
     
    1819#include "cr_mem.h"
    1920#include "packspu_proto.h"
    20 """
    21 
    22 print """
     21""")
     22
     23print("""
    2324static GLboolean crPackIsPixelStoreParm(GLenum pname)
    2425{
     
    4647    return GL_FALSE;
    4748}
    48 """
     49""")
    4950
    5051from get_sizes import *
     
    8586
    8687    if "get" in apiutil.Properties(func_name):
    87         print '%s PACKSPU_APIENTRY packspu_%s( %s )' % ( return_type, func_name, apiutil.MakeDeclarationString( params ) )
    88         print '{'
    89         print '\tGET_THREAD(thread);'
    90         print '\tint writeback = 1;'
     88        print('%s PACKSPU_APIENTRY packspu_%s( %s )' % ( return_type, func_name, apiutil.MakeDeclarationString( params ) ))
     89        print('{')
     90        print('\tGET_THREAD(thread);')
     91        print('\tint writeback = 1;')
    9192        if return_type != 'void':
    92             print '\t%s return_val = (%s) 0;' % (return_type, return_type)
     93            print('\t%s return_val = (%s) 0;' % (return_type, return_type))
    9394            params.append( ("&return_val", "foo", 0) )
    94         if (func_name in easy_swaps.keys() and easy_swaps[func_name] != '0') or func_name in simple_funcs or func_name in hard_funcs.keys():
    95             print '\tunsigned int i;'
    96         print '\tif (!CRPACKSPU_IS_WDDM_CRHGSMI() && !(pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network))'
    97         print '\t{'
    98         print '\t\tcrError( "packspu_%s doesn\'t work when there\'s no actual network involved!\\nTry using the simplequery SPU in your chain!" );' % func_name
    99         print '\t}'
     95        if (func_name in easy_swaps and easy_swaps[func_name] != '0') or func_name in simple_funcs or func_name in hard_funcs:
     96            print('\tunsigned int i;')
     97        print('\tif (!CRPACKSPU_IS_WDDM_CRHGSMI() && !(pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network))')
     98        print('\t{')
     99        print('\t\tcrError( "packspu_%s doesn\'t work when there\'s no actual network involved!\\nTry using the simplequery SPU in your chain!" );' % func_name)
     100        print('\t}')
    100101        if func_name in simple_funcs:
    101             print """
     102            print("""
    102103    if (crPackIsPixelStoreParm(pname)
    103104        || pname == GL_DRAW_BUFFER
     
    162163           
    163164        }
    164             """ % (params[-1][1], params[-1][1], func_name, func_name, apiutil.MakeCallString(params), func_name, func_name)
     165            """ % (params[-1][1], params[-1][1], func_name, func_name, apiutil.MakeCallString(params), func_name, func_name))
    165166           
    166167        if func_name in vertattr_get_funcs:
    167             print """
     168            print("""
    168169    if (pname != GL_CURRENT_VERTEX_ATTRIB_ARB)
    169170    {
     
    189190        return;
    190191    }
    191             """ % (params[-1][1], params[-1][1], func_name, func_name, apiutil.MakeCallString(params), func_name, func_name)
     192            """ % (params[-1][1], params[-1][1], func_name, func_name, apiutil.MakeCallString(params), func_name, func_name))
    192193
    193194        params.append( ("&writeback", "foo", 0) )
    194         print '\tif (pack_spu.swap)'
    195         print '\t{'
    196         print '\t\tcrPack%sSWAP( %s );' % (func_name, apiutil.MakeCallString( params ) )
    197         print '\t}'
    198         print '\telse'
    199         print '\t{'
    200         print '\t\tcrPack%s( %s );' % (func_name, apiutil.MakeCallString( params ) )
    201         print '\t}'
    202         print '\tpackspuFlush( (void *) thread );'
    203         print '\tCRPACKSPU_WRITEBACK_WAIT(thread, writeback);'
     195        print('\tif (pack_spu.swap)')
     196        print('\t{')
     197        print('\t\tcrPack%sSWAP( %s );' % (func_name, apiutil.MakeCallString( params ) ))
     198        print('\t}')
     199        print('\telse')
     200        print('\t{')
     201        print('\t\tcrPack%s( %s );' % (func_name, apiutil.MakeCallString( params ) ))
     202        print('\t}')
     203        print('\tpackspuFlush( (void *) thread );')
     204        print('\tCRPACKSPU_WRITEBACK_WAIT(thread, writeback);')
    204205
    205206
     
    207208        lastParamName = params[-2][0]
    208209        if return_type != 'void':
    209             print '\tif (pack_spu.swap)'
    210             print '\t{'
    211             print '\t\treturn_val = (%s) SWAP32(return_val);' % return_type
    212             print '\t}'
    213             print '\treturn return_val;'
    214         if func_name in easy_swaps.keys() and easy_swaps[func_name] != '0':
     210            print('\tif (pack_spu.swap)')
     211            print('\t{')
     212            print('\t\treturn_val = (%s) SWAP32(return_val);' % return_type)
     213            print('\t}')
     214            print('\treturn return_val;')
     215        if func_name in easy_swaps and easy_swaps[func_name] != '0':
    215216            limit = easy_swaps[func_name]
    216             print '\tif (pack_spu.swap)'
    217             print '\t{'
    218             print '\t\tfor (i = 0 ; i < %s ; i++)' % limit
    219             print '\t\t{'
     217            print('\tif (pack_spu.swap)')
     218            print('\t{')
     219            print('\t\tfor (i = 0 ; i < %s ; i++)' % limit)
     220            print('\t\t{')
    220221            if params[-2][1].find( "double" ) > -1:
    221                 print '\t\t\t%s[i] = SWAPDOUBLE(%s[i]);' % (lastParamName, lastParamName)
     222                print('\t\t\t%s[i] = SWAPDOUBLE(%s[i]);' % (lastParamName, lastParamName))
    222223            else:
    223                 print '\t\t\t%s[i] = SWAP32(%s[i]);' % (lastParamName, lastParamName)
    224             print '\t\t}'
    225             print '\t}'
     224                print('\t\t\t%s[i] = SWAP32(%s[i]);' % (lastParamName, lastParamName))
     225            print('\t\t}')
     226            print('\t}')
    226227        for index in range(len(simple_funcs)):
    227228            if simple_funcs[index] == func_name:
    228                 print '\tif (pack_spu.swap)'
    229                 print '\t{'
    230                 print '\t\tfor (i = 0 ; i < __numValues( pname ) ; i++)'
    231                 print '\t\t{'
     229                print('\tif (pack_spu.swap)')
     230                print('\t{')
     231                print('\t\tfor (i = 0 ; i < __numValues( pname ) ; i++)')
     232                print('\t\t{')
    232233                if simple_swaps[index] == 'SWAPDOUBLE':
    233                     print '\t\t\t%s[i] = %s(%s[i]);' % (lastParamName, simple_swaps[index], lastParamName)
     234                    print('\t\t\t%s[i] = %s(%s[i]);' % (lastParamName, simple_swaps[index], lastParamName))
    234235                else:
    235                     print '\t\t\t((GLuint *) %s)[i] = %s(%s[i]);' % (lastParamName, simple_swaps[index], lastParamName)
    236                 print '\t\t}'
    237                 print '\t}'
    238         if func_name in hard_funcs.keys():
    239             print '\tif (pack_spu.swap)'
    240             print '\t{'
    241             print '\t\tfor (i = 0 ; i < crStateHlpComponentsCount(pname) ; i++)'
    242             print '\t\t{'
     236                    print('\t\t\t((GLuint *) %s)[i] = %s(%s[i]);' % (lastParamName, simple_swaps[index], lastParamName))
     237                print('\t\t}')
     238                print('\t}')
     239        if func_name in hard_funcs:
     240            print('\tif (pack_spu.swap)')
     241            print('\t{')
     242            print('\t\tfor (i = 0 ; i < crStateHlpComponentsCount(pname) ; i++)')
     243            print('\t\t{')
    243244            if hard_funcs[func_name] == 'SWAPDOUBLE':
    244                 print '\t\t\t%s[i] = %s(%s[i]);' % (lastParamName, hard_funcs[func_name], lastParamName)
     245                print('\t\t\t%s[i] = %s(%s[i]);' % (lastParamName, hard_funcs[func_name], lastParamName))
    245246            else:
    246                 print '\t\t\t((GLuint *) %s)[i] = %s(%s[i]);' % (lastParamName, hard_funcs[func_name], lastParamName)
    247             print '\t\t}'
    248             print '\t}'
    249         print '}\n'
     247                print('\t\t\t((GLuint *) %s)[i] = %s(%s[i]);' % (lastParamName, hard_funcs[func_name], lastParamName))
     248            print('\t\t}')
     249            print('\t}')
     250        print('}\n')
  • trunk/src/VBox/Additions/common/crOpenGL/pack/packspu_proto.py

    r20083 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY packspu_proto.py SCRIPT */
    1415
     
    2122#include "packspu.h"
    2223#include "cr_packfunctions.h"
    23 """
     24""")
    2425
    2526
     
    4243        return_type = apiutil.ReturnType(func_name)
    4344        params = apiutil.Parameters(func_name)
    44         print 'extern %s PACKSPU_APIENTRY packspu_%s( %s );' % ( return_type, func_name, apiutil.MakeDeclarationString(params) )
     45        print('extern %s PACKSPU_APIENTRY packspu_%s( %s );' % ( return_type, func_name, apiutil.MakeDeclarationString(params) ))
    4546
    4647
    47 print """
     48print("""
    4849#endif
    49 """
     50""")
  • trunk/src/VBox/Additions/common/crOpenGL/passthrough/passthrough.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """#include <stdio.h>
     14print("""#include <stdio.h>
    1415#include "cr_error.h"
    1516#include "cr_string.h"
    1617#include "cr_spu.h"
    1718#include "passthroughspu.h"
    18 """
     19""")
    1920
    2021keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    2122
    2223
    23 print 'SPUNamedFunctionTable _cr_passthrough_table[%d];' % ( len(keys) + 1 )
     24print('SPUNamedFunctionTable _cr_passthrough_table[%d];' % ( len(keys) + 1 ))
    2425
    25 print """
     26print("""
    2627static void __fillin( int offset, char *name, SPUGenericFunction func )
    2728{
     
    3132
    3233void BuildPassthroughTable( SPU *child )
    33 {"""
     34{""")
    3435
    3536for index in range(len(keys)):
    3637        func_name = keys[index]
    37         print '\t__fillin( %3d, "%s", (SPUGenericFunction) child->dispatch_table.%s );' % (index, func_name, func_name )
    38 print '\t__fillin( %3d, NULL, NULL );' % len(keys)
    39 print '}'
     38        print('\t__fillin( %3d, "%s", (SPUGenericFunction) child->dispatch_table.%s );' % (index, func_name, func_name ))
     39print('\t__fillin( %3d, NULL, NULL );' % len(keys))
     40print('}')
  • trunk/src/VBox/Additions/common/crOpenGL/stub_common.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78curver = sys.version_info[0] + sys.version_info[1]/10.0
    89if curver < 2.2:
    9         print >>sys.stderr, "Your python is version %g.  Chromium requires at least"%(curver)
    10         print >>sys.stderr, "version 2.2.  Please upgrade your python installation."
     10        print("Your python is version %g.  Chromium requires at least"%(curver), file=sys.stderr)
     11        print("version 2.2.  Please upgrade your python installation.", file=sys.stderr)
    1112        sys.exit(1)
    1213
     
    1516
    1617def CopyrightC( ):
    17         print """/* Copyright (c) 2001, Stanford University
     18        print("""/* Copyright (c) 2001, Stanford University
    1819        All rights reserved.
    1920
    2021        See the file LICENSE.txt for information on redistributing this software. */
    21         """
     22        """)
    2223
    2324def CopyrightDef( ):
    24         print """; Copyright (c) 2001, Stanford University
     25        print("""; Copyright (c) 2001, Stanford University
    2526        ; All rights reserved.
    2627        ;
    2728        ; See the file LICENSE.txt for information on redistributing this software.
    28         """
     29        """)
    2930
    3031def DecoderName( glName ):
     
    101102                return []
    102103
    103         keys = subtable.keys()
    104         keys.sort()
    105         return keys
     104        return sorted(subtable.keys())
    106105
    107106def FindAnnotation( filename, key, subkey ):
     
    167166                table = LoadSpecials( filename )
    168167       
    169         keys = table.keys()
    170         keys.sort()
    171         return keys
     168        return sorted(table.keys())
    172169
    173170def AllSpecials( table_file ):
     
    180177                table = LoadSpecials(filename)
    181178       
    182         ret = table.keys()
    183         ret.sort()
    184         return ret
     179        return sorted(table.keys())
    185180       
    186181def NumSpecials( table_file ):
  • trunk/src/VBox/Additions/common/crOpenGL/tsfuncs.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - THIS FILE GENERATED BY THE tsfuncs.py SCRIPT */
    1516
    1617#include "stub.h"
    17 """
     18""")
    1819
    1920keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    2324        params = apiutil.Parameters(func_name)
    2425
    25         print "static %s SPULOAD_APIENTRY ts_%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params) )
    26         print "{"
    27         print "\tSPUDispatchTable *tab = (SPUDispatchTable *) crGetTSD(&stub.dispatchTSD);"
     26        print("static %s SPULOAD_APIENTRY ts_%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params) ))
     27        print("{")
     28        print("\tSPUDispatchTable *tab = (SPUDispatchTable *) crGetTSD(&stub.dispatchTSD);")
    2829
    2930        if return_type != "void":
    30                 print "\treturn ",
     31                print("\treturn ", end=" ")
    3132
    32         print "\ttab->%s( %s );" % (func_name, apiutil.MakeCallString(params))
    33         print "}"
    34         print ""
     33        print("\ttab->%s( %s );" % (func_name, apiutil.MakeCallString(params)))
     34        print("}")
     35        print("")
    3536
    3637
    37 print "SPUDispatchTable stubThreadsafeDispatch = {"
     38print("SPUDispatchTable stubThreadsafeDispatch = {")
    3839
    3940for func_name in keys:
    40         print "\tts_%s," % func_name
     41        print("\tts_%s," % func_name)
    4142
    42 print "\tNULL,  /* copyList */"
    43 print "\tNULL,  /* copy_of */"
    44 print "\t0,     /* mark */"
    45 print "\tNULL   /* server */"
    46 print "};"
     43print("\tNULL,  /* copyList */")
     44print("\tNULL,  /* copy_of */")
     45print("\t0,     /* mark */")
     46print("\tNULL   /* server */")
     47print("};")
  • trunk/src/VBox/Additions/common/crOpenGL/windows_exports.py

    r30457 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1415        apiutil.CopyrightC()
    1516
    16         print '#include "chromium.h"'
    17         print '#include "stub.h"'
    18         print ''
    19         print '#define NAKED __declspec(naked)'
    20         print '#define UNUSED(x) ((void)(x))'
    21         print ''
     17        print('#include "chromium.h"')
     18        print('#include "stub.h"')
     19        print('')
     20        print('#define NAKED __declspec(naked)')
     21        print('#define UNUSED(x) ((void)(x))')
     22        print('')
    2223
    2324
     
    3738                params = apiutil.Parameters(func_name)
    3839
    39                 print "NAKED %s cr_gl%s( %s )" % (return_type, func_name,
    40                                                                           apiutil.MakeDeclarationString( params ))
    41                 print "{"
    42                 print "\t__asm jmp [glim.%s]" % func_name
     40                print("NAKED %s cr_gl%s( %s )" % (return_type, func_name,
     41                                                                          apiutil.MakeDeclarationString( params )))
     42                print("{")
     43                print("\t__asm jmp [glim.%s]" % func_name)
    4344                for (name, type, vecSize) in params:
    44                         print "\tUNUSED( %s );" % name
    45                 print "}"
    46                 print ""
     45                        print("\tUNUSED( %s );" % name)
     46                print("}")
     47                print("")
    4748
    48         print '/*'
    49         print '* Aliases'
    50         print '*/'
     49        print('/*')
     50        print('* Aliases')
     51        print('*/')
    5152
    5253        # Now loop over all the functions and take care of any aliases
     
    6566                        return_type = apiutil.ReturnType(func_name)
    6667                        params = apiutil.Parameters(func_name)
    67                         print "NAKED %s cr_gl%s( %s )" % (return_type, func_name,
    68                                                                 apiutil.MakeDeclarationString( params ))
    69                         print "{"
    70                         print "\t__asm jmp [glim.%s]" % alias
     68                        print("NAKED %s cr_gl%s( %s )" % (return_type, func_name,
     69                                                                apiutil.MakeDeclarationString( params )))
     70                        print("{")
     71                        print("\t__asm jmp [glim.%s]" % alias)
    7172                        for (name, type, vecSize) in params:
    72                                 print "\tUNUSED( %s );" % name
    73                         print "}"
    74                         print ""
     73                                print("\tUNUSED( %s );" % name)
     74                        print("}")
     75                        print("")
    7576
    7677
    77         print '/*'
    78         print '* No-op stubs'
    79         print '*/'
     78        print('/*')
     79        print('* No-op stubs')
     80        print('*/')
    8081
    8182        # Now generate no-op stub functions
     
    8485                        return_type = apiutil.ReturnType(func_name)
    8586                        params = apiutil.Parameters(func_name)
    86                         print "NAKED %s cr_gl%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params))
    87                         print "{"
     87                        print("NAKED %s cr_gl%s( %s )" % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     88                        print("{")
    8889                        if return_type != "void":
    89                                 print "return (%s) 0" % return_type
    90                         print "}"
    91                         print ""
     90                                print("return (%s) 0" % return_type)
     91                        print("}")
     92                        print("")
    9293
    9394
  • trunk/src/VBox/Additions/common/crOpenGL/windows_getprocaddress.py

    r51200 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314/* DO NOT EDIT - THIS FILE GENERATED BY THE getprocaddress.py SCRIPT */
    1415#include "chromium.h"
     
    2425#endif
    2526
    26 """
     27""")
    2728
    28 print """
     29print("""
    2930struct name_address {
    3031  const char *name;
     
    3536
    3637static struct name_address functions[] = {
    37 """
     38""")
    3839
    3940
     
    6061    address = "cr_gl" + proc_name
    6162    if wrap:
    62         print '#ifdef CR_%s' % wrap
    63     print '\t{ "%s", (CR_PROC) %s },' % (name, address)
     63        print('#ifdef CR_%s' % wrap)
     64    print('\t{ "%s", (CR_PROC) %s },' % (name, address))
    6465    if wrap:
    65         print '#endif'
     66        print('#endif')
    6667
    6768
    68 print "\t/* Chromium binding/glue functions */"
     69print("\t/* Chromium binding/glue functions */")
    6970
    7071for func_name in keys:
     
    7576        continue
    7677    if apiutil.Category(func_name) == "Chromium":
    77         print '\t{ "cr%s", (CR_PROC) cr%s },' % (func_name, func_name)
     78        print('\t{ "cr%s", (CR_PROC) cr%s },' % (func_name, func_name))
    7879
    79 print "\t/* Windows ICD functions */"
     80print("\t/* Windows ICD functions */")
    8081
    8182for func_name in ( "CopyContext",
     
    9596    "SetContext",
    9697    "ValidateVersion"):
    97     print '\t{ "Drv%s", (CR_PROC) Drv%s },' % (func_name, func_name)
     98    print('\t{ "Drv%s", (CR_PROC) Drv%s },' % (func_name, func_name))
    9899
    99 print '\t{ "DrvGetProcAddress", (CR_PROC) wglGetProcAddress_prox },'
     100print('\t{ "DrvGetProcAddress", (CR_PROC) wglGetProcAddress_prox },')
    100101
    101 print """
     102print("""
    102103    { NULL, NULL }
    103104};
     
    149150}
    150151
    151 """
     152""")
    152153
    153154
  • trunk/src/VBox/Additions/common/crOpenGL/windows_i386_exports.py

    r30457 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1314
    1415        #apiutil.CopyrightC()
    15         print '%include "iprt/asmdefs.mac"'
    16         print ""
    17         print "%ifdef RT_ARCH_AMD64"
    18         print "extern glim"
    19         print "%else ; X86"
    20         print "extern _glim"
    21         print "%endif"
    22         print ""
     16        print('%include "iprt/asmdefs.mac"')
     17        print("")
     18        print("%ifdef RT_ARCH_AMD64")
     19        print("extern glim")
     20        print("%else ; X86")
     21        print("extern _glim")
     22        print("%endif")
     23        print("")
    2324
    2425        # Get sorted list of dispatched functions.
     
    3435                        continue
    3536
    36                 print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    37                 print "%ifdef RT_ARCH_AMD64"
    38                 print "\tmov \trax, qword glim+%d" % (8*index)
    39                 print "\tjmp \t[rax]"
    40                 print "%else ; X86"
    41                 print "\tmov \teax, dword _glim+%d" % (4*index)
    42                 print "\tjmp \t[eax]"
    43                 print "%endif"
    44                 print "ENDPROC cr_gl%s" % func_name
    45                 print ""
     37                print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     38                print("%ifdef RT_ARCH_AMD64")
     39                print("\tmov \trax, qword glim+%d" % (8*index))
     40                print("\tjmp \t[rax]")
     41                print("%else ; X86")
     42                print("\tmov \teax, dword _glim+%d" % (4*index))
     43                print("\tjmp \t[eax]")
     44                print("%endif")
     45                print("ENDPROC cr_gl%s" % func_name)
     46                print("")
    4647
    4748
    48         print ';'
    49         print '; Aliases'
    50         print ';'
     49        print(';')
     50        print('; Aliases')
     51        print(';')
    5152
    5253        # Now loop over all the functions and take care of any aliases
     
    6566                        # this dict lookup should never fail (raise an exception)!
    6667                        index = keys.index(alias)
    67                         print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    68                         print "%ifdef RT_ARCH_AMD64"
    69                         print "\tmov \trax, qword glim+%d" % (8*index)
    70                         print "\tjmp \t[rax]"
    71                         print "%else ; X86"
    72                         print "\tmov \teax, dword _glim+%d" % (4*index)
    73                         print "\tjmp \t[eax]"
    74                         print "%endif"
    75                         print "ENDPROC cr_gl%s" % func_name
    76                         print ""
     68                        print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     69                        print("%ifdef RT_ARCH_AMD64")
     70                        print("\tmov \trax, qword glim+%d" % (8*index))
     71                        print("\tjmp \t[rax]")
     72                        print("%else ; X86")
     73                        print("\tmov \teax, dword _glim+%d" % (4*index))
     74                        print("\tjmp \t[eax]")
     75                        print("%endif")
     76                        print("ENDPROC cr_gl%s" % func_name)
     77                        print("")
    7778
    7879
    79         print ';'
    80         print '; No-op stubs'
    81         print ';'
     80        print(';')
     81        print('; No-op stubs')
     82        print(';')
    8283
    8384        # Now generate no-op stub functions
    8485        for func_name in allkeys:
    8586                if "stub" in apiutil.ChromiumProps(func_name):
    86                         print "BEGINPROC_EXPORTED cr_gl%s" % func_name
    87                         print "\tleave"
    88                         print "\tret"
    89                         print "ENDPROC cr_gl%s" % func_name
    90                         print ""
     87                        print("BEGINPROC_EXPORTED cr_gl%s" % func_name)
     88                        print("\tleave")
     89                        print("\tret")
     90                        print("ENDPROC cr_gl%s" % func_name)
     91                        print("")
    9192
    9293
  • trunk/src/VBox/GuestHost/OpenGL/error/error.py

    r37392 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1213
    1314
    14 print """#include <stdio.h>
     15print("""#include <stdio.h>
    1516#include "cr_error.h"
    1617#include "cr_spu.h"
     
    2324#endif
    2425
    25 #define ERROR_UNUSED(x) ((void)x)"""
     26#define ERROR_UNUSED(x) ((void)x)""")
    2627
    2728
     
    3132        return_type = apiutil.ReturnType(func_name)
    3233        params = apiutil.Parameters(func_name)
    33         print '\nstatic %s ERROR_APIENTRY error%s( %s )' % (return_type, func_name, apiutil.MakeDeclarationString(params ))
    34         print '{'
     34        print('\nstatic %s ERROR_APIENTRY error%s( %s )' % (return_type, func_name, apiutil.MakeDeclarationString(params )))
     35        print('{')
    3536        # Handle the void parameter list
    3637        for (name, type, vecSize) in params:
    37                 print '\tERROR_UNUSED(%s);' % name
    38         print '\tcrError( "ERROR SPU: Unsupported function gl%s called!" );' % func_name
     38                print('\tERROR_UNUSED(%s);' % name)
     39        print('\tcrError( "ERROR SPU: Unsupported function gl%s called!" );' % func_name)
    3940        if return_type != "void":
    40                 print '\treturn (%s)0;' % return_type
    41         print '}'
     41                print('\treturn (%s)0;' % return_type)
     42        print('}')
    4243
    43 print 'SPUNamedFunctionTable _cr_error_table[] = {'
     44print('SPUNamedFunctionTable _cr_error_table[] = {')
    4445for index in range(len(keys)):
    4546        func_name = keys[index]
    46         print '\t{ "%s", (SPUGenericFunction) error%s },' % (func_name, func_name )
    47 print '\t{ NULL, NULL }'
    48 print '};'
     47        print('\t{ "%s", (SPUGenericFunction) error%s },' % (func_name, func_name ))
     48print('\t{ NULL, NULL }')
     49print('};')
  • trunk/src/VBox/GuestHost/OpenGL/glapi_parser/apiutil.py

    r50041 r63939  
    66# generation.
    77
     8from __future__ import print_function
    89import sys, string, re
    910
     
    1213
    1314def CopyrightC( ):
    14         print """/* Copyright (c) 2001, Stanford University
     15        print("""/* Copyright (c) 2001, Stanford University
    1516        All rights reserved.
    1617
    1718        See the file LICENSE.txt for information on redistributing this software. */
    18         """
     19        """)
    1920
    2021def CopyrightDef( ):
    21         print """; Copyright (c) 2001, Stanford University
     22        print("""; Copyright (c) 2001, Stanford University
    2223        ; All rights reserved.
    2324        ;
    2425        ; See the file LICENSE.txt for information on redistributing this software.
    25         """
     26        """)
    2627
    2728
     
    5657        specFile = open(filename, "r")
    5758        if not specFile:
    58                 print "Error: couldn't open %s file!" % filename
     59                print("Error: couldn't open %s file!" % filename)
    5960                sys.exit()
    6061
     
    6465
    6566                # split line into tokens
    66                 tokens = string.split(line)
     67                tokens = line.split()
    6768
    6869                if len(tokens) > 0 and line[0] != '#':
     
    7879
    7980                        elif tokens[0] == 'return':
    80                                 record.returnType = string.join(tokens[1:], ' ')
     81                                record.returnType = ' '.join(tokens[1:])
    8182                       
    8283                        elif tokens[0] == 'param':
    8384                                name = tokens[1]
    84                                 type = string.join(tokens[2:], ' ')
     85                                type = ' '.join(tokens[2:])
    8586                                vecSize = 0
    8687                                record.params.append((name, type, vecSize))
     
    167168
    168169                        else:
    169                                 print 'Invalid token %s after function %s' % (tokens[0], record.name)
     170                                print('Invalid token %s after function %s' % (tokens[0], record.name))
    170171                        #endif
    171172                #endif
     
    189190
    190191def AddFunction(record):
    191         assert not __FunctionDict.has_key(record.name)
     192        assert record.name not in __FunctionDict
    192193        #if not "omit" in record.chromium:
    193194        __FunctionDict[record.name] = record
     
    210211                        a = __FunctionDict[func].alias
    211212                        if a:
    212                                 __ReverseAliases[a] = func
    213                         #endif
    214                 #endfor
     213                                if a in __ReverseAliases:
     214                                        __ReverseAliases[a].append(func)
     215                                else:
     216                                        __ReverseAliases[a] = [func]
    215217        #endif
    216218        return __FunctionDict
     
    336338
    337339
    338 def ReverseAlias(funcName):
    339         """Like Alias(), but the inverse."""
    340         d = GetFunctionDict()
    341         if funcName in __ReverseAliases.keys():
    342                 return __ReverseAliases[funcName]
    343         else:
    344                 return ''
     340def ReverseAliases(funcName):
     341        """Return a list of aliases."""
     342        d = GetFunctionDict()
     343        if funcName in __ReverseAliases:
     344                return sorted(__ReverseAliases[funcName])
     345        else:
     346                return []
     347
     348
     349def ReverseAliasesMaxCount():
     350        """Returns the maximum number of aliases possible for a function."""
     351        d = GetFunctionDict()
     352        return max([len(a) for a in __ReverseAliases.values()])
    345353
    346354
     
    383391                  cat == '2.1'):
    384392                # i.e. OpenGL 1.3 or 1.4 or 1.5
    385                 return "OPENGL_VERSION_" + string.replace(cat, ".", "_")
     393                return "OPENGL_VERSION_" + cat.replace(".", "_")
    386394        else:
    387395                assert cat != ''
    388                 return string.replace(cat, "GL_", "")
     396                return cat.replace("GL_", "")
    389397
    390398
     
    518526def IsPointer(dataType):
    519527        """Determine if the datatype is a pointer.  Return 1 or 0."""
    520         if string.find(dataType, "*") == -1:
     528        if dataType.find("*") == -1:
    521529                return 0
    522530        else:
     
    528536        Ex: PointerType('const GLubyte *') = 'GLubyte'
    529537        """
    530         t = string.split(pointerType, ' ')
     538        t = pointerType.split(' ')
    531539        if t[0] == "const":
    532540                t[0] = t[1]
     
    538546def OpcodeName(funcName):
    539547        """Return the C token for the opcode for the given function."""
    540         return "CR_" + string.upper(funcName) + "_OPCODE"
     548        return "CR_" + funcName.upper() + "_OPCODE"
    541549
    542550
    543551def ExtendedOpcodeName(funcName):
    544552        """Return the C token for the extended opcode for the given function."""
    545         return "CR_" + string.upper(funcName) + "_EXTEND_OPCODE"
     553        return "CR_" + funcName.upper() + "_EXTEND_OPCODE"
    546554
    547555
     
    683691                        size = PointerSize()
    684692                else:
    685                         assert string.find(type, "const") == -1
     693                        assert type.find("const") == -1
    686694                        size = sizeof(type)
    687695                len = FixAlignment( len, size ) + size
     
    706714       
    707715        for line in f.readlines():
    708                 line = string.strip(line)
     716                line = line.strip()
    709717                if line == "" or line[0] == '#':
    710718                        continue
     
    740748                table = LoadSpecials( filename )
    741749       
    742         keys = table.keys()
    743         keys.sort()
    744         return keys
    745 
    746 
    747 def AllSpecials( table_file ):
    748         filename = table_file + "_special"
    749         table = {}
    750         try:
    751                 table = __specials[filename]
    752         except KeyError:
    753                 table = LoadSpecials(filename)
    754        
    755         ret = table.keys()
    756         ret.sort()
    757         return ret
    758        
     750        return sorted(table.keys())
     751
    759752
    760753def NumSpecials( table_file ):
     
    773766        else:
    774767                prefix = "gl"
    775         print '%s %s%s(%s);' % (record.returnType, prefix, record.name, argList )
     768        print('%s %s%s(%s);' % (record.returnType, prefix, record.name, argList ))
    776769        if len(record.props) > 0:
    777                 print '   /* %s */' % string.join(record.props, ' ')
     770                print('   /* %s */' % string.join(record.props, ' '))
    778771
    779772#ProcessSpecFile("APIspec.txt", PrintRecord)
  • trunk/src/VBox/GuestHost/OpenGL/packer/opcodes.py

    r52451 r63939  
    66# This script generates include/cr_opcodes.h from the gl_header.parsed file.
    77
     8from __future__ import print_function
    89import sys;
    9 import cPickle;
    1010import string;
    1111import re;
     
    1515apiutil.CopyrightC()
    1616
    17 print ""
    18 print "/* DO NOT EDIT - THIS FILE GENERATED BY THE opcodes.py SCRIPT */"
    19 print ""
    20 print "#ifndef CR_OPCODES_H"
    21 print "#define CR_OPCODES_H"
    22 print ""
     17print("")
     18print("/* DO NOT EDIT - THIS FILE GENERATED BY THE opcodes.py SCRIPT */")
     19print("")
     20print("#ifndef CR_OPCODES_H")
     21print("#define CR_OPCODES_H")
     22print("")
    2323
    2424keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    2525assert len(keys) > 0
    2626
    27 print "/* Functions with no return value and input-only parameters */"
    28 print "typedef enum {"
     27print("/* Functions with no return value and input-only parameters */")
     28print("typedef enum {")
    2929
    3030enum_index = 0
    3131for func in keys:
    3232        if "pack" in apiutil.ChromiumProps(func):
    33                 print "\t%s = %d," % ( apiutil.OpcodeName(func), enum_index )
     33                print("\t%s = %d," % ( apiutil.OpcodeName(func), enum_index ))
    3434                enum_index = enum_index + 1
    3535
    36 print "\tCR_EXTEND_OPCODE=%d," % enum_index
     36print("\tCR_EXTEND_OPCODE=%d," % enum_index)
    3737enum_index = enum_index + 1
    38 print "\tCR_CMDBLOCKBEGIN_OPCODE=%d," % enum_index
     38print("\tCR_CMDBLOCKBEGIN_OPCODE=%d," % enum_index)
    3939enum_index = enum_index + 1
    40 print "\tCR_CMDBLOCKEND_OPCODE=%d," % enum_index
     40print("\tCR_CMDBLOCKEND_OPCODE=%d," % enum_index)
    4141enum_index = enum_index + 1
    42 print "\tCR_CMDBLOCKFLUSH_OPCODE=%d," % enum_index
    43 print "\tCR_NOP_OPCODE=255"
     42print("\tCR_CMDBLOCKFLUSH_OPCODE=%d," % enum_index)
     43print("\tCR_NOP_OPCODE=255")
    4444if enum_index > 254:
    4545        # This would have saved Mike some grief if it had been here earlier.
     
    5252        print >> sys.stderr, "I'm putting an error in the generated header file so you won't miss"
    5353        print >> sys.stderr, "this even if you're doing a 'make -k.'"
    54         print "#error -- more than 255 opcodes!"
     54        print("#error -- more than 255 opcodes!")
    5555        sys.exit(-1)
    56 print "} CROpcode;\n"
     56print("} CROpcode;\n")
    5757
    5858# count up number of extended opcode commands
     
    7272        print >> sys.stderr, "if this is really what you want to do, please adjust this script"
    7373        print >> sys.stderr, "to handle a new auto-generated opcodes count"
    74         print "#error -- num_auto_codes should be 304, but is " + str(num_auto_codes)
     74        print("#error -- num_auto_codes should be 304, but is " + str(num_auto_codes))
    7575        sys.exit(-1)
    7676
    77 print "/* Functions with a return value or output parameters */"
    78 print "typedef enum {"
     77print("/* Functions with a return value or output parameters */")
     78print("typedef enum {")
    7979
    8080opcode_index = 0
     
    8787                opcode = -1
    8888                if chrelopcode >= 0:
    89                         if not chrelopcode in chrelopcodes.keys():
     89                        if not chrelopcode in chrelopcodes:
    9090                                chrelopcodes[chrelopcode] = chrelopcode
    9191                        else:
    9292                                print >> sys.stderr, "non-unique chrelopcode: " + str(chrelopcode)
    93                                 print "#error -- non-unique chrelopcode:  " + str(num_auto_codes)
     93                                print("#error -- non-unique chrelopcode:  " + str(num_auto_codes))
    9494                                sys.exit(-1)
    9595                        opcode = num_auto_codes + chrelopcode
     
    9999
    100100                if enum_index != num_extends-1:
    101                         print "\t%s = %d," % (opcodeName, opcode )
     101                        print("\t%s = %d," % (opcodeName, opcode ))
    102102                else:
    103                         print "\t%s = %d" % (opcodeName, opcode )
     103                        print("\t%s = %d" % (opcodeName, opcode ))
    104104                enum_index = enum_index + 1
    105 print "} CRExtendOpcode;\n"
    106 print "#endif /* CR_OPCODES_H */"
     105print("} CRExtendOpcode;\n")
     106print("#endif /* CR_OPCODES_H */")
  • trunk/src/VBox/GuestHost/OpenGL/packer/pack_current.py

    r33475 r63939  
    66# This script generates the pack_current.c file.
    77
     8from __future__ import print_function
    89import sys
    910sys.path.append( "../glapi_parser" )
     
    1415apiutil.CopyrightC()
    1516
    16 print """
     17print("""
    1718/* DO NOT EDIT - THIS FILE GENERATED BY THE pack_current.py SCRIPT */
    1819
     
    3536        GLfogcoord_p    *fogCoord   = &(pc->current.c.fogCoord);
    3637        int i;
    37 """
     38""")
    3839
    39 for k in current_fns.keys():
     40for k in sorted(current_fns.keys()):
    4041        name = '%s%s' % (k[:1].lower(),k[1:])
    41         if current_fns[k].has_key( 'array' ):
    42                         print '\tfor (i = 0 ; i < %s ; i++)' % current_fns[k]['array']
    43                         print '\t{'
     42        if 'array' in current_fns[k]:
     43                        print('\tfor (i = 0 ; i < %s ; i++)' % current_fns[k]['array'])
     44                        print('\t{')
    4445        for type in current_fns[k]['types']:
    4546                for size in current_fns[k]['sizes']:
    4647                        indent = ""
    4748                        ptr = "%s->%s%d" % (name, type, size )
    48                         if current_fns[k].has_key( 'array' ):
     49                        if 'array' in current_fns[k]:
    4950                                ptr += "[i]"
    5051                                indent = "\t"
    51                         print "%s\tif ( %s )" % (indent, ptr)
    52                         print "%s\t{" % indent
    53                         print "%s\t\t%s += offset;" % (indent, ptr )
    54                         print "%s\t}" % indent
    55         if current_fns[k].has_key( 'array' ):
    56                 print '\t}'
    57 print """
     52                        print("%s\tif ( %s )" % (indent, ptr))
     53                        print("%s\t{" % indent)
     54                        print("%s\t\t%s += offset;" % (indent, ptr ))
     55                        print("%s\t}" % indent)
     56        if 'array' in current_fns[k]:
     57                print('\t}')
     58print("""
    5859}
    5960
     
    6263        CR_GET_PACKER_CONTEXT(pc);
    6364        CRCurrentStateAttr      *c              = &(pc->current.c);
    64 """
    65 print '\tmemset ( c, 0, sizeof (CRCurrentStateAttr));'
    66 print "}"
     65""")
     66print('\tmemset ( c, 0, sizeof (CRCurrentStateAttr));')
     67print("}")
  • trunk/src/VBox/GuestHost/OpenGL/packer/pack_currentheader.py

    r51313 r63939  
    66# This script generates the include/state/cr_currentpointers.h file.
    77
     8from __future__ import print_function
    89import sys
    910sys.path.append( "../glapi_parser" )
     
    1415apiutil.CopyrightC()
    1516
    16 print """
     17print("""
    1718/* DO NOT EDIT - THIS FILE GENERATED BY THE pack_currentheader.py SCRIPT */
    1819
     
    2122
    2223#include "state/cr_limits.h"
    23 """
     24""")
    2425
    25 for k in current_fns.keys():
     26sorted_keys = sorted(current_fns.keys())
     27
     28for k in sorted_keys:
    2629        name = k.lower();
    27         print "typedef struct {"
    28         if current_fns[k].has_key( 'array' ):
    29                 print "\tconst unsigned char *ptr[%s];" % current_fns[k]['array']
     30        print("typedef struct {")
     31        if 'array' in current_fns[k]:
     32                print("\tconst unsigned char *ptr[%s];" % current_fns[k]['array'])
    3033        else:
    31                 print "\tconst unsigned char *ptr;"
     34                print("\tconst unsigned char *ptr;")
    3235        for type in current_fns[k]['types']:
    3336                for size in current_fns[k]['sizes']:
    34                         if current_fns[k].has_key( 'array' ):
    35                                 print "\tconst unsigned char *%s%d[%s];" % (type, size, current_fns[k]['array'])
     37                        if 'array' in current_fns[k]:
     38                                print("\tconst unsigned char *%s%d[%s];" % (type, size, current_fns[k]['array']))
    3639                        else:
    37                                 print "\tconst unsigned char *%s%d;" % (type, size)
    38         print "} GL%s_p;\n" % name
     40                                print("\tconst unsigned char *%s%d;" % (type, size))
     41        print("} GL%s_p;\n" % name)
    3942
    40 print "typedef  struct attrs {"
    41 for k in current_fns.keys():
     43print("typedef  struct attrs {")
     44for k in sorted_keys:
    4245        name = k.lower()
    4346        field = '%s%s' % (k[:1].lower(),k[1:])
    44         print "\tGL%s_p %s;" % (name,field)
    45 print   "       } CRCurrentStateAttr;"
     47        print("\tGL%s_p %s;" % (name,field))
     48print(" } CRCurrentStateAttr;")
    4649       
    4750
    48 print "typedef struct {"
    49 print """
     51print("typedef struct {")
     52print("""
    5053        CRCurrentStateAttr c;
    5154        unsigned char *vtx_op;
     
    6164
    6265#endif /* CR_CURRENT_H */
    63 """
     66""")
  • trunk/src/VBox/GuestHost/OpenGL/packer/pack_header.py

    r42028 r63939  
    77# gl_header.parsed file.
    88
     9from __future__ import print_function
    910import sys
    1011import string
     
    1516apiutil.CopyrightC()
    1617
    17 print """#ifndef CR_PACKFUNCTIONS_H
     18print("""#ifndef CR_PACKFUNCTIONS_H
    1819#define CR_PACKFUNCTIONS_H
    1920
     
    3536extern "C" {
    3637#endif
    37 """
     38""")
    3839
    3940keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    6061                        args.append(("writeback", "int *", 0))
    6162
    62                 print 'void PACK_APIENTRY crPack%s( %s );' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', args))
    63                 print 'void PACK_APIENTRY crPack%sSWAP( %s );' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', args))
     63                print('void PACK_APIENTRY crPack%s( %s );' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', args)))
     64                print('void PACK_APIENTRY crPack%sSWAP( %s );' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', args)))
    6465
    6566
     
    7677
    7778                args = apiutil.Parameters(func_name)
    78                 print 'void PACK_APIENTRY crPack%sBBOX(%s);' % (func_name, apiutil.MakeDeclarationString(args))
    79                 print 'void PACK_APIENTRY crPack%sBBOX_COUNT(%s);' % (func_name, apiutil.MakeDeclarationString(args))
    80                 print 'void PACK_APIENTRY crPack%sBBOXSWAP(%s);' % (func_name, apiutil.MakeDeclarationString(args))
    81                 print 'void PACK_APIENTRY crPack%sBBOX_COUNTSWAP(%s);' % (func_name, apiutil.MakeDeclarationString(args))
     79                print('void PACK_APIENTRY crPack%sBBOX(%s);' % (func_name, apiutil.MakeDeclarationString(args)))
     80                print('void PACK_APIENTRY crPack%sBBOX_COUNT(%s);' % (func_name, apiutil.MakeDeclarationString(args)))
     81                print('void PACK_APIENTRY crPack%sBBOXSWAP(%s);' % (func_name, apiutil.MakeDeclarationString(args)))
     82                print('void PACK_APIENTRY crPack%sBBOX_COUNTSWAP(%s);' % (func_name, apiutil.MakeDeclarationString(args)))
    8283
    8384
    84 print """
     85print("""
    8586#ifdef __cplusplus
    8687}
     
    8889
    8990#endif /* CR_PACKFUNCTIONS_H */
    90 """
     91""")
  • trunk/src/VBox/GuestHost/OpenGL/packer/pack_swap.py

    r21310 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys, string
    78
     
    1617file = open(sys.argv[1])
    1718
    18 print "/* THIS FILE IS AUTOGENERATED FROM %s BY pack_swap.py */\n\n" % sys.argv[1]
     19print("/* THIS FILE IS AUTOGENERATED FROM %s BY pack_swap.py */\n\n" % sys.argv[1])
    1920
    2021for line in file.readlines():
    2122    line = line.rstrip()
    2223    if line.find( "crPackAlloc" ) != -1 or line.find( "crPackFree" ) != -1:
    23         print line
     24        print(line)
    2425        continue
    2526    elif line.find( "crPack" ) != -1:
     
    3536            quote_index = 1000000; # HACK HACK
    3637        the_index = min( min( paren_index, space_index ), quote_index )
    37         print "%sSWAP%s" % (line[:the_index], line[the_index:])
     38        print("%sSWAP%s" % (line[:the_index], line[the_index:]))
    3839    elif line.find("WRITE_DATA_AI") != -1:
    3940        lparen_index = line.find( "(" )
    4041        rparen_index = line.rfind( ")" )
    41         args = map( string.strip, line[lparen_index+1:rparen_index].split( "," ) )
     42        args = list(map( str.strip, line[lparen_index+1:rparen_index].split( "," ) ))
    4243        indentation = line[:line.find( "WRITE_DATA_AI" )]
    4344        if apiutil.sizeof(args[0]) == 1:
    44             print "%sWRITE_DATA_AI(%s, %s);" % (indentation, args[0], args[1])
     45            print("%sWRITE_DATA_AI(%s, %s);" % (indentation, args[0], args[1]))
    4546        elif apiutil.sizeof(args[0]) == 2:
    46             print "%sWRITE_DATA_AI(%s, SWAP16(%s) );" % (indentation, args[0], args[1])
     47            print("%sWRITE_DATA_AI(%s, SWAP16(%s) );" % (indentation, args[0], args[1]))
    4748        elif args[0] == 'GLfloat' or args[0] == 'GLclampf':
    48             print "%sWRITE_DATA_AI(GLuint, SWAPFLOAT(%s) );" % (indentation, args[0])
     49            print("%sWRITE_DATA_AI(GLuint, SWAPFLOAT(%s) );" % (indentation, args[0]))
    4950        elif apiutil.sizeof(args[0]) == 4:
    50             print "%sWRITE_DATA_AI(%s, SWAP32(%s) );" % (indentation, args[0], args[1])
     51            print("%sWRITE_DATA_AI(%s, SWAP32(%s) );" % (indentation, args[0], args[1]))
    5152        else:
    5253            print >> sys.stderr, "UNKNOWN TYPE FOR WRITE_DATA: %s" % args[1]
     
    5556        lparen_index = line.find( "(" )
    5657        rparen_index = line.rfind( ")" )
    57         args = map( string.strip, line[lparen_index+1:rparen_index].split( "," ) )
     58        args = list(map( str.strip, line[lparen_index+1:rparen_index].split( "," ) ))
    5859        indentation = line[:line.find( "WRITE_DATA" )]
    5960        if apiutil.sizeof(args[1]) == 1:
    60             print "%sWRITE_DATA( %s, %s, %s );" % (indentation, args[0], args[1], args[2])
     61            print("%sWRITE_DATA( %s, %s, %s );" % (indentation, args[0], args[1], args[2]))
    6162        elif apiutil.sizeof(args[1]) == 2:
    62             print "%sWRITE_DATA( %s, %s, SWAP16(%s) );" % (indentation, args[0], args[1], args[2])
     63            print("%sWRITE_DATA( %s, %s, SWAP16(%s) );" % (indentation, args[0], args[1], args[2]))
    6364        elif args[1] == 'GLfloat' or args[1] == 'GLclampf':
    64             print "%sWRITE_DATA( %s, GLuint, SWAPFLOAT(%s) );" % (indentation, args[0], args[2])
     65            print("%sWRITE_DATA( %s, GLuint, SWAPFLOAT(%s) );" % (indentation, args[0], args[2]))
    6566        elif apiutil.sizeof(args[1]) == 4:
    66             print "%sWRITE_DATA( %s, %s, SWAP32(%s) );" % (indentation, args[0], args[1], args[2])
     67            print("%sWRITE_DATA( %s, %s, SWAP32(%s) );" % (indentation, args[0], args[1], args[2]))
    6768        else:
    6869            print >> sys.stderr, "UNKNOWN TYPE FOR WRITE_DATA: %s" % args[1]
    6970            sys.exit(-1)
    7071    elif line.find( "WRITE_DOUBLE" ) != -1:
    71         print line.replace( "WRITE_DOUBLE", "WRITE_SWAPPED_DOUBLE" )
     72        print(line.replace( "WRITE_DOUBLE", "WRITE_SWAPPED_DOUBLE" ))
    7273    else:
    73         print line
     74        print(line)
  • trunk/src/VBox/GuestHost/OpenGL/packer/packer.py

    r52451 r63939  
    66# This script generates the packer.c file from the gl_header.parsed file.
    77
     8from __future__ import print_function
    89import sys, string, re
    910
     
    4647        name = '%s%s' % (k[:1].lower(),k[1:])
    4748        type = m.group(3) + m.group(2)
    48         print "\tpc->current.c.%s.%s = data_ptr;" % (name,type)
     49        print("\tpc->current.c.%s.%s = data_ptr;" % (name,type))
    4950        return
    5051
     
    5455        name = 'secondaryColor'
    5556        type = m.group(3) + m.group(2)
    56         print "\tpc->current.c.%s.%s = data_ptr;" % (name,type)
     57        print("\tpc->current.c.%s.%s = data_ptr;" % (name,type))
    5758        return
    5859
     
    6263        name = 'texCoord'
    6364        type = m.group(3) + m.group(2)
    64         print "\tpc->current.c.%s.%s[0] = data_ptr;" % (name,type)
     65        print("\tpc->current.c.%s.%s[0] = data_ptr;" % (name,type))
    6566        return
    6667
     
    7071        name = 'texCoord'
    7172        type = m.group(3) + m.group(2)
    72         print "\tpc->current.c.%s.%s[texture-GL_TEXTURE0_ARB] = data_ptr + 4;" % (name,type)
     73        print("\tpc->current.c.%s.%s[texture-GL_TEXTURE0_ARB] = data_ptr + 4;" % (name,type))
    7374        return
    7475
     
    7879        name = 'index'
    7980        type = m.group(2) + "1"
    80         print "\tpc->current.c.%s.%s = data_ptr;" % (name,type)
     81        print("\tpc->current.c.%s.%s = data_ptr;" % (name,type))
    8182        return
    8283
     
    8687        name = 'edgeFlag'
    8788        type = "l1"
    88         print "\tpc->current.c.%s.%s = data_ptr;" % (name,type)
     89        print("\tpc->current.c.%s.%s = data_ptr;" % (name,type))
    8990        return
    9091
     
    9495        name = 'fogCoord'
    9596        type = m.group(2) + "1"
    96         print "\tpc->current.c.%s.%s = data_ptr;" % (name,type)
     97        print("\tpc->current.c.%s.%s = data_ptr;" % (name,type))
    9798        return
    9899
     
    104105        type = m.group(3) + m.group(2)
    105106        # Add 12 to skip the packet length, opcode and index fields
    106         print "\tpc->current.c.%s.%s[index] = data_ptr + 4;" % (name,type)
     107        print("\tpc->current.c.%s.%s[index] = data_ptr + 4;" % (name,type))
    107108        if m.group(4) == "ARB" or m.group(4) == "NV":
    108             print "\tpc->current.attribsUsedMask |= (1 << index);"
    109             print "\tpc->current.changedVertexAttrib |= (1 << index);"
     109            print("\tpc->current.attribsUsedMask |= (1 << index);")
     110            print("\tpc->current.changedVertexAttrib |= (1 << index);")
    110111        return
    111112
     
    115116    """Emit a packer function."""
    116117    if is_swapped:
    117         print 'void PACK_APIENTRY crPack%sSWAP( %s )' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', params))
    118     else:
    119         print 'void PACK_APIENTRY crPack%s( %s )' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', params))
    120     print '{'
    121     print '\tCR_GET_PACKER_CONTEXT(pc);'
     118        print('void PACK_APIENTRY crPack%sSWAP( %s )' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', params)))
     119    else:
     120        print('void PACK_APIENTRY crPack%s( %s )' % (func_name, apiutil.MakeDeclarationStringWithContext('CR_PACKER_CONTEXT', params)))
     121    print('{')
     122    print('\tCR_GET_PACKER_CONTEXT(pc);')
    122123
    123124    # Save original function name
     
    138139    if bail_out:
    139140        for (name, type, vecSize) in nonVecParams:
    140             print '\t(void)%s;' % (name)
    141         print '\tcrError ( "%s needs to be special cased %d %d!");' % (func_name, vecSize, can_have_pointers)
    142         print '\t(void) pc;'
    143         print '}'
     141            print('\t(void)%s;' % (name))
     142        print('\tcrError ( "%s needs to be special cased %d %d!");' % (func_name, vecSize, can_have_pointers))
     143        print('\t(void) pc;')
     144        print('}')
    144145        # XXX we should really abort here
    145146        return
     
    151152
    152153
    153     print "\tunsigned char *data_ptr;"
    154     print '\t(void) pc;'
     154    print("\tunsigned char *data_ptr;")
     155    print('\t(void) pc;')
    155156    #if func_name == "Enable" or func_name == "Disable":
    156157    #   print "\tCRASSERT(!pc->buffer.geometry_only); /* sanity check */"
     
    159160        (name, type, vecSize) = params[index]
    160161        if vecSize>0 and func_name!=orig_func_name:
    161             print "    if (!%s) {" % name
     162            print("    if (!%s) {" % name)
    162163            # Know the reason for this one, so avoid the spam.
    163164            if orig_func_name != "SecondaryColor3fvEXT":
    164                 print "        crDebug(\"App passed NULL as %s for %s\");" % (name, orig_func_name)
    165             print "        return;"
    166             print "    }"
     165                print("        crDebug(\"App passed NULL as %s for %s\");" % (name, orig_func_name))
     166            print("        return;")
     167            print("    }")
    167168
    168169    packet_length = apiutil.PacketLength(nonVecParams)
    169170
    170171    if packet_length == 0 and not is_extended:
    171         print "\tCR_GET_BUFFERED_POINTER_NO_ARGS( pc );"
     172        print("\tCR_GET_BUFFERED_POINTER_NO_ARGS( pc );")
    172173    elif func_name[:9] == "Translate" or func_name[:5] == "Color":
    173174        # XXX WTF is the purpose of this?
    174175        if is_extended:
    175176            packet_length += 8
    176         print "\tCR_GET_BUFFERED_POINTER_NO_BEGINEND_FLUSH( pc, %d, GL_TRUE );" % packet_length
     177        print("\tCR_GET_BUFFERED_POINTER_NO_BEGINEND_FLUSH( pc, %d, GL_TRUE );" % packet_length)
    177178    else:
    178179        if is_extended:
    179180            packet_length += 8
    180         print "\tCR_GET_BUFFERED_POINTER( pc, %d );" % packet_length
     181        print("\tCR_GET_BUFFERED_POINTER( pc, %d );" % packet_length)
    181182    UpdateCurrentPointer( func_name )
    182183
    183184    if is_extended:
    184185        counter = 8
    185         print WriteData( 0, 'GLint', packet_length, is_swapped )
    186         print WriteData( 4, 'GLenum', apiutil.ExtendedOpcodeName( func_name ), is_swapped )
     186        print(WriteData( 0, 'GLint', packet_length, is_swapped ))
     187        print(WriteData( 4, 'GLenum', apiutil.ExtendedOpcodeName( func_name ), is_swapped ))
    187188    else:
    188189        counter = 0
     
    195196            ptrType = apiutil.PointerType(type)
    196197            for i in range(0, vecSize):
    197                 print WriteData( counter + i * apiutil.sizeof(ptrType),
    198                                  ptrType, "%s[%d]" % (name, i), is_swapped )
     198                print(WriteData( counter + i * apiutil.sizeof(ptrType),
     199                                 ptrType, "%s[%d]" % (name, i), is_swapped ))
    199200            # XXX increment counter here?
    200201        else:
    201             print WriteData( counter, type, name, is_swapped )
     202            print(WriteData( counter, type, name, is_swapped ))
    202203            if apiutil.IsPointer(type):
    203204                counter += apiutil.PointerSize()
     
    207208    # finish up
    208209    if is_extended:
    209         print "\tWRITE_OPCODE( pc, CR_EXTEND_OPCODE );"
    210     else:
    211         print "\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name )
     210        print("\tWRITE_OPCODE( pc, CR_EXTEND_OPCODE );")
     211    else:
     212        print("\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name ))
    212213
    213214    if "get" in apiutil.Properties(func_name):
    214         print '\tCR_CMDBLOCK_CHECK_FLUSH(pc);'
    215 
    216     print '\tCR_UNLOCK_PACKER_CONTEXT(pc);'
    217     print '}\n'
     215        print('\tCR_CMDBLOCK_CHECK_FLUSH(pc);')
     216
     217    print('\tCR_UNLOCK_PACKER_CONTEXT(pc);')
     218    print('}\n')
    218219
    219220
     
    223224apiutil.CopyrightC()
    224225
    225 print """
     226print("""
    226227/* DO NOT EDIT - THIS FILE GENERATED BY THE packer.py SCRIPT */
    227228
     
    233234#include "cr_opcodes.h"
    234235
    235 """
     236""")
    236237
    237238
     
    252253    if return_type != 'void':
    253254        # Yet another gross hack for glGetString
    254         if string.find( return_type, '*' ) == -1:
     255        if return_type.find('*') == -1:
    255256            return_type = return_type + " *"
    256257        params.append(("return_value", return_type, 0))
     
    264265
    265266    if not func_name in r0_funcs:
    266         print '#ifndef IN_RING0'
     267        print('#ifndef IN_RING0')
    267268       
    268269    PrintFunc( func_name, params, 0, pointers_ok )
     
    270271   
    271272    if not func_name in r0_funcs:
    272         print '#endif'
     273        print('#endif')
    273274   
  • trunk/src/VBox/GuestHost/OpenGL/packer/packer_bbox.py

    r33475 r63939  
    66# This script generates the packer_bbox.c file from gl_header.parsed
    77
     8from __future__ import print_function
    89import sys
    9 import cPickle
    1010import string
    1111
     
    1515apiutil.CopyrightC()
    1616
    17 print """
     17print("""
    1818/* DO NOT EDIT - THIS FILE GENERATED BY THE packer_bbox.py SCRIPT */
    1919
     
    6464}
    6565
    66 """
     66""")
    6767
    6868def WriteData( offset, arg_type, arg_name, is_swapped ):
    69         if string.find( arg_type, '*' ) != -1:
     69        if arg_type.find('*') != -1:
    7070                retval = "\tWRITE_NETWORK_POINTER( %d, (void *) %s );" % (offset, arg_name )
    7171        else:   
     
    135135                vector_type = "GLdouble"
    136136        else:
    137                 print "type is %s" % argtype
     137                print("type is %s" % argtype)
    138138                abort()
    139139
     
    146146        params = apiutil.Parameters(func_name + extSuffix)
    147147
    148         print 'void PACK_APIENTRY crPack%sBBOX%s%s( %s )' % (func_name + extSuffix, countSuffix,
    149                          swapSuffix, apiutil.MakeDeclarationString(params))
    150         print '{'
     148        print('void PACK_APIENTRY crPack%sBBOX%s%s( %s )' % (func_name + extSuffix, countSuffix,
     149                         swapSuffix, apiutil.MakeDeclarationString(params)))
     150        print('{')
    151151
    152152        if do_vector:
     
    167167
    168168
    169         print "\tCR_GET_PACKER_CONTEXT(pc);"
    170         print "\tunsigned char *data_ptr;"
     169        print("\tCR_GET_PACKER_CONTEXT(pc);")
     170        print("\tunsigned char *data_ptr;")
    171171
    172172        if normalized:
     
    186186                        abort()
    187187                if do_vector:
    188                         print "\tCREATE_%dD_VFLOATS_%s_NORMALIZED();" % (num_coords, t)
    189                 else:
    190                         print "\tCREATE_%dD_FLOATS_%s_NORMALIZED();" % (num_coords, t)
     188                        print("\tCREATE_%dD_VFLOATS_%s_NORMALIZED();" % (num_coords, t))
     189                else:
     190                        print("\tCREATE_%dD_FLOATS_%s_NORMALIZED();" % (num_coords, t))
    191191        else:
    192192                if do_vector:
    193                         print "\tCREATE_%dD_VFLOATS();" % num_coords
    194                 else:
    195                         print "\tCREATE_%dD_FLOATS();" % num_coords
    196 
    197         print "\tCR_GET_BUFFERED%s_POINTER( pc, %d );" % (countSuffix, packet_length)
     193                        print("\tCREATE_%dD_VFLOATS();" % num_coords)
     194                else:
     195                        print("\tCREATE_%dD_FLOATS();" % num_coords)
     196
     197        print("\tCR_GET_BUFFERED%s_POINTER( pc, %d );" % (countSuffix, packet_length))
    198198
    199199        # Bounding box code
    200200        if isVertexAttrib:
    201                 print "\tif (pc->updateBBOX && index == 0)"
    202         else:
    203                 print "\tif (pc->updateBBOX)"
    204         print "\t{"
     201                print("\tif (pc->updateBBOX && index == 0)")
     202        else:
     203                print("\tif (pc->updateBBOX)")
     204        print("\t{")
    205205        if num_coords < 4:
    206                 print "\t\tUPDATE_%dD_BBOX();" % num_coords
    207         else:
    208                 print "\t\tUPDATE_3D_BBOX();"
    209         print "\t}"
     206                print("\t\tUPDATE_%dD_BBOX();" % num_coords)
     207        else:
     208                print("\t\tUPDATE_3D_BBOX();")
     209        print("\t}")
    210210
    211211        if isVertexAttrib:
    212                 print "\tif (index > 0) {"
     212                print("\tif (index > 0) {")
    213213                t = argtype
    214                 print "\t\tpc->current.c.vertexAttrib.%s%d[index] = data_ptr + 4;" % (t, num_coords)
    215                 print "\t\tpc->current.attribsUsedMask |= (1 << index);"
     214                print("\t\tpc->current.c.vertexAttrib.%s%d[index] = data_ptr + 4;" % (t, num_coords))
     215                print("\t\tpc->current.attribsUsedMask |= (1 << index);")
    216216                if do_count:
    217                         print "\t\tpc->current.vtx_count--;"
    218 
    219                 print "\t}"
     217                        print("\t\tpc->current.vtx_count--;")
     218
     219                print("\t}")
    220220
    221221                fname = func_name + extSuffix
     
    230230                if isVertexAttrib:
    231231                        if do_swapped:
    232                                 print "\tWRITE_DATA( 0, GLuint, SWAP32(index) );"
     232                                print("\tWRITE_DATA( 0, GLuint, SWAP32(index) );")
    233233                        else:
    234                                 print "\tWRITE_DATA( 0, GLuint, index );"
     234                                print("\tWRITE_DATA( 0, GLuint, index );")
    235235                        counter += 4
    236236                        argname = params[1][0]  # skip 'index' parameter
     
    239239
    240240                for index in range(num_coords):
    241                         print WriteData( counter, vector_type, "%s[%d]" % (argname, index), do_swapped )
     241                        print(WriteData( counter, vector_type, "%s[%d]" % (argname, index), do_swapped ))
    242242                        counter += apiutil.sizeof(vector_type)
    243243
     
    245245                        if do_vector == 2:
    246246                                # this is a bit of a hack
    247                                 print "\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name + "ARB" )
     247                                print("\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name + "ARB" ))
    248248                        else:
    249                                 print "\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name[:-1] + "ARB" )
    250                 else:
    251                         print "\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name[:-1] )
     249                                print("\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name[:-1] + "ARB" ))
     250                else:
     251                        print("\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name[:-1] ))
    252252        else:
    253253                for index in range(0,len(params)):
    254254                        (name, type, vecSize) = params[index]
    255                         print WriteData( counter, type, name, do_swapped )
     255                        print(WriteData( counter, type, name, do_swapped ))
    256256                        counter += apiutil.sizeof(type)
    257257
    258258                if isVertexAttrib:
    259                         print "\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name + "ARB" )
    260                 else:
    261                         print "\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name )
    262 
    263         print "\tCR_UNLOCK_PACKER_CONTEXT(pc);"
    264 
    265 
    266         print '}\n'
     259                        print("\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name + "ARB" ))
     260                else:
     261                        print("\tWRITE_OPCODE( pc, %s );" % apiutil.OpcodeName( func_name ))
     262
     263        print("\tCR_UNLOCK_PACKER_CONTEXT(pc);")
     264
     265
     266        print('}\n')
    267267
    268268#end PrintFunction()
  • trunk/src/VBox/GuestHost/OpenGL/spu_loader/dispatch.py

    r63199 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78import apiutil
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314
    1415/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY dispatch.py SCRIPT */
     
    4344
    4445void __buildDispatch( SPU *spu )
    45 {"""
     46{""")
    4647
    4748keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    4849for func_name in keys:
    49         print '\tspu->dispatch_table.%s = (%sFunc_t) __findFunc( "%s", spu );' % (func_name,func_name,func_name)
    50 print '}'
     50        print('\tspu->dispatch_table.%s = (%sFunc_t) __findFunc( "%s", spu );' % (func_name,func_name,func_name))
     51print('}')
    5152
    5253
    53 print """
     54print("""
    5455
    5556/*
     
    8081 */
    8182void crSPUInitDispatch( SPUDispatchTable *dispatch, const SPUNamedFunctionTable *table )
    82 {"""
     83{""")
    8384
    8485for func_name in keys:
    85         print '\tdispatch->%s = (%sFunc_t) crSPUFindFunction(table, "%s");' % (func_name, func_name, func_name)
    86 print '}'
     86        print('\tdispatch->%s = (%sFunc_t) crSPUFindFunction(table, "%s");' % (func_name, func_name, func_name))
     87print('}')
    8788
    8889
    8990
    90 print """
     91print("""
    9192/*
    9293 * Generic no-op function
     
    123124        }
    124125}
    125 """
     126""")
  • trunk/src/VBox/GuestHost/OpenGL/spu_loader/dispatchheader.py

    r56473 r63939  
    66# This script generates the spu_dispatch_table.h file from gl_header.parsed
    77
     8from __future__ import print_function
    89import sys, string
    910
     
    1314apiutil.CopyrightC()
    1415
    15 print """
     16print("""
    1617/* DO NOT EDIT - THIS FILE GENERATED BY THE dispatchheader.py SCRIPT */
    1718
     
    2728#include "chromium.h"
    2829#include "state/cr_statetypes.h"
    29 """
     30""")
    3031
    3132keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    3233
    3334
    34 print '/* Offsets of each function within the dispatch table */'
     35print('/* Offsets of each function within the dispatch table */')
    3536offset = 0
    3637for func_name in keys:
    37         print '#define DISPATCH_OFFSET_%s %d' % (func_name, offset)
     38        print('#define DISPATCH_OFFSET_%s %d' % (func_name, offset))
    3839        offset += 1
    39 print ''
     40print('')
    4041
    41 print '/* Function typedefs */'
     42print('/* Function typedefs */')
    4243for func_name in keys:
    4344        return_type = apiutil.ReturnType(func_name)
    4445        params = apiutil.Parameters(func_name)
    4546
    46         print 'typedef %s (SPU_APIENTRY *%sFunc_t)(%s);' % (return_type, func_name, apiutil.MakePrototypeString(params))
    47 print ''
     47        print('typedef %s (SPU_APIENTRY *%sFunc_t)(%s);' % (return_type, func_name, apiutil.MakePrototypeString(params)))
     48print('')
    4849
    49 print 'struct _copy_list_node;'
    50 print ''
    51 print '/* Prototype for SPU internal state load/unload callbacks. */'
    52 print ''
    53 print 'typedef int (*SPUStateFunc_t)(void *);'
    54 print ''
    55 print '/* The SPU dispatch table */'
    56 print 'typedef struct _spu_dispatch_table {'
     50print('struct _copy_list_node;')
     51print('')
     52print('/* Prototype for SPU internal state load/unload callbacks. */')
     53print('')
     54print('typedef int (*SPUStateFunc_t)(void *);')
     55print('')
     56print('/* The SPU dispatch table */')
     57print('typedef struct _spu_dispatch_table {')
    5758
    5859for func_name in keys:
    59         print "\t%sFunc_t %s; " % ( func_name, func_name )
     60        print("\t%sFunc_t %s; " % ( func_name, func_name ))
    6061
    61 print """
     62print("""
    6263        struct _copy_list_node *copyList;
    6364        struct _spu_dispatch_table *copy_of;
     
    7576
    7677#endif /* CR_SPU_DISPATCH_TABLE_H */
    77 """
     78""")
  • trunk/src/VBox/GuestHost/OpenGL/spu_loader/glloader.py

    r63199 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89import apiutil
     
    1314apiutil.CopyrightC()
    1415
    15 print """
     16print("""
    1617/* DO NOT EDIT - THIS FILE GENERATED BY THE glloader.py SCRIPT */
    1718#include "cr_error.h"
     
    212213#endif
    213214}
    214 """
     215""")
    215216
    216217
     
    229230        return_type = apiutil.ReturnType(func_name);
    230231        params = apiutil.Parameters(func_name)
    231         print 'static %s GLLOADER_APIENTRY Nop%s(%s)' % (return_type, func_name, apiutil.MakeDeclarationString(params))
    232         print '{'
     232        print('static %s GLLOADER_APIENTRY Nop%s(%s)' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
     233        print('{')
    233234        for (name, type, vecSize) in params:
    234235                if name != "":
    235                         print '\t(void) %s;' % name
     236                        print('\t(void) %s;' % name)
    236237        if apiutil.ReturnType(func_name) != 'void':
    237                 print '\treturn 0;'
    238         print '}'
    239         print ''
     238                print('\treturn 0;')
     239        print('}')
     240        print('')
    240241
    241242
     
    252253# Generate the crLoadOpenGL() function
    253254#
    254 print """
     255print("""
    255256void
    256257crUnloadOpenGL( void )
     
    281282{
    282283        static const char *coreFunctions[] = {
    283 """
     284""")
    284285
    285286for func_name in keys:
    286287        if not IsExtensionFunc(func_name):
    287                 print '\t\t"gl%s",' % func_name
    288 
    289 print """
     288                print('\t\t"gl%s",' % func_name)
     289
     290print("""
    290291                NULL
    291292        };
     
    338339# endif
    339340#endif
    340 """
     341""")
    341342
    342343useful_wgl_functions = [
     
    459460]
    460461
    461 print '#ifdef WINDOWS'
     462print('#ifdef WINDOWS')
    462463
    463464for fun in useful_wgl_functions:
    464         print '\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun,fun,fun)
    465 
    466 print '#elif defined(DARWIN)'
    467 print '# ifndef VBOX_WITH_COCOA_QT'
     465        print('\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun,fun,fun))
     466
     467print('#elif defined(DARWIN)')
     468print('# ifndef VBOX_WITH_COCOA_QT')
    468469for fun in useful_agl_functions:
    469         print '\tinterface->%s = (%sFunc_t) crDLLGetNoError( aglDll, "%s" );' % (fun,fun,fun)
    470 print '# endif'
     470        print('\tinterface->%s = (%sFunc_t) crDLLGetNoError( aglDll, "%s" );' % (fun,fun,fun))
     471print('# endif')
    471472
    472473for fun in useful_cgl_functions:
    473         print '\tinterface->%s = (%sFunc_t) crDLLGetNoError( cglDll, "%s" );' % (fun, fun,fun)
     474        print('\tinterface->%s = (%sFunc_t) crDLLGetNoError( cglDll, "%s" );' % (fun, fun,fun))
    474475
    475476for fun in in_gl_functions:
    476         print '\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun, fun,fun)
    477 
    478 print '#else'
    479 print '\t/* GLX */'
     477        print('\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun, fun,fun))
     478
     479print('#else')
     480print('\t/* GLX */')
    480481
    481482# XXX merge these loops?
    482483for fun in useful_glx_functions:
    483         print '\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun, fun, fun)
     484        print('\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun, fun, fun))
    484485for fun in possibly_useful_glx_functions:
    485         print '\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun, fun, fun)
    486 print '#endif'
    487 
    488 print """
     486        print('\tinterface->%s = (%sFunc_t) crDLLGetNoError( glDll, "%s" );' % (fun, fun, fun))
     487print('#endif')
     488
     489print("""
    489490        if (!entry)
    490491                return 1; /* token value */
     
    513514{
    514515        struct extfunc {
    515                 const char *funcName;
    516                 const char *aliasName;
    517                 SPUGenericFunction nopFunction;
     516                const char *funcName;""")
     517max_aliases = apiutil.ReverseAliasesMaxCount()
     518for i in range(1, 1 + max_aliases):
     519        print("\t\tconst char *aliasName%d;" % i)
     520print("""               SPUGenericFunction nopFunction;
    518521        };
    519522        static const struct extfunc functions[] = {
    520 """
     523""")
    521524
    522525for func_name in keys:
     
    526529                else:
    527530                        prefix = "gl"
    528                 s = '\t\t{ "' + prefix + func_name + '", '
    529                 a = apiutil.ReverseAlias(func_name)
    530                 if a:
    531                         s += '"' + prefix + a + '", '
    532                 else:
    533                         s += 'NULL, '
    534                 s += '(SPUGenericFunction) Nop' + func_name + ' },'
    535                 print s
    536 
    537 print """
    538                 { NULL, NULL, NULL}
     531                s = '\t\t{ "' + prefix + func_name + '"'
     532                aliases = apiutil.ReverseAliases(func_name)
     533                s += ''.join([', "' + prefix + a + '"' for a in aliases]) + ', NULL' * (max_aliases - len(aliases))
     534                s += ', (SPUGenericFunction) Nop' + func_name + ' },'
     535                print(s)
     536
     537print('\t\t{ NULL%s, NULL}' % (', NULL' * max_aliases))
     538print("""
    539539        };
    540540        const struct extfunc *func;
     
    550550
    551551        for (func = functions; func->funcName; func++) {
    552                 SPUGenericFunction f = findExtFunction(interface, func->funcName);
    553                 if (!f && func->aliasName) {
    554                         f = findExtFunction(interface, func->aliasName);
    555                 }
    556                 if (!f) {
     552                SPUGenericFunction f = findExtFunction(interface, func->funcName);""")
     553for i in range(1, 1 + max_aliases):
     554        print("""               if (!f && func->aliasName%d) {
     555                        f = findExtFunction(interface, func->aliasName%d);
     556                }"""% (i, i))
     557print("""               if (!f) {
    557558                        f = func->nopFunction;
    558559                }
     
    566567        return entry - table;  /* number of entries filled */
    567568}
    568 """
    569 
    570 
    571 print """
     569""")
     570
     571
     572print("""
    572573
    573574#ifdef USE_OSMESA
     
    605606#endif
    606607
    607 """
    608 
     608""")
     609
  • trunk/src/VBox/GuestHost/OpenGL/spu_loader/spuchange.py

    r63199 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78import apiutil
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314
    1415/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY spuchange.py SCRIPT */
     
    2930        }
    3031        table->mark = 1;
    31 """
     32""")
    3233
    3334keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    3435for func_name in keys:
    35         print '\tif ((uintptr_t)table->%s == (uintptr_t)orig_func)' % func_name
    36         print '\t{'
    37         print '\t\ttable->%s = (%sFunc_t)(uintptr_t)new_func;' % (func_name, func_name)
    38         print '\t\tfor (temp = table->copyList ; temp ; temp = temp->next)'
    39         print '\t\t{'
    40         print '\t\t\tcrSPUChangeInterface( temp->copy, orig_func, new_func );'
    41         print '\t\t}'
    42         print '\t}'
     36        print('\tif ((uintptr_t)table->%s == (uintptr_t)orig_func)' % func_name)
     37        print('\t{')
     38        print('\t\ttable->%s = (%sFunc_t)(uintptr_t)new_func;' % (func_name, func_name))
     39        print('\t\tfor (temp = table->copyList ; temp ; temp = temp->next)')
     40        print('\t\t{')
     41        print('\t\t\tcrSPUChangeInterface( temp->copy, orig_func, new_func );')
     42        print('\t\t}')
     43        print('\t}')
    4344
    44 print """
     45print("""
    4546        if (table->copy_of != NULL)
    4647        {
     
    5253        }
    5354        table->mark = 0;
    54 """
    55 print '}'
     55""")
     56print('}')
    5657
    57 print """
     58print("""
    5859void crSPUChangeDispatch(SPUDispatchTable *dispatch, const SPUNamedFunctionTable *newtable)
    5960{
    6061    SPUGenericFunction func;
    61 """
     62""")
    6263keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    6364for func_name in keys:
    64     print '\tfunc = crSPUFindFunction(newtable, "%s");' % func_name
    65     print '\tif (func && ((SPUGenericFunction)dispatch->%s!=func))' % func_name
    66     print '\t{'
    67     print '\t\tcrDebug("%%s changed from %%p to %%p", "gl%s", (void *)(uintptr_t)dispatch->%s, (void *)(uintptr_t)func);' % (func_name, func_name)
    68     print '\t\tcrSPUChangeInterface(dispatch, (void *)(uintptr_t)dispatch->%s, (void *)(uintptr_t)func);' % func_name
    69     print '\t}\n'
    70 print """
     65    print('\tfunc = crSPUFindFunction(newtable, "%s");' % func_name)
     66    print('\tif (func && ((SPUGenericFunction)dispatch->%s!=func))' % func_name)
     67    print('\t{')
     68    print('\t\tcrDebug("%%s changed from %%p to %%p", "gl%s", (void *)(uintptr_t)dispatch->%s, (void *)(uintptr_t)func);' % (func_name, func_name))
     69    print('\t\tcrSPUChangeInterface(dispatch, (void *)(uintptr_t)dispatch->%s, (void *)(uintptr_t)func);' % func_name)
     70    print('\t}\n')
     71print("""
    7172}
    72 """
     73""")
  • trunk/src/VBox/GuestHost/OpenGL/spu_loader/spucopy.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78import apiutil
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314
    1415/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY spucopy.py SCRIPT */
     
    1920void crSPUCopyDispatchTable( SPUDispatchTable *dst, SPUDispatchTable *src )
    2021{
    21 """
     22""")
    2223
    2324keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
    2425for func_name in keys:
    25         print '\tdst->%s = src->%s;' % (func_name, func_name)
     26        print('\tdst->%s = src->%s;' % (func_name, func_name))
    2627
    2728# if the destination is already a copy of something, we'd better make sure
    2829# that we take it off its source's copy list first.
    2930
    30 print """
     31print("""
    3132        if (dst->copy_of != NULL)
    3233        {
     
    7778        }
    7879}
    79 """
     80""")
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/convert.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1718apiutil.CopyrightC()
    1819
    19 print '''
     20print('''
    2021#include "state/cr_statetypes.h"
    2122
     
    2829    return d;
    2930}
    30 '''
     31''')
    3132
    32 for k in gltypes.keys():
     33for k in sorted(gltypes.keys()):
    3334        for i in range(1,5):
    34                 print 'static void __convert_%s%d (GLfloat *dst, const %s *src) {' % (k,i,gltypes[k]['type'])
     35                print('static void __convert_%s%d (GLfloat *dst, const %s *src) {' % (k,i,gltypes[k]['type']))
    3536                if k == 'd':
    3637                  for j in range(i-1):
    37                     print '\t*dst++ = (GLfloat) __read_double(src++);'
    38                   print '\t*dst = (GLfloat) __read_double(src);'
     38                    print('\t*dst++ = (GLfloat) __read_double(src++);')
     39                  print('\t*dst = (GLfloat) __read_double(src);')
    3940                else:
    4041                  for j in range(i-1):
    41                     print '\t*dst++ = (GLfloat) *src++;';
    42                   print '\t*dst = (GLfloat) *src;';
    43                 print '}\n';
     42                    print('\t*dst++ = (GLfloat) *src++;')
     43                  print('\t*dst = (GLfloat) *src;')
     44                print('}\n')
    4445
    4546scale = {
     
    5455}
    5556
    56 for k in gltypes.keys():
     57for k in sorted(gltypes.keys()):
    5758        if k != 'f' and k != 'd' and k != 'l':
    5859                if k[0:1] == "N":
     
    6162                        k2 = k
    6263                for i in range(1,5):
    63                         print 'static void __convert_rescale_%s%d (GLfloat *dst, const %s *src) {' % (k,i,gltypes[k2]['type'])
     64                        print('static void __convert_rescale_%s%d (GLfloat *dst, const %s *src) {' % (k,i,gltypes[k2]['type']))
    6465                        for j in range(i-1):
    65                                 print '\t*dst++ = ((GLfloat) *src++) / %s;' % scale[k2]
    66                         print '\t*dst = ((GLfloat) *src) / %s;' % scale[k2]
    67                         print '}\n'
     66                                print('\t*dst++ = ((GLfloat) *src++) / %s;' % scale[k2])
     67                        print('\t*dst = ((GLfloat) *src) / %s;' % scale[k2])
     68                        print('}\n')
    6869
    69 print '''
     70print('''
    7071
    7172static void __convert_boolean (GLboolean *dst, const GLboolean *src) {
    7273        *dst = *src;
    7374}
    74 '''
     75''')
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/dump_gen.py

    r50041 r63939  
     1from __future__ import print_function
    12import sys
    23
     
    3435apiutil.CopyrightC()
    3536
    36 print """#include "cr_blitter.h"
     37print("""#include "cr_blitter.h"
    3738#include "cr_spu.h"
    3839#include "chromium.h"
     
    5253
    5354#ifdef VBOX_WITH_CRDUMPER
    54 """
     55""")
    5556
    5657from get_sizes import *;
     
    6970#            print "//%s" % prop
    7071#
    71 print """
     72print("""
    7273static void crRecDumpPrintVal(CR_DUMPER *pDumper, struct nv_struct *pDesc, float *pfData)
    7374{
     
    9495{
    9596    GLboolean fEnabled;
    96 """
    97 keys = params.keys()
    98 keys.sort();
    99 
    100 for pname in keys:
    101     print "\tfEnabled = pRec->pDispatch->IsEnabled(%s);" % pname
    102     print "\tcrDmpStrF(pRec->pDumper, \"%s = %%d;\", fEnabled);" % pname
    103 
    104 keys = extended_params.keys();
    105 keys.sort()
    106 
    107 for pname in keys:
     97""")
     98for pname in sorted(params.keys()):
     99    print("\tfEnabled = pRec->pDispatch->IsEnabled(%s);" % pname)
     100    print("\tcrDmpStrF(pRec->pDumper, \"%s = %%d;\", fEnabled);" % pname)
     101
     102for pname in sorted(extended_params.keys()):
    108103    (srctype,ifdef,fields) = extended_params[pname]
    109104    ext = ifdef[3:]  # the extension name with the "GL_" prefix removed
    110105    ext = ifdef
    111     print '#ifdef CR_%s' % ext
    112     print "\tfEnabled = pRec->pDispatch->IsEnabled(%s);" % pname
    113     print "\tcrDmpStrF(pRec->pDumper, \"%s = %%d;\", fEnabled);" % pname
    114     print '#endif /* CR_%s */' % ext
     106    print('#ifdef CR_%s' % ext)
     107    print("\tfEnabled = pRec->pDispatch->IsEnabled(%s);" % pname)
     108    print("\tcrDmpStrF(pRec->pDumper, \"%s = %%d;\", fEnabled);" % pname)
     109    print('#endif /* CR_%s */' % ext)
    115110
    116111#print "//missing enable props:"
     
    124119#            print "//%s" % prop
    125120#
    126 print """
     121print("""
    127122}
    128123#endif
    129 """
     124""")
    130125
    131126texenv_mappings = {
     
    184179]
    185180
    186 print """
     181print("""
    187182void crRecDumpTexParam(CR_RECORDER *pRec, CRContext *ctx, GLenum enmTarget)
    188183{
     
    191186    unsigned int cComponents;
    192187    crDmpStrF(pRec->pDumper, "==TEX_PARAM for target(0x%x)==", enmTarget);
    193 """
     188""")
    194189for pname in texparam_names:
    195     print "\tcComponents = crStateHlpComponentsCount(%s);" % pname
    196     print "\tAssert(cComponents <= RT_ELEMENTS(afBuf));"
    197     print "\tmemset(afBuf, 0, sizeof (afBuf));"
    198     print "\tpRec->pDispatch->GetTexParameterfv(enmTarget, %s, afBuf);" % pname
    199     print "\tcrDmpFormatArray(acBuf, sizeof (acBuf), \"%f\", sizeof (afBuf[0]), afBuf, cComponents);"
    200     print "\tcrDmpStrF(pRec->pDumper, \"%s = %%s;\", acBuf);" % pname
    201 print """
     190    print("\tcComponents = crStateHlpComponentsCount(%s);" % pname)
     191    print("\tAssert(cComponents <= RT_ELEMENTS(afBuf));")
     192    print("\tmemset(afBuf, 0, sizeof (afBuf));")
     193    print("\tpRec->pDispatch->GetTexParameterfv(enmTarget, %s, afBuf);" % pname)
     194    print("\tcrDmpFormatArray(acBuf, sizeof (acBuf), \"%f\", sizeof (afBuf[0]), afBuf, cComponents);")
     195    print("\tcrDmpStrF(pRec->pDumper, \"%s = %%s;\", acBuf);" % pname)
     196print("""
    202197    crDmpStrF(pRec->pDumper, "==Done TEX_PARAM for target(0x%x)==", enmTarget);
    203198}
    204 """
    205 
    206 print """
     199""")
     200
     201print("""
    207202void crRecDumpTexEnv(CR_RECORDER *pRec, CRContext *ctx)
    208203{
     
    211206    unsigned int cComponents;
    212207    crDmpStrF(pRec->pDumper, "==TEX_ENV==");
    213 """
    214 
    215 keys = texenv_mappings.keys()
    216 keys.sort();
    217 
    218 for target in keys:
    219     print "\tcrDmpStrF(pRec->pDumper, \"===%s===\");" % target
     208""")
     209
     210for target in sorted(texenv_mappings.keys()):
     211    print("\tcrDmpStrF(pRec->pDumper, \"===%s===\");" % target)
    220212    values = texenv_mappings[target]
    221213    for pname in values:
    222         print "\tcComponents = crStateHlpComponentsCount(%s);" % pname
    223         print "\tAssert(cComponents <= RT_ELEMENTS(afBuf));"
    224         print "\tmemset(afBuf, 0, sizeof (afBuf));"
    225         print "\tpRec->pDispatch->GetTexEnvfv(%s, %s, afBuf);" % (target, pname)
    226         print "\tcrDmpFormatArray(acBuf, sizeof (acBuf), \"%f\", sizeof (afBuf[0]), afBuf, cComponents);"
    227         print "\tcrDmpStrF(pRec->pDumper, \"%s = %%s;\", acBuf);" % pname
    228     print "\tcrDmpStrF(pRec->pDumper, \"===Done %s===\");" % target
    229 print """
     214        print("\tcComponents = crStateHlpComponentsCount(%s);" % pname)
     215        print("\tAssert(cComponents <= RT_ELEMENTS(afBuf));")
     216        print("\tmemset(afBuf, 0, sizeof (afBuf));")
     217        print("\tpRec->pDispatch->GetTexEnvfv(%s, %s, afBuf);" % (target, pname))
     218        print("\tcrDmpFormatArray(acBuf, sizeof (acBuf), \"%f\", sizeof (afBuf[0]), afBuf, cComponents);")
     219        print("\tcrDmpStrF(pRec->pDumper, \"%s = %%s;\", acBuf);" % pname)
     220    print("\tcrDmpStrF(pRec->pDumper, \"===Done %s===\");" % target)
     221print("""
    230222    crDmpStrF(pRec->pDumper, "==Done TEX_ENV==");
    231223}
    232 """
    233 
    234 
    235 print """
     224""")
     225
     226
     227print("""
    236228void crRecDumpTexGen(CR_RECORDER *pRec, CRContext *ctx)
    237229{
     
    240232    unsigned int cComponents;
    241233    crDmpStrF(pRec->pDumper, "==TEX_GEN==");
    242 """
     234""")
    243235
    244236for coord in texgen_coords:
    245     print "\tcrDmpStrF(pRec->pDumper, \"===%s===\");" % coord
     237    print("\tcrDmpStrF(pRec->pDumper, \"===%s===\");" % coord)
    246238    for pname in texgen_names:
    247         print "\tcComponents = crStateHlpComponentsCount(%s);" % pname
    248         print "\tAssert(cComponents <= RT_ELEMENTS(afBuf));"
    249         print "\tmemset(afBuf, 0, sizeof (afBuf));"
    250         print "\tpRec->pDispatch->GetTexGendv(%s, %s, afBuf);" % (coord, pname)
    251         print "\tcrDmpFormatArray(acBuf, sizeof (acBuf), \"%f\", sizeof (afBuf[0]), afBuf, cComponents);"
    252         print "\tcrDmpStrF(pRec->pDumper, \"%s = %%s;\", acBuf);" % pname
    253     print "\tcrDmpStrF(pRec->pDumper, \"===Done %s===\");" % coord
    254 print """
     239        print("\tcComponents = crStateHlpComponentsCount(%s);" % pname)
     240        print("\tAssert(cComponents <= RT_ELEMENTS(afBuf));")
     241        print("\tmemset(afBuf, 0, sizeof (afBuf));")
     242        print("\tpRec->pDispatch->GetTexGendv(%s, %s, afBuf);" % (coord, pname))
     243        print("\tcrDmpFormatArray(acBuf, sizeof (acBuf), \"%f\", sizeof (afBuf[0]), afBuf, cComponents);")
     244        print("\tcrDmpStrF(pRec->pDumper, \"%s = %%s;\", acBuf);" % pname)
     245    print("\tcrDmpStrF(pRec->pDumper, \"===Done %s===\");" % coord)
     246print("""
    255247    crDmpStrF(pRec->pDumper, "==Done TEX_GEN==");
    256248}
    257 """
     249""")
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/gendiffcode.py

    r33540 r63939  
    44# See the file LICENSE.txt for information on redistributing this software
    55
     6from __future__ import print_function
    67import sys
    78
     
    1011        Name = sys.argv[2]
    1112
    12         print """/* This code is AUTOGENERATED!!! */
     13        print("""/* This code is AUTOGENERATED!!! */
    1314
    1415#include "state.h"
    15 #include "state_internals.h\""""
    16 
    17         print """
     16#include "state_internals.h\"""")
     17
     18        print("""
    1819void crState%(Name)sDiff(CR%(Name)sBits *b, CRbitvalue *bitID,
    1920                CRContext *fromCtx, CRContext *toCtx)
    2021{
    2122        CR%(Name)sState *from = &(fromCtx->%(name)s);
    22         CR%(Name)sState *to = &(toCtx->%(name)s);"""%vars()
     23        CR%(Name)sState *to = &(toCtx->%(name)s);"""%vars())
    2324        gendiffcode("state_%s.txt"%(name.lower()), name, docopy=1, doinvalid=0)
    24         print """}
     25        print("""}
    2526
    2627void crState%(Name)sSwitch(CR%(Name)sBits *b, CRbitvalue *bitID,
     
    2829{
    2930        CR%(Name)sState *from = &(fromCtx->%(name)s);
    30         CR%(Name)sState *to = &(toCtx->%(name)s);"""%vars()
     31        CR%(Name)sState *to = &(toCtx->%(name)s);"""%vars())
    3132        gendiffcode("state_%s.txt"%(Name.lower()), Name, docopy=0, doinvalid=1)
    32         print "}\n"
     33        print("}\n")
    3334
    3435def gendiffcode(fname, state_name, docopy, doinvalid):
     
    5556        FILE = open(sys.argv[3]+"/"+fname, "r")
    5657
    57         print """       unsigned int j, i;
     58        print("""       unsigned int j, i;
    5859        CRbitvalue nbitID[CR_MAX_BITARRAY];
    5960        for (j=0;j<CR_MAX_BITARRAY;j++)
    6061                nbitID[j] = ~bitID[j];
    61         i = 0; /* silence compiler */"""
     62        i = 0; /* silence compiler */""")
    6263
    6364        import re
    64         for line in FILE.xreadlines():
     65        for line in FILE:
    6566                line = line.rstrip()
    6667
     
    8788                        if re.search("}", line):
    8889                                tab = tab[:-1]
    89                         print tab+text
     90                        print(tab+text)
    9091                        if re.search("{", line):
    9192                                tab = tab+"\t"
     
    109110                if re.search("%flush", line):
    110111                        if current_guard != "":
    111                                 print tab+"CLEARDIRTY(%(bit)s->%(current_guard)s, nbitID);"%vars()
    112                                 tab = tab[:-1]
    113                                 print tab+"}"
     112                                print(tab+"CLEARDIRTY(%(bit)s->%(current_guard)s, nbitID);"%vars())
     113                                tab = tab[:-1]
     114                                print(tab+"}")
    114115                        if docopy and current_dependency != "":
    115116                                tab = tab[:-1]
    116                                 print tab+"}"
     117                                print(tab+"}")
    117118                        current_guard = ""
    118119                        current_dependency = ""
     
    127128## Close the guardbit and dependency
    128129                if current_guard != "" and current_guard != guardbit:
    129                         print tab+"CLEARDIRTY(%(bit)s->%(current_guard)s, nbitID);"%vars()
     130                        print(tab+"CLEARDIRTY(%(bit)s->%(current_guard)s, nbitID);"%vars())
    130131                        tab = tab[:-1]
    131                         print tab+"}"
     132                        print(tab+"}")
    132133                if docopy and current_dependency != "" and current_dependency != dependency:
    133134                        tab = tab[:-1]
    134                         print tab+"}"
     135                        print(tab+"}")
    135136
    136137## Open the dependency if
    137138                if docopy and current_dependency != dependency and dependency != "":
    138                         print tab+"if (%(target)s->%(dependency)s)\n%(tab)s{"%vars()
     139                        print(tab+"if (%(target)s->%(dependency)s)\n%(tab)s{"%vars())
    139140                        tab = tab+"\t"
    140141                        current_dependency = dependency
     
    142143## Open the guard if
    143144                if docopy and current_dependency != dependency and dependency != "":
    144                         print tab+"if ($(target)s->%(dependency)s)\n%(tab)s{"%vars()
     145                        print(tab+"if ($(target)s->%(dependency)s)\n%(tab)s{"%vars())
    145146                        tab = tab+"\t"
    146147               
    147148                if current_guard != guardbit and guardbit != "":
    148                         print tab+"if (CHECKDIRTY(%(bit)s->%(guardbit)s, bitID))\n%(tab)s{"%vars()
     149                        print(tab+"if (CHECKDIRTY(%(bit)s->%(guardbit)s, bitID))\n%(tab)s{"%vars())
    149150                        tab = tab+"\t"
    150151                        if members[0] != "*" and guardbit[0:6] == "enable":
    151                                 print tab+"glAble able[2];"
    152                                 print tab+"able[0] = diff_api.Disable;"
    153                                 print tab+"able[1] = diff_api.Enable;"
     152                                print(tab+"glAble able[2];")
     153                                print(tab+"able[0] = diff_api.Disable;")
     154                                print(tab+"able[1] = diff_api.Enable;")
    154155
    155156                current_dependency = dependency
     
    158159## Handle text dump
    159160                if members[0] == "*":
    160                         print tab+members[1:]
     161                        print(tab+members[1:])
    161162                else:
    162163                        ## Parse the members variable
     
    181182                                for elem in elems:
    182183                                        if first != 1:
    183                                                 print " ||\n"+tab+"    ",
     184                                                print(" ||\n"+tab+"    ", end="")
    184185                                        first = 0
    185186                                        sys.stdout.write("%(current)s->%(elem)s != %(target)s->%(elem)s"%vars())
    186                                 print ")\n"+tab+"{"
     187                                print(")\n"+tab+"{")
    187188                                tab = tab+"\t"
    188189
     
    190191                        if func[0] == "*":
    191192                                func = func[1:]
    192                                 print tab+func
     193                                print(tab+func)
    193194                        else:
    194195                                if func != "":
    195196## Call the glhw function
    196197                                        if guardbit[0:6] == "enable":
    197                                                 print tab+"able["+target+"->"+elems[0]+"]("+func+");"
     198                                                print(tab+"able["+target+"->"+elems[0]+"]("+func+");")
    198199                                        elif guardbit == "extensions":
    199                                                 print tab+"crState$state_name",
     200                                                print(tab+"crState$state_name",end="")
    200201                                                if docopy == 1:
    201                                                         print "Diff",
     202                                                        print("Diff",end="")
    202203                                                else:
    203                                                         print "Switch",
    204                                                 print "Extensions( from, to );"
     204                                                        print("Switch",end="")
     205                                                print("Extensions( from, to );")
    205206                                        else:
    206207                                                funcargs = re.split(",", func)
     
    211212                                                        v_type = func[-2:-1]
    212213                                                        num_elems = len(elems)
    213                                                         print tab+v_types[v_type]+" varg["+str(num_elems)+"];"
     214                                                        print(tab+v_types[v_type]+" varg["+str(num_elems)+"];")
    214215                                                        i = 0
    215216                                                        for elem in elems:
    216                                                                 print tab+"varg["+str(i)+"] = "+target+"->"+elem+";"
     217                                                                print(tab+"varg["+str(i)+"] = "+target+"->"+elem+";")
    217218                                                                i += 1
    218219                                                elif func[-3:] == "vNV":
    219220                                                        v_type = func[-4:-3]
    220221                                                        num_elems = len(elems)
    221                                                         print tab+v_types[v_type]+" varg["+str(num_elems)+"];"
     222                                                        print(tab+v_types[v_type]+" varg["+str(num_elems)+"];")
    222223                                                        i = 0
    223224                                                        for elem in elems:
    224                                                                 print tab+"varg["+str(i)+"] = "+target+"->"+elem+";"
     225                                                                print(tab+"varg["+str(i)+"] = "+target+"->"+elem+";")
    225226                                                                i += 1
    226227
     
    239240                                                                first = 0
    240241                                                                sys.stdout.write(target+"->"+elem)
    241                                                 print ");"
     242                                                print(");")
    242243
    243244## Do the sync if necessary
    244245                        if docopy and guardbit != "extensions":
    245246                                for elem in  mainelem:
    246                                         print tab+current+"->"+elem+" = "+target+"->"+elem+";"
     247                                        print(tab+current+"->"+elem+" = "+target+"->"+elem+";")
    247248
    248249                        ## Do the clear if necessary
    249250                        if doinvalid:
    250251                                if guardbit != "":
    251                                         print tab+"FILLDIRTY(%(bit)s->%(guardbit)s);"%vars()
    252                                 print tab+"FILLDIRTY(%(bit)s->dirty);"%vars()
     252                                        print(tab+"FILLDIRTY(%(bit)s->%(guardbit)s);"%vars())
     253                                print(tab+"FILLDIRTY(%(bit)s->dirty);"%vars())
    253254                                if extrabit != "":
    254                                         print tab+"FILLDIRTY(%(extrabit)s->dirty);"%vars()
     255                                        print(tab+"FILLDIRTY(%(extrabit)s->dirty);"%vars())
    255256
    256257                        ## Close the compare
    257258                        if guardbit != "extensions":
    258259                                tab = tab[:-1]
    259                                 print tab+"}"
     260                                print(tab+"}")
    260261
    261262## Do final closures
    262263        if current_guard != "":
    263                 print tab+"CLEARDIRTY(%(bit)s->%(current_guard)s, nbitID);"%vars()
     264                print(tab+"CLEARDIRTY(%(bit)s->%(current_guard)s, nbitID);"%vars())
    264265                tab = tab[:-1]
    265                 print tab+"}"
     266                print(tab+"}")
    266267        if docopy and current_dependency != "":
    267268                tab = tab[:-1]
    268                 print tab+"} /*%(current_dependency)s*/"%vars()
    269 
    270         print tab+"CLEARDIRTY(%(bit)s->dirty, nbitID);"%vars()
     269                print(tab+"} /*%(current_dependency)s*/"%vars())
     270
     271        print(tab+"CLEARDIRTY(%(bit)s->dirty, nbitID);"%vars())
    271272
    272273main()
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/get_components.py

    r50041 r63939  
    33#
    44# See the file LICENSE.txt for information on redistributing this software.
     5
     6from __future__ import print_function
    57
    68num_components = {
     
    114116}
    115117
    116 print """unsigned int crStateHlpComponentsCount( GLenum pname )
     118print("""unsigned int crStateHlpComponentsCount( GLenum pname )
    117119{
    118120        switch( pname )
    119121        {
    120 """
    121 comps = num_components.keys();
    122 comps.sort();
    123 for comp in comps:
    124         print '\t\t\tcase %s: return %d;' % (comp,num_components[comp])
     122""")
     123for comp in sorted(num_components.keys()):
     124        print('\t\t\tcase %s: return %d;' % (comp,num_components[comp]))
    125125
    126 comps = num_extended_components.keys();
    127 comps.sort();
    128 for comp in comps:
     126for comp in sorted(num_extended_components.keys()):
    129127        (nc, ifdef) = num_extended_components[comp]
    130         print '#ifdef %s' % ifdef
    131         print '\t\t\tcase %s: return %d;' % (comp,nc)
    132         print '#endif /* %s */' % ifdef
     128        print('#ifdef %s' % ifdef)
     129        print('\t\t\tcase %s: return %d;' % (comp,nc))
     130        print('#endif /* %s */' % ifdef)
    133131
    134 print """
     132print("""
    135133                default:
    136134                        crError( "Unknown parameter name in crStateHlpComponentsCount: %d", (int) pname );
     
    140138        return 0;
    141139}
    142 """
     140""")
    143141
    144142
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/state_current.py

    r51319 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print '''
     14print('''
    1415#include "state/cr_currentpointers.h"
    1516#include "state.h"
     
    2223
    2324typedef void (*convert_func) (GLfloat *, const unsigned char *);
    24 '''
     25''')
    2526
    2627import convert
    2728
    28 for k in current_fns.keys():
     29for k in sorted(current_fns.keys()):
    2930        name = k
    3031        name = '%s%s' % (k[:1].lower(),k[1:])
     
    3233        num_members = len(current_fns[k]['default']) + 1
    3334
    34         print '#define VPINCH_CONVERT_%s(op,data,dst) \\' % ucname
    35         print '{\\'
    36         print '\tGLfloat vdata[%d] = {' % num_members,
     35        print('#define VPINCH_CONVERT_%s(op,data,dst) \\' % ucname)
     36        print('{\\')
     37        print('\tGLfloat vdata[%d] = {' % num_members, end=' ')
    3738
    3839## Copy dst data into vdata
    3940        i = 0;
    4041        for defaultvar in current_fns[k]['default']:
    41                 print '%d' % defaultvar,
     42                print('%d' % defaultvar, end=' ')
    4243                if i != num_members:
    43                         print ',',
     44                        print(',', end=' ')
    4445                i += 1
    45         print '};\\'
    46 
    47         print '\tswitch (op) { \\'
     46        print('};\\')
     47
     48        print('\tswitch (op) { \\')
    4849        for type in current_fns[k]['types']:
    4950                if type[0:1] == "N":
     
    5556                        uctype = type.upper()
    5657                        if ucname == 'EDGEFLAG':
    57                                 print '\tcase CR_%s_OPCODE: \\' % ucname
     58                                print('\tcase CR_%s_OPCODE: \\' % ucname)
    5859                        else:
    59                                 print '\tcase CR_%s%d%s_OPCODE: \\' % (ucname,size,uctype)
     60                                print('\tcase CR_%s%d%s_OPCODE: \\' % (ucname,size,uctype))
    6061                       
    6162                        if (ucname == 'COLOR' or ucname == 'NORMAL' or ucname == 'SECONDARYCOLOR' or normalize) and type != 'f' and type != 'd':
    62                                 print '\t\t__convert_rescale_%s%d (vdata, (%s *) (data)); \\' % (type,size,gltypes[type]['type'])
     63                                print('\t\t__convert_rescale_%s%d (vdata, (%s *) (data)); \\' % (type,size,gltypes[type]['type']))
    6364                        else:
    64                                 print '\t\t__convert_%s%d (vdata, (%s *) (data)); \\' % (type,size,gltypes[type]['type'])
    65                         print '\t\tbreak; \\'
    66 
    67         print '\tdefault: \\'
    68         print '\t\tcrSimpleError ( "Unknown opcode in VPINCH_CONVERT_%s" ); \\' % ucname
    69         print '\t}\\'
     65                                print('\t\t__convert_%s%d (vdata, (%s *) (data)); \\' % (type,size,gltypes[type]['type']))
     66                        print('\t\tbreak; \\')
     67
     68        print('\tdefault: \\')
     69        print('\t\tcrSimpleError ( "Unknown opcode in VPINCH_CONVERT_%s" ); \\' % ucname)
     70        print('\t}\\')
    7071
    7172        i = 0
    7273        for member in current_fns[k]['members']:
    73                 print '\t(dst).%s = vdata[%d];\\' % (member,i)
     74                print('\t(dst).%s = vdata[%d];\\' % (member,i))
    7475                i += 1
    7576
    76         print '}\n'
    77 
    78 print '''
     77        print('}\n')
     78
     79print('''
    7980
    8081void crStateCurrentRecover( void )
     
    187188        c->colorIndexPre = c->colorIndex;
    188189
    189 '''
    190 
    191 for k in current_fns.keys():
    192         print '\t/* %s */' % k
    193         print '\tv=NULL;'
     190''')
     191
     192for k in sorted(current_fns.keys()):
     193        print('\t/* %s */' % k)
     194        print('\tv=NULL;')
    194195        name = '%s%s' % (k[:1].lower(),k[1:])
    195196
    196197        indent = ""
    197         if current_fns[k].has_key( 'array' ):
    198                 print '\tfor (i = 0 ; i < %s ; i++)' % current_fns[k]['array']
    199                 print '\t{'
     198        if 'array' in current_fns[k]:
     199                print('\tfor (i = 0 ; i < %s ; i++)' % current_fns[k]['array'])
     200                print('\t{')
    200201                indent += "\t"
    201202        for type in current_fns[k]['types']:
     
    208209                for size in current_fns[k]['sizes']:
    209210                        ptr = '%s->%s%d' % (name, type, size )
    210                         if current_fns[k].has_key( 'array' ):
     211                        if 'array' in current_fns[k]:
    211212                                ptr += "[i]"
    212                         print '%s\tif (v < %s)' % (indent, ptr)
    213                         print '%s\t{' % indent
    214                         print '%s\t\tv = %s;' % (indent, ptr)
     213                        print('%s\tif (v < %s)' % (indent, ptr))
     214                        print('%s\t{' % indent)
     215                        print('%s\t\tv = %s;' % (indent, ptr))
    215216                        if (k == 'Color' or k == 'Normal' or k == 'SecondaryColor' or normalized) and type != 'f' and type != 'd' and type != 'l':
    216                                 print '%s\t\tconvert = (convert_func) __convert_rescale_%s%d;' % (indent,type,size)
     217                                print('%s\t\tconvert = (convert_func) __convert_rescale_%s%d;' % (indent,type,size))
    217218                        else:
    218                                 print '%s\t\tconvert = (convert_func) __convert_%s%d;' % (indent,type,size)
    219                         print '%s\t}' % indent
    220         print ''
    221         print '%s\tif (v != NULL) {' % indent
    222         if current_fns[k].has_key( 'array' ):
     219                                print('%s\t\tconvert = (convert_func) __convert_%s%d;' % (indent,type,size))
     220                        print('%s\t}' % indent)
     221        print('')
     222        print('%s\tif (v != NULL) {' % indent)
     223        if 'array' in current_fns[k]:
    223224                if k == 'TexCoord':
    224                         print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0 + i], %s_default);' % (indent,name)
     225                        print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0 + i], %s_default);' % (indent,name))
    225226                else:
    226                         print '%s\t\tCOPY_4V(c->%s[i], %s_default);' % (indent,name,name)
     227                        print('%s\t\tCOPY_4V(c->%s[i], %s_default);' % (indent,name,name))
    227228        else:
    228229                if k == 'Normal':
    229                         print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_NORMAL], %s_default);' % (indent,name)
     230                        print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_NORMAL], %s_default);' % (indent,name))
    230231                elif k == 'FogCoord':
    231                         print '%s\t\tc->vertexAttrib[VERT_ATTRIB_FOG][0] =  %s_default;' % (indent,name)
     232                        print('%s\t\tc->vertexAttrib[VERT_ATTRIB_FOG][0] =  %s_default;' % (indent,name))
    232233                elif k == 'Color':
    233                         print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR0], %s_default);' % (indent,name)
     234                        print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR0], %s_default);' % (indent,name))
    234235                elif k == 'SecondaryColor':
    235                         print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR1],  %s_default);' % (indent,name)
     236                        print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR1],  %s_default);' % (indent,name))
    236237                elif k == 'TexCoord':
    237                         print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0], %s_default);' % (indent,name)
     238                        print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0], %s_default);' % (indent,name))
    238239                elif k == 'Index':
    239                         print '%s\t\tc->colorIndex =  %s_default;' % (indent,name)
     240                        print('%s\t\tc->colorIndex =  %s_default;' % (indent,name))
    240241                elif k == 'EdgeFlag':
    241                         print '%s\t\tc->edgeFlag =  %s_default;' % (indent,name)
     242                        print('%s\t\tc->edgeFlag =  %s_default;' % (indent,name))
    242243                else:
    243                         print '%s\t\tc->%s = %s_default;' % (indent,name,name)
     244                        print('%s\t\tc->%s = %s_default;' % (indent,name,name))
    244245        if k == 'EdgeFlag':
    245                 print '%s\t\t__convert_boolean (&c->edgeFlag, v);' % (indent)
     246                print('%s\t\t__convert_boolean (&c->edgeFlag, v);' % (indent))
    246247                dirtyVar = 'cb->edgeFlag'
    247248        elif k == 'Normal':
    248                 print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_NORMAL][0]), v);' % (indent)
     249                print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_NORMAL][0]), v);' % (indent))
    249250                dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_NORMAL]'
    250251        elif k == 'TexCoord':
    251                 print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_TEX0 + i][0]), v);' % (indent)
     252                print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_TEX0 + i][0]), v);' % (indent))
    252253                dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_TEX0 + i]'
    253254        elif k == 'Color':
    254                 print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR0][0]), v);' % (indent)
     255                print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR0][0]), v);' % (indent))
    255256                dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_COLOR0]'
    256257        elif k == 'Index':
    257                 print '%s\t\tconvert(&(c->colorIndex), v);' % (indent)
     258                print('%s\t\tconvert(&(c->colorIndex), v);' % (indent))
    258259                dirtyVar = 'cb->colorIndex'
    259260        elif k == 'SecondaryColor':
    260                 print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR1][0]), v);' % (indent)
     261                print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR1][0]), v);' % (indent))
    261262                dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_COLOR1]'
    262263        elif k == 'FogCoord':
    263                 print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_FOG][0]), v);' % (indent)
     264                print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_FOG][0]), v);' % (indent))
    264265                dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_FOG]'
    265266        elif k == 'VertexAttrib':
    266                 print '%s\t\tconvert(&(c->vertexAttrib[i][0]), v);' % (indent)
     267                print('%s\t\tconvert(&(c->vertexAttrib[i][0]), v);' % (indent))
    267268                dirtyVar = 'cb->vertexAttrib[i]'
    268269        else:
    269270                assert 0  # should never get here
    270271
    271         print '%s\t\tDIRTY(%s, nbitID);' % (indent, dirtyVar)
     272        print('%s\t\tDIRTY(%s, nbitID);' % (indent, dirtyVar))
    272273
    273274#       if current_fns[k].has_key( 'array' ):
     
    278279
    279280
    280         print '%s\t\tDIRTY(cb->dirty, nbitID);' % indent
    281         print '%s\t}' % indent
    282         if current_fns[k].has_key( 'array' ):
    283                 print '%s\t%s->ptr[i] = v;' % (indent, name )
     281        print('%s\t\tDIRTY(cb->dirty, nbitID);' % indent)
     282        print('%s\t}' % indent)
     283        if 'array' in current_fns[k]:
     284                print('%s\t%s->ptr[i] = v;' % (indent, name ))
    284285        else:
    285                 print '%s\t%s->ptr = v;' % (indent, name )
    286         if current_fns[k].has_key( 'array' ):
    287                 print '\t}'
    288 print '}'
    289 
    290 print '''
     286                print('%s\t%s->ptr = v;' % (indent, name ))
     287        if 'array' in current_fns[k]:
     288                print('\t}')
     289print('}')
     290
     291print('''
    291292
    292293void crStateCurrentRecoverNew(CRContext *g, CRCurrentStatePointers  *current)
     
    365366
    366367
    367 '''
    368 
    369 for k in current_fns_new.keys():
    370     print '\t/* %s */' % k
    371     print '\tif (current->changed%s)' % k
    372     print '\t{'
    373     print '\t\tv=NULL;'
     368''')
     369
     370for k in sorted(current_fns_new.keys()):
     371    print('\t/* %s */' % k)
     372    print('\tif (current->changed%s)' % k)
     373    print('\t{')
     374    print('\t\tv=NULL;')
    374375    name = '%s%s' % (k[:1].lower(),k[1:])
    375376
    376377    indent = ""
    377     if current_fns_new[k].has_key( 'array' ):
    378         print '\t\tfor (i = 0 ; i < %s ; i++)' % current_fns_new[k]['array']
    379         print '\t\t{'
     378    if 'array' in current_fns_new[k]:
     379        print('\t\tfor (i = 0 ; i < %s ; i++)' % current_fns_new[k]['array'])
     380        print('\t\t{')
    380381        indent += "\t\t"
    381         print '\t\tif (!(current->changed%s & (1 << i))) continue;' % k
     382        print('\t\tif (!(current->changed%s & (1 << i))) continue;' % k)
    382383    for type in current_fns_new[k]['types']:
    383384        if type[0:1] == "N":
     
    389390        for size in current_fns_new[k]['sizes']:
    390391            ptr = '%s->%s%d' % (name, type, size )
    391             if current_fns_new[k].has_key( 'array' ):
     392            if 'array' in current_fns_new[k]:
    392393                ptr += "[i]"
    393             print '#ifdef DEBUG_misha'
    394             print '%s\tif (%s)' % (indent, ptr)
    395             print '%s\t{' % (indent)
    396             print '%s\t\tuint32_t *pTst = (uint32_t*)(%s);' % (indent, ptr)
    397             print '%s\t\t--pTst;' % (indent)
    398             print '%s\t\tAssert((*pTst) == i);' % (indent)
    399             print '%s\t}' % (indent)
    400             print '#endif'
    401             print '%s\tif (v < %s)' % (indent, ptr)
    402             print '%s\t{' % indent
    403             print '%s\t\tv = %s;' % (indent, ptr)
     394            print('#ifdef DEBUG_misha')
     395            print('%s\tif (%s)' % (indent, ptr))
     396            print('%s\t{' % (indent))
     397            print('%s\t\tuint32_t *pTst = (uint32_t*)(%s);' % (indent, ptr))
     398            print('%s\t\t--pTst;' % (indent))
     399            print('%s\t\tAssert((*pTst) == i);' % (indent))
     400            print('%s\t}' % (indent))
     401            print('#endif')
     402            print('%s\tif (v < %s)' % (indent, ptr))
     403            print('%s\t{' % indent)
     404            print('%s\t\tv = %s;' % (indent, ptr))
    404405            if (k == 'Color' or k == 'Normal' or k == 'SecondaryColor' or normalized) and type != 'f' and type != 'd' and type != 'l':
    405                 print '%s\t\tconvert = (convert_func) __convert_rescale_%s%d;' % (indent,type,size)
     406                print('%s\t\tconvert = (convert_func) __convert_rescale_%s%d;' % (indent,type,size))
    406407            else:
    407                 print '%s\t\tconvert = (convert_func) __convert_%s%d;' % (indent,type,size)
    408             print '%s\t}' % indent
    409     print ''
    410     print '%s\tif (v != NULL) {' % indent
    411     if current_fns_new[k].has_key( 'array' ):
     408                print('%s\t\tconvert = (convert_func) __convert_%s%d;' % (indent,type,size))
     409            print('%s\t}' % indent)
     410    print('')
     411    print('%s\tif (v != NULL) {' % indent)
     412    if 'array' in current_fns_new[k]:
    412413        if k == 'TexCoord':
    413             print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0 + i], %s_default);' % (indent,name)
     414            print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0 + i], %s_default);' % (indent,name))
    414415        else:
    415             print '%s\t\tCOPY_4V(c->%s[i], %s_default);' % (indent,name,name)
     416            print('%s\t\tCOPY_4V(c->%s[i], %s_default);' % (indent,name,name))
    416417    else:
    417418        if k == 'Normal':
    418             print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_NORMAL], %s_default);' % (indent,name)
     419            print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_NORMAL], %s_default);' % (indent,name))
    419420        elif k == 'FogCoord':
    420             print '%s\t\tc->vertexAttrib[VERT_ATTRIB_FOG][0] =  %s_default;' % (indent,name)
     421            print('%s\t\tc->vertexAttrib[VERT_ATTRIB_FOG][0] =  %s_default;' % (indent,name))
    421422        elif k == 'Color':
    422             print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR0], %s_default);' % (indent,name)
     423            print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR0], %s_default);' % (indent,name))
    423424        elif k == 'SecondaryColor':
    424             print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR1],  %s_default);' % (indent,name)
     425            print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_COLOR1],  %s_default);' % (indent,name))
    425426        elif k == 'TexCoord':
    426             print '%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0], %s_default);' % (indent,name)
     427            print('%s\t\tCOPY_4V(c->vertexAttrib[VERT_ATTRIB_TEX0], %s_default);' % (indent,name))
    427428        elif k == 'Index':
    428             print '%s\t\tc->colorIndex =  %s_default;' % (indent,name)
     429            print('%s\t\tc->colorIndex =  %s_default;' % (indent,name))
    429430        elif k == 'EdgeFlag':
    430             print '%s\t\tc->edgeFlag =  %s_default;' % (indent,name)
     431            print('%s\t\tc->edgeFlag =  %s_default;' % (indent,name))
    431432        else:
    432             print '%s\t\tc->%s = %s_default;' % (indent,name,name)
     433            print('%s\t\tc->%s = %s_default;' % (indent,name,name))
    433434    if k == 'EdgeFlag':
    434         print '%s\t\t__convert_boolean (&c->edgeFlag, v);' % (indent)
     435        print('%s\t\t__convert_boolean (&c->edgeFlag, v);' % (indent))
    435436        dirtyVar = 'cb->edgeFlag'
    436437    elif k == 'Normal':
    437         print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_NORMAL][0]), v);' % (indent)
     438        print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_NORMAL][0]), v);' % (indent))
    438439        dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_NORMAL]'
    439440    elif k == 'TexCoord':
    440         print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_TEX0 + i][0]), v);' % (indent)
     441        print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_TEX0 + i][0]), v);' % (indent))
    441442        dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_TEX0 + i]'
    442443    elif k == 'Color':
    443         print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR0][0]), v);' % (indent)
     444        print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR0][0]), v);' % (indent))
    444445        dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_COLOR0]'
    445446    elif k == 'Index':
    446         print '%s\t\tconvert(&(c->colorIndex), v);' % (indent)
     447        print('%s\t\tconvert(&(c->colorIndex), v);' % (indent))
    447448        dirtyVar = 'cb->colorIndex'
    448449    elif k == 'SecondaryColor':
    449         print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR1][0]), v);' % (indent)
     450        print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_COLOR1][0]), v);' % (indent))
    450451        dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_COLOR1]'
    451452    elif k == 'FogCoord':
    452         print '%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_FOG][0]), v);' % (indent)
     453        print('%s\t\tconvert(&(c->vertexAttrib[VERT_ATTRIB_FOG][0]), v);' % (indent))
    453454        dirtyVar = 'cb->vertexAttrib[VERT_ATTRIB_FOG]'
    454455    elif k == 'VertexAttrib':
    455         print '%s\t\tconvert(&(c->vertexAttrib[i][0]), v);' % (indent)
     456        print('%s\t\tconvert(&(c->vertexAttrib[i][0]), v);' % (indent))
    456457        dirtyVar = 'cb->vertexAttrib[i]'
    457458    else:
    458459        assert 0  # should never get here
    459460
    460     print '%s\t\tDIRTY(%s, nbitID);' % (indent, dirtyVar)
     461    print('%s\t\tDIRTY(%s, nbitID);' % (indent, dirtyVar))
    461462
    462463#   if current_fns_new[k].has_key( 'array' ):
     
    467468
    468469
    469     print '%s\t\tDIRTY(cb->dirty, nbitID);' % indent
    470     print '%s\t}' % indent
    471     if current_fns_new[k].has_key( 'array' ):
    472         print '%s\t%s->ptr[i] = v;' % (indent, name )
     470    print('%s\t\tDIRTY(cb->dirty, nbitID);' % indent)
     471    print('%s\t}' % indent)
     472    if 'array' in current_fns_new[k]:
     473        print('%s\t%s->ptr[i] = v;' % (indent, name ))
    473474    else:
    474         print '%s\t%s->ptr = v;' % (indent, name )
    475     if current_fns_new[k].has_key( 'array' ):
    476         print '\t\t}'
    477         print '\t\tcurrent->changed%s = 0;' % k
    478         print '\t}'
    479 print '\tcrStateResetCurrentPointers(current);'
    480 print '}'
     475        print('%s\t%s->ptr = v;' % (indent, name ))
     476    if 'array' in current_fns_new[k]:
     477        print('\t\t}')
     478        print('\t\tcurrent->changed%s = 0;' % k)
     479        print('\t}')
     480print('\tcrStateResetCurrentPointers(current);')
     481print('}')
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/state_funcs.py

    r15532 r63939  
    55
    66
     7from __future__ import print_function
    78import sys
    89
     
    1314apiutil.CopyrightC()
    1415
    15 print """
     16print("""
    1617/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY state_funcs.py SCRIPT */
    1718#ifndef CR_STATE_FUNCS_H
     
    3334#endif
    3435
    35 #define STATE_UNUSED(x) ((void)x)"""
     36#define STATE_UNUSED(x) ((void)x)""")
    3637
    3738
     
    4041        return_type = apiutil.ReturnType(func_name)
    4142        params = apiutil.Parameters(func_name)
    42         print 'DECLEXPORT(%s) STATE_APIENTRY crState%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params))
     43        print('DECLEXPORT(%s) STATE_APIENTRY crState%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
    4344
    4445for func_name in apiutil.AllSpecials( "state_feedback" ):
    4546        return_type = apiutil.ReturnType(func_name)
    4647        params = apiutil.Parameters(func_name)
    47         print 'DECLEXPORT(%s) STATE_APIENTRY crStateFeedback%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params))
     48        print('DECLEXPORT(%s) STATE_APIENTRY crStateFeedback%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
    4849
    4950for func_name in apiutil.AllSpecials( "state_select" ):
    5051        return_type = apiutil.ReturnType(func_name)
    5152        params = apiutil.Parameters(func_name)
    52         print 'DECLEXPORT(%s) STATE_APIENTRY crStateSelect%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params))
     53        print('DECLEXPORT(%s) STATE_APIENTRY crStateSelect%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString(params)))
    5354
    5455
    55 print """
     56print("""
    5657#ifdef __cplusplus
    5758}
     
    5960
    6061#endif /* CR_STATE_FUNCS_H */
    61 """
     62""")
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/state_get.py

    r50041 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys, re, string
    78import apiutil
     
    2122                type = match.group(1)
    2223                pname = match.group(2)
    23                 fields = string.split( match.group(3) )
     24                fields = match.group(3).split()
    2425                params[pname] = ( type, fields )
    2526
     
    3334                pname = match.group(2)
    3435                ifdef = match.group(3)
    35                 fields = string.split( match.group(4) )
     36                fields = match.group(4).split()
    3637                extended_params[pname] = ( type, ifdef, fields )
    3738
     
    104105apiutil.CopyrightC()
    105106
    106 print """
     107print("""
    107108/* DO NOT EDIT - THIS FILE GENERATED BY state_get.txt AND THE state_get.py SCRIPT */
    108109#include <stdio.h>
     
    141142    return g->framebufferobject.readFB ? g->framebufferobject.readFB->readbuffer : g->buffer.readBuffer;
    142143}
    143 """
     144""")
    144145
    145146header = """
     
    173174
    174175for rettype in types:
    175         print ''
    176         print 'void STATE_APIENTRY crStateGet%sv( GLenum pname, %s *params )' % ( rettype, ctypes[rettype] )
    177         print header
    178 
    179         keys = params.keys()
    180         keys.sort()
    181         for pname in keys:
    182                 print '\t\tcase %s:' % pname
     176        print('')
     177        print('void STATE_APIENTRY crStateGet%sv( GLenum pname, %s *params )' % ( rettype, ctypes[rettype] ))
     178        print(header)
     179
     180        for pname in sorted(params.keys()):
     181                print('\t\tcase %s:' % pname)
    183182                (srctype,fields) = params[pname]
    184183                try:
     
    187186                        for field in fields:
    188187                                expr = cvt % field
    189                                 print '\t\t\tparams[%d] = %s;' % (i,expr)
     188                                print('\t\t\tparams[%d] = %s;' % (i,expr))
    190189                                i += 1
    191190                except:
    192                         print '\t\t\tcrStateError(__LINE__,__FILE__,GL_INVALID_OPERATION, "Unimplemented glGet!");'
    193                 print "\t\t\tbreak;"
    194 
    195 
    196         keys = extended_params.keys();
    197         keys.sort()
    198         for pname in keys:
     191                        print('\t\t\tcrStateError(__LINE__,__FILE__,GL_INVALID_OPERATION, "Unimplemented glGet!");')
     192                print("\t\t\tbreak;")
     193
     194
     195        for pname in sorted(extended_params.keys()):
    199196                (srctype,ifdef,fields) = extended_params[pname]
    200197                ext = ifdef[3:]  # the extension name with the "GL_" prefix removed
    201198                #print '#ifdef %s' % ifdef
    202                 print '#ifdef CR_%s' % ext
    203                 print '\t\tcase %s:' % pname
     199                print('#ifdef CR_%s' % ext)
     200                print('\t\tcase %s:' % pname)
    204201                if ext != 'OPENGL_VERSION_1_2':
    205                         print '\t\t\tif (g->extensions.%s) {' % ext
     202                        print('\t\t\tif (g->extensions.%s) {' % ext)
    206203                try:
    207204                        cvt = convert[srctype][rettype]
     
    211208                                if field[0] == '%':
    212209                                        command = string.split(field, '%')
    213                                         print '\t\t\t\t%s;' % command[1]
     210                                        print('\t\t\t\t%s;' % command[1])
    214211                                        continue
    215212                                elif ext != 'OPENGL_VERSION_1_2':
    216                                         print '\t\t\t\tparams[%d] = %s;' % (i,expr)
     213                                        print('\t\t\t\tparams[%d] = %s;' % (i,expr))
    217214                                else:
    218                                         print '\t\t\tparams[%d] = %s;' % (i,expr)
     215                                        print('\t\t\tparams[%d] = %s;' % (i,expr))
    219216                                i += 1
    220217                except:
    221                         print '\t\t\tcrStateError(__LINE__,__FILE__,GL_INVALID_OPERATION, "Unimplemented glGet!");'
     218                        print('\t\t\tcrStateError(__LINE__,__FILE__,GL_INVALID_OPERATION, "Unimplemented glGet!");')
    222219                if ext != 'OPENGL_VERSION_1_2':
    223                         print "\t\t\t}"
    224                         print "\t\t\telse {"
    225                         print '\t\t\t\tcrStateError(__LINE__,__FILE__,GL_INVALID_ENUM, "glGet%sv");' % rettype
    226                         print "\t\t\t}"
    227                 print "\t\t\tbreak;"
     220                        print("\t\t\t}")
     221                        print("\t\t\telse {")
     222                        print('\t\t\t\tcrStateError(__LINE__,__FILE__,GL_INVALID_ENUM, "glGet%sv");' % rettype)
     223                        print("\t\t\t}")
     224                print("\t\t\tbreak;")
    228225                #print '#endif /* %s */' % ifdef
    229                 print '#endif /* CR_%s */' % ext
    230 
    231         print '\t\tdefault:'
    232         print '\t\t\tcrStateError(__LINE__, __FILE__, GL_INVALID_ENUM, "glGet: Unknown enum: 0x%x", pname);'
    233         print '\t\t\treturn;'
    234         print '\t}'
    235         print '}'
     226                print('#endif /* CR_%s */' % ext)
     227
     228        print('\t\tdefault:')
     229        print('\t\t\tcrStateError(__LINE__, __FILE__, GL_INVALID_ENUM, "glGet: Unknown enum: 0x%x", pname);')
     230        print('\t\t\treturn;')
     231        print('\t}')
     232        print('}')
    236233
    237234from get_components import *
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/state_isenabled.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys, re, string
    78import apiutil
     
    2021                type = match.group(1)
    2122                pname = match.group(2)
    22                 fields = string.split( match.group(3) )
     23                fields = match.group(3).split()
    2324                params[pname] = ( type, fields )
    2425
     
    3031                pname = match.group(2)
    3132                ifdef = match.group(3)
    32                 fields = string.split( match.group(4) )
     33                fields = match.group(4).split()
    3334                extended_params[pname] = ( type, ifdef, fields )
    3435
    3536apiutil.CopyrightC()
    3637
    37 print """
     38print("""
    3839/* DO NOT EDIT - THIS FILE GENERATED BY THE state_isenabled.py SCRIPT */
    3940#include <stdio.h>
     
    5455
    5556    switch ( pname ) {
    56 """
     57""")
    5758
    58 keys = params.keys()
    59 keys.sort();
     59for pname in sorted(params.keys()):
     60        print("\tcase %s:" % pname)
     61        print("\t\treturn %s;" % params[pname][1][0])
    6062
    61 for pname in keys:
    62         print "\tcase %s:" % pname
    63         print "\t\treturn %s;" % params[pname][1][0]
    64 
    65 keys = extended_params.keys();
    66 keys.sort()
    67 
    68 for pname in keys:
     63for pname in sorted(extended_params.keys()):
    6964        (srctype,ifdef,fields) = extended_params[pname]
    7065        ext = ifdef[3:]  # the extension name with the "GL_" prefix removed
    7166        ext = ifdef
    72         print '#ifdef CR_%s' % ext
    73         print "\tcase %s:" % pname
    74         print "\t\treturn %s;" % extended_params[pname][2][0]
    75         print '#endif /* CR_%s */' % ext
    76 print "\tdefault:"
    77 print "\t\tcrStateError(__LINE__, __FILE__, GL_INVALID_ENUM, \"glIsEnabled: Unknown enum: %d\", pname);"
    78 print "\t\treturn 0;"
    79 print "\t}"
    80 print "}"
     67        print('#ifdef CR_%s' % ext)
     68        print("\tcase %s:" % pname)
     69        print("\t\treturn %s;" % extended_params[pname][2][0])
     70        print('#endif /* CR_%s */' % ext)
     71print("\tdefault:")
     72print("\t\tcrStateError(__LINE__, __FILE__, GL_INVALID_ENUM, \"glIsEnabled: Unknown enum: %d\", pname);")
     73print("\t\treturn 0;")
     74print("\t}")
     75print("}")
  • trunk/src/VBox/GuestHost/OpenGL/util/debug_opcodes.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys;
    7 import cPickle;
    88import string;
    99import re;
     
    1313apiutil.CopyrightC()
    1414
    15 print """
     15print("""
    1616#include "cr_debugopcodes.h"
    1717#include <stdio.h>
    18 """
     18""")
    1919
    20 print """void crDebugOpcodes( FILE *fp, unsigned char *ptr, unsigned int num_opcodes )
     20print("""void crDebugOpcodes( FILE *fp, unsigned char *ptr, unsigned int num_opcodes )
    2121{
    2222\tunsigned int i;
     
    2525\t\tswitch(*(ptr--))
    2626\t\t{
    27 """
     27""")
    2828
    2929keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    3232for func_name in keys:
    3333        if "pack" in apiutil.ChromiumProps(func_name):
    34                 print '\t\tcase %s:' % apiutil.OpcodeName( func_name )
    35                 print '\t\t\tfprintf( fp, "%s\\n" ); ' % apiutil.OpcodeName( func_name )
    36                 print '\t\t\tbreak;'
     34                print('\t\tcase %s:' % apiutil.OpcodeName( func_name ))
     35                print('\t\t\tfprintf( fp, "%s\\n" ); ' % apiutil.OpcodeName( func_name ))
     36                print( '\t\t\tbreak;')
    3737
    38 print """
     38print("""
    3939\t\t}
    4040\t}
    4141}
    42 """
     42""")
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/get_sizes.py

    r57909 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67
    78num_get_values = {
     
    412413}
    413414
    414 get_keys = num_get_values.keys() + extensions_num_get_values.keys()
     415get_keys = list(num_get_values.keys()) + list(extensions_num_get_values.keys())
    415416get_keys.sort()
    416417max_keyvalues = 0
    417418
    418 print """
     419print("""
    419420static struct nv_struct { GLenum pname; unsigned int num_values;
    420421#ifdef VBOX_WITH_CRDUMPER
     
    422423#endif
    423424} num_values_array[] = {
    424 """
     425""")
    425426for key in get_keys:
    426427    try:
     
    428429        if max_keyvalues < keyvalues:
    429430            max_keyvalues = keyvalues
    430         print """
     431        print("""
    431432        \t{ %s, %d
    432433#ifdef VBOX_WITH_CRDUMPER
     
    434435#endif
    435436        },
    436         """ % (key, keyvalues, key)
     437        """ % (key, keyvalues, key))
    437438    except KeyError:
    438439        (nv, ifdef) = extensions_num_get_values[key]
    439440        if max_keyvalues < nv:
    440441            max_keyvalues = nv
    441         print '#ifdef %s' % ifdef
    442         print """
     442        print('#ifdef %s' % ifdef)
     443        print("""
    443444        \t{ %s, %d
    444445        #ifdef VBOX_WITH_CRDUMPER
     
    446447        #endif
    447448        },
    448         """ % (key, nv, key)
    449         print '#endif /* %s */' % ifdef
    450 print "\t{ 0, 0 }"
    451 print "};"
    452 print "#define CR_MAX_GET_VALUES %d" % max_keyvalues
    453 
    454 print """
     449        """ % (key, nv, key))
     450        print('#endif /* %s */' % ifdef)
     451print("\t{ 0, 0 }")
     452print("};")
     453print("#define CR_MAX_GET_VALUES %d" % max_keyvalues)
     454
     455print("""
    455456static unsigned int __numValues( GLenum pname )
    456457{
     
    465466    return 0;
    466467}
    467 """
     468""")
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_dispatch.py

    r50443 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys, string, re
    78
     
    1213apiutil.CopyrightC()
    1314
    14 print """
     15print("""
    1516/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY server_dispatch.py SCRIPT */
    1617#include "cr_spu.h"
     
    2223
    2324CRCurrentStatePointers crServerCurrent;
    24 """
     25""")
    2526
    2627
     
    3334    wrap = apiutil.GetCategoryWrapper(func_name)
    3435    if wrap:
    35         print '#if defined(CR_%s)' % wrap
    36     print 'void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( func_name, apiutil.MakeDeclarationString( params ) )
    37     print '{'
    38     print '\tcrState%s( %s );' % (func_name, apiutil.MakeCallString( params ) )
    39     print '\tcr_server.head_spu->dispatch_table.%s( %s );' % (func_name, apiutil.MakeCallString( params ) )
    40     print '}'
     36        print('#if defined(CR_%s)' % wrap)
     37    print('void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( func_name, apiutil.MakeDeclarationString( params ) ))
     38    print('{')
     39    print('\tcrState%s( %s );' % (func_name, apiutil.MakeCallString( params ) ))
     40    print('\tcr_server.head_spu->dispatch_table.%s( %s );' % (func_name, apiutil.MakeCallString( params ) ))
     41    print('}')
    4142    if wrap:
    42         print '#endif'
     43        print('#endif')
    4344
    4445
     
    5152    if m :
    5253        current = 1
    53         name = string.lower( m.group(1)[:1] ) + m.group(1)[1:]
     54        name = m.group(1)[:1].lower() + m.group(1)[1:]
    5455        type = m.group(3) + m.group(2)
    5556    m = re.search( r"^(SecondaryColor)(3)(ub|b|us|s|ui|i|f|d)(EXT)$", func_name )
    5657    if m :
    5758        current = 1
    58         name = string.lower(m.group(1)[:1] ) + m.group(1)[1:]
     59        name = m.group(1)[:1].lower() + m.group(1)[1:]
    5960        type = m.group(3) + m.group(2)
    6061    m = re.search( r"^(TexCoord)([1234])(ub|b|us|s|ui|i|f|d)$", func_name )
    6162    if m :
    6263        current = 1
    63         name = string.lower( m.group(1)[:1] ) + m.group(1)[1:]
     64        name = m.group(1)[:1].lower() + m.group(1)[1:]
    6465        type = m.group(3) + m.group(2)
    6566        array = "[0]"
     
    7475    if m :
    7576        current = 1
    76         name = string.lower( m.group(1)[:1] ) + m.group(1)[1:]
     77        name = m.group(1)[:1].lower() + m.group(1)[1:]
    7778        type = m.group(2) + "1"
    7879    m = re.match( r"^(EdgeFlag)$", func_name )
    7980    if m :
    8081        current = 1
    81         name = string.lower( m.group(1)[:1] ) + m.group(1)[1:]
     82        name = m.group(1)[:1].lower() + m.group(1)[1:]
    8283        type = "l1"
    8384    m = re.match( r"^(FogCoord)(f|d)(EXT)$", func_name)
    8485    if m :
    8586        current = 1
    86         name = string.lower( m.group(1)[:1] ) + m.group(1)[1:]
     87        name = m.group(1)[:1].lower() + m.group(1)[1:]
    8788        type = m.group(2) + "1"
    8889       
     
    9192    if m :
    9293        current = 1
    93         name = string.lower( m.group(1)[:1] ) + m.group(1)[1:]
     94        name = m.group(1)[:1].lower() + m.group(1)[1:]
    9495        type = m.group(3) + m.group(2)
    9596        array = "[index]"
     
    104105    if current:
    105106        params = apiutil.Parameters(func_name)
    106         print 'void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params) )
    107         print '{'
    108         print '\t%s' % (condition)
    109         print '\t{'
    110         print '\t\tcr_server.head_spu->dispatch_table.%s( %s );' % (func_name, apiutil.MakeCallString(params) )
    111         print "\t\tcr_server.current.c.%s.%s%s = cr_unpackData;" % (name,type,array)
    112         print '\t}'
    113         print '}\n'
     107        print('void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params) ))
     108        print('{')
     109        print('\t%s' % (condition))
     110        print('\t{')
     111        print('\t\tcr_server.head_spu->dispatch_table.%s( %s );' % (func_name, apiutil.MakeCallString(params) ))
     112        print("\t\tcr_server.current.c.%s.%s%s = cr_unpackData;" % (name,type,array))
     113        print('\t}')
     114        print('}\n')
    114115
    115 print """
     116print("""
    116117void crServerInitDispatch(void)
    117118{
    118119    crSPUInitDispatchTable( &(cr_server.dispatch) );
    119120    crSPUCopyDispatchTable( &(cr_server.dispatch), &(cr_server.head_spu->dispatch_table ) );
    120 """
     121""")
    121122
    122123for func_name in keys:
     
    127128        wrap = apiutil.GetCategoryWrapper(func_name)
    128129        if wrap:
    129             print '#if defined(CR_%s)' % wrap
     130            print('#if defined(CR_%s)' % wrap)
    130131           
    131         print '\tcr_server.dispatch.%s = crServerDispatch%s;' % (func_name, func_name)
     132        print('\tcr_server.dispatch.%s = crServerDispatch%s;' % (func_name, func_name))
    132133        if wrap:
    133             print '#endif'
     134            print('#endif')
    134135
    135 print '}'
     136print('}')
    136137
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_dispatch_header.py

    r43888 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1011apiutil.CopyrightC()
    1112
    12 print """
     13print("""
    1314/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY server_dispatch_header.py SCRIPT */
    1415#ifndef SERVER_DISPATCH_HEADER
     
    2829#endif
    2930
    30 """
     31""")
    3132
    3233keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    4041        return_type = apiutil.ReturnType(func_name)
    4142       
    42         print '%s SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString( params ))
     43        print('%s SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s );' % (return_type, func_name, apiutil.MakeDeclarationString( params )))
    4344
    44 print """
     45print("""
    4546#if defined(__cplusplus)
    4647}
     
    4849
    4950#endif /* SERVER_DISPATCH_HEADER */
    50 """
     51""")
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_get.py

    r50041 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415#include "cr_spu.h"
    1516#include "chromium.h"
     
    1920#include "server_dispatch.h"
    2021#include "server.h"
    21 """
     22""")
    2223
    2324max_components = {
     
    118119        params = apiutil.Parameters(func_name)
    119120
    120         print 'void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % (func_name, apiutil.MakeDeclarationString( params ) )
    121         print '{'
     121        print('void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % (func_name, apiutil.MakeDeclarationString( params ) ))
     122        print('{')
    122123
    123124        lastParam = params[-1]
     
    126127        local_argname = 'local_%s' % lastParam[0]
    127128
    128         print '\t%s %s[%d];' % ( local_argtype, local_argname, max_components[func_name] )
    129         print '\t(void) %s;' % lastParam[0]
     129        print('\t%s %s[%d];' % ( local_argtype, local_argname, max_components[func_name] ))
     130        print('\t(void) %s;' % lastParam[0])
    130131
    131132        params[-1] = (local_argname, local_argtype, 0)
    132133
    133         print '\tcr_server.head_spu->dispatch_table.%s( %s );' % ( func_name, apiutil.MakeCallString(params) )
     134        print('\tcr_server.head_spu->dispatch_table.%s( %s );' % ( func_name, apiutil.MakeCallString(params) ))
    134135
    135136        if func_name in convert_bufferid:
    136             print '\tif (pname==GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB){'
    137             print '\t\tlocal_params[0]=(%s)crStateBufferHWIDtoID((GLint)local_params[0]);' % (local_argtype);
    138             print '\t}'
     137            print('\tif (pname==GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB){')
     138            print('\t\tlocal_params[0]=(%s)crStateBufferHWIDtoID((GLint)local_params[0]);' % (local_argtype))
     139            print('\t}')
    139140
    140141        if func_name in no_pnames:
    141             print '\tcrServerReturnValue( &(%s[0]), %d*sizeof(%s) );' % (local_argname, max_components[func_name], local_argtype );
     142            print('\tcrServerReturnValue( &(%s[0]), %d*sizeof(%s) );' % (local_argname, max_components[func_name], local_argtype ))
    142143        else:
    143             print '\tcrServerReturnValue( &(%s[0]), crStateHlpComponentsCount(pname)*sizeof(%s) );' % (local_argname, local_argtype );
    144         print '}\n'
     144            print('\tcrServerReturnValue( &(%s[0]), crStateHlpComponentsCount(pname)*sizeof(%s) );' % (local_argname, local_argtype ))
     145        print ('}\n')
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_retval.py

    r52260 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """
     14print("""
    1415/* DO NOT EDIT - THIS FILE AUTOMATICALLY GENERATED BY server_retval.py SCRIPT */
    1516#include "chromium.h"
     
    5657    CRDBGPTR_SETZ(&cr_server.return_ptr);
    5758}
    58 """
     59""")
    5960
    6061keys = apiutil.GetDispatchedFunctions(sys.argv[1]+"/APIspec.txt")
     
    6869        continue
    6970    if return_type != 'void':
    70         print '%s SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( return_type, func_name, apiutil.MakeDeclarationString(params))
    71         print '{'
    72         print '\t%s retval;' % return_type
    73         print '\tretval = cr_server.head_spu->dispatch_table.%s( %s );' % (func_name, apiutil.MakeCallString(params) );
    74         print '\tcrServerReturnValue( &retval, sizeof(retval) );'
    75         print '\treturn retval; /* WILL PROBABLY BE IGNORED */'
    76         print '}'
     71        print('%s SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( return_type, func_name, apiutil.MakeDeclarationString(params)))
     72        print('{')
     73        print('\t%s retval;' % return_type)
     74        print('\tretval = cr_server.head_spu->dispatch_table.%s( %s );' % (func_name, apiutil.MakeCallString(params) ))
     75        print('\tcrServerReturnValue( &retval, sizeof(retval) );')
     76        print('\treturn retval; /* WILL PROBABLY BE IGNORED */')
     77        print('}')
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_simpleget.py

    r50441 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """#include "cr_spu.h"
     14print("""#include "cr_spu.h"
    1415#include "chromium.h"
    1516#include "cr_error.h"
     
    1819#include "server_dispatch.h"
    1920#include "server.h"
    20 """
     21""")
    2122
    2223from get_sizes import *;
     
    2930    func_name = funcs[index]
    3031    params = apiutil.Parameters(func_name)
    31     print 'void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params))
    32     print '{'
    33     print '\t%s *get_values;' % types[index]
    34     print '\tint tablesize;'
    35     print """
     32    print('void SERVER_DISPATCH_APIENTRY crServerDispatch%s( %s )' % ( func_name, apiutil.MakeDeclarationString(params)))
     33    print('{')
     34    print('\t%s *get_values;' % types[index])
     35    print('\tint tablesize;')
     36    print("""
    3637    #ifdef CR_ARB_texture_compression
    3738    if (GL_COMPRESSED_TEXTURE_FORMATS_ARB == pname)
     
    4647        tablesize = __numValues( pname ) * sizeof(%s);
    4748    }
    48     """ % (types[index], types[index])
    49     print '\t(void) params;'
    50     print '\tget_values = (%s *) crAlloc( tablesize );' % types[index]
    51     print '\tif (tablesize>0)'
    52     print '\tcr_server.head_spu->dispatch_table.%s( pname, get_values );' % func_name
    53     print """
     49    """ % (types[index], types[index]))
     50    print('\t(void) params;')
     51    print('\tget_values = (%s *) crAlloc( tablesize );' % types[index])
     52    print('\tif (tablesize>0)')
     53    print('\tcr_server.head_spu->dispatch_table.%s( pname, get_values );' % func_name)
     54    print("""
    5455    if (GL_TEXTURE_BINDING_1D==pname
    5556        || GL_TEXTURE_BINDING_2D==pname
     
    146147        }
    147148    }
    148     """ % (types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index])
    149     print '\tcrServerReturnValue( get_values, tablesize );'
    150     print '\tcrFree(get_values);'
    151     print '}\n'
     149    """ % (types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index], types[index]))
     150    print('\tcrServerReturnValue( get_values, tablesize );')
     151    print('\tcrFree(get_values);')
     152    print('}\n')
  • trunk/src/VBox/HostServices/SharedOpenGL/unpacker/unpack.py

    r52570 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1112apiutil.CopyrightC()
    1213
    13 print """/* DO NOT EDIT!  THIS CODE IS AUTOGENERATED BY unpack.py */
     14print("""/* DO NOT EDIT!  THIS CODE IS AUTOGENERATED BY unpack.py */
    1415
    1516#include "unpacker.h"
     
    4041static GLenum g_VBoxDbgCrPrevExtendOpcode = 0;
    4142#endif
    42 """
     43""")
    4344
    4445nodebug_opcodes = [
     
    8182    arg_len = apiutil.PacketLength( params )
    8283    if (return_type != 'void'):
    83         print '\tSET_RETURN_PTR( %d );' % (arg_len + 8) # extended opcode plus packet length
     84        print('\tSET_RETURN_PTR( %d );' % (arg_len + 8)) # extended opcode plus packet length
    8485    else:
    8586        paramList = [ ('foo', 'void *', 0) ]
    86         print '\tSET_RETURN_PTR( %d );' % (arg_len + 8 - apiutil.PacketLength(paramList))
     87        print('\tSET_RETURN_PTR( %d );' % (arg_len + 8 - apiutil.PacketLength(paramList)))
    8788
    8889
     
    9495        arg_len += apiutil.PacketLength( paramList )
    9596
    96     print '\tSET_WRITEBACK_PTR( %d );' % (arg_len + 8) # extended opcode plus packet length
     97    print('\tSET_WRITEBACK_PTR( %d );' % (arg_len + 8)) # extended opcode plus packet length
    9798
    9899
     
    107108            copy_of_params[i] = (copy_of_params[i][0], 'void', 0)
    108109            if not "get" in apiutil.Properties(func_name):
    109                 print '\tcrError( "%s needs to be special cased!" );' % func_name
     110                print('\tcrError( "%s needs to be special cased!" );' % func_name)
    110111        else:
    111             print "\t%s %s = %s;" % ( copy_of_params[i][1], name, ReadData( counter, copy_of_params[i][1] ) )
     112            print("\t%s %s = %s;" % ( copy_of_params[i][1], name, ReadData( counter, copy_of_params[i][1] ) ))
    112113        counter += apiutil.sizeof(copy_of_params[i][1])
    113114
     
    117118
    118119    if return_type != "void":
    119         print "\t(void)",
    120     else:
    121         print "\t",
    122     print "cr_unpackDispatch.%s( %s );" % (func_name, apiutil.MakeCallString(params))
     120        print("\t(void)", end=" ")
     121    else:
     122        print("\t", end="")
     123    print("cr_unpackDispatch.%s( %s );" % (func_name, apiutil.MakeCallString(params)))
    123124
    124125
     
    131132
    132133    if arg_type == "GLdouble" or arg_type == "GLclampd":
    133         print "#ifdef CR_UNALIGNED_ACCESS_OKAY"
    134         print "\tcr_unpackDispatch.%s((%s) cr_unpackData);" % (vec_func, vecType)
    135         print "#else"
     134        print("#ifdef CR_UNALIGNED_ACCESS_OKAY")
     135        print("\tcr_unpackDispatch.%s((%s) cr_unpackData);" % (vec_func, vecType))
     136        print("#else")
    136137        for index in range(0, vecSize):
    137             print "\tGLdouble v" + `index` + " = READ_DOUBLE(", `index * 8`, ");"
     138            print("\tGLdouble v" + repr(index) + " = READ_DOUBLE(", repr(index * 8), ");")
    138139        if return_type != "void":
    139             print "\t(void) cr_unpackDispatch.%s(" % func_name,
     140            print("\t(void) cr_unpackDispatch.%s(" % func_name, end=" ")
    140141        else:
    141             print "\tcr_unpackDispatch.%s(" % func_name,
     142            print("\tcr_unpackDispatch.%s(" % func_name, end=" ")
    142143        for index in range(0, vecSize):
    143             print "v" + `index`,
     144            print("v" + repr(index), end=" ")
    144145            if index != vecSize - 1:
    145                 print ",",
    146         print ");"
    147         print "#endif"
    148     else:
    149         print "\tcr_unpackDispatch.%s((%s) cr_unpackData);" % (vec_func, vecType)
     146                print(",", end=" ")
     147        print(");")
     148        print("#endif")
     149    else:
     150        print("\tcr_unpackDispatch.%s((%s) cr_unpackData);" % (vec_func, vecType))
    150151
    151152
     
    165166    return_type = apiutil.ReturnType(func_name)
    166167   
    167     print "static void crUnpack%s(void)" % func_name
    168     print "{"
     168    print("static void crUnpack%s(void)" % func_name)
     169    print("{")
    169170
    170171    vector_func = apiutil.VectorFunction(func_name)
     
    175176    packet_length = apiutil.PacketLength( params )
    176177    if packet_length == 0:
    177         print "\tINCR_DATA_PTR_NO_ARGS( );"
    178     else:
    179         print "\tINCR_DATA_PTR( %d );" % packet_length
    180     print "}\n"
     178        print("\tINCR_DATA_PTR_NO_ARGS( );")
     179    else:
     180        print("\tINCR_DATA_PTR( %d );" % packet_length)
     181    print("}\n")
    181182
    182183
     
    184185# Emit some code
    185186#
    186 print """
     187print("""
    187188typedef struct __dispatchNode {
    188189    const unsigned char *unpackData;
     
    268269#endif
    269270        switch( *unpack_opcodes )
    270         {"""
     271        {""")
    271272
    272273#
     
    275276for func_name in keys:
    276277    if "pack" in apiutil.ChromiumProps(func_name):
    277         print '\t\t\tcase %s:' % apiutil.OpcodeName( func_name )
     278        print('\t\t\tcase %s:' % apiutil.OpcodeName( func_name ))
    278279        if not apiutil.OpcodeName(func_name) in nodebug_opcodes:
    279             print """
     280            print("""
    280281#ifdef CR_UNPACK_DEBUG_LAST_OPCODES
    281282                if (i==(num_opcodes-1))
     
    283284#if defined(CR_UNPACK_DEBUG_OPCODES) || defined(CR_UNPACK_DEBUG_LAST_OPCODES)
    284285                crDebug("Unpack: %s");
    285 #endif """ % apiutil.OpcodeName(func_name)
    286         print '\t\t\t\tcrUnpack%s(); \n\t\t\t\tbreak;' % func_name
    287 
    288 print """       
     286#endif """ % apiutil.OpcodeName(func_name))
     287        print('\t\t\t\tcrUnpack%s(); \n\t\t\t\tbreak;' % func_name)
     288
     289print("""       
    289290            case CR_EXTEND_OPCODE:
    290291                #ifdef CR_UNPACK_DEBUG_OPCODES
     
    314315        unpack_opcodes--;
    315316    }
    316 }"""
     317}""")
    317318
    318319
     
    325326            return_type = apiutil.ReturnType(func_name)
    326327            params = apiutil.Parameters(func_name)
    327             print 'static void crUnpackExtend%s(void)' % func_name
    328             print '{'
     328            print('static void crUnpackExtend%s(void)' % func_name)
     329            print('{')
    329330            MakeNormalCall( return_type, func_name, params, 8 )
    330             print '}\n'
    331 
    332 print 'static void crUnpackExtend(void)'
    333 print '{'
    334 print '\tGLenum extend_opcode = %s;' % ReadData( 4, 'GLenum' );
    335 print ''
    336 print '#ifdef CR_UNPACK_DEBUG_PREV_OPCODES'
    337 print '\tg_VBoxDbgCrPrevExtendOpcode = extend_opcode;'
    338 print '#endif'
    339 print ''
    340 print '\t/*crDebug(\"Unpacking extended opcode \%d", extend_opcode);*/'
    341 print '\tswitch( extend_opcode )'
    342 print '\t{'
     331            print('}\n')
     332
     333print('static void crUnpackExtend(void)')
     334print('{')
     335print('\tGLenum extend_opcode = %s;' % ReadData( 4, 'GLenum' ))
     336print('')
     337print('#ifdef CR_UNPACK_DEBUG_PREV_OPCODES')
     338print('\tg_VBoxDbgCrPrevExtendOpcode = extend_opcode;')
     339print('#endif')
     340print('')
     341print('\t/*crDebug(\"Unpacking extended opcode \%d", extend_opcode);*/')
     342print('\tswitch( extend_opcode )')
     343print('\t{')
    343344
    344345
     
    348349for func_name in keys:
    349350    if "extpack" in apiutil.ChromiumProps(func_name):
    350         print '\t\tcase %s:' % apiutil.ExtendedOpcodeName( func_name )
    351 #        print '\t\t\t\tcrDebug("Unpack: %s");' % apiutil.ExtendedOpcodeName( func_name )
    352         print '\t\t\tcrUnpackExtend%s( );' % func_name
    353         print '\t\t\tbreak;'
    354 
    355 print """       default:
     351        print('\t\tcase %s:' % apiutil.ExtendedOpcodeName( func_name ))
     352#        print('\t\t\t\tcrDebug("Unpack: %s");' % apiutil.ExtendedOpcodeName( func_name )))
     353        print('\t\t\tcrUnpackExtend%s( );' % func_name)
     354        print('\t\t\tbreak;')
     355
     356print("""       default:
    356357            crError( "Unknown extended opcode: %d", (int) extend_opcode );
    357358            break;
    358359    }
    359360    INCR_VAR_PTR();
    360 }"""
    361 
    362 print 'static void crUnpackExtendDbg(void)'
    363 print '{'
    364 print '\tGLenum extend_opcode = %s;' % ReadData( 4, 'GLenum' );
    365 print ''
    366 print '#ifdef CR_UNPACK_DEBUG_PREV_OPCODES'
    367 print '\tg_VBoxDbgCrPrevExtendOpcode = extend_opcode;'
    368 print '#endif'
    369 print ''
    370 print '\t/*crDebug(\"Unpacking extended opcode \%d", extend_opcode);*/'
    371 print '\tswitch( extend_opcode )'
    372 print '\t{'
     361}""")
     362
     363print('static void crUnpackExtendDbg(void)')
     364print('{')
     365print('\tGLenum extend_opcode = %s;' % ReadData( 4, 'GLenum' ))
     366print('')
     367print('#ifdef CR_UNPACK_DEBUG_PREV_OPCODES')
     368print('\tg_VBoxDbgCrPrevExtendOpcode = extend_opcode;')
     369print('#endif')
     370print('')
     371print('\t/*crDebug(\"Unpacking extended opcode \%d", extend_opcode);*/')
     372print('\tswitch( extend_opcode )')
     373print('\t{')
    373374
    374375
     
    378379for func_name in keys:
    379380    if "extpack" in apiutil.ChromiumProps(func_name):
    380         print '\t\tcase %s:' % apiutil.ExtendedOpcodeName( func_name )
     381        print('\t\tcase %s:' % apiutil.ExtendedOpcodeName( func_name ))
    381382        if not apiutil.ExtendedOpcodeName(func_name) in nodebug_extopcodes:
    382             print '\t\t\tcrDebug("Unpack: %s");' % apiutil.ExtendedOpcodeName( func_name )
    383         print '\t\t\tcrUnpackExtend%s( );' % func_name
    384         print '\t\t\tbreak;'
    385 
    386 print """       default:
     383            print('\t\t\tcrDebug("Unpack: %s");' % apiutil.ExtendedOpcodeName( func_name ))
     384        print('\t\t\tcrUnpackExtend%s( );' % func_name)
     385        print('\t\t\tbreak;')
     386
     387print("""       default:
    387388            crError( "Unknown extended opcode: %d", (int) extend_opcode );
    388389            break;
    389390    }
    390391    INCR_VAR_PTR();
    391 }"""
     392}""")
  • trunk/src/VBox/HostServices/SharedOpenGL/unpacker/unpack_extend.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys
    78
     
    1213apiutil.CopyrightC()
    1314
    14 print """/* DO NOT EDIT!  THIS CODE IS AUTOGENERATED BY unpack_extend.py */
     15print("""/* DO NOT EDIT!  THIS CODE IS AUTOGENERATED BY unpack_extend.py */
    1516
    1617#ifndef UNPACK_EXTEND_H
    1718#define UNPACK_EXTEND_H 1
    1819
    19 """
     20""")
    2021
    2122
     
    2526for func_name in apiutil.AllSpecials( "unpacker" ):
    2627        if "extpack" in apiutil.ChromiumProps(func_name):
    27                 print 'extern void crUnpackExtend%s(void);' % func_name
     28                print('extern void crUnpackExtend%s(void);' % func_name)
    2829        else:
    29                 print 'extern void crUnpack%s(void);' % func_name
     30                print('extern void crUnpack%s(void);' % func_name)
    3031
    31 print """
     32print("""
    3233#endif
    33 """
     34""")
    3435
    3536
  • trunk/src/VBox/HostServices/SharedOpenGL/unpacker/unpack_header.py

    r15532 r63939  
    44# See the file LICENSE.txt for information on redistributing this software.
    55
     6from __future__ import print_function
    67import sys;
    7 import cPickle;
     8import pickle;
    89import types;
    910import string;
     
    1516
    1617parsed_file = open( "../glapi_parser/gl_header.parsed", "rb" )
    17 gl_mapping = cPickle.load( parsed_file )
     18gl_mapping = pickle.load( parsed_file )
    1819
    1920stub_common.CopyrightC()
    2021
    21 print """#ifndef CR_UNPACKFUNCTIONS_H
     22print("""#ifndef CR_UNPACKFUNCTIONS_H
    2223#define CR_UNPACKFUNCTIONS_H
    23 """
     24""")
    2425
    25 keys = gl_mapping.keys()
    26 keys.sort()
    27 
    28 for func_name in keys:
     26for func_name in sorted(gl_mapping.keys()):
    2927        ( return_type, arg_names, arg_types ) = gl_mapping[func_name]
    30         print 'void crUnpack%s();' %( func_name )
    31 print 'void crUnpackExtend();'
    32 print '\n#endif /* CR_UNPACKFUNCTIONS_H */'
     28        print('void crUnpack%s();' %( func_name ))
     29print('void crUnpackExtend();')
     30print('\n#endif /* CR_UNPACKFUNCTIONS_H */')
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette