games-action/dxx-rebirth: fix build with scons-4.5.x

Live is only partially fixed (old snapshot needs a 2 part fix), but
imagine the PR will get merged soon enough, so not adding to 9999.

Not tested much, but seems fine with both scons-4.4.0 and 4.5.2.

Closes: https://bugs.gentoo.org/902463
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
This commit is contained in:
Ionen Wolkens
2023-03-22 11:51:26 -04:00
parent 70624559be
commit e655d87f9f
2 changed files with 52 additions and 0 deletions

View File

@@ -165,6 +165,7 @@ BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${P}-gcc-12.patch
"${FILESDIR}"/${P}-gcc-12-editor.patch
"${FILESDIR}"/${P}-scons-4.5.patch
)
dxx_scons() {

View File

@@ -0,0 +1,51 @@
https://bugs.gentoo.org/902463
https://github.com/dxx-rebirth/dxx-rebirth/pull/705
https://github.com/dxx-rebirth/dxx-rebirth/commit/189ac23f61605903eb3eaa0004d287b7bd9296bc
--- a/SConstruct
+++ b/SConstruct
@@ -324,3 +324,3 @@
def __init__(self,env,keyviews,_l=[]):
- self.flags = {k: env.get(k, _l)[:] for k in itertools.chain.from_iterable(keyviews)}
+ self.flags = {k: env.get(k, _l).copy() for k in itertools.chain.from_iterable(keyviews)}
def restore(self,env):
@@ -1493,3 +1493,3 @@
user_settings.max_axes_per_joystick = user_settings.max_buttons_per_joystick = user_settings.max_hats_per_joystick = 0
- successflags['CPPDEFINES'] = CPPDEFINES = successflags.get('CPPDEFINES', [])[:]
+ successflags['CPPDEFINES'] = CPPDEFINES = successflags.get('CPPDEFINES', []).copy()
# use Redbook if at least one of the following applies
@@ -4608,3 +4608,3 @@
for test in runtime_test_boost_tests:
- LIBS = [] if test.nodefaultlibs else env['LIBS'][:]
+ LIBS = [] if test.nodefaultlibs else env['LIBS'].copy()
LIBS.append('boost_unit_test_framework')
@@ -4850,3 +4850,3 @@
kwargs['CXXFLAGS'] = (env['CXXFLAGS'] or []) + ['-E']
- kwargs['CPPDEFINES'] = (env['CPPDEFINES'] or []) + [
+ kwargs['CPPDEFINES'] = list(env['CPPDEFINES'] or []) + [
# Define these tokens to themselves so that
@@ -4870,3 +4870,3 @@
def _apply_env_version_seq(self,env,_empty={}):
- return _empty if self.user_settings.pch else {'CPPDEFINES' : env['CPPDEFINES'] + [('DXX_VERSION_SEQ', self.DXX_VERSION_SEQ)]}
+ return _empty if self.user_settings.pch else {'CPPDEFINES' : list(env['CPPDEFINES']) + [('DXX_VERSION_SEQ', self.DXX_VERSION_SEQ)]}
get_objects_similar_arch_ogl = DXXCommon.create_lazy_object_states_getter((LazyObjectState(sources=(
@@ -4966,3 +4966,3 @@
),
- transform_env = (lambda self, env: {'CPPDEFINES' : env['CPPDEFINES'] + env.__dxx_CPPDEFINE_SHAREPATH + env.__dxx_CPPDEFINE_git_version}),
+ transform_env = (lambda self, env: {'CPPDEFINES' : list(env['CPPDEFINES']) + env.__dxx_CPPDEFINE_SHAREPATH + env.__dxx_CPPDEFINE_git_version}),
transform_target=_apply_target_name,
@@ -4976,3 +4976,3 @@
),
- transform_env = (lambda self, env: {'CPPDEFINES' : env['CPPDEFINES'] + env.__dxx_CPPDEFINE_SHAREPATH}),
+ transform_env = (lambda self, env: {'CPPDEFINES' : list(env['CPPDEFINES']) + env.__dxx_CPPDEFINE_SHAREPATH}),
transform_target=_apply_target_name,
@@ -5185,3 +5185,3 @@
versid_build_environ = ['CXX', 'CPPFLAGS', 'CXXFLAGS', 'LINKFLAGS']
- versid_cppdefines = env['CPPDEFINES'][:]
+ versid_cppdefines = env['CPPDEFINES'].copy()
extra_version = user_settings.extra_version
@@ -5303,3 +5303,3 @@
else:
- syspath = sys.path[:]
+ syspath = sys.path.copy()
cocoa = 'common/arch/cocoa'