josh
5f1ad78e8c
continue on user guide generator
2019-06-08 22:27:19 -04:00
josh
9f00063d57
add gen_user_guide task
2019-06-08 21:46:04 -04:00
josh
6328ceee2a
start on user guide html generator
2019-06-05 00:13:27 -04:00
josh
26a9307533
User Guide: add a couple ${include}'s
2019-06-05 00:06:34 -04:00
josh
90886ed9ad
User Guide: add glob() and Builders documentation
2019-06-04 22:59:04 -04:00
josh
8df73e9d11
User Guide: add Build Operations section
2019-06-02 12:20:23 -04:00
josh
f239b27c3a
add user guide section: Writing the Build Script / configure Block
2019-05-26 19:47:44 -04:00
josh
5e6b83411b
User Guide: clarify Build Correctness section
2019-05-22 23:42:49 -04:00
josh
54e77f235f
finish documentation for command-line operations
2019-05-22 23:31:37 -04:00
josh
4e08de9043
pull in redcarpet and syntax gems
2019-05-21 23:50:26 -04:00
josh
0d8aec0eb1
fill in a couple links
2019-05-21 23:36:58 -04:00
josh
573a542f84
add doc/user_guide.md
2019-05-21 23:20:45 -04:00
josh
ef2a9084db
allow --help CLI option with no Rsconscript present - close #106
2019-05-19 12:13:03 -04:00
josh
bfcd0c0b05
generate yard docs to /yard instead of /doc
2019-05-14 21:35:56 -04:00
josh
215f5e4b51
move Environment#shell to BasicEnvironment; clean up a few yard warnings
2019-05-09 22:41:28 -04:00
josh
6229cef015
remove @since tags for 2.0.0
2019-05-09 22:33:26 -04:00
josh
6be0d322a7
store expanded .rscons script next to rscons script - close #105
2019-05-09 22:30:20 -04:00
josh
89e43fea1c
use 10000 sources for large project instead of 1000
2019-05-09 22:22:14 -04:00
josh
458eeaf93d
Add VarSet#get_var and Environment#get_var - #92
2019-05-09 21:52:07 -04:00
josh
dd3d468a28
minor clarification to Environment#process_step behavior
2019-05-09 21:36:31 -04:00
josh
a4dec210ae
slightly reorder VarSet#deep_dup to optimize - #92
2019-05-08 23:16:22 -04:00
josh
fa14102ba5
Reorder VarSet#expand_varref class checks so the more common ones match earlier - #92
2019-05-08 22:50:34 -04:00
josh
87a15b3868
Do not calculate checksums for side-effect files - #92
2019-05-08 22:39:50 -04:00
josh
f23fbcd6d1
clear file checksum cache less frequently - #92
2019-05-08 22:30:41 -04:00
josh
b02a7573b9
speed up handling of registered side-effect files - #92
2019-05-08 22:15:44 -04:00
josh
d0cd0a14a4
remove Cache#validate_json_object - #92
2019-04-30 22:30:24 -04:00
josh
5cb895f465
add gen_large_project rake task for testing rscons performance on a large project
2019-04-30 22:25:45 -04:00
josh
cd1c54bf0d
update output coloring with highlighting for target and source filenames - close #104
2019-04-30 21:05:44 -04:00
josh
a4fead7dc6
show build progress - close #98
2019-04-28 22:40:50 -04:00
josh
59a3cb4e10
verbose mode should list operations and their execution times - close #103
2019-04-27 22:29:18 -04:00
josh
785e8e18fd
a clean operation should preserve install target cache info - close #101
2019-04-27 21:39:52 -04:00
josh
49e1bca1f7
uninstall operation should list removed entities in verbose mode - close #102
2019-04-27 21:28:56 -04:00
josh
fd054a07c4
implement install and uninstall operations - close #82
...
add "prefix" construction variable - close #99
add InstallDirectory builder - close #100
2019-04-23 22:01:09 -04:00
josh
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
josh
c60589a9c9
move a few Install builder tests to Copy builder
2019-04-19 14:32:25 -04:00
josh
04fc9866c4
recurse to configure before build rather than calling configure() directly
2019-04-19 14:15:33 -04:00
josh
7a807575b2
only use build_tests/typical/install.rb for Install builder specs
2019-04-19 14:12:33 -04:00
josh
787b3249a7
raise error if user constructs an Environment before configuration is complete
2019-04-14 20:45:31 -04:00
josh
3115e55739
move Application#determine_n_threads -> Util.determine_n_threads
2019-04-14 15:49:46 -04:00
josh
0c07ea0437
compress rscons script like waf - close #76
2019-04-14 15:26:28 -04:00
josh
0e7c976089
fix inconsistent type handling in VarSet#expand_varref - #73
2019-04-14 14:11:48 -04:00
josh
921f0d2cb1
expose glob method directly to Rsconscript - close #97
2019-04-14 12:51:37 -04:00
josh
c23426c5aa
remove SharedObject special handling in Environment#get_build_fname - close #96
2019-04-14 12:41:12 -04:00
josh
ea2b1e73d1
add direct mode to Program builder - close #61
2019-04-14 12:35:28 -04:00
josh
9bf4b8fa96
add barriers - close #53
2019-04-09 22:29:22 -04:00
josh
008fa4844d
allow passing Builder objects as sources to build targets - close #95
2019-04-09 20:35:46 -04:00
josh
568b78e2e2
test tracking object file source language - #87
2019-04-09 19:52:25 -04:00
josh
3b00016278
Program builder cleanup, track object file source language - #94 , #87
2019-04-09 19:41:13 -04:00
josh
a655d04541
Add Depfile builder mixin - #94
2019-04-09 18:41:02 -04:00
josh
5534878f68
Object builder cleanup - #94
2019-04-09 18:28:42 -04:00
josh
1efee50b2c
add Builders::Mixins::ObjectDeps to commonize some builder functionality
2019-03-16 22:34:07 -04:00
josh
3ff09978f4
remove Builder.features and Builder.produces?
2019-03-16 21:54:20 -04:00
josh
ac1fc6d106
move default construction variables into one place
2019-03-13 21:17:37 -04:00
josh
06b9c98ed0
support false :use value for configure operations - close #93
2019-02-28 21:09:56 -05:00
josh
f58744d31f
mv build_dist.rb -> rb/build_dist.rb
2019-02-28 21:00:39 -05:00
josh
bf136e79f2
rework showing failed command - close #89
2019-02-26 06:52:43 -05:00
josh
ab2fa1662f
Replace specialized Cache accessors with general #[]/#[]= methods.
2019-02-25 21:22:54 -05:00
josh
68118c2707
Remove Cache dirty-tracking
...
It really wasn't necessary since Cache#write is not called often.
2019-02-25 21:16:48 -05:00
josh
6ce3d59ad9
Add integration test for copying multiple sources with Copy builder
2019-02-25 21:13:57 -05:00
josh
983862a528
update builder messages - close #77
2019-02-18 22:30:11 -05:00
josh
658b73e4de
add build test for a builder waiting on another builder
2019-02-17 22:20:51 -05:00
josh
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
josh
8426a54a57
replace JobSet with BuilderSet
2019-02-17 14:17:31 -05:00
josh
ee1640008c
simplify JobSet logic a little
2019-02-17 13:59:03 -05:00
josh
7cfd23e16f
remove :builder and :cache from build_operation
2019-02-16 19:12:33 -05:00
josh
5c3b615aee
remove unused :which parameter to Environment#wait_for_threaded_commands
2019-02-16 18:36:44 -05:00
josh
935848c3b5
remove some builder-tracked fields from the build_operation Hash
2019-02-16 18:21:19 -05:00
josh
d047a1bf29
JobSet only stores builders instead of build info hashes
2019-02-16 18:06:03 -05:00
josh
016bf5eac7
use Builder instance variables as much as possible in #finalize
2019-02-16 17:53:21 -05:00
josh
33504f586b
pass Builder object to build hooks instead of build_operation Hash
2019-02-13 21:13:13 -05:00
josh
86594c62b6
begin transitioning builders to using instance variables instead of #run options Hash fields
2019-02-11 22:53:41 -05:00
josh
ea25f62f7c
remove deprecated Environment#add_target parameter - #84
2019-02-10 22:20:34 -05:00
josh
f2cfc25604
Remove Environment#run_builder :allow_delayed_execution option - #84
2019-02-10 22:13:37 -05:00
josh
a1f5f022d1
test build hooks overwriting entire vars hash as a non-backwards-compatiblity test
2019-02-10 22:07:08 -05:00
josh
7992450383
Drop support for 5-argument form of Builder#run - #84
2019-02-10 21:47:34 -05:00
josh
b41a368da1
alphabetize Util public methods
2019-02-10 21:26:37 -05:00
josh
1b63dc7503
move Environment.parse_makefile_deps to Util
2019-02-10 21:23:52 -05:00
josh
db788cdd35
Move Environment#command_to_s to Util.
2019-02-10 21:16:56 -05:00
josh
3f8b4d616f
Remove BuildTarget, Builder#create_build_target, and Builder#setup - close #90
2019-02-10 18:24:49 -05:00
josh
aac32d20b0
create Builder instance for each build operation - close #88
2019-02-10 17:27:40 -05:00
josh
12f1909d35
remove a few deprecated methods - #84
2019-01-04 13:55:00 -05:00
josh
31ef45258f
make global CLI options available under subcommands - close #86
2019-01-03 13:50:01 -05:00
josh
9f9b7f0bf4
preserve .mf dependency files - close #58
2019-01-01 21:17:28 -05:00
josh
918c629435
add verbose CLI option to set Environment default echo mode - close #70
2019-01-01 16:15:22 -05:00
josh
eaac473f44
provide Environment construction option to use stored configuration settings - close #78
2019-01-01 15:49:15 -05:00
josh
fa5aa51daa
Do not rebuild after building after auto-configuration. - close #80
...
Split Environment into BasicEnvironment and Environment.
2018-12-30 15:57:05 -05:00
josh
347d651ab6
Add builder construction variables to Environments before the builder is added.
2018-12-29 17:57:41 -05:00
josh
08085f09c4
libs found with check_lib should be added to LIBS - close #79
2018-12-17 23:05:18 -05:00
josh
5915ac2b95
ConfigureOp: refactor some logic into #store_common
2018-12-17 22:54:34 -05:00
josh
a98c111cd2
implement distclean operation - close #81
2018-12-17 22:47:00 -05:00
josh
93ffed2eb2
Use "Environment" instead of "Rscons::Environment" in build tests
2018-12-17 22:14:35 -05:00
josh
f8e6666a2c
Add 'build' DSL method.
...
Disallow processing Environments until configuration is performed.
2018-12-17 22:14:35 -05:00
josh
5720662b7c
avoid mkdir() race conditions - close #75
2018-12-11 22:13:52 -05:00
josh
432d221be2
remove build_dir functionality - close #65
2018-12-11 22:06:20 -05:00
josh
7c7ee142e0
implement autoconf - close #63 , close #68 , closes #67
2018-12-03 22:23:42 -05:00
josh
ba69f05e99
remove backtrace from stderr for unknown CLI options - close #69
2018-11-30 23:29:19 -05:00
josh
6180410cc4
add spec for Cache validating JSON contents
2018-11-30 23:11:52 -05:00
josh
2d44a88fb6
add spec for unknown CLI operation
2018-11-30 23:08:16 -05:00
josh
28e3781331
add configure spec testing --prefix
2018-11-30 23:05:41 -05:00
josh
c0a28d0207
add configure spec to check multiple set_define's being stored
2018-11-29 22:14:10 -05:00