From f1ffe50a6a60afbd05df7e4264ac7f84576bc97b Mon Sep 17 00:00:00 2001 From: Bryan Hoyle Date: Thu, 18 Oct 2012 19:41:55 -0400 Subject: [PATCH] Some scons fixes --- SConscript | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/SConscript b/SConscript index 3f17bce4d..6ea1fe958 100644 --- a/SConscript +++ b/SConscript @@ -1,5 +1,21 @@ import os, sys, subprocess, time +def uniq(seq, idfun=None): + # order preserving + if idfun is None: + def idfun(x): return x + seen = {} + result = [] + for item in seq: + marker = idfun(item) + # in old Python versions: + # if seen.has_key(marker) + # but in new ones: + if marker in seen: continue + seen[marker] = 1 + result.append(item) + return result + ##Fix for long command line - http://scons.org/wiki/LongCmdLinesOnWin32 class ourSpawn: def ourspawn(self, sh, escape, cmd, args, env): @@ -122,7 +138,7 @@ else: env.Append(LIBS=['z', 'bz2', 'fftw3f']) env.Append(CPPPATH=['src/', 'data/', 'generated/']) -env.Append(CCFLAGS=['-w', '-std=c++98', '-fkeep-inline-functions']) +env.Append(CCFLAGS=['-w', '-std=gnu++0x', '-fkeep-inline-functions']) env.Append(LIBS=['pthread', 'm']) env.Append(CPPDEFINES=["USE_SDL", "LUACONSOLE", "GRAVFFT", "_GNU_SOURCE", "USE_STDINT", "_POSIX_C_SOURCE=200112L"]) @@ -278,5 +294,5 @@ env.Command(['generated/ToolClasses.cpp', 'generated/ToolClasses.h'], Glob('src/ sources+=Glob("generated/ToolClasses.cpp") env.Decider('MD5') -t=env.Program(target=programName, source=sources) +t=env.Program(target=programName, source=uniq(sources)) Default(t)