109 Commits

Author SHA1 Message Date
132d22e886 Ruby 3.2 compatibility - close #163 2022-08-05 16:40:48 -04:00
5ec74604c6 improve support for MSYS2 - close #120 2020-10-08 19:04:50 -04:00
a1bb9d81fd check_program: do not fail on Windows for non-existent PATH entries 2019-08-27 19:47:21 -04:00
1e157c79ec fix dependency parsing with ldc2 - close #110 2019-08-19 22:56:54 -04:00
458eeaf93d Add VarSet#get_var and Environment#get_var - #92 2019-05-09 21:52:07 -04:00
d0cd0a14a4 remove Cache#validate_json_object - #92 2019-04-30 22:30:24 -04:00
cd1c54bf0d update output coloring with highlighting for target and source filenames - close #104 2019-04-30 21:05:44 -04:00
59a3cb4e10 verbose mode should list operations and their execution times - close #103 2019-04-27 22:29:18 -04:00
785e8e18fd a clean operation should preserve install target cache info - close #101 2019-04-27 21:39:52 -04:00
328babe1f4 imbue Cache with knowledge of whether a target or directory is for a build or install operation 2019-04-22 22:19:39 -04:00
787b3249a7 raise error if user constructs an Environment before configuration is complete 2019-04-14 20:45:31 -04:00
3115e55739 move Application#determine_n_threads -> Util.determine_n_threads 2019-04-14 15:49:46 -04:00
0e7c976089 fix inconsistent type handling in VarSet#expand_varref - #73 2019-04-14 14:11:48 -04:00
3ff09978f4 remove Builder.features and Builder.produces? 2019-03-16 21:54:20 -04:00
b882f8de99 Rework builder interface to only use #run method - close #91
The builder's #run method will be called repeatedly until it returns
true or false. The Builder#wait_for method can be used to cause a
builder to wait for a Thread, Command, or another Builder.
2019-02-17 22:08:39 -05:00
b41a368da1 alphabetize Util public methods 2019-02-10 21:26:37 -05:00
1b63dc7503 move Environment.parse_makefile_deps to Util 2019-02-10 21:23:52 -05:00
3f8b4d616f Remove BuildTarget, Builder#create_build_target, and Builder#setup - close #90 2019-02-10 18:24:49 -05:00
aac32d20b0 create Builder instance for each build operation - close #88 2019-02-10 17:27:40 -05:00
5720662b7c avoid mkdir() race conditions - close #75 2018-12-11 22:13:52 -05:00
7c7ee142e0 implement autoconf - close #63, close #68, closes #67 2018-12-03 22:23:42 -05:00
6180410cc4 add spec for Cache validating JSON contents 2018-11-30 23:11:52 -05:00
25b73ebd8f move logic to find an executable from ConfigureOp to Util 2018-11-29 21:51:30 -05:00
dff80587ac move Rscons.absolute_path?() to Util 2018-11-25 21:31:48 -05:00
cd2696dd0b add Util specs 2018-11-25 21:22:37 -05:00
7a90325b67 set Environment build root automatically - close #64 2018-11-25 16:58:19 -05:00
88fd4bd405 robustify Ansi module a bit 2018-11-12 21:50:16 -05:00
b5a8b6f628 remove makefile target name check when parsing dependencies - close #57 2018-11-02 14:24:02 -04:00
michael.metivier
c34821864e Allow construction variable expansion on _true_ and _false_ literals 2018-11-02 00:57:20 -04:00
97c24eec6b specs: fix Application#determine_n_threads specs 2018-10-30 17:39:43 -04:00
e29ec5a126 move clean logic to Application 2018-10-30 17:36:30 -04:00
ac89a122d8 add Application class; update CLI and Script for new architecture 2018-10-21 01:24:15 -04:00
099d26f33c Add Rscons::VarSet#values_at - close #45 2017-08-03 15:54:24 -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
68468b6422 fully parallelize the Command builder 2017-05-25 16:03:05 -04:00
80a80a7cb0 fully parallelize the Preprocess builder 2017-05-25 15:54:33 -04:00
178940cd5d fully parallelize the CFile builder 2017-05-25 15:28:01 -04:00
145d51c825 fully parallelize the Disassemble builder 2017-05-25 14:59:51 -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
c7bba77581 remove Program builder non-integration specs 2017-05-22 16:57:35 -04:00
957fd8c86d convert Library builder specs to integration tests 2017-05-22 16:54:10 -04:00
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