File python3.patch of Package d2x-rebirth
--- a/SConstruct
+++ b/SConstruct
@@ -12,19 +12,8 @@
def get(self,name,value=None):
return self.ARGUMENTS.get('%s_%s' % (self.prefix, name), self.ARGUMENTS.get(name,value))
-# endianess-checker
-def checkEndian():
- import struct
- array = struct.pack('cccc', '\x01', '\x02', '\x03', '\x04')
- i = struct.unpack('i', array)
- if i == struct.unpack('<i', array):
- return "little"
- elif i == struct.unpack('>i', array):
- return "big"
- return "unknown"
-
class DXXCommon:
- __endian = checkEndian()
+ __endian = sys.byteorder
class UserSettings:
def __init__(self,ARGUMENTS):
# Paths for the Videocore libs/includes on the Raspberry Pi
@@ -57,7 +46,7 @@
builddir_suffix = ARGUMENTS.get('builddir_suffix', None)
default_builddir = builddir_prefix or ''
if builddir_prefix is not None or builddir_suffix is not None:
- if os.environ.has_key('CC'):
+ if 'CC' in os.environ:
default_builddir += '%s-' % os.path.basename(os.environ['CC'])
for a in (
('debug', 'dbg'),
@@ -131,7 +120,7 @@
flags = self.__pkg_config_sdl[cmd]
except KeyError as e:
if (program.user_settings.verbosebuild != 0):
- print "%s: reading SDL settings from `%s`" % (program.PROGRAM_NAME, cmd)
+ print("%s: reading SDL settings from `%s`" % (program.PROGRAM_NAME, cmd))
self.__pkg_config_sdl[cmd] = env.backtick(cmd)
flags = self.__pkg_config_sdl[cmd]
env.MergeFlags(flags)
@@ -156,31 +145,31 @@
self.env.Append(CPPDEFINES = ['NETWORK'])
# Get traditional compiler environment variables
for cc in ['CC', 'CXX']:
- if os.environ.has_key(cc):
+ if cc in os.environ:
self.env[cc] = os.environ[cc]
for flags in ['CFLAGS', 'CXXFLAGS']:
- if os.environ.has_key(flags):
+ if flags in os.environ:
self.env[flags] += SCons.Util.CLVar(os.environ[flags])
def check_endian(self):
# set endianess
if (self.__endian == "big"):
- print "%s: BigEndian machine detected" % self.PROGRAM_NAME
+ print("%s: BigEndian machine detected" % self.PROGRAM_NAME)
self.asm = 0
self.env.Append(CPPDEFINES = ['WORDS_BIGENDIAN'])
elif (self.__endian == "little"):
- print "%s: LittleEndian machine detected" % self.PROGRAM_NAME
+ print("%s: LittleEndian machine detected" % self.PROGRAM_NAME)
def check_platform(self):
# windows or *nix?
if sys.platform == 'win32':
- print "%s: compiling on Windows" % self.PROGRAM_NAME
+ print("%s: compiling on Windows" % self.PROGRAM_NAME)
platform = self.Win32PlatformSettings
elif sys.platform == 'darwin':
- print "%s: compiling on Mac OS X" % self.PROGRAM_NAME
+ print("%s: compiling on Mac OS X" % self.PROGRAM_NAME)
platform = self.DarwinPlatformSettings
else:
- print "%s: compiling on *NIX" % self.PROGRAM_NAME
+ print("%s: compiling on *NIX" % self.PROGRAM_NAME)
platform = self.LinuxPlatformSettings
self.platform_settings = platform(self.user_settings)
# Acquire environment object...
@@ -194,15 +183,15 @@
# opengl or software renderer?
if (self.user_settings.opengl == 1) or (self.user_settings.opengles == 1):
if (self.user_settings.opengles == 1):
- print "%s: building with OpenGL ES" % self.PROGRAM_NAME
+ print("%s: building with OpenGL ES" % self.PROGRAM_NAME)
env.Append(CPPDEFINES = ['OGLES'])
else:
- print "%s: building with OpenGL" % self.PROGRAM_NAME
+ print("%s: building with OpenGL" % self.PROGRAM_NAME)
env.Append(CPPDEFINES = ['OGL'])
# assembler code?
if (self.user_settings.asm == 1) and (self.user_settings.opengl == 0):
- print "%s: including: ASSEMBLER" % self.PROGRAM_NAME
+ print("%s: including: ASSEMBLER" % self.PROGRAM_NAME)
env.Replace(AS = 'nasm')
env.Append(ASCOM = ' -f ' + str(self.platform_settings.osasmdef) + ' -d' + str(self.platform_settings.osdef) + ' -Itexmap/ ')
self.common_sources += asm_sources
@@ -211,12 +200,12 @@
# SDL_mixer support?
if (self.user_settings.sdlmixer == 1):
- print "%s: including SDL_mixer" % self.PROGRAM_NAME
+ print("%s: including SDL_mixer" % self.PROGRAM_NAME)
env.Append(CPPDEFINES = ['USE_SDLMIXER'])
# debug?
if (self.user_settings.debug == 1):
- print "%s: including: DEBUG" % self.PROGRAM_NAME
+ print("%s: including: DEBUG" % self.PROGRAM_NAME)
env.Append(CPPFLAGS = ['-g'])
else:
env.Append(CPPDEFINES = ['NDEBUG', 'RELEASE'])
@@ -244,7 +233,7 @@
# Raspberry Pi?
if (self.user_settings.raspberrypi == 1):
- print "using Raspberry Pi vendor libs in %s" % self.user_settings.rpi_vc_path
+ print("using Raspberry Pi vendor libs in %s" % self.user_settings.rpi_vc_path)
env.Append(CPPDEFINES = ['RPI', 'WORDS_NEED_ALIGNMENT'])
env.Append(CPPPATH = [
self.user_settings.rpi_vc_path+'/include',
@@ -317,7 +306,7 @@
self.env.Append(CPPDEFINES = [('DXX_VERSION_MAJORi', str(self.VERSION_MAJOR)), ('DXX_VERSION_MINORi', str(self.VERSION_MINOR)), ('DXX_VERSION_MICROi', str(self.VERSION_MICRO))])
def banner(self):
- print '\n===== ' + self.PROGRAM_NAME + self.VERSION_STRING + ' =====\n'
+ print('\n===== ' + self.PROGRAM_NAME + self.VERSION_STRING + ' =====\n')
def process_user_settings(self):
DXXCommon.process_user_settings(self)
@@ -330,7 +319,7 @@
else:
env.Append(FRAMEWORKS = ['OpenGL'])
else:
- print "%s: building with Software Renderer" % self.PROGRAM_NAME
+ print("%s: building with Software Renderer" % self.PROGRAM_NAME)
self.common_sources += self.arch_sdl_sources
# SDL_mixer support?
@@ -587,10 +576,10 @@
]
DXXProgram.__init__(self)
- sources_use_udp = [os.path.join(srcdir, 'main/net_udp.c')]
+ sources_use_udp = [os.path.join('', 'main/net_udp.c')]
# SDL_mixer sound implementation
- arch_sdlmixer = [os.path.join(srcdir, f) for f in [
+ arch_sdlmixer = [os.path.join('', f) for f in [
'arch/sdl/digi_mixer.c',
'arch/sdl/digi_mixer_music.c',
'arch/sdl/jukebox.c'
@@ -598,21 +587,21 @@
]
# for opengl
- arch_ogl_sources = [os.path.join(srcdir, f) for f in [
+ arch_ogl_sources = [os.path.join('', f) for f in [
'arch/ogl/gr.c',
'arch/ogl/ogl.c',
]
]
# for non-ogl
- arch_sdl_sources = [os.path.join(srcdir, f) for f in [
+ arch_sdl_sources = [os.path.join('', f) for f in [
'arch/sdl/gr.c',
'texmap/tmapflat.c'
]
]
# assembler related
- asm_sources = [os.path.join(srcdir, f) for f in [
+ asm_sources = [os.path.join('', f) for f in [
'texmap/tmap_ll.asm',
'texmap/tmap_flt.asm',
'texmap/tmapfade.asm',