summaryrefslogtreecommitdiff
path: root/SConstruct
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2007-01-27 15:38:04 -0500
committerAli Saidi <saidi@eecs.umich.edu>2007-01-27 15:38:04 -0500
commit02bd40d552f6c3f56db43ea63f06ae4312a8e48a (patch)
treebeae214fccca9f8716d47b5992480090d04548a3 /SConstruct
parent5c7bf74c073d0aea808046d10dfcaa6c319217a3 (diff)
downloadgem5-02bd40d552f6c3f56db43ea63f06ae4312a8e48a.tar.xz
While I'm waiting for legion to run make m5 compile with a few more compilers
SConstruct: src/SConscript: Add flags for Intel CC while i'm at it src/base/compiler.hh: the _Pragma stuff needst to be called this way unless someone happens to have a cleaner way src/base/cprintf_formats.hh: add std:: where appropriate src/base/statistics.hh: use this->map since icc was getting confused about std::map vs the locally defined map src/cpu/static_inst.hh: Add some more dummy returns where needed src/mem/packet.hh: add more dummy returns where needed src/sim/host.hh: use limits to come up with max tick --HG-- extra : convert_revision : 08e9f7898b29fb9d063136529afb9b6abceab60c
Diffstat (limited to 'SConstruct')
-rw-r--r--SConstruct12
1 files changed, 9 insertions, 3 deletions
diff --git a/SConstruct b/SConstruct
index f99bc1f20..12f735a9d 100644
--- a/SConstruct
+++ b/SConstruct
@@ -209,14 +209,18 @@ if False:
env.Append(ENV = { 'M5_PLY' : Dir('ext/ply') })
env['GCC'] = False
env['SUNCC'] = False
+env['ICC'] = False
env['GCC'] = subprocess.Popen(env['CXX'] + ' --version', shell=True,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
close_fds=True).communicate()[0].find('GCC') >= 0
env['SUNCC'] = subprocess.Popen(env['CXX'] + ' -V', shell=True,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
close_fds=True).communicate()[0].find('Sun C++') >= 0
-if (env['GCC'] and env['SUNCC']):
- print 'Error: How can we have both g++ and Sun C++ at the same time?'
+env['ICC'] = subprocess.Popen(env['CXX'] + ' -V', shell=True,
+ stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
+ close_fds=True).communicate()[0].find('Intel') >= 0
+if env['GCC'] + env['SUNCC'] env['ICC'] > 1:
+ print 'Error: How can we have two at the same time?'
Exit(1)
@@ -225,6 +229,8 @@ if env['GCC']:
env.Append(CCFLAGS='-pipe')
env.Append(CCFLAGS='-fno-strict-aliasing')
env.Append(CCFLAGS=Split('-Wall -Wno-sign-compare -Werror -Wundef'))
+elif env['ICC']:
+ pass #Fix me... add warning flags once we clean up icc warnings
elif env['SUNCC']:
env.Append(CCFLAGS='-Qoption ccfe')
env.Append(CCFLAGS='-features=gcc')
@@ -234,7 +240,7 @@ elif env['SUNCC']:
# env.Append(CCFLAGS='-instances=semiexplicit')
else:
print 'Error: Don\'t know what compiler options to use for your compiler.'
- print ' Please fix SConstruct and try again.'
+ print ' Please fix SConstruct and src/SConscript and try again.'
Exit(1)
if sys.platform == 'cygwin':