304 Commits

Author SHA1 Message Date
6f20a1da3f bugfix: support invoking builders with no sources and a build root defined 2014-04-17 12:03:09 -04:00
03ffb39956 v1.4.0 2014-04-15 16:19:19 -04:00
ddf00d08a7 shortcut all of Environment#process if @targets is empty 2014-04-15 16:18:33 -04:00
d424facf7f Add Preprocess and Disassemble builders 2014-04-15 15:21:55 -04:00
ee5aca275d Write Cache to disk if an exception occurs while processing the Environment - fix #4 2014-04-15 14:20:30 -04:00
ea30b0b5ee Fix Cache#mkdir_p to handle absolute paths - fix #5 2014-04-15 14:15:32 -04:00
5a0d80b781 Cache: implement "dirty" attribute to only re-serialize when necessary 2014-04-15 14:11:10 -04:00
a2653a77d1 shortcut Environment#process if @targets is empty 2014-04-15 14:04:59 -04:00
160434b903 Cache: change to a Singleton object so it is only loaded from disk once 2014-04-15 14:02:26 -04:00
5ce8940d54 stop encoding Cache contents 2014-04-15 13:39:45 -04:00
1a5e9ddaa6 Implement copy-on-write semantics for VarSet, speeding up Environment cloning 2014-04-15 11:21:15 -04:00
5924154229 speed up VarSet#deep_dup a bit 2014-04-15 09:47:05 -04:00
5beda54374 do not clone @varset when appending to the cloned environment since appending will do its own clone 2014-04-15 09:36:30 -04:00
ae0ad98075 use @varset.append() instead of @varset.send(:append) 2014-04-15 09:32:35 -04:00
f5be3a3571 VarSet: implement deep copying ourselves instead of using Marshal for a speed increase 2014-04-15 09:16:30 -04:00
fdc5c8773c Issue #7 - store MD5 of build command instead of the full command in the cache 2014-04-14 17:17:54 -04:00
c61380b354 Issue #7 - change .rsconscache from using YAML to JSON to speed up parsing 2014-04-14 16:52:21 -04:00
1fe2c6401d expand ^/ in target paths to be relative to the build root 2014-03-27 13:30:11 -04:00
1875a2ea66 Pass the Environment object to build hooks in the :env key of the build_op parameter 2014-03-27 10:44:10 -04:00
cbd5816b4b add VarSet#include? 2014-03-27 10:39:46 -04:00
b2c970c9ca add Environment#add_target and use it from Environment#method_missing 2014-03-26 11:29:02 -04:00
92a9982988 use #super from #method_missing instead of method aliasing 2014-03-26 11:23:32 -04:00
533ee9c16c add CFile builder to create C/C++ sources from lex/yacc input files 2014-03-18 21:57:53 -04:00
831b9bf2c7 v1.3.0 2014-02-25 12:18:02 -05:00
e3aeb7f4d7 Change Environment#execute() options Hash to contain :env and :options keys for Kernel#system() 2014-02-25 12:14:52 -05:00
6aa5037234 v1.2.0 2014-02-20 16:42:10 -05:00
0d8f661fd4 add :clone option to Environment#clone to control exactly which Environment attributes are cloned 2014-02-19 15:02:46 -05:00
e5ca8776a9 allow nil to be passed in to Environment#build_root= 2014-02-19 15:02:18 -05:00
2dde39a0ec standardize on "Rscons" capitalization 2014-02-18 16:14:44 -05:00
af0679708c v1.1.0 2014-02-17 16:37:59 -05:00
1d47db3144 support passing multiple targets to Cache#up_to_date? and #register_build 2014-02-17 16:10:15 -05:00
f7b7a4fefa v1.0.0 2014-02-14 10:46:31 -05:00
00b038ef50 use require_relative instead of require 2014-02-14 10:37:41 -05:00
98f8f38715 remove String#set_suffix monkey patch 2014-02-14 10:36:15 -05:00
2ffb5d525a remove String#absolute_path? monkey patch 2014-02-14 10:32:57 -05:00
fa7d17675b remove String#has_suffix? monkey-patch; use String#end_with? 2014-02-14 10:20:32 -05:00
7c89dddbd6 v0.3.1 2014-01-23 14:40:45 -05:00
c07d9f86a6 bugfix: loading a Cache without deps or user_deps stored causes an exception 2014-01-23 14:40:30 -05:00
5ff555cf6a add Environment#expand_varref() 2014-01-02 11:49:08 -05:00
e3aadc562f Rscons::Varset: remove unused type parameter to #[] 2014-01-02 11:05:15 -05:00
7ff2ec1f1a v0.3.0 2013-12-31 14:10:47 -05:00
5362f761e6 move default builder classes into Rscons::Builders namespace module 2013-12-31 13:31:17 -05:00
cdb3352b4e remove module monkey-patching; add Builder#name() 2013-12-31 13:10:00 -05:00
08bc390d40 Rscons::BuildError inherits from RuntimeError instead of Exception 2013-12-31 13:08:38 -05:00
f8af0630b0 pass env to Cache#up_to_date?() and #register_build() instead of user_deps 2013-12-31 12:46:30 -05:00
1868193b54 do not prepend build_root to source files that are already inside build_root 2013-12-31 10:15:19 -05:00
295324eafd add Environment#depends() to specify user dependencies for a build target 2013-12-27 14:31:46 -05:00
7330e74ab8 modify Cache to store user-specified extra dependencies 2013-12-27 14:20:32 -05:00
a28cef9eb7 change "vars" parameters to be required 2013-12-27 13:53:40 -05:00
e667046da8 add Environment#clear_targets() 2013-12-27 13:35:16 -05:00