49 Commits

Author SHA1 Message Date
4967f89a76 fix inconsistent type handling in VarSet#expand_varref - #73 2019-04-14 14:10:13 -04:00
ce47bd3599 remove makefile target name check when parsing dependencies - close #57 2018-11-02 14:23:47 -04:00
65c1bac4f9 be more colorful - close #41 2017-07-11 13:52:01 -04:00
010607d3b0 Rework builder features to be returned by Builder#features instead of taken into account by Builder#produces? 2017-06-08 11:07:01 -04:00
c7e4e1ad9b Always use a build root and default it to "build" 2017-05-30 11:06:32 -04:00
8cbb9fa30e Place object files for absolute source paths under build_root - close #30 2017-05-29 12:16:46 -04:00
2655c119e4 add spec for Environment#find_finished_thread to fully cover 2017-05-23 16:47:00 -04:00
d315f86a36 remove unit tests for Environment#run_builder, #build_sources 2017-05-23 16:20:41 -04:00
7b3bffd329 update some non-integration-test specs 2017-05-22 16:25:49 -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
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
Michael D. Lowis
92d4dd8396 Implemented SimpleBuilder and updated Environment#add_builder method to support it 2014-10-16 16:37:37 -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
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
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
160434b903 Cache: change to a Singleton object so it is only loaded from disk once 2014-04-15 14:02:26 -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
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
5362f761e6 move default builder classes into Rscons::Builders namespace module 2013-12-31 13:31:17 -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
539a49fe90 do not allow construction variables as arguments to Environment#initialize() or Environment#clone() 2013-12-27 12:10:54 -05:00
243eb9a4ab rename "tweakers" to "build hooks" 2013-11-06 13:32:56 -05:00
66f53a23f6 change construction variable reference format to ${var}
this change is backwards-incompatible
2013-11-05 16:54:01 -05:00
a418d31000 finish up Environment specs 2013-11-05 14:28:43 -05:00
8b852bd2fd Environment: more specs 2013-11-05 14:14:03 -05:00
e863c9a564 Environment: rework process()
- improve efficiency
- give errors for the dependency that failed instead of the top-level target
2013-11-05 12:43:50 -05:00
7ce5a8f9d9 working on Environment specs 2013-11-05 12:26:42 -05:00
1280cfb465 change Environment#parse_makefile_deps() to a class method 2013-11-05 11:44:07 -05:00
0f5fee359d cloning an Environment should make a deep copy of its construction variables 2013-10-08 11:54:24 -04:00
75977981c0 fix parsing Makefile dependencies when they spanned multiple lines 2013-08-05 14:27:57 -04:00