5263ea03c6
v1.11.0
2017-06-14 08:56:21 -04:00
8deb1eb6f8
Change default :clone option to :all to clone all Environment attributes
2017-06-14 08:53:28 -04:00
694642dfbd
Allow overriding n_threads on a per-Environment level - close #34
2017-06-13 19:45:53 -04:00
6dd70ff65e
raise error when circular dependencies are found - close #38
2017-06-13 19:37:41 -04:00
eca01c38df
Fix non-blocking thread-wait if Rscons.n_threads is set to 0 - close #37
2017-06-13 19:07:04 -04:00
4ad6ce1d9c
SHCFLAGS and SHCXXFLAGS should inherit non-SH flags by default - close #36
2017-06-13 18:41:47 -04:00
a49ebc486e
env.build_after should expand paths - close #35
2017-06-13 18:38:47 -04:00
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
f1b24ee8ba
minor formatting: replace missing space
2017-06-08 15:01:30 -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
b7f609b7e8
add SHLIBPREFIX
2017-06-07 16:35:20 -04:00
aa192d7567
bugfix: Object and SharedObject should respect vars when checking source suffixes
2017-06-07 09:52:11 -04:00
ed5d6e9e49
homogenize slashes in Environment#expand_path()
2017-06-07 09:26:13 -04:00
3436dc3a64
Expand target and sources before calling Builder#create_build_target
2017-06-06 16:43:26 -04:00
df52a7e0e1
add SharedObject and SharedLibrary builders - close #8
2017-06-06 13:27:38 -04:00
6bd7e6f852
Object builder changes in preparation for adding SharedObject
2017-05-30 16:26:39 -04:00
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
c7e4e1ad9b
Always use a build root and default it to "build"
2017-05-30 11:06:32 -04:00
43df46018c
Support redirecting standard output using the Command builder - close #28
2017-05-29 12:50:34 -04:00
8cbb9fa30e
Place object files for absolute source paths under build_root - close #30
2017-05-29 12:16:46 -04:00
1880e6650e
fix PROGSUFFIX handling - close #29
2017-05-29 11:40:01 -04:00
d31b4725d2
add LEXSUFFIX, YACCSUFFIX construction variables - close #31
2017-05-29 11:03:01 -04:00
b5826bd7f4
use new Builder#run signature for Command builder
2017-05-25 17:06:34 -04:00
05bbea6fa1
add Environment#build_after
2017-05-25 17:00:21 -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
b454208117
fully parallelize the Library builder
2017-05-24 16:10:58 -04:00
df420fdf5c
use ThreadsWait (only for blocking thread waits)
2017-05-24 16:02:25 -04:00
f815952ab3
add Builder#standard_threaded_build, #standard_finalize
...
parallelize Program builder command
2017-05-24 15:41:39 -04:00
1af3c5c9a4
pass Builder#run options into Builder#finalize also
2017-05-24 15:13:59 -04:00
dce88ece14
pass entire build_operation Hash to Builder#run
2017-05-24 14:32:43 -04:00
8a1dfb0785
do not catch NameError when looking up Builder#run method
2017-05-23 16:24:45 -04:00
18c6c69871
do not use ThreadsWait to wait for threads; it does not work properly
2017-05-23 15:24:52 -04:00
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
a99e6e81b2
simplify Environment#process looping
2017-05-23 14:10:45 -04:00
1509c95176
remove Cache.reset!
2017-05-23 14:05:29 -04:00
2be738be4f
Including trailing newline when printing failed command
2017-05-22 16:26:12 -04:00
2d8e08b493
add -j command-line option to set number of threads
2017-05-19 11:38:42 -04:00
5cef9896ac
consistently print failed build command if a builder fails
2017-05-19 10:57:30 -04:00
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
267fc7124d
process threaded commands until they are all complete
2017-05-17 15:52:34 -04:00
e694199f33
delay building targets that depend on builds registered with Environment#register_builds
2017-05-17 15:45:04 -04:00
4ed584701a
pass setup_info to the builder's #run method
2017-05-17 13:50:31 -04:00
5de52620e4
JobSet#get_next_job_to_run: take into account targets still building
2017-05-17 10:19:43 -04:00
9cc59a35f0
handle threaded commands in Environment#process
2017-05-17 10:07:15 -04:00
ca445f5733
add JobSet#size
2017-05-17 09:36:27 -04:00
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