josh
663f4ac04c
check_program: do not fail on Windows for non-existent PATH entries
2019-08-27 16:14:19 -04:00
josh
2c7cc61b30
build tests: use -m instead of -lc for mingw
2019-08-27 12:32:36 -04:00
josh
7c4abe9343
build tests: do ldc2 tests even if omit_gdc_tests set
2019-08-27 08:51:56 -04:00
josh
1a4f1a3608
update build test for gdc fix
2019-08-27 08:50:01 -04:00
josh
044ee343ca
Use OBJSUFFIX of .obj for ldc2 on Windows.
2019-08-26 19:10:19 -04:00
josh
eb54a2b64a
fix specs create_exe() on Windows
2019-08-26 18:51:03 -04:00
josh
2dd1ce9f1d
Use base64 encoding for compressed script to avoid encoding issues.
2019-08-26 18:33:42 -04:00
josh
1e157c79ec
fix dependency parsing with ldc2 - close #110
2019-08-19 22:56:54 -04:00
josh
2385874f4a
v2.0.0beta2
2019-08-17 17:07:59 -04:00
josh
c5c42e6f4a
user guide: document a couple missing configure flags and link to YARD some places
2019-08-17 17:00:36 -04:00
josh
9a627b2150
add YARD comments to get to 100% YARD coverage
2019-08-17 16:42:14 -04:00
josh
937c964c3e
document :use better
2019-08-17 16:35:06 -04:00
josh
a2a1d08014
user guide: document Custom Configuration Checks
2019-08-17 16:35:06 -04:00
josh
0ccf43cc96
custom config checks - close #108
2019-08-17 16:06:37 -04:00
josh
d202e15a57
user guide: document direct mode for Program/SharedLibrary builders
2019-07-29 21:57:38 -04:00
josh
94f808b1fc
user guide: add Barriers section
2019-07-29 21:32:04 -04:00
josh
51a9dd365f
add :check_libpath option to check_lib configuration method - #107
2019-07-29 21:00:52 -04:00
josh
6e590b62a6
add :check_cpppath option to check_c_header and check_cxx_header
...
configuration methods
add :check_d_import_path option to check_d_import configuration method - #107
2019-07-09 23:53:17 -04:00
josh
3aac190ad6
configure checks: compile instead of link when looking for C/C++ header files and D imports
2019-07-09 23:41:51 -04:00
josh
d6b9487e65
user guide: document -F command-line flag
2019-07-09 23:06:45 -04:00
josh
66d2700faa
clarify -F command-line option usage more
2019-07-09 23:06:45 -04:00
josh
ba98af1424
default configure checks :fail option to false if :set_define is specified
2019-07-09 22:00:50 -04:00
josh
cf4f80c9ae
user guide: document first compiler found is used
2019-07-09 21:47:45 -04:00
josh
d74785d579
Add v2.0.0 changes to CHANGELOG.md
2019-07-07 22:15:44 -04:00
josh
4fd822fb95
user guide: add warning when viewing markdown source file directly
2019-07-07 21:38:17 -04:00
josh
b39fd80d8c
user guide: add ./configure && make Appendix section
2019-07-07 21:29:30 -04:00
josh
ef00c9f377
add link to github.io site from README.md
2019-07-02 22:39:33 -04:00
josh
1ddc03b285
v2.0.0beta1
2019-07-02 22:31:27 -04:00
josh
f686f9e787
user guide: rename Reference -> Appendix
...
add YARD API Documentation link
2019-07-02 22:27:11 -04:00
josh
b6c19b7f00
generate YARD docs to gen/yard
2019-07-02 22:04:06 -04:00
josh
4fc18e5d91
remove README.md content that was moved to user guide
2019-07-02 22:00:03 -04:00
josh
cda5584448
user guide: import some content from README.md
2019-07-02 21:59:22 -04:00
josh
30d82392b5
user guide: fill in Default Construction Variables section
2019-07-02 21:25:16 -04:00
josh
63d875da7f
bundle update
2019-07-02 19:44:12 -04:00
josh
8593c5e219
user guide: fill in a lot of Adding Custom Builders section
2019-06-23 19:07:20 -04:00
josh
9bf0abbece
user guide: fix inter-page links
2019-06-23 17:29:50 -04:00
josh
02ef6e0846
user guide updates
2019-06-23 17:27:16 -04:00
josh
f97ee94e44
user guide: fix single-page TOC links
2019-06-14 21:53:57 -04:00
josh
55a2ea6d6b
user guide: fill in Adding New Languages section
2019-06-14 21:48:27 -04:00
josh
59ab8e46c4
user guide: change page navigation to a table
2019-06-14 17:24:31 -04:00
josh
baebe744b3
user guide: fixed page width
2019-06-14 16:51:14 -04:00
josh
0ad3f815c5
user guide: include section numbers in page navigation links
2019-06-14 16:47:54 -04:00
josh
ca6336c715
user guide: add page navigation links
2019-06-14 16:45:59 -04:00
josh
a11c27f415
user guide: break more sections into separate pages
2019-06-14 16:23:09 -04:00
josh
5c77cac354
user guide: turn on multi-page generation
2019-06-14 16:16:02 -04:00
josh
46294b2a88
user guide: add Page class to prepare for multi-page output
2019-06-14 16:09:44 -04:00
josh
5f71781806
user guide: preparing for multi-page generation
2019-06-14 16:04:14 -04:00
josh
22b007df3a
user guide: create render_toc() and render_section() methods
2019-06-14 15:55:55 -04:00
josh
4339d358f8
user guide: Builders comment about starting path with "^/"
2019-06-14 15:44:06 -04:00
josh
e4b96b759f
user guide: implement section links
2019-06-14 15:42:21 -04:00
josh
fcb686ac5f
user guide: keep track of page for sections
2019-06-14 15:34:01 -04:00
josh
e5c690a4fc
user guide: expand Builders section
2019-06-14 15:16:22 -04:00
josh
5b67ad88d3
user guide: document an Environment a bit more
2019-06-14 15:16:12 -04:00
josh
dbd8b47bf9
add Getting Started section
2019-06-14 14:52:56 -04:00
josh
8222958ae3
promote CHANGELOG.md section levels
2019-06-14 14:47:59 -04:00
josh
56f104b5e7
user guide: improve changelog handling
2019-06-14 14:44:00 -04:00
josh
947a65a75e
user guide: fix section anchors
2019-06-09 22:45:26 -04:00
josh
66fac4f982
remove link underlines
2019-06-09 22:43:44 -04:00
josh
254584435f
user guide: indent table of contents
2019-06-09 22:40:07 -04:00
josh
f74d8202d3
user guide: add table of contents
2019-06-09 22:31:47 -04:00
josh
bbf2319da6
user guide: generate section numbers
2019-06-09 22:17:00 -04:00
josh
812b1cbe9c
user guide: put borders on body content
2019-06-09 15:34:41 -04:00
josh
0d2fe02b9c
user guide updates for code sections
2019-06-09 13:22:01 -04:00
josh
c7fb88db82
rename rake task gen_user_guide -> user_guide
2019-06-09 13:04:12 -04:00
josh
49f4367125
update LICENSE.txt
2019-06-09 13:01:30 -04:00
josh
c4d062752d
quote some CHANGELOG entries to avoid Markdown processing
2019-06-09 12:58:35 -04:00
josh
5b3e10ff72
add Ruby syntax highlighting to user guide generator
2019-06-08 22:56:26 -04:00
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
John Lindgren
a1efb1c1b3
Reduce recursion of VarSet#expand_varref by expanding vars earlier.
...
It's common for a build command to contain a reference like:
${INCPREFIX}${CPPPATH}
Where ${INCPREFIX} is "-I" and ${CPPPATH} is an array of include
paths. Without this change, Rscons expands ${INCPREFIX} (and then
tries to expand "-I") repeatedly, once for each path.
This change simply makes Rscons intelligent enough to expand
${INCPREFIX} only once, then join the expanded value to each path.
In a mid-sized rake project, ruby-prof shows that the number of
calls to expand_varref is reduced from ~80,000 to ~30,000., and the
total CPU time spent in expand_varref is reduced by about 30%.
In a larger project, the improvement in real build time is small
but consistent enough to be measurable (~0.5 seconds off a total
of ~20 seconds).
2018-12-09 21:20:44 -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
josh
0e27e967d0
configure: fix handling build_dir and prefix options
2018-11-29 22:06:36 -05:00
josh
1ecce7e99e
add configure spec to check as much as possible
2018-11-29 22:02:42 -05:00
josh
25b73ebd8f
move logic to find an executable from ConfigureOp to Util
2018-11-29 21:51:30 -05:00
josh
bca963af5c
add configure spec for check_cfg not finding the specified program
2018-11-29 21:28:37 -05:00
josh
ba5377a1ce
add configure specs to check for unknown compiler names
2018-11-29 20:51:24 -05:00
josh
8d7fd4bda8
test all known compiler invocation commands - close #66
2018-11-29 17:44:36 -05:00
josh
e3e2e46d6e
fix configure :set_define handling to append to CPPDEFINES array
2018-11-25 22:00:55 -05:00
josh
9e0ce5a55c
add spec for check_cfg with a :package argument
2018-11-25 21:58:22 -05:00
josh
b88131eb2f
add specs testing configure :set_define option and fix the same
2018-11-25 21:45:46 -05:00
josh
dff80587ac
move Rscons.absolute_path?() to Util
2018-11-25 21:31:48 -05:00
josh
cd2696dd0b
add Util specs
2018-11-25 21:22:37 -05:00
josh
36643c1ab1
add Util module and Util.make_relative_path()
2018-11-25 21:17:11 -05:00
josh
778d9ed8b2
add simplecov filters to filter out spec/dspec tests when the opposite spec task is executed
2018-11-25 21:11:00 -05:00
josh
660d30558a
remove Environment#to_h
2018-11-25 21:00:29 -05:00
josh
82fbd34149
add dspec task to test dist file; revert spec task to normal behavior
2018-11-25 20:45:32 -05:00
josh
e0b82d37af
cache: remove obsolete "default_environment_vars" entry
2018-11-25 17:02:02 -05:00
josh
7a90325b67
set Environment build root automatically - close #64
2018-11-25 16:58:19 -05:00
josh
49116e6b59
store build_dir and prefix configuration options in cache
2018-11-25 16:06:36 -05:00
josh
90300a1606
pass operation options via Hash instead of setting Application attributes
2018-11-25 16:02:04 -05:00
josh
1eb07e9a22
use Rsconscript instead of Rsconsfile - close #62
2018-11-25 15:42:53 -05:00
josh
9975eec165
add build test for check_cfg - close #59
2018-11-23 22:23:01 -05:00
josh
04c0a6a86f
colorize configure messages more consistently
2018-11-23 21:55:02 -05:00
josh
bfdf3a12fd
load configuration data when constructing a new Environment - close #60
2018-11-23 21:23:19 -05:00
josh
6dd9c835ce
store configuration data more opaquely in Cache
2018-11-23 20:15:39 -05:00
josh
cfec0dcadc
simplify Application/Script/ConfigureOp interaction with direct calls to configure methods
2018-11-23 19:59:47 -05:00
josh
a1c1cc1855
check_cfg: print something
2018-11-15 17:14:11 -05:00
josh
add9f9c50d
save configured environment construction flags for separate build step - close #60
2018-11-15 17:04:04 -05:00
josh
ba3d656110
consolidate some configure check reporting
2018-11-14 23:30:47 -05:00
josh
ab4ca71ac7
implement ConfigureOp#check_cfg - not tested yet
2018-11-14 23:28:00 -05:00
josh
aba11155a4
rename check_executable to check_program
2018-11-14 23:00:40 -05:00
josh
3b586cb476
implement ConfigureOp#check_lib
2018-11-14 22:53:00 -05:00
josh
88fd4bd405
robustify Ansi module a bit
2018-11-12 21:50:16 -05:00
josh
7869d38dd8
implement ConfigureOp#check_executable
2018-11-07 22:22:07 -05:00
josh
e8990199ef
configure: output project name and build directory
2018-11-07 21:56:23 -05:00
josh
6078cb0977
implement ConfigureOp#check_d_import
2018-11-07 21:49:44 -05:00
josh
85b0111a6e
implement ConfigureOp#check_cxx_header
2018-11-07 21:44:04 -05:00
josh
6bb0a55a55
implement ConfigureOp#check_c_header
2018-11-07 21:39:42 -05:00
josh
95d5ada865
specs: run each build test from separate directory; keep directory if test fails
2018-11-07 21:33:28 -05:00
josh
cd9fffd828
Script: change the way configuration arguments are stored
2018-11-07 20:52:39 -05:00
josh
30511a3443
pass the Environment to configure to ConfigureOp; begin modifying it in the tests
2018-11-07 20:46:07 -05:00
josh
d656df5407
implement ConfigureOp#check_d_compiler
2018-11-07 19:05:08 -05:00
josh
d54d363a25
implement ConfigureOp#check_cxx_compiler
2018-11-07 18:53:06 -05:00
josh
697db2a987
specs: check_c_compiler: also test when no arguments are given
2018-11-06 22:39:13 -05:00
josh
daa90e431c
check_c_compiler: add integration test for finding second listed C compiler
2018-11-06 22:28:23 -05:00
josh
bdeaec11ba
Ansi: add some other colors
2018-11-06 22:19:49 -05:00
josh
7eeb6312ba
check_c_compiler: print output; add a integration test
2018-11-06 22:16:38 -05:00
josh
07d9b97ddc
set default rake task back to spec
2018-11-06 22:14:34 -05:00
josh
af033ee4e0
fill in ConfigureOp#test_c_compiler
2018-11-06 21:45:29 -05:00
josh
c9de4f37e6
allow configure to fail; application should return error code from operation
2018-11-06 15:42:10 -05:00
josh
64caaa9a53
add ConfigureOp class
2018-11-06 00:17:22 -05:00
josh
d196845c85
parse 'configure' command-line options
2018-11-04 00:16:53 -04:00
josh
5288a47bfb
start on specs for configure command
2018-11-03 23:19:54 -04:00
josh
9bd9abcad1
update CHANGELOG.md for v1.17.0
2018-11-02 17:02:46 -04:00
josh
b5a8b6f628
remove makefile target name check when parsing dependencies - close #57
2018-11-02 14:24:02 -04:00
michael.metivier
7edcef2b30
Environment.expand_varref has the same allowed parameter types and returns as Varset.expand_varref
2018-11-02 11:42:32 -04:00
michael.metivier
c34821864e
Allow construction variable expansion on _true_ and _false_ literals
2018-11-02 00:57:20 -04:00
josh
97c24eec6b
specs: fix Application#determine_n_threads specs
2018-10-30 17:39:43 -04:00
josh
053df2360f
add Rscons.vars back again at least for now
2018-10-30 17:36:30 -04:00
josh
8d766e4804
specs: fix cache_varset.rb builder message
2018-10-30 17:36:30 -04:00
josh
e29ec5a126
move clean logic to Application
2018-10-30 17:36:30 -04:00
josh
de46bb0cc1
specs: remove usage test when no operation given
2018-10-30 17:00:57 -04:00
josh
084080a682
specs: do not run separate 'configure' step before main build test
2018-10-30 17:00:10 -04:00
josh
3a564c0ca2
add Dsl and ConfigureDsl
2018-10-26 21:17:04 -04:00
josh
ac89a122d8
add Application class; update CLI and Script for new architecture
2018-10-21 01:24:15 -04:00
josh
ea6ae1be10
remove unneeded OptionParser separators
2018-10-12 17:20:34 -04:00
josh
a649c7f4cb
add Script class
2018-10-12 17:18:04 -04:00
josh
2f83f36659
start adding subcommand interface to Cli module
2018-09-10 20:35:00 -04:00
josh
a46936bc0b
change default task to build_dist
2018-09-04 16:04:58 -04:00
josh
95ee63292e
Rscons is no longer a gem.
...
Run specs against the combined distributable standalone script.
2018-09-03 19:32:53 -04:00
josh
bcd33fe098
add build_dist.rb to create dist/rscons as a standalone script
2018-09-01 17:00:04 -04:00
josh
5cf77f1f58
v1.16.0
2018-08-24 09:24:03 -04:00
josh
b4cc45c381
update documentation
2018-08-24 09:17:23 -04:00
josh
750506201f
add github URL to README.md
2018-08-23 15:37:18 -04:00
josh
284312a21c
support command-line variables - close #51
2018-08-23 14:58:08 -04:00
josh
d081a4695f
add shebang line to bin/rscons
2018-08-23 11:30:18 -04:00
josh
c7f66694ab
add Rscons.glob - close #50
2018-08-23 11:26:20 -04:00
josh
57de94a3fb
improve debuggability of cache.up_to_date? - close #46
2018-08-23 10:10:05 -04:00
josh
53ba7dad41
allow passing a VarSet into cache methods - close #47
2018-08-22 16:32:05 -04:00
josh
8cb02a7e34
generate dependencies for D builds - close #49
2018-08-22 15:23:48 -04:00
josh
dbbce9e476
update a few dependencies
2018-05-24 15:32:39 -04:00
josh
0dc3a90660
v1.15.0
2017-09-08 15:13:04 -04:00
josh
d48c7587d6
add v1.15.0 release notes
2017-09-08 15:06:55 -04:00
josh
70d4740a69
split CHANGELOG.md out of README.md
2017-09-08 15:06:23 -04:00
josh
aaae845d60
allow json 1.x or 2.x
2017-09-08 15:04:40 -04:00
josh
e900e74342
v1.14.0
2017-08-03 15:55:54 -04:00
josh
62ae3f162d
add v1.14.0 release notes
2017-08-03 15:55:38 -04:00
josh
099d26f33c
Add Rscons::VarSet#values_at - close #45
2017-08-03 15:54:24 -04:00
josh
89562c584a
Environment#print_builder_run_message should support string commands - close #44
2017-08-03 14:10:53 -04:00
josh
a9aeaf2356
v1.13.0
2017-07-14 16:24:27 -04:00
josh
5409b3cb34
add v1.13.0 release notes
2017-07-14 16:24:04 -04:00
josh
6d04500c13
Add ability to record side-effect file production - close #43
2017-07-14 16:17:01 -04:00
josh
45e30662d2
add YARD comment for Rscons::Ansi to get to 100% coverage
2017-07-12 15:51:00 -04:00
josh
8f7e044bfd
fix YARD @option tag
2017-07-12 15:50:13 -04:00
josh
dbea6f0a26
v1.12.0
2017-07-11 16:16:01 -04:00
josh
c923eb5c7c
add v1.12.0 release notes
2017-07-11 16:14:49 -04:00
josh
529d9aacaa
colorize a couple other builders' output messages
2017-07-11 16:12:38 -04:00
josh
65c1bac4f9
be more colorful - close #41
2017-07-11 13:52:01 -04:00
josh
775363ddbd
cloned Environments should inherit n_threads - close #42
2017-07-11 10:29:25 -04:00
josh
2a96495e83
wait for in-progress subcommands to complete on build failure - close #39
2017-06-26 22:44:49 -04:00
josh
15e52e488c
env.depends should imply env.build_after - close #40
2017-06-21 10:44:52 -04:00
josh
c0b12132f0
1.11.1 release notes
2017-06-14 09:58:09 -04:00
josh
9141cf91e7
v1.11.1
2017-06-14 09:57:11 -04:00
josh
7f7e6ef3da
fix circular build dependency detection logic
2017-06-14 09:56:51 -04:00
josh
60b3fdbcac
update YARD documentation link
2017-06-14 09:12:13 -04:00
josh
5263ea03c6
v1.11.0
2017-06-14 08:56:21 -04:00
josh
6c91823ce2
v1.11.0 release notes
2017-06-14 08:54:57 -04:00
josh
8deb1eb6f8
Change default :clone option to :all to clone all Environment attributes
2017-06-14 08:53:28 -04:00
josh
6d6319799a
add v1.10.1 release notes
2017-06-13 19:47:58 -04:00
josh
694642dfbd
Allow overriding n_threads on a per-Environment level - close #34
2017-06-13 19:45:53 -04:00
josh
6dd70ff65e
raise error when circular dependencies are found - close #38
2017-06-13 19:37:41 -04:00
josh
eca01c38df
Fix non-blocking thread-wait if Rscons.n_threads is set to 0 - close #37
2017-06-13 19:07:04 -04:00
josh
4ad6ce1d9c
SHCFLAGS and SHCXXFLAGS should inherit non-SH flags by default - close #36
2017-06-13 18:41:47 -04:00
josh
a49ebc486e
env.build_after should expand paths - close #35
2017-06-13 18:38:47 -04:00
josh
74d19ea235
fix construction variable reference table OBJSUFFIX entries
2017-06-12 09:33:52 -04:00
josh
d7a6d69a92
update v1.10.0 release notes
2017-06-12 09:33:13 -04:00
josh
11864eb55b
v1.10.0
2017-06-10 00:50:43 -04:00
Michael Metivier
387c40176b
Pre-build hooks do not respect modified key values for old-style builders
2017-06-09 19:50:12 -04:00
josh
f1b24ee8ba
minor formatting: replace missing space
2017-06-08 15:01:30 -04:00
josh
ef3150db0f
document construction variables and their default values in README.md
2017-06-08 14:58:55 -04:00
josh
ed4fb8b681
expand README.md a bit
2017-06-08 14:10:42 -04:00
josh
3a3f6d6d27
add v1.10.0 release notes
2017-06-08 12:02:13 -04:00
josh
20affc0e1d
fix SHLD spec for Windows
2017-06-08 12:01:50 -04:00
josh
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
josh
b7f609b7e8
add SHLIBPREFIX
2017-06-07 16:35:20 -04:00
josh
10d4c647b9
add spec for building a shared library using D
2017-06-07 15:22:20 -04:00
josh
db2ec82a25
Add more integration tests for SharedLibrary and backwards compatibility
2017-06-07 13:02:51 -04:00
josh
aa192d7567
bugfix: Object and SharedObject should respect vars when checking source suffixes
2017-06-07 09:52:11 -04:00
josh
ed5d6e9e49
homogenize slashes in Environment#expand_path()
2017-06-07 09:26:13 -04:00
josh
3436dc3a64
Expand target and sources before calling Builder#create_build_target
2017-06-06 16:43:26 -04:00
josh
df52a7e0e1
add SharedObject and SharedLibrary builders - close #8
2017-06-06 13:27:38 -04:00
josh
6bd7e6f852
Object builder changes in preparation for adding SharedObject
2017-05-30 16:26:39 -04:00
josh
19a23c2aa9
Create builder features
...
Pass desired features to Builder#produces?
Allow features to be passed in to Environment#register_builds.
Use features in Environment#get_build_fname to determine build file name.
2017-05-30 15:30:15 -04:00
josh
c7e4e1ad9b
Always use a build root and default it to "build"
2017-05-30 11:06:32 -04:00
josh
43df46018c
Support redirecting standard output using the Command builder - close #28
2017-05-29 12:50:34 -04:00
josh
8cbb9fa30e
Place object files for absolute source paths under build_root - close #30
2017-05-29 12:16:46 -04:00
josh
1880e6650e
fix PROGSUFFIX handling - close #29
2017-05-29 11:40:01 -04:00
josh
d31b4725d2
add LEXSUFFIX, YACCSUFFIX construction variables - close #31
2017-05-29 11:03:01 -04:00
josh
6f242a1c64
Merge branch 'parallelization' - close #23
2017-05-29 10:58:55 -04:00
josh
c7943bc2cc
ignore .bundle
2017-05-29 10:57:27 -04:00
josh
b5826bd7f4
use new Builder#run signature for Command builder
2017-05-25 17:06:34 -04:00
josh
05bbea6fa1
add Environment#build_after
2017-05-25 17:00:21 -04:00
josh
68468b6422
fully parallelize the Command builder
2017-05-25 16:03:05 -04:00
josh
80a80a7cb0
fully parallelize the Preprocess builder
2017-05-25 15:54:33 -04:00
josh
178940cd5d
fully parallelize the CFile builder
2017-05-25 15:28:01 -04:00
josh
145d51c825
fully parallelize the Disassemble builder
2017-05-25 14:59:51 -04:00
josh
a11fab43cb
Update spec task to preserve simplecov coverage info for previous full spec runs when doing a partial spec run
2017-05-24 16:29:17 -04:00
josh
83226e894d
add backwards-compatibility test for Builder#standard_build
2017-05-24 16:16:53 -04:00
josh
b454208117
fully parallelize the Library builder
2017-05-24 16:10:58 -04:00
josh
df420fdf5c
use ThreadsWait (only for blocking thread waits)
2017-05-24 16:02:25 -04:00
josh
f3bf325c88
add a little more leeway in the multi-threading timing test
2017-05-24 15:58:11 -04:00
josh
f815952ab3
add Builder#standard_threaded_build, #standard_finalize
...
parallelize Program builder command
2017-05-24 15:41:39 -04:00
josh
1af3c5c9a4
pass Builder#run options into Builder#finalize also
2017-05-24 15:13:59 -04:00
josh
dce88ece14
pass entire build_operation Hash to Builder#run
2017-05-24 14:32:43 -04:00
josh
2655c119e4
add spec for Environment#find_finished_thread to fully cover
2017-05-23 16:47:00 -04:00
josh
221cde7e5f
update run_builder, build_sources integration tests for more coverage
2017-05-23 16:45:21 -04:00
josh
adcee373df
add integration test for Environment#build_sources
2017-05-23 16:28:13 -04:00
josh
e58b8bd109
add integration test for Environment#run_builder
2017-05-23 16:25:03 -04:00
josh
8a1dfb0785
do not catch NameError when looking up Builder#run method
2017-05-23 16:24:45 -04:00
josh
d315f86a36
remove unit tests for Environment#run_builder, #build_sources
2017-05-23 16:20:41 -04:00
josh
0d46d616dd
change user dependency test to use BuildTarget#depends
2017-05-23 16:09:29 -04:00
josh
032e6d5d0a
add some integration tests for the CLI
2017-05-23 16:06:21 -04:00
josh
c9946da193
integration tests: only pass -f when a specific rsconsfile is specified
2017-05-23 15:55:28 -04:00
josh
599d10b50f
add integration test for overriding PROGSUFFIX
2017-05-23 15:32:55 -04:00
josh
18c6c69871
do not use ThreadsWait to wait for threads; it does not work properly
2017-05-23 15:24:52 -04:00
josh
2ffdf82d9a
add multi-threading build test
2017-05-23 14:24:14 -04:00
josh
15e5d15424
Avoid Environment#process race condition
...
Race condition could have occurred if the last threaded command
was gathered in the non-blocking wait and then a blocking wait was
started because there was no job to run. Do not do a blocking wait
in this case.
2017-05-23 14:12:38 -04:00
josh
a99e6e81b2
simplify Environment#process looping
2017-05-23 14:10:45 -04:00
josh
1509c95176
remove Cache.reset!
2017-05-23 14:05:29 -04:00
josh
c7bba77581
remove Program builder non-integration specs
2017-05-22 16:57:35 -04:00
josh
957fd8c86d
convert Library builder specs to integration tests
2017-05-22 16:54:10 -04:00
josh
7e707e7e3b
convert Object builder specs to integration tests
2017-05-22 16:38:57 -04:00
josh
2be738be4f
Including trailing newline when printing failed command
2017-05-22 16:26:12 -04:00
josh
7b3bffd329
update some non-integration-test specs
2017-05-22 16:25:49 -04:00
josh
06cb4b7a55
migrate some Cache tests to integration tests
2017-05-22 15:55:18 -04:00
josh
bfbbc19728
fix simplecov setup to get coverage for integration build tests
2017-05-22 11:19:55 -04:00
josh
28e56251dd
update build_tests_spec to invoke rscons in a subprocess for each test
2017-05-20 15:15:07 -04:00
josh
2d8e08b493
add -j command-line option to set number of threads
2017-05-19 11:38:42 -04:00
josh
5cef9896ac
consistently print failed build command if a builder fails
2017-05-19 10:57:30 -04:00
josh
6344692087
update Object builder to support parallelization; update Program and Library builders to register object builds from #setup
2017-05-19 10:49:16 -04:00
josh
267fc7124d
process threaded commands until they are all complete
2017-05-17 15:52:34 -04:00
josh
e694199f33
delay building targets that depend on builds registered with Environment#register_builds
2017-05-17 15:45:04 -04:00
josh
4ed584701a
pass setup_info to the builder's #run method
2017-05-17 13:50:31 -04:00
josh
5de52620e4
JobSet#get_next_job_to_run: take into account targets still building
2017-05-17 10:19:43 -04:00
josh
9cc59a35f0
handle threaded commands in Environment#process
2017-05-17 10:07:15 -04:00
josh
ca445f5733
add JobSet#size
2017-05-17 09:36:27 -04:00
josh
7534b29e26
add Environment#wait_for_threaded_commands, use from #run_builder if delayed execution is not allowed
2017-05-17 09:34:19 -04:00
josh
800e7a51a4
add Environment#start_threaded_command
2017-05-17 09:14:42 -04:00
josh
5d36aa74a0
add more fields to ThreadedCommand
2017-05-17 09:07:51 -04:00
josh
01851c2872
refactor into new Environment#command_to_s
2017-05-17 09:04:05 -04:00
josh
5fe55a584e
add short description field to ThreadedCommand
2017-05-17 08:49:53 -04:00
josh
9c13634eaf
start adding support for threaded commands in Environment#run_builder
2017-05-17 08:47:17 -04:00
josh
e4adaab003
add Builder#finalize
2017-05-16 09:18:08 -04:00
josh
6b8fda706d
add ThreadedCommand class
2017-05-15 10:57:34 -04:00
josh
ef4f9882cd
change Builder#run base class method to new signature
2017-05-12 21:08:14 -04:00
josh
7a31039e35
add @since tags for new methods
2017-05-12 21:07:25 -04:00
josh
3e4897c04b
store setup_info in the job
2017-05-12 16:30:30 -04:00
josh
d46dc2014c
update JobSet interface to just take a Hash of job parameters
2017-05-12 16:30:02 -04:00
josh
9cfc0c20b7
call Builder#setup
2017-05-12 16:27:43 -04:00
josh
19a00a7b84
prepare to call new Builder#run interface
2017-05-12 16:25:34 -04:00
josh
9b6d2c5111
add Environment#register_builds
2017-05-12 16:16:25 -04:00
josh
6a0ccad804
add Builder#setup; add new Builder#run signature
2017-05-12 16:16:07 -04:00
josh
dab870854a
add Rscons.n_threads
2017-05-12 14:38:18 -04:00
josh
695bf84092
expand target and source paths when registering a builder
2017-05-10 15:06:16 -04:00
josh
7cba8c8424
JobSet: target is already stored in job info
2017-05-10 14:57:04 -04:00
josh
551b8fa365
add integration test to verify cache is written if a builder fails
2017-02-16 19:27:18 -05:00
josh
3601359c08
process jobs from the JobSet
2017-02-16 19:27:18 -05:00
josh
e1d8dfbab6
add JobSet class
2017-02-16 19:27:18 -05:00
josh
c69da1044d
update README for v1.9.3
2016-09-30 14:04:58 -04:00
josh
f33be07a15
v1.9.3
2016-09-30 14:03:35 -04:00
josh
c4c2d5c128
Environment#parse_flags should put -std=XXX flags in CCFLAGS, not CFLAGS
2016-09-30 14:02:30 -04:00
josh
3065dc48ec
document passing multiple dependencies to env.depends()
2016-05-02 09:10:14 -04:00
josh
9ca2934695
document explicit dependencies
2016-03-02 13:33:00 -05:00
josh
3af6b6be1b
v1.9.2
2016-01-12 10:16:00 -05:00
josh
0442b876a5
allow phony targets in conjunction with a build root
2016-01-12 10:14:10 -05:00
josh
bab4641b6e
v1.9.1
2015-12-10 15:25:29 -05:00
josh
4698fc41b9
add v1.9.1 release notes
2015-12-10 15:25:16 -05:00
josh
952f423860
use ${INCPREFIX} instead of hard-coded "-I" in Preprocess builder
2015-12-10 15:19:41 -05:00
josh
d2da5f7b0d
bundle update
2015-12-10 15:18:59 -05:00
josh
ab14dc16ed
change *SUFFIX defaults to arrays; add various C++ file suffixes
2015-06-15 21:58:37 -04:00
josh
aa795eea85
v1.9.0
2015-03-15 20:56:37 -04:00
josh
7dffef6bd0
update README.md
2015-02-15 19:52:33 -05:00
josh
dce2114733
document Copy builder class
2015-02-15 18:42:37 -05:00
josh
0bbdda2d41
fix Command builder default short description
2015-02-15 18:41:41 -05:00
josh
3b8910075a
use class instance variables instead of class variables
2015-02-15 18:38:09 -05:00
josh
34beda844e
reorganize Rscons module class methods
2015-02-15 18:33:00 -05:00
josh
7a04bec2ff
support phony targets - close #25
2015-02-15 18:29:33 -05:00
josh
7698fbf618
add "rscons" binary - close #24
2015-02-08 18:04:37 -05:00
josh
4eedea2563
add Copy builder as a copy of Install
2015-02-07 09:57:44 -05:00
josh
f678803a5d
add Install builder - close #6
2015-02-07 09:49:29 -05:00
josh
9c49a09f69
update :spec rake task to allow example pattern as an argument
2015-01-29 09:58:09 -05:00
josh
859f87ddee
add a Directory builder - close #27
2015-01-29 09:31:00 -05:00
josh
73bc71a656
test expanding paths after a build target is registered from within a build hook
2015-01-28 17:15:55 -05:00
josh
29a8684f90
support registering multiple build targets with the same path - close #26
2015-01-28 17:10:36 -05:00
josh
02aff35222
allow overriding Command builder short description with CMD_DESC variable -- close #22
2015-01-24 09:40:07 -05:00
josh
897d31ebe0
fix Command builder example invocation
2015-01-21 14:07:28 -05:00
josh
76610a07a9
fix variable references that expand to arrays in build target sources - fix #20
2015-01-20 21:26:45 -05:00
josh
cb3cc9a0de
update 1.9.0 release notes
2015-01-20 21:18:19 -05:00
josh
0ea842fffe
rework Preprocess builder to consider deep dependencies - fix #21
2015-01-20 21:16:21 -05:00
josh
d28722a4bb
fix Rscons.set_suffix to append the given suffix if the filename has none
2015-01-20 21:13:27 -05:00
josh
8142d0bbc8
add v1.8.1 release notes
2015-01-20 21:12:57 -05:00
josh
a8023ae03c
v1.8.1
2014-10-22 14:30:32 -04:00
josh
99ba015630
fix Environment#dump when construction variables are Symbols
2014-10-22 14:30:14 -04:00
josh
dcf90cc12b
v1.8.0
2014-10-22 10:36:28 -04:00
josh
f93ca62c07
add v1.8.0 release notes
2014-10-22 10:31:52 -04:00
josh
d9e3129ad5
add Environment#dump
2014-10-22 10:30:57 -04:00
josh
d5e0475e6c
minor documentation improvements
2014-10-21 17:00:38 -04:00
josh
b05eed36eb
add VarSet#to_h
2014-10-21 16:06:15 -04:00
josh
7ea0721cc2
add a Builder#run method which raises an error unless overridden
2014-10-16 16:52:26 -04:00
josh
e654df008d
add rdoc to bundle
2014-10-16 16:42:03 -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
josh
469f575564
v1.7.0
2014-09-25 11:35:00 -04:00
josh
07725581e9
add v1.7.0 release notes
2014-09-25 11:34:37 -04:00
josh
ebb69cedc2
add @since tag to Environment#add_post_build_hook
2014-09-25 11:31:18 -04:00
josh
c98b377ce8
use "rake/clean" module now that it isn' so noisy; clean .yardoc folder
2014-09-25 11:14:39 -04:00
josh
a0874e7cf1
add tests for *SUFFIX variables containing Arrays - close #9
2014-09-25 11:12:11 -04:00
josh
0b04229e3d
fix Environment#build_dir documentation
2014-09-25 10:47:21 -04:00
josh
20f3da3b04
allow trailing slashes to be passed to env.build_dir()
2014-09-25 10:45:52 -04:00
josh
a6a79b8ef1
test cloning post-build hooks
2014-09-23 12:44:02 -04:00
josh
6d4f27602e
update README.md notes about build hooks
2014-09-19 12:41:54 -04:00
josh
453295a49b
add post-build hooks - close #14
2014-09-19 12:36:57 -04:00
josh
dee2b98f6e
allow build hooks to register new build targets - close #15
2014-09-19 11:10:59 -04:00
josh
b186b3102c
clear build targets after processing an Environment - close #17
2014-09-19 10:45:49 -04:00
josh
23c94f7841
fix YARD curly brace escapes
2014-09-11 13:53:10 -04:00
josh
6acb209ef4
v1.6.1
2014-08-19 09:12:35 -04:00
josh
43e12819d7
update .gitignore, version Gemfile.lock
2014-08-19 09:12:21 -04:00
josh
1bfb7dd100
add v1.6.1 release notes
2014-08-19 09:09:37 -04:00
josh
df1e3be829
fix #12 - allow overriding dependency file suffix with DEPFILESUFFIX construction variable
2014-08-18 15:53:02 -04:00
josh
851adae66f
fix #13 - Environment#depends should expand its arguments for construction variables
2014-08-18 15:39:33 -04:00
josh
eb28e09d8c
add v1.6.0 release notes
2014-07-10 14:34:35 -04:00
josh
01a84e8819
v1.6.0
2014-06-18 10:45:05 -04:00
josh
28bedfce11
Support lambdas as construction variable values
2014-06-18 10:43:35 -04:00
josh
e792fd473b
add v1.5.0 release notes
2014-06-18 09:15:49 -04:00
josh
9f738ee175
v1.5.0
2014-06-16 22:20:06 -04:00
josh
912615535a
added more documentation to get to 100% YARD coverage; fix YARD warnings
2014-06-16 15:33:22 -04:00
josh
d87c4990b1
add redcarpet to bundle
2014-06-16 14:40:43 -04:00
josh
6a17cbcd54
remove unnecessary rspec dependencies
2014-06-16 14:37:24 -04:00
josh
8fc95b5d69
change Builder#create_build_target and BuildTarget#initialize to accept a Hash of options
2014-06-16 12:17:33 -04:00
josh
d9eea10363
update D build test for Linux
2014-06-12 16:00:41 -04:00
josh
5045e2e336
fix build test for Linux
2014-06-12 15:59:49 -04:00
josh
31968e7e32
complete spec updates for RSpec 3 using only :expect syntax
2014-06-12 15:52:15 -04:00
josh
5783ed993a
update more rspec expectations
2014-06-12 15:43:50 -04:00
josh
0778f043ee
update many specs to RSpec 3 format
2014-06-12 15:39:20 -04:00
josh
42597b2dac
use new rspec expect syntax
2014-06-12 13:54:35 -04:00
josh
7b13d51d23
environment spec updates for Windows
2014-06-12 13:41:46 -04:00
josh
c2d4ece957
build test spec fix for running on Windows
2014-06-12 13:38:15 -04:00
josh
3ab9c8723b
fix a build test for MinGW
2014-06-12 13:35:11 -04:00
josh
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
josh
87b25d7bfd
add PROGSUFFIX construction variable and default it to ".exe" for mingw/cygwin platforms
2014-06-12 13:02:53 -04:00
josh
da457b9138
fix spec typo
2014-06-12 11:31:56 -04:00
josh
0cbf05da49
retry directory removal to work around Windows' inability to remove directories when you ask
2014-06-12 11:31:17 -04:00
josh
08b8a2e6be
update gemspec, do not use git to determine files
2014-06-12 11:13:56 -04:00
josh
9f75ea9d21
add Rscons.command_executer to determine command executer
...
Use "env" to execute commands when in MSYS on Windows
2014-06-12 11:07:09 -04:00
josh
ef18c9da35
Environment: add #parse_flags, #parse_flags!, and #merge_flags
2014-06-12 10:40:01 -04:00
josh
7c9e7e833a
Unbuffer $stdout
2014-06-12 09:36:24 -04:00
josh
eb9aa476b7
update default construction variables to match SCons a little more closely
2014-06-11 16:54:32 -04:00
josh
7f2b685bfb
shorten Environment#shell code a bit
2014-06-11 15:31:13 -04:00
josh
ae9021a505
add Environment#shell - close #11
2014-06-11 14:59:31 -04:00
josh
a1a4cc18cd
change json to a runtime gem dependency
2014-06-05 09:19:59 -04:00
josh
f5a3b448d3
test supported construction variable types when cloning
2014-05-15 15:54:02 -04:00
josh
9abb47ffe7
v1.4.3
2014-05-14 15:53:52 -04:00
josh
f78d13b648
add v1.4.3 release notes
2014-05-14 15:53:33 -04:00
josh
ab1ea34941
add specs testing construction variable overrides for built-in builders
2014-05-14 15:48:00 -04:00
josh
08f2248ed7
fix up builders to properly use variable overrides
2014-05-14 15:15:08 -04:00
josh
9d61fa0276
merge Environment#build_command and #expand_varref
2014-05-14 14:33:09 -04:00