From 13d85fa38e27777f6c49956fbfa3ec330a5ba1e6 Mon Sep 17 00:00:00 2001 From: Kp Date: Thu, 12 Mar 2015 02:21:21 +0000 Subject: [PATCH] Make d1x=value imply d2x=0 and vice versa --- SConstruct | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/SConstruct b/SConstruct index 7e1ab068e..4b77c6a11 100644 --- a/SConstruct +++ b/SConstruct @@ -2137,17 +2137,17 @@ class D2XProgram(DXXProgram): def objects_editor(self): return self.__objects_editor + DXXProgram.objects_editor.fget(self) -variables = Variables(['site-local.py'], ARGUMENTS) +variables = Variables([v for (k,v) in ARGLIST if k == 'site'] or ['site-local.py'], ARGUMENTS) filtered_help = FilterHelpText() variables.FormatVariableHelpText = filtered_help.FormatVariableHelpText def _filter_duplicate_prefix_elements(e,s): r = e not in s s.add(e) return r -def register_program(program): +def register_program(program,other_program): s = program.shortname import itertools - l = [v for (k,v) in ARGLIST if k == s or k == 'dxx'] or [1] + l = [v for (k,v) in ARGLIST if k == s or k == 'dxx'] or [other_program.shortname not in ARGUMENTS] # Fallback case: build the regular configuration. if len(l) == 1: try: @@ -2169,8 +2169,8 @@ def register_program(program): prefix = ['%s%s%s' % (s, '_' if p else '', p) for p in prefix] + list(prefix) r.append(program(prefix, variables)) return r -d1x = register_program(D1XProgram) -d2x = register_program(D2XProgram) +d1x = register_program(D1XProgram, D2XProgram) +d2x = register_program(D2XProgram, D1XProgram) # show some help when running scons -h h = 'DXX-Rebirth, SConstruct file help:' + """ @@ -2197,6 +2197,7 @@ unknown = variables.UnknownVariables() unknown.pop('d1x', None) unknown.pop('d2x', None) unknown.pop('dxx', None) +unknown.pop('site', None) ignore_unknown_variables = unknown.pop('ignore_unknown_variables', '0') if unknown: try: