summaryrefslogtreecommitdiff
path: root/SConstruct
AgeCommit message (Collapse)Author
2011-01-21SConstruct: Fix the librt check in SConstruct.Gabe Black
2011-01-15time: improve time datastructureNathan Binkert
Use posix clock functions (and librt) if it is available. Inline a bunch of functions and implement more operators. * * * time: more cleanup
2011-01-10style: clean up style hook code a bitNathan Binkert
I've renamed the check_whitespace operation to check_style. You're going to need to change your .hg/hgrc file. While you're at it, add a pre-qrefresh hook please.
2011-01-07scons: show sources and targets when building, and colorize output.Steve Reinhardt
I like the brevity of Ali's recent change, but the ambiguity of sometimes showing the source and sometimes the target is a little confusing. This patch makes scons typically list all sources and all targets for each action, with the common path prefix factored out for brevity. It's a little more verbose now but also more informative. Somehow Ali talked me into adding colors too, which is a whole 'nother story.
2010-12-30style: make style hook work with pre-qrefresh and update to use new codeNathan Binkert
clean up the code a little bit while we're at it. I recommend that everyone adds the pre-qrefresh hook below since it will make qref run the style hook and not just commit/qpush [extensions] style = <m5 path>/util/style.py [hooks] pretxncommit.style = python:style.check_whitespace pre-qrefresh.style = python:style.check_whitespace
2010-11-19SCons: Fix compilation on OS XAli Saidi
2010-11-15SCons: Cleanup SCons output during compileAli Saidi
2010-11-09scons: Work around for old versions of scons mistaking strings for sequences.Gabe Black
2010-11-08scons: add a parameter to configure SCons' build cacheAli Saidi
2010-08-23BUILD: GCC 4.4.1/2 have a bug in their auto-vectorizer that we trip onAli Saidi
2010-06-14build: grab the right library if we're using a debug version of pythonNathan Binkert
2010-06-07scons: make RUBY a regular (non-global) sticky varSteve Reinhardt
and force it to True for builds that imply Ruby protocols (else unexpected things happen when testing these builds with RUBY=False).
2010-02-26cpu_models: get rid of cpu_models.py and move the stuff into SConsNathan Binkert
2010-01-17SCons: Make --help reflect the arguments to scons.Gabe Black
The arguments were added to the global_sticky_vars Variables object after the basic help text was generated. As a result, the "actual:" value wouldn't reflect the arguments to scons and wouldn't really be the "actual" value used by the build. This change fixes that by updating global_sticky_vars slightly earlier.
2009-09-23arch: nuke arch/isa_specific.hh and move stuff to generated config/the_isa.hhNathan Binkert
2009-09-22scons: add slicc and ply to sys.path and PYTHONPATH so everyone has accessNathan Binkert
2009-09-22python: Move more code into m5.util allow SCons to use that code.Nathan Binkert
Get rid of misc.py and just stick misc things in __init__.py Move utility functions out of SCons files and into m5.util Move utility type stuff from m5/__init__.py to m5/util/__init__.py Remove buildEnv from m5 and allow access only from m5.defines Rename AddToPath to addToPath while we're moving it to m5.util Rename read_command to readCommand while we're moving it Rename compare_versions to compareVersions while we're moving it. --HG-- rename : src/python/m5/convert.py => src/python/m5/util/convert.py rename : src/python/m5/smartdict.py => src/python/m5/util/smartdict.py
2009-05-11ruby: add RUBY sticky option that must be set to add ruby to the buildNathan Binkert
Default is false
2009-05-11ruby: Migrate all of ruby and slicc to SCons.Nathan Binkert
Add the PROTOCOL sticky option sets the coherence protocol that slicc will parse and therefore ruby will use. This whole process was made difficult by the fact that the set of files that are output by slicc are not easily known ahead of time. The easiest thing wound up being to write a parser for slicc that would tell me. Incidentally this means we now have a slicc grammar written in python.
2009-05-04scons: re-work the *Source functions to take more information.Nathan Binkert
Start by turning all of the *Source functions into classes so we can do more calculations and more easily collect the data we need. Add parameters to the new classes for indicating what sorts of flags the objects should be compiled with so we can allow certain files to be compiled without Werror for example.
2009-04-21scons: Rename the basic environment from env -> main.Nathan Binkert
env is used as a local variable all over the place and sometimes it is easy to get confused as to whether the global env or local env is being used. This will become especially important when I change the way we support our variants.
2009-04-21scons: Fix two problems with the way that the library path is generated.Nathan Binkert
1) -L is automatically added, so don't do it ourselves 2) prepend the paths for gzstream and libelf so they are certain to come first. The problem is that python might add /usr/lib to the path and the user might have a locally installed version of libelf installed.
2009-04-21scons: make default target work againNathan Binkert
2009-04-21SCons: Export export_vars so SConsopts files can add to themNathan Binkert
2009-04-08alpha: get rid of all turbolaser remnantsNathan Binkert
2009-03-17includes: add ext to the includes path.Nathan Binkert
move dnet to the correct place so that we use this --HG-- rename : ext/dnet/dnet/addr.h => ext/dnet/addr.h rename : ext/dnet/dnet/arp.h => ext/dnet/arp.h rename : ext/dnet/dnet/blob.h => ext/dnet/blob.h rename : ext/dnet/dnet/eth.h => ext/dnet/eth.h rename : ext/dnet/dnet/fw.h => ext/dnet/fw.h rename : ext/dnet/dnet/icmp.h => ext/dnet/icmp.h rename : ext/dnet/dnet/intf.h => ext/dnet/intf.h rename : ext/dnet/dnet/ip.h => ext/dnet/ip.h rename : ext/dnet/dnet/ip6.h => ext/dnet/ip6.h rename : ext/dnet/dnet/os.h => ext/dnet/os.h rename : ext/dnet/dnet/rand.h => ext/dnet/rand.h rename : ext/dnet/dnet/route.h => ext/dnet/route.h rename : ext/dnet/dnet/tcp.h => ext/dnet/tcp.h rename : ext/dnet/dnet/udp.h => ext/dnet/udp.h
2009-03-17ply: put the absolute path to ply in the environment, not a relative oneNathan Binkert
2009-03-07scons: fix the library path stuffNathan Binkert
2009-03-05SCons: Fix bug with .hg dir not existing.Ali Saidi
2009-02-26CPA: Add new object for gathering critical path annotations.Ali Saidi
2009-02-15SCons: Fix read_command so it can properly deal with command stringsNathan Binkert
2009-02-11scons: clean up the main SConstruct file more.Nathan Binkert
Add some features to read_command so it works a little bit better Clean up the mercurial checks. Filter the user environment and only pick out the useful stuff.
2009-02-09scons: Require SCons version 0.98.1Nathan Binkert
This allows me to clean things up so we are up to date with respect to deprecated features. There are many features scheduled for permanent failure in scons 2.0 and 0.98.1 provides the most compatability for that. It also paves the way for some nice new features that I will add soon
2008-11-15Output: Include gzstream package to allow automatically-gzipped outputClint Smullen
The gzstream package provides an ostream-interface for writing gzipped files. The package comes from: http://www.cs.unc.edu/Research/compgeom/gzstream/ And is distributed under the LGPL license. Both the license and version information has been preservered, though all other files in the package have been purged. Minor modifications to the code have been made. The output module detects when a filename ends in .gz and constructs an ogzstream object instead of an ofstream object. This works for both the create(...) and find(...) commands. Additionally, since gzstream objects needs to be closed to ensure proper file termination, I have the output deconstructor deleting all ostream's that it manages on behalf of find(...). At the moment, the only output file that I know this functionality works for is stats, i.e. by specifying "--stats-file=m5stats.txt.gz" on the command line.
2008-11-10SCons: Allow top level directory of EXTRAS able to contain SConscripts.Nathan Binkert
The current EXTRAS will fail if the top level directory pointed to by EXTRAS has a SConscript file in it. We allow this by including the directory name of the EXTRA in the build directory which prevents a clash between src/SConscript and extra/SConscript. Maintain compatibility with older uses of EXTRAS by adding a -I for each top level extra directory.
2008-10-26BATCH: Run as, ar, and ranlib with BATCH_CMD so that they execute on the ↵Ali Saidi
batch hosts, not local host.
2008-10-08Scons: Update compare_versions() to ignore trailing charecters after an int. ↵Ali Saidi
This is a fix for a mysql version number that includes a (E.g. 5.0.51a)
2008-09-27gcc: Version 4.3 adds some warnings that we're turning off.Nathan Binkert
We just can't deal with right now.
2008-09-19We're searching for g++ incorrectlyNathan Binkert
2008-08-03libm5: Create a libm5 static library for embedding m5.Nathan Binkert
This should allow m5 to be more easily embedded into other simulators. The m5 binary adds a simple main function which then calls into the m5 libarary to start the simulation. In order to make this work correctly, it was necessary embed python code directly into the library instead of the zipfile hack. This is because you can't just append the zipfile to the end of a library the way you can a binary. As a result, Python files that are part of the m5 simulator are now compile, marshalled, compressed, and then inserted into the library's data section with a certain symbol name. Additionally, a new Importer was needed to allow python to get at the embedded python code. Small additional changes include: - Get rid of the PYTHONHOME stuff since I don't think anyone ever used it, and it just confuses things. Easy enough to add back if I'm wrong. - Create a few new functions that are key to initializing and running the simulator: initSignals, initM5Python, m5Main. The original code for creating libm5 was inspired by a patch Michael Adler, though the code here was done by me.
2008-04-08SCons: Manually specifying header only directories with Dir() works around ↵Ali Saidi
the problem --HG-- extra : convert_revision : d9713228d934cf4a45114a972603b8bca2bd27d3
2008-04-07SCons: Make BATCH options global sticky so libelf is built appropriately.Ali Saidi
--HG-- extra : convert_revision : 4bca5c31b8421305d41aac072696964b39d7ff16
2008-04-07SCons: Add check for SCons version since the latest are broken.Ali Saidi
--HG-- extra : convert_revision : bb0ea1221214e4e34d4223e345956c3febce3dc9
2008-03-24Add FAST_ALLOC_DEBUG and FAST_ALLOC_STATS as SConstruct options.Steve Reinhardt
--HG-- extra : convert_revision : 56a7f646f2ac87019c78ba7fa62c5f4bdc00ba44
2008-02-11EXTRAS now points to src instead of needing 'src' subdir.Steve Reinhardt
--HG-- extra : convert_revision : 8e7e4516ace8c7852eeea3c479bfd567839a8061
2008-02-11Wait to set BUILD_DIR until *after* env is copied.Steve Reinhardt
--HG-- extra : convert_revision : 03153e7aaa1fb2a435900eab08a98ec1a6ce62db
2008-02-05Cleaned up os.path imports a bit.Steve Reinhardt
--HG-- extra : convert_revision : ee75bf9abd249ab053e804739cc50972475cd5b6
2008-02-05Make EXTRAS work for SConsopts too.Steve Reinhardt
Requires pushing source files down into 'src' subdir relative to directory listed in EXTRAS. --HG-- extra : convert_revision : ca04adc3e24c60bd3e7b63ca5770b31333d76729
2007-11-19Compiling: Make sure that libelf is also compiled for 64bit on OS X.Ali Saidi
--HG-- extra : convert_revision : 9d4f7064e0aa4b6cc6a5bcf0f6fb5289047cd143
2007-11-16Make EXTRAS work for relative directories.Steve Reinhardt
Also print a little feedback when processing EXTRAS. --HG-- extra : convert_revision : 9cb324b0d5bc60a3c98af6495f16415b529e4af2