64 Commits

Author SHA1 Message Date
7e707e7e3b convert Object builder specs to integration tests 2017-05-22 16:38:57 -04:00
7b3bffd329 update some non-integration-test specs 2017-05-22 16:25:49 -04:00
06cb4b7a55 migrate some Cache tests to integration tests 2017-05-22 15:55:18 -04:00
4ed584701a pass setup_info to the builder's #run method 2017-05-17 13:50:31 -04:00
9cc59a35f0 handle threaded commands in Environment#process 2017-05-17 10:07:15 -04:00
ef4f9882cd change Builder#run base class method to new signature 2017-05-12 21:08:14 -04:00
3601359c08 process jobs from the JobSet 2017-02-16 19:27:18 -05:00
c4c2d5c128 Environment#parse_flags should put -std=XXX flags in CCFLAGS, not CFLAGS 2016-09-30 14:02:30 -04:00
29a8684f90 support registering multiple build targets with the same path - close #26 2015-01-28 17:10:36 -05:00
02aff35222 allow overriding Command builder short description with CMD_DESC variable -- close #22 2015-01-24 09:40:07 -05:00
0ea842fffe rework Preprocess builder to consider deep dependencies - fix #21 2015-01-20 21:16:21 -05:00
b05eed36eb add VarSet#to_h 2014-10-21 16:06:15 -04:00
7ea0721cc2 add a Builder#run method which raises an error unless overridden 2014-10-16 16:52:26 -04:00
Michael D. Lowis
92d4dd8396 Implemented SimpleBuilder and updated Environment#add_builder method to support it 2014-10-16 16:37:37 -04:00
Michael D. Lowis
e279959d79 Added a command builder to the list of default builders 2014-10-13 12:27:05 -04:00
df1e3be829 fix #12 - allow overriding dependency file suffix with DEPFILESUFFIX construction variable 2014-08-18 15:53:02 -04:00
851adae66f fix #13 - Environment#depends should expand its arguments for construction variables 2014-08-18 15:39:33 -04:00
28bedfce11 Support lambdas as construction variable values 2014-06-18 10:43:35 -04:00
31968e7e32 complete spec updates for RSpec 3 using only :expect syntax 2014-06-12 15:52:15 -04:00
5783ed993a update more rspec expectations 2014-06-12 15:43:50 -04:00
0778f043ee update many specs to RSpec 3 format 2014-06-12 15:39:20 -04:00
42597b2dac use new rspec expect syntax 2014-06-12 13:54:35 -04:00
7b13d51d23 environment spec updates for Windows 2014-06-12 13:41:46 -04:00
1b50a9dd3c add Rscons::BuildTarget
Return a BuildTarget object from Environment#method_missing when a build target is registered.
2014-06-12 13:31:17 -04:00
87b25d7bfd add PROGSUFFIX construction variable and default it to ".exe" for mingw/cygwin platforms 2014-06-12 13:02:53 -04:00
ef18c9da35 Environment: add #parse_flags, #parse_flags!, and #merge_flags 2014-06-12 10:40:01 -04:00
ae9021a505 add Environment#shell - close #11 2014-06-11 14:59:31 -04:00
f5a3b448d3 test supported construction variable types when cloning 2014-05-15 15:54:02 -04:00
ab1ea34941 add specs testing construction variable overrides for built-in builders 2014-05-14 15:48:00 -04:00
08f2248ed7 fix up builders to properly use variable overrides 2014-05-14 15:15:08 -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
160434b903 Cache: change to a Singleton object so it is only loaded from disk once 2014-04-15 14:02:26 -04:00
1a5e9ddaa6 Implement copy-on-write semantics for VarSet, speeding up Environment cloning 2014-04-15 11:21:15 -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
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
e3aeb7f4d7 Change Environment#execute() options Hash to contain :env and :options keys for Kernel#system() 2014-02-25 12:14:52 -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
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
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
e667046da8 add Environment#clear_targets() 2013-12-27 13:35:16 -05:00